Do you know how IBM’s Deep Blue chess computer controversially beat champion, Gary Kasparov in 1997? It’s a search algorithm called min-max. This article describes how it works at a high-level.

Adversarial search is characterized by opposition or conflict. These problems require us to anticipate, understand, and counteract the actions of an opponent in pursuit of a goal. In chess, we must react to the moves made by an opponent while carrying out your own strategy.


When you’re deciding if you’d try a specific pizza, you may have some criteria that it passes. The pizza might be made by someone different with a different technique, but as long as it passes your set of rules, you’ll try it. This is a heuristic.

Often described as a rule of thumb, a heuristic is a rule or set of rules used to evaluate a state. It can be used to define criteria that a state must satisfy or measure the performance of a specific state.

A heuristic is used when a clear method of finding an optimal solution…


Remember our search algorithm trip to the beach? If not check out this article: https://rhurbans.com/plan-search-repeat. Our trip can be represented as a graph. What’s a graph? It’s a data structure used by algorithms to do smart things.


Suppose we’re going on a trip to the beach. It’s 500 km away, with two stops: one at a petting zoo and one at a pizza restaurant. We will sleep at a lodge close to the beach on arrival and partake in three activities. The trip to the destination will take approximately 8 hours…

We drive on and start getting hungry; it’s time for the stop at the restaurant. But to our surprise, the restaurant recently went out of business. We need to adjust our plan and find another place to eat, which involves searching.

After driving around for a…


The Turing test was created by Alan Turing in the 1950s to examine a machine’s ability to exhibit human-level intelligent behaviour. He called it the imitation game. Here’s what it’s all about.

The test involves a human evaluator exchanging conversations with two entities. One would be another human, and the other would be a machine. If the human evaluator cannot distinguish the human from the machine, then the machine would have passed the Turing test.

The original Turing test proposed that the conversation happens through text channels to avoid the machine having to generate spoken words or look like a…


Different families of algorithms solve different problems. We don’t necessarily need to be experts in the details of each one, but having a grasp on what problems they can solve, and how they generally work, equips us with more tools when making decisions.

Grokking Artificial Intelligence Algorithms, Manning Publications

Traditional search algorithms are useful where several actions are required to achieve a goal, like finding a path through a maze. These algorithms evaluate possible states and attempt to find an optimal path . Typically, we have too many possible solutions to brute-force.


History is filled with myths of “mechanical men” and “autonomous thinking” machines. Looking back, we’re standing on the shoulders of giants in everything we do. Here’s a brief look back at some AI history.

1950s: The term “Artificial Intelligence” is coined. The concept of artificial neural networks is introduced. The model of the Perceptron is invented. The LISP programming language is invented. Alan Turing proposes the Turing Test.


Algorithms are like a pita bread recipe. There’s a problem being solved (making good pita bread), ingredients required (pieces of input), a sequence of steps to follow (recipe instructions), and the resulting output, in this case, pita bread of a certain quality.

Grokking Artificial Intelligence Algorithms

Algorithms can provide the same output given a specific input, always — these are called deterministic algorithms; or they can result in a different output when the steps involve an element of randomness or uncertainty — these are called stochastic algorithms.

The algorithm for a .max(x, y) function might involve comparing two numbers to find the maximum. …


Data is everywhere. Data is defined as “information, especially facts or numbers, collected to be examined, considered and used to help decision-making”. We’re unconsciously using data all the time — you’re consuming this piece of data right now.

Grokking Artificial Intelligence Algorithms

Data comes in different shapes and sizes — the temperature right now at at the Arctic, the number of red wolves left in existence, the texture of the pasta I had for dinner.

It’s interesting that we can measure temperature in something we all agree on, like degrees Celsius, but measure the texture and taste of pasta entirely differently. …


Intelligence is a mystery — the more you learn, the more questions you have. Scientists, philosophers, and engineers all have different opinions about the phenomena that are both esoteric to some and seemingly simple to others. How do we build AI without knowing what the I is?…

Intelligence might mean solving problems — applying skills and experience to solving specific or general problems. I can make a sandwich because I learned the skill. Within that skill, there are finer skills, like how to pick up and use tools.

Intelligence might mean identifying problems — do I wait for instruction or…

Rishal Hurbans

Tech, people, and ideas. Author of Grokking AI Algorithms with @ManningBooks. Solutions architect​ at @Entelect. Founder at @viszentech and @ProlificIdea.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store