by Tendayi Mawushe for EuroPython 2012
These days it is difficult for software to meet users’ expectations to behave intelligently. When a program displays a lack of even the most basic awareness of context it is jarring. At the same time organisations are seeking to gain a competitive advantage through software that behaves adaptively based on the information at hand. Solving these problems is a challenge for today’s developers.
There is general agreement among seasoned developers that having a good understanding of basic computer science data structures and algorithms is essential. That said there is one sub-section of algorithms that is underused by most developers, the algorithms that fall under the general rubric of Artificial Intelligence. This talk aims to remedy that by providing a quick refresher course on basic AI algorithms using Python. This talk is not about building thinking machines, but rather about creating software that users won’t think is stupid. Basic AI techniques such as Constraint Propagation and Identification Trees, can really help developers along the road to smarter software.