Environment for MKT2 W.Pasman, 29 april 2009 Introduction The first year project "Media & Kennistechnologie" (MKT2) aims at learning students about artificial intelligence and let them put their knowledge into practice. The students are working in groups of 5 or 6 students. To let students put their knowledge into practice, the plan is to provide them with GOAL and an environment in which they can run their agents. The environment should encourage and motivate the students. This document discusses a number of alternatives. Requirements Requirements for the environment came from earlier slides from Iwein Borm and personal discussions with Koen Hindriks and Birna van Riemsdijk. We came to the following list of requirements: Multi-agent: each team needs multiple agents, each with its own specialization. The idea behind this is that the agents work together as a team. Graphics nice looking for first-year computer science students. Competition between the agents of various groups Environment stable: very well tested and used by others challenge: vague but real problem without well-defined path to solution. No advanced game tree search methods should be required for a good strategy. Simple, straightforward environment interface. No violence (Koen is afraid that some pacifict might boycot the exercise). Enough work to keep five first-year students busy for 3 ECTS (3*18=54 hours per person) a full tournament should be run in a few hours to 1 day. I would like to notice right away that most (computer science?) students that I see in the canteen love to play first person shooters like Wolfenstein, Medal of Honor etc. By deciding against violence we seem to reject the precise category our target group likes best. Also these FPS are interesting for team play, and well suited for multi-agent, so I think we are missing an opportunity here. Multi-Player Computer games An obvious starting point is to look at multi-player games. On mpogd.com we find an interesting and pretty complete overview into the following categories: action. In 99% of the hundreds of games in this category that I checked warfare is part of the game. In many cases the title is enough to guess it contains violence ("army, violence, defeat, combat, dead, warrior, siege..."). In some, violence is a small part of the game or intended to be funny (eg, hit the worms in your garden) but I assume we still have to drop these. Of the remaining ones, a few are not competetive (e.g. "moon base" and "club marian" where you customize your character, go for a drive and explore the island. You can chat with people from around the world, do a little smash up derby and dance with your friends in this new 3D persistent world.). This leaves us with sport games as racing, hockey, baseball, and some variations of existing sports like space hockey (uniballcentral.net). board. It seems that even many board games could be classified as "violence". Many board games play some war, including armies, tanks etc. But also many more traditional board games such as stratego, checkers and chess you also have to defeat your opponent by killing his pieces. There seems not much difference between having a stronger piece on the board or a stronger spaceship or a more powerful incantation to play with. Board games are usually turn taking unlike the action games that are real-time. card. card games. I did not look at these. classic. This contains many games that could be just as will in other categories, like Backgammon Bingo, Bridge, Chess, go, etc. Four-in-a-Row is one that seems to fit best here. flight sim. In multiplayer flight sims you do a dogfight against other players (either with planes or with spacecraft). Allegiance is an extreme version where you play together with up to 200 other players and must well organize your attacks. In Astrobattle your main job is to design and program your battle ship. Some variants combine flight sim with trading to earn money and extend your ship (eg, Jump gate), leading to overlap with the role-playing category. Multi-user Dungeon. In MUDS you play a character of your choice, either normal life roles like manager, militair or priest, or fantasy figure like elves, dragons, trolls, giants. You "improve" your character by killing, getting gold, getting experience, and going to other levels. MUDS are text-based, no fancy graphics. role playing. Not unlike MUDS but with graphics and a higher fraction of these are more non-violent. There are quite some games targeting young girls, something I did not notice in the other categories. For instance 5street is a bit like the Sims: have your character buy fashion and get dressed nicely, dance, buy pets, They organize dance competitions and video creation contests. In avirtualhorse you breed horses, get a job as a vet, play horse games, build a range, etc. In angels online you enter in the angel lyceum. Your tutor assigns some quests to you. Adventures also fall in this category. For instance in Tale in the Desert III your character advances by completing, participating in, or leading large projects. Negotiation and politics play a very large role in how the game is played out. There are thousands of games in this category, I quickly browsed the titles and scanned maybe 10% of it in more detail. sports. Any sport you can imagine, soccer, fighting, racing, dancing, skating, deer hunting. Also includes "manager" games where you manage some sport, buying players, setting tactics etc. strategy. Mostly games where you manage, for instance battle strategy, politics, city state management. Some play in a medieval setting, others in world war 1 or 2, others in current time, yet others far in the future in interstellar space. There are thousands of games in this category, I checked a few %. puzzle. This category seems to contain a remainder of board games, adventures, action and word puzzles. On http://www.spogg.com/ there are some interesting attempts to turn a single-player or turn-taking game into a multiplayer action game. For instance they modified solitaire, tetris, scrabble (see also mrallen.com/scramble and scrabulous.com) and crossword puzzles. I am amazed that I can not find any multi-player medical simulator. My idea here was that there is a good amount of specialization in medical operations like surgery and first aid, and that this might naturally lead to cooperating agents in a simulator environment. However, all the medical simulators that I can find are single player. One, 911 Paramedic, reports that you are cooperating with a partner, but all reviews I found talk as if this is a single-player game just like the others. See also [Koster06] and [Ismith06]. Games: first analysis Most action games contain violence and have to be dropped. Most remaining ones do not have a competitive element. We are left with sports games like hockey, skating, racing (grand prix, drag racing, etc), and some odd variants of sports like space hockey (uniballcentral.net). Team sports like football and hockey seem a promising category. In the racing games that I am aware of there is no real team cooperation (multiple cars racing as groups against each other), every racer is on his own. Many board games have violent aspects, I'm not sure whether Koen would accept them. A problem with board games is that the number of players is very limited, it seems hard to turn those into a challenging multi-agent problem. Card games seem to have the same problem, which is why I did not look at card games. Games I found in the classic category, like Backgammon Bridge and Chess need game tree analysis to let a computer play such a game well. Also you play these with two or four players only, hence lack the multi-agent aspect. Flight simulators revolve about dogfighting hence fail the non-violence requirement. MUDs also have violence (although unnessecary, I did not encounter any without violence) and are out. In the role playing category there is quite some choice without violence. Unfortunately quite some of them are for young girls, not exactly our target audience. Also many lack a competition aspect. But of the remaining role plays the acquired level, status and wealth might be used as a basis for a multi-player competition. Creating teams in a RPG seems to give interesting possibilities. Sports. In the action category we already touched upon a number of sports that seem to meet our requirements. Strategy. In the traditional strategy games like SimCity, Settlers and various Tycoons, the player is the general manager making the strategic decisions. In a multi-player strategy game however multiple managers could compete. I imagine that all agents start as standard citizens, and that each team is allowed to add say 10 new citizens that may cooperate to get to important positions. The citizens vote regularly and might start riots if their city gets mis-managed. Final score might be a function of popularity of your agents, wellfare of the city (cities), etc. I assume these games can run much faster than the usual pace, so that it would be possible to play a game that could take multiple days in just one day. Selected games in detail After the above crude selection, this section selects and focuses on a few games. Team Sports There are numerous team sports that seem to fit the requirements. We compare a few, where we focus on soccer as this appeared a succes for the MKT2 project in the previous years. Space Hockey Just to show that there are many team sports and also variations of those that fit the requirements, I start with a variant of hockey: space hockey [UniBall09]. In space hockey, you maneuver, you pass and you shoot in order to score goals. But instead of steering hockeyers, you steer a small spacecraft with two boosters and all collisions are elastic. Key to making a goal is good teamwork. Figure 1. UniBall Space Hockey Fleeble Soccer In previous years, the MKT2 project used multi-agent soccer. 2x7 agents play soccer against each other. The advantage of this is that we have all the source code. Apparently fleeble has its own custom implementation of soccer, it does not link to any international competition like RoboCup. Also it does not allow real robots to be attached. Also the simulator only has a 2D view, while most current soccer simulators provide 3D views on the arena. Figure 2. Current soccer simulator built in Fleeble RoboCup Soccer There is an international football competition via RoboCup (http://www.robocup.org). Amongst others, they have two simulation leagues where computer agents compete in. One is robocup soccer, the other robocup rescue (below). Robocup soccer simulator is available via http://sserver.sourceforge.net/downloads.html. A quick scan of the manual shows that all agents have "percepts" of the fields and a large range of actions and sensors including auditory. The simulator and the visualization module are provided as free separate modules. There is a 2D and a 3D viewer available (Figures below). Figure 3. 2D view on the robocup soccer simulator. From [NTT09] Figure 4. 3D view of robocup soccer simulator. From [NTT09] In order to get this running with GOAL, we need to connect GOAL to Unreal game engine. The ability to connect GOAL to unreal seems a good idea to get students motivated. Via the USARSim (Unified System for Automation and Robotics Simulation) it is possible to hook up real robots to RoboCup Rescue [Balaguer08]. The first version ran directly on Unreal 2 game engine. The advantages of this are that the Unreal 2 game engine has a built-in physics simulator that is developed and improved rapidly, and that the Unreal Ed bundle that allows creation, import and export of complex geometry and textures. It is not clear how realistic this sim is, for instance the "Karma Mass Test" indicates serious deviations from real physical behaviour [Zaratti06] such as a gravitational constant that is twice its expected value on earth, and a time scale factor of 1.1. It is not exactly clear which platforms are supported by USARSim, some mention "windows only", some Windows and Linux [Wang09], while [Carpin07] states that it it system independent and that OSX is also supported. It is not clear to me which parts of Unreal would be needed and if we can distribute them with an Unreal-based environment in a single installer for GOAL. Instead of trying to hook GOAL to the unreal engine in order to connect to Robocup, it may be a good idea to hook into Gamebots (http://gamebots.planetunreal.gamespy.com). Gamebots is a modification to Unreal Tournament that allows characters in the game to be controlled via network sockets connected to other programs. The advantage of this would be that we use existing and well developed and supported software to connect GOAL to unreal, instead of creating this software ourselves. It is not clear to me whether we could do this and still connect to the robocup soccer simulator. But at least gamebots is supported for Mac, Linux and Win32 (not Win64 apparently) [Kaminka02]. The USARSim seems to use a modified version of gamebots [Wang05]. There are other ways to connect GOAL to robots, for instance MobileSim [MobileSim09], Gazebo [USCRobotics09], Gostai, and Webots. MobileSim is based on Stage [Stage06] hence is 2D. Gazebo [Gazebo06] is 3D. Matthew Johnson thinks Gostai does not yet support enough robots to be useful for him. Delving deeper into this is out of the scope of this report. As a sidenote, I think that most football sim fans will be disappointed with the simulation renderings above. For comparison, the figure below shows a rendering from fifa09 [FIFA09], a current state of the art football simulator. Figure 5. Screen snapshot from fifa [FIFA09] Robocup Rescue The RoboCup Rescue website has numerous simulators, a 2002 version in various versions, a 2003 version, a number of disaster simulators, traffic simulators etc. The UvA also is building a simulator for large scale urban disaster scenarios, referring also the RoboCup rescue. I discuss two main tracks: the Virtual Robot Simulation and the Rescue Agents. Virtual Robot Simulation As with Robocup Soccer, the RoboCup Rescue Virtual Robot Simulation [RobocupRescue07] runs on Unreal engine and can be connected via the USARSim. The UvA in Amsterdam organizes the 2009 competition. I did not find information about what the competition is exactly about. It seems the competition involves mainly comparing how well the various teams managed to act in the disaster, there is no direct competition between rescue teams. There is a company in Delft [e-Semble07] that makes nice renderings of rescue actions, we might consider cooperating with them. They also work on safety and security issues, and road and traffic organisation, both for training emergency scenarios as for support during design. Figure 6. Snapshot from RoboCup Rescue Virtual Robot Simulation Figure 7. Snapshots from e-Semble simulations. RoboCup Rescue - Rescue Agents This simulator is simulating an urban disaster situation with four elements: burning buildings, dying civilians, emergency workers, and a road network connecting them all [RescueAgents09]. Competitors are expected to provide software contributions which interact with this disaster-simulation code in real time for exactly five minutes. The objective is to maximize the extent to which the buildings remain standing, and the extent to which civilians and emergency workers remain unharmed. There are civilians and platoon agents acting in the simulator. The civillians are to be rescued, the platoon agents are the ones controlled by the competitor's software. The platoon agents come in three types: ambulance team, fire brigade and police force. The code is in C and Java (http://www.sf.net/projects/roborescue). The plan viewer is in Java, maybe making the integration with goal probably a bit easie; but most is in C. Communication between C and Java seems via TCP sockets, which also may easen the issues. The code base is small (a few Mb) and in all this seems not too hard to connect to GOAL. Figure 8. Robocup rescue Agents simulation. From [RescueAgents09]. Multi Agent Contest Utrecht university and the Technical University of Clausthal organize a yearly multiagent contest [Dastani07, Dastani09]. The typical scenario (2006) looks like this: two small teams of gold miners find themselves exploring the same area, avoiding trees and bushes and competing for the gold nuggets spread around the woods. The gold miners of each team coordinate their actions in order to collect as much gold as they can and to deliver it to the trading agent located in a depot where the gold is safely stored. More recent scenarios tend towards a more dynamic world. The code is all in Java. Usually the agents are in one of two modes: exploring or collecting gold, and there may be a leader coordinating the search. Other than that there is not much differentiation in the agents. QuickTime™ and a TIFF (Uncompressed) decompressor are needed to see this picture. Figure 9. Left: Screen snapshot from the 2007 multi-agent contest where two teams of agents collect gold. Right: snapshot from the 2009 contest where two teams try to catch cows. Agent Trading Competition (TAC) The trading agent community [TAC09] has defined two trading agent competition games: the TAC SCM and the TAC Classic. TAC SCM TAC SCM was designed to capture many of the challenges involved in supporting dynamic supply chain practices (Figure). It runs on Java 2 SE version 1.4. A TAC SCM game (see Figure 10) consists of a number of \days" or rounds where six personal computer (PC) assembly agents (or "agents" for short) compete for customer orders and for procurement of a variety of components. Each day, customers issue requests for quotes and select from quotes submitted by the agents, based on delivery dates and prices. The agents are limited by the capacity of their assembly lines and have to procure components from a set of eight suppliers. Four types of components are required to build a PC: CPUs, Motherboards, Memory, and Disk drives. Each component type is available in multiple versions (e.g. different CPUs, different motherboards, etc.). Customer demand comes in the form of requests for quotes for different types of PCs, each requiring a different combination of scarce components. A game begins when one or more agents connect to a game server. The server simulates the suppliers and customers, and provides banking, production, and warehousing services to the individual agents. The game continues for a fixed number of simulated days. At the end of a game, the agent with the highest sum of money in the bank is declared the winner. Figure 10. In TAC SCM an agents task is to manufacture PC’s, win customer orders, and procure components. There seem possibilities to combine such agents with our work on negotiation, which might make this MKT2 project interesting for many people in the group. Although the scenario calls for a single agent for each team, there are several sub-tasks for each agent that could well be performed by different agents working as a team: negotiate supply contracts, bid for customer orders, manage daily assembly activities and ship completed orders to customers [tac06]. TAC Classic In TAC Classic, each "agent" (an entrant to the competition) is a travel agent, with the goal of assembling travel packages. Each agent is acting on behalf of eight clients, who express their preferences for various aspects of the trip. The objective of the travel agent is to maximize the total satisfaction of its clients (the sum of the client utilities). TAC version 4 runs on Java 2 SE 1.4. I have not seen any neat real-time visualization, it all boils down to spreadsheets and statistics. Figure 11. Illustration of the environment a TAC agent operates within. To the left are its eight clients and their preferences, in the middle all its competitors lined up (7 competitors/game), and to its right are all the auctions (28 simultaneous auctions of three different types). God Sims, Manager Sims God sims are sims where you – the player – determine a goal and the inhabitants of your world then act to reach these goals. I think they are called "god sims" because no inhabitant will directly dispute the choice of your goals, though they may indirectly do so by going to strike or moving away. Less frequently the term "manager sim" is also used for these simulators. I see possibilities in this type of sims to combine the ideas of TAC with nice graphics and real-time gameplay. However, it appears difficult to find a sim actually realizing these possibilities. To show this I discuss a number of them and whether they might be modified to come closer to my idea. Civilization Figure 12. Snapshot from Civilization. In Civilization, you match wits against the greatest leaders of all time in a quest to build the ultimate empire. Before starting a game, players must make a lot of decisions that will affect how the entire game is played. These options vary from choosing different types of world conditions to deciding which Civilization they will play as. Each of the ages, from Ancient to Future, has its own set of different technologies to research, and what you choose to research will make your civilization unique, and it will change your chances for survival. If players didn't get a chance to research something they might be able to barter for it from neighboring civilizations. Civilization as computer game is a single-person game but you play against computer controlled opponents. Hence, the simulator itself seems multi-player. There is a free open source version of Civilization available [FreeCiv09]. Fighting occasionally happens in Civilization, but it might be a reason to drop it. Figure 13. Snapshot from the free civilization game SimCity Figure 14. Snapshot from SimCity The objective of SimCity, as the name of the game suggests, is to build and design a city, without specific goals to achieve. The player can mark land as being zoned as commercial, industrial, or residential, add buildings, change the tax rate, build a power grid, build transportation systems and many other actions, in order to enhance the city. The player may face disasters including: flooding, tornadoes, fires (often from air disasters or even shipwrecks), earthquakes and attacks by monsters. In addition, monsters and tornadoes can trigger train crashes by running into passing trains. Later disasters in the game's sequels included lightning strikes, volcanoes, meteors and attack by extraterrestrial craft. On January 10, 2008 the SimCity source code was released under the free software GPL 3 license under the name Micropolis [Micropolis08]. Lincity [Lincity04] is another very similar software package that is also free but seems to have even slightly better graphics. In Civilization you do not play against computer opponents. But it may be possible to modify the code to allow multi player games. SimCity competitions have been organized (for 7th graders in middle school) with SimCity [Wells03] but these were based only on the final population size, players did not interact directly in the game. RailRoad Tycoon The objective of the game is to build and manage a railroad company by laying track, building stations, and buying and scheduling trains. You also must build the railroad in a certain amount of time to win the game. The game also has other railroad companies attempting to put the player out of business with stock dealings and "Rate Wars". If this had been coupled to scarce production of railroad tracks and coal, this could set for some interesting negotiations between the players. Figure 15. Railroad Tycoon II, for PC. There are quite some similar simulators (check for instance http://www.railserve.com/Computers/), e.g. "1830: Railroads & Robber Barons" based on Avalon Hill's board game of the same name, A-Train (available for free now), Crayon Rail Fanatics (Shareware) etc. It is very likely that an open source railroad tycoon simulator is available somewhere. Settlers Figure 16. Settlers: Rise of the Empire on PC Unlike other "God-sims", The Settlers is a much gentler game. There's none of the fire and mythology of Populous, or the cut'n'dried world of SimCity. The Settlers is almost rural in it's approach, very laid back and therefore quiet [sic] relaxing to play. The calm way in which your worker saunter around the playscreen, chopping trees, fishing in the rivers or feeding the pigs (with the absolutely delightful oinks eminating from the speakers), it's an undemanding but treacherously addictive game. As with SimCity, you have no direct control but you select targets (such as animals to be hunted or structures to be built) and settlers themselves following natural instincts and cues. Put down a woodcutter shop in town, then click on a forest, and people will naturally start chopping down trees and taking them to the woodcutter to create lumber. As with SimCity, this is not a multi-player game but it might be possible to turn it into one. Settlers 2 has a multiplayer mode, where you can compete against other players via the internet. An open source version of Settlers called Widelands is available at [Widelands09]. It may be possible to modify this to our exact needs. Figure 17. Widelands. Air Traffic controller Although a bit different than the other manager sims, in the air traffic controller sim you also control "puppets" (in this case, planes) by giving them targets to meet. Figure 18. ATCsimulator2 In ATCsimulator2 [ATCSimulator2], your goal is to allow for the "safe and expeditious" flow of air traffic. Your main tools are the radio contact with the planes and the radar screen. It is your job to assist the pilots arriving at airports inside your airspace boundaries by lining them up for an approach (preparing for a landing). It is also your job to assist pilots departing your airspace by handing them over to the Air Route Traffic Control Center (ARTCC) controller at the appropriate time or fix location. Air Traffic Controller 3 [ATC3] goes further than this, also including taxiing procedures and maps of the airport itself. Figure 19. Snapshot from ATC3. There is an online ATC simulator at http://www.atc-sim.com. It might be interesting to hook GOAL agents onto that (but we have to check whether that would be acceptable for them). However this simulator looks way less attractive than the sims above. Figure 20. Snapshot from ATC-SIM. There is an open-source ATC project at http://sourceforge.net/projects/airtraffic/. However this project seems dead. Another open source project is at http://www.planetsourcecode.com/URLSEO/vb/scripts/ShowCode!asp/txtCodeId!66211/ lngWId!-10/anyname.htm. All ATCs score low on competition, as there is usually only one ATC per airfield. This might change if multiple airfields get into the equation and planes can choose between airports. However I am not aware of such ATC simulators. Wrap-Up Table 1 shows a summary of our conclusions. The team sports like hockey and football fit the requirements nicely. For soccer, there exist a number of software packages that allow switching between real robots and the virtual players. Maybe a drawback is that these sports allow only two teams playing against each other. That requires a tournament and more complex scoring to determine the "winner". Another drawback is that the existing visualization modules lack the "wow factor" of modern games, even though some of them have 3D rendering engines. The player agents in the game have only a small degree of specialization: defend or attack. Robocup Rescue improves a bit on the renderings. The graphics look more appealing, though they are not state of the art. There is much more differentiation between the agents as there are at least three groups of agents: firemen, policemen and ambulance personel. However the competition aspect here is weak. TAC offers very nice competition aspects, offers easy integration with GOAL and also it offers interesting possibilities to couple to our negotiation project. Unfortunately its graphics are very dull, mainly graphs and numbers, and maybe there is not even a realtime visualization. Table 1. Comparison of discussed applications along a few dimensions. Competition gets a + if there is direct competition between teams, if there is need to cooperate between teams, and if there is an international competition.. ease of agent integration differences with GOAL Java + - Fleeble Soccer RoboCup soccer space hockey robocup rescue: VRS robocup rescue: rescue agents Multi Agent Contest TAC SCM TAC Classic God/Manager Sims ATC ATC3 graphics wowfactor - competition + use real Link robots with nego. - ? - + + ++ + + + + - ± + - - -? - + - - ++ - - + + - + ? - --++ +++ +++ - - + + - --- + + ++ - - - Some of the God/Manager sims score very high on the wow factor. Unfortunately they all will need modification to turn them into a real multi-agent competition platform. More modification seems necessary to allow agents to work as citizens in teams, to enable differentiation of their tasks. Additionally I am not aware of any Java based god-sim so we will require (1) platform-dependent code (2) use of JNI to couple them to Java. I still see the potential here and I may have missed that perfect variant, but as it is now this requires just too much modifications to get what we would like. The ATC category shows wide variation. Some look fantastic, some look poor. In most, the agent differentiation probably will be poor, as all traffic control agents basically would have the same job. But ATC3 covers much more of air traffic control and might give challenging opportunities for a multi-agent setup. Verdict If we ignore the possibility to link with real robots, TAC SCM appears to be the winner, even if we cross out one + against a - for its very low wow factor. If we consider its potential for coupling with the negotiation project, this one seems very attractive indeed. It would have been perfect if we would have found a God sim that combines TAC SCM with some nice graphics and some real-time game play. Unfortunately we did not find existing software close enough to our needs. Rococup Rescue comes on a good second place, and offers potential to couple to robots for an additional student motivation. References [ATCSimulator2] ATC simulator 2: Legacy Simulations from aerostudios 2(2009). http://www.atcsimulator.com. [ATC3] I am an Air Traffic Controller3 (2008). http://www.atc3support.com. [ATC-SIM] ATC-Sim video tutorial. http://www.youtube.com/watch?v=2IzzPS1jZuU. [Balaguer08] B. Balaguer, S. Balakirsky, S. Carpin, M. Lewis, C. Scrapper. "USARSim: a validated simulator for research in robotics and automation". Workshop on "Robot simulators: available software, scientific applications and future trends", at IEEE/RSJ IROS 2008. https://robotics.ucmerced.edu/Robotics/publications. [Carpin07] Carpin, S., Lewis, M., Wang, J., Balakirsky, S., & Scrapper, C. (2007). USARSim: a robot simulator for research and education. Proc. IEEE Int. Conf. on Robotics and Automation (ICRA 2007, Roma, Italy), p.1400-1405 . http://user.it.uu.se/~annikak/lewis-usarsim.pdf. [Dastani07] Dastani, M., Dix, J., & Novák, P. (2007). Agent Contest Competition: 3rd Edition. http://www.springerlink.com/content/?k=multi-agent+contest [Dastani09] Multi Agent Contest. http://www.multiagentcontest.org. [eSemble09] XVR (2009). http://www.esemble.com/xvr/index.php?ID=435&t=uk&s=432 [FIFA09] EA Sports: Let's FIFA09. http://fifa09.ea.com/us/screenshots. [FreeCiv09] FreeCiv: cause civilization should be free! http://freeciv.wikia.com/wiki/Main_Page. [Gazebo06] Gazebo: 3D multiple robots simulator with dynamics. http://playerstage.sourceforge.net/index.php?src=gazebo. [Ismith06] Ismith (2006). An MMO Built Around Healing? http://kotaku.com/gaming/mmorpg/an-mmo-built-around-healing-158258.phpAn. [Kaminka02] Kaminka, G. A. et al. (2002). Game Bots: a Flexible test bed for multiagent team research. Communications Of The ACM January 2002/Vol. 45, No. 1. http://usl.sis.pitt.edu/ulab/pubs/ p43-kaminka.html. [Koster06] The Healing Game. On Raph Koster's Website, March 2nd. http://www.raphkoster.com/2006/03/02/the-healing-game/ [LinCity04] Lincity - A City Simulation Game (2004). http://lincity.sourceforge.net. [Micropolis08] Micropolis (video game). http://en.wikipedia.org/wiki/Micropolis_(software). [MobileSim09] Mobile Robots: MobileSim. http://robots.mobilerobots.com/wiki/MobileSim [NTT09] Research: RoboCup Soccer Simulation. http://www.ntt.dis.titech.ac.jp/web/jResearch.html [RobocupRescue07] Rescue Virtual Robot Simulation (2007). http://wiki.cc.gatech.edu/robocup/index.php/Rescue_Virtual_Robot_Simulation [RescueAgents09] Robocup: Rescue Agents. http://www.robocuprescue.org/wiki/index.php?title=Rescue_Agents [Stage06] Stage: 2D multiple-robot simulator. http://playerstage.sourceforge.net/index.php?src=stage. [tac06] Collins, J. et al. (2006). The supply Chain Management Game for the 2007 Trading Agent Competition. Carnegie Mellon University, PA. http://www.sics.se/tac/tac07scmspec.pdf. [TAC09] Welcome to the trading agent competition. Competitive Benchmarking for The Trading Agent Community. http://www.sics.se/tac/page.php?id=1. [UniBall09] UniBall HQ. http://www.uniballhq.com. [USCRobotics09] USC Robotics Research Lab. Player, Stage and Gazebo. http://wwwrobotics.usc.edu/?l=Projects:PlayerStageGazebo [Wells03] Wells, A. J. (2003). SimCity Competition. Bellefonte Area School District. http://www.basd.net/staff/awells/SimCity%20Instructions.htm. [Wang05] Wang, J. (2005). USARSim: A Game-based Simulation of the NIST Reference Arenas. http://usl.sis.pitt.edu/wjj/USAR/Release/USARsim-manual.pdf [Widelands09] Widelands. http://wl.widelands.org/wiki/DevelopersPage [Zaratti06] Zaratti, M. (2006). Karma Mass Test. http://usarsim.sourceforge.net/ and select documents.