Saturday, November 29, 2008

Starlings



This kind of natural beauty is what got me interested in swarm intelligence.

Saturday, November 22, 2008

3D Boid Flock Video


I made a new video with our SwarmVis tool. This flocking is created with traditional Reynolds boid rules. Check it out!



A higher resolution version of this 3d flocking is available (8.2mb quicktime).

Wednesday, November 19, 2008

ORTS Game AI Competition

Recently I came upon the ORTS RTS Game AI Competition which is an AI competition that is ran with ORTS, an open RTS engine.

The openness of the engine allows for several different sub-competitions within the competition. These include collaborate path-finding, strategic combat (bases and tanks), complete RTS games (buildings, resources, fog of war, units, etc.) and tactical combat (20 tanks, 50 marines, flat terrain).

As an added bonus, the games can be viewed with in 3D, 2D or simply just have it spit out text (images taken from the ORTS website):


I really wish I had time to work on this domain. I think it has a lot of interesting properties. All algorithms have to be robust (i.e., not dependent on individuals) a-la swarm system. The competitiveness introduces another dimension; it's not just search. There is plenty of enemy modeling and decision making that can be done. Plus, there are tons of learning that could go on. I'm sure some virtual creatures type research could be applied to build strategies. Also, I could imagine interesting research in playing 2v2 games, where agents have to pass messages and make joint plans. I need to find someone who is interested in working on this so that I can live vicariously through their work.

Here are some videos from YouTube, showing the action.
100 marine vs. 100 marine skirmish


Full 1v1 game

Monday, November 17, 2008

Tetrahedron Swarm


In my data visualization class, my group partner Niels Kasch and I have been working on a swarm visualization program (Niels has done most of the programming). It's not quite done yet, so a description of the software will come at a later date. I did however, want to show off one of my favorite domains: the three-dimensional tetrahedron swarm.


A high quality video of the tetrahedra (6.3mb quicktime) is available.


Here are some screenshots:




The shape is formed by agents adhering to the following procedure.

First, four corners are selected by the swarm via a simple election algorithm.
The agents follow the following rules:

  • If a corner, be attracted to the three other corners very slightly.

  • If not a corner, be attracted to the two closest corners with great, but equal, strength. That is, the output force vector of this rule is the sum of two vectors of magnitude f. Note that when an agent is on the line formed by its two closest corners, the forces cancel each other out.

  • Avoid any agents that get too close.

The behavior can be changed pretty easily. With only three corners (instead of four), a triangle is formed. With four corners, but corners are only attracted to the two closest corners, a square is formed. More complex shapes are hard to do with these sets of rules. However, more rules (such as forming a circle) can be added to make the edges more robust.

It is amazing that these simple rules result in such neat behavior. This is what made me interested in this topic.