Author: Leon S. Sterling & Kuldar Taveter
Publisher: MIT Press, 2009
Aimed at: Academics wanting to look as if they understand agents
Pros: Might help you find some references for a research proposal
Cons: Almost completely vacuous
Reviewed by: Mike James
This book takes a classical academic approach to what otherwise could be a practical subject. And in this instance the approach fails.
The whole idea of agents and their use is still controversial with most programmers and architects having a fairly clear idea what an agent is and having no real idea how to implement one. Part of the problem is that the very term "Agent" carries with it connotations of intelligence and, as we all know, artificial intelligence is really not up to very many real world tasks even if its rate of improvement is impressive.
So in "agents" we have a potentially important topic but you should notice that this book is about modeling with agents, which sort of removes it from the arena and places it off into the stratosphere where we are free to talk about things rather than do anything. From Chapter One it is clear that talking about doing things is the main emphasis of this book. It is the sort of volume that is designed to look good on a list of the authors' publications, justify any grants obtained and generally give the impression that progress is being made.
The book gives a history of programming methods with much discussion of what software developments are all about. Then we move on to "concepts" - which is an opportunity to clarify in minute precision what would otherwise be obvious. Chapter Three probably has claims to be the core of the book and it deals with models using a "running case study" based on the design of Tamagotchis. The idea that a virtual pet is a good example of an agent architecture is a little difficult to swallow, but it at least provides an opportunity to explain how a Tamagotchi works and draw lots of diagrams conveying the structure of the environment and system. Most of this could just as well be handled using a non-agent approach as the only real extra difficulty in designing a Tamagotchi is in the AI needed to give it a personality. This is discussed briefly in the form of a few Prolog clauses which would prove totally inadequate in the real world. And so the chapter continues, trying to convince the reader that something useful is being imparted.
From here the book proceeds in the same way - talking about vague concepts of code quality and security - both of which seem quite easy and reasonable topics when viewed from such a lofty height. Even when we reach the chapter on agent programming platforms and languages the academic distance is maintained. Each of the systems is described at the level of a "hello world" introduction in about four pages.
The second part of the book attempts to move into even more practical territory with a look at applications - only these are applications of the modeling methods not real systems and so we are still working at a level of abstraction that makes things look impressive without actually doing anything at all.
If you are an academic hoping to carve out a chunk of the subject and plan to further the art of writing fairly pointless tomes that make the practical look abstract then you might need to read this book - simply because it is part of the game you have chosen to play. Otherwise you can safely ignore it.