Illogica
The science of artificial intelligence.

First, a couple of notes: I am a game developer, many of my examples will be from the standpoint of creating AI for use by games. Thus, the term "player" will be used frequently to describe a human interacting with AI agents.

Also, I am not in academia. These pages provide a broad overview of the field of artificial intelligence for non-technical people who are not familiar with the subject. This isn't a discussion of the latest & most groundbreaking theories about AI. If it were, these pages would be outdated as soon as they were written unless I devoted a lot of time and effort to keep up with the latest research in the field. As much as I would love to do so, the demands of my family and my work must come first.

That said, the basics of AI hasn't changed much over the years. Simply put, AI is the attempt to create a machine that thinks the same way we do. Most AI work outside of academia is focused on specific tasks. In game development, most AI work a centered around pathfinding, hazard avoidance, goal setting and goal resolution. Much of the AI work I've done professionally would be classified as simply "smoke and mirrors." Rather than writing a complicated routine for AI agents to look at the terrain and figure out which obstacles would provide cover, be good spots for an ambush and other such things, we simply have designers lay down markers that the AI can use as guide points to better accomplish their goals. Such solutions don't do much to mimic how the human brain works but it gives the illusion that the computer is much smarter than it really is. Making a computer smart is very, very hard. Making a dumb computer look smart is much easier (and computationally less intensive, which is important for game development.)

I remember someone saying 20 years ago that the problem with AI is that AI systems are very, very good at doing one narrowly focused task, but not very good at a broad range of tasks. That was true 20 years ago, and it's still true today. Facial recognition software, for instance, can remember facial characteristics and use that information to pick out a specific face from a crowd. Such software can even be extended to pick out a person who is wearing a disguise, though with arguably less perfect results. But that software would do a poor job at telling if someone at a poker table is bluffing. Likewise, one can write an AI that would design a specific city in a world based on some rules and guidelines. If the city would have to withstand assault from medieval weapons, for instance, an AI designer would likely give it a fortified wall complete with catapult towers. If the civilization doesn't have catapults, those towers would be replaced with parapets and dozens of archers. But that same algorithm would do a poor job of negotiating an end to hostilities with a neighboring kingdom before the city was put under siege.

To overcome these weaknesses, AI systems often use multiple approaches. An AI soldier in a game would use pathfinding, obstacle & hazard avoidance and group behavior to charge an enemy position. But different AI code would govern the behavior of the army commanders so that they could make good tactical decisions. Without that, the game would rely on scripted events to direct the movement of the troops. Because of their static nature, these events may or may not be intelligent decisions, and may even make the player feel cheated, such as an enemy squad magically appearing behind the player's army. With the tactics AI supplementing the individual AI, the end result is a real-time strategy game where AI opponents would exhibit intelligent behavior from the army's commanders all the way down to the individual soldiers on the front lines. Thus, the player would feel challenged but not cheated.

Some of the core AI technologies AI systems include:
Pathfinding


Back to Illogica