Final Review

This book was finished several weeks ago but I just hadn't had the time to write the final review.  But here is the final review sorry there was no progress as I read through the book.

For the most part the book does a decent job about introducing algorithms that are used in AI but was very light on code examples.  Granted I didn't download the example code form their repository which might give a little more insight into using all the algorithms but I wanted to provide my review on the book and the information that was given in the pages.  Many places in the book could have used a little more details and explanations on how the algorithms work.  Even though the author has already stated that this is a series of books he is writing, he did go into gory details with some complex math and little to no explanations.

The book does do a good job in discussing some of the more important topics in AI programming and how to find faster solutions to common problems.  I especially liked the section on TSP (Traveling Salesman Problem).  The book covered many different approaches that have been using in the past to more modern methods of calculating the best solution without out eating up a ton of processing power.

Overall the book was a decent read and I would recommend it as a light reading for this topic.  If you’re a little weak on the math like I am then make sure to pick up an accompanying math book to help explain sections of the math that is not covered.

Reading Day 1

The other day I was surfing for a new book to read for programming and found this one book which was decently priced and initially got it funding from a crowed funding source. This is great to see an author have a vision of a new programming book and then finding a way to get it funded before writing it.

So with that out of the way the author plans on releasing 5 books with on prequel book at the end to discuss the math involved in this series. This subject alone can be daunting but is a really important topic in today’s computing systems. Writing an algorithm that can learn and predict outcomes is an important skill in today’s game programming.

As any tool in programming it comes down to understanding the needs of the problem and figuring out a great algorithm that solves this problem. Even if you’re not a game programming you may find this book enlightening on how AI can help your application easier to use.

The first chapter is filled with a large amount of introductory terms that the author does a great job at breaking down into terms us laymen can understand. Many AI systems try and emulate the human brain. The sad thing is our brain is one of the most complex systems known to man and is very difficult to replicate or even emulate. But we can break our brain down to 2 things, input and output. Input for us comes in many forms from all the nerves in our body to our hearing and eyes. We have programmed responses like when our hand grabs a hot cup of tea or coffee we instinctively will pull our hand away. Input is the touch and knowing it is hot. Our output is the reaction to pull our hand out of danger.

Anyways we could go on forever about the human brain and still never fully understand how it works. But this is not why we are reading this book it is to learn how to break our problems down into something we can teach the computer to do. Each AI algorithm will take in some input and store this information in the internal state like out short term memory. Next this short term memory will be used to train the algorithm by storing it like our long term memory does.

There is a lot of really good information packed in the first chapter even though there were no code examples. This is more because the author wanted to explain how algorithms are developed and went to great lengths explaining this process.