Some of the smartest sounding types of robotics are those involved in machine learning. The code used throughout this book has not used machine learning, instead using well-known algorithms. The PID controller is a system that makes adjustments to read a value, but it is not machine learning. However, optimizing PID values might come from a machine learning algorithm. We used Haar Cascades to detect faces; this was also not machine learning, but a machine learning system was probably used to generate the Cascades. Machine learning tends to be great at optimizing tasks and discovering and matching patterns, but poor at making fully-formed intelligent-seeming behavior.
The basic overall idea with many machine learning systems involves having a set of starting examples, with some information on which are matches and which are not. The machine is expected...