1. Needs More examples - Examples gives a reader different avenues for understanding the problem better. Let's say they didn't understanding Genetic Algorithm on the first go, they would be multiple opportunity to understand it with more examples. Enhancing the chance that they understand the material and recommend it to friends.
2. Give real code - Readers might not exactly get how mathematical symbols turns into code, but I think they will understand real code. You want to lower the barrier of entry to read your material. Many programmers never took Calculus I and II and most start like 12, don't limit your audience by being opaque.
3. Give readers exercise to test their knowledge - Reader should have some sign that they are understanding the material and giving exercise show them gaps in their understanding.
4. Give it a different name - Maybe "Essential AI Algorithms","Genetic Algorithms, Simulated Annealing and others" or "Optimisation Algorithm Bible", so that you wouldn't have to explain what is Metaheuristic
[/Constructive Criticism]