In this book the author argues that the basis of what we consider computer intelligence has algorithmic roots, and he presents this with a holistic view, showing examples and explaining approaches that encompass theoretical computer science and machine learning via engineered algorithmic solutions. Part I of the book introduces the basics. The author starts with a hands-on programming primer for solving combinatorial problems, with an emphasis on recursive solutions. The other chapters in the first part of the book explain shortest paths, sorting, deep learning, and Monte Carlo search. A key function of computational tools is processing Big Data efficiently, and the chapters in Part II of the book examine traditional graph problems such as finding cliques, colorings, independent sets, vertex covers, and hitting sets, and the subsequent chapters cover multimedia, network, image, and navigation data. The highly topical research areas detailed in Part III are machine learning, problem solving, action planning, general game playing, multiagent systems, and recommendation and configuration. Finally, in Part IV the author uses application areas such as model checking, computational biology, logistics, additive manufacturing, robot motion planning, and industrial production to explain how the techniques described may be exploited in modern settings. The book is supported with a comprehensive index and references, and it will be of value to researchers, practitioners, and students in the areas of artificial intelligence and computational intelligence. |