Programming Game AI by Example


Mat Buckland - 2004
    Techniques covered include state- and goal-based behavior, inter-agent communication, individual and group steering behaviors, team AI, graph theory, search, path planning and optimization, triggers, scripting, scripted finite state machines, perceptual modeling, goal evaluation, goal arbitration, and fuzzy logic.

Information Visualization: Perception for Design


Colin Ware - 2000
    Ware's updated review of empirical research and interface design examples will do much to accelerate innovation and adoption of information visualization." —Ben Shneiderman, University of Maryland"Colin Ware is the perfect person to write this book, with a long history of prominent contributions to the visual interaction with machines and to information visualization directly. It goes a long way towards joining science to the practical design of information visualization systems." —from the foreword by Stuart Card, PARCMost designers know that yellow text presented against a blue background reads clearly and easily, but how many can explain why, and what really are the best ways to help others and ourselves clearly see key patterns in a bunch of data? When we use software, access a web site, or view graphics, our understanding is greatly enhanced or impeded by the way information is presented. By explaining in detail how we think visually, this book provides guidance on how to construct effective interactive information displays.This book combines a strictly scientific approach to human perception with a practical concern for the rules governing the effective visual presentation of information. Surveying the research of leading psychologists and neurophysiologists, author Colin Ware isolates key principles at work in vision and perception, and from them derives specific and effective visualization techniques suitable for a wide range of scenarios. Information Visualization offers practical guidelines that can be applied by anyone, and covers all facets of visual perception: color, organization, space perception, motion, and texture.* Major revision of this classic work, with a new chapter on visual thinking, new sections on face perception and flow visualization, an appendix on how to evaluate visualizations,and a greatly expanded chapter on color and color sequences. *New to this edition is the full-color treatment throughout, to better display over 400 illustrations.*From a leading researcher in the field of human perception who has brought together, in a single resource, all current scientific insight into the question of data visualization.

Pearls of Functional Algorithm Design


Richard S. Bird - 2010
    These 30 short chapters each deal with a particular programming problem drawn from sources as diverse as games and puzzles, intriguing combinatorial tasks, and more familiar areas such as data compression and string matching. Each pearl starts with the statement of the problem expressed using the functional programming language Haskell, a powerful yet succinct language for capturing algorithmic ideas clearly and simply. The novel aspect of the book is that each solution is calculated from an initial formulation of the problem in Haskell by appealing to the laws of functional programming. Pearls of Functional Algorithm Design will appeal to the aspiring functional programmer, students and teachers interested in the principles of algorithm design, and anyone seeking to master the techniques of reasoning about programs in an equational style.

Genetic Algorithms in Search, Optimization, and Machine Learning


David Edward Goldberg - 1989
    Major concepts are illustrated with running examples, and major algorithms are illustrated by Pascal computer programs. No prior knowledge of GAs or genetics is assumed, and only a minimum of computer programming and mathematics background is required. 0201157675B07092001

Nine Algorithms That Changed the Future: The Ingenious Ideas That Drive Today's Computers


John MacCormick - 2012
    A simple web search picks out a handful of relevant needles from the world's biggest haystack: the billions of pages on the World Wide Web. Uploading a photo to Facebook transmits millions of pieces of information over numerous error-prone network links, yet somehow a perfect copy of the photo arrives intact. Without even knowing it, we use public-key cryptography to transmit secret information like credit card numbers; and we use digital signatures to verify the identity of the websites we visit. How do our computers perform these tasks with such ease? This is the first book to answer that question in language anyone can understand, revealing the extraordinary ideas that power our PCs, laptops, and smartphones. Using vivid examples, John MacCormick explains the fundamental "tricks" behind nine types of computer algorithms, including artificial intelligence (where we learn about the "nearest neighbor trick" and "twenty questions trick"), Google's famous PageRank algorithm (which uses the "random surfer trick"), data compression, error correction, and much more. These revolutionary algorithms have changed our world: this book unlocks their secrets, and lays bare the incredible ideas that our computers use every day.

Algorithms Illuminated (Part 1): The Basics


Tim Roughgarden - 2017
    Their applications range from network routing and computational genomics to public-key cryptography and database system implementation. Studying algorithms can make you a better programmer, a clearer thinker, and a master of technical interviews. Algorithms Illuminated is an accessible introduction to the subject---a transcript of what an expert algorithms tutor would say over a series of one-on-one lessons. The exposition is rigorous but emphasizes the big picture and conceptual understanding over low-level implementation and mathematical details. Part 1 of the book series covers asymptotic analysis and big-O notation, divide-and-conquer algorithms and the master method, randomized algorithms, and several famous algorithms for sorting and selection.

Street-Fighting Mathematics: The Art of Educated Guessing and Opportunistic Problem Solving


Sanjoy Mahajan - 2010
    Traditional mathematics teaching is largely about solving exactly stated problems exactly, yet life often hands us partly defined problems needing only moderately accurate solutions. This engaging book is an antidote to the rigor mortis brought on by too much mathematical rigor, teaching us how to guess answers without needing a proof or an exact calculation.In Street-Fighting Mathematics, Sanjoy Mahajan builds, sharpens, and demonstrates tools for educated guessing and down-and-dirty, opportunistic problem solving across diverse fields of knowledge--from mathematics to management. Mahajan describes six tools: dimensional analysis, easy cases, lumping, picture proofs, successive approximation, and reasoning by analogy. Illustrating each tool with numerous examples, he carefully separates the tool--the general principle--from the particular application so that the reader can most easily grasp the tool itself to use on problems of particular interest. Street-Fighting Mathematics grew out of a short course taught by the author at MIT for students ranging from first-year undergraduates to graduate students ready for careers in physics, mathematics, management, electrical engineering, computer science, and biology. They benefited from an approach that avoided rigor and taught them how to use mathematics to solve real problems.Street-Fighting Mathematics will appear in print and online under a Creative Commons Noncommercial Share Alike license.