Feed-Flee-Mate game projects
Description
This project requires you to develop an agent which survives and thrives in
the environment of the Feed-Flee-Mate game, utilizing only a single agent
paradigm.
The game was designed such that it resembles real environments and previously
used toy problems, without necessarily being identical to any of them. There
are many ways to be successful in the game. An agent can thrive just by feeding
on resources, without ever attacking another agent or mating. This multifaceted
success model was allowed such that the different paradigms can show their
strength.
The goal is not necessarily to develop "the best" agent possible (for that,
we may need to use more than one model), but to create the agent which is the
most natural expression of the paradigm.
You are expected that besides your chosen paradigm you will
use only very simple heuristics. The best choice would be if you would clearly
separate these two in your sourcecode.
We will allow one project to be "naive programming", namely hand optimized
Java code, not necessarily conforming to any paradigm.
Source code
Deliverables
- The program source code.
- It should be runnable in the context of the Yaes environment.
- It should have at least reasonable survival skills. For instance, there
should be at least one initial setup in which the agent survives
indefinitely.
- Write-up - about 5 pages in the IEEE two column format.
- The description of the paradigm, its short history. Key papers.
- How the paradigm was implemented in the agent. How the Feed-Flee-Mate
game was expressed in the paradigm. Which parts of the game were easy to express,
which were hard?
-
Experimental results. View the relative success of the game
- Presentation - about 30 minutes: 20 minutes talk (about 10 slides) and
10 minutes demo.
Questions to address in your writeup
- Which commands of the gamer are you using? For each command (moving, attack,
flee, mate, feed) specify if your are using the main paradigm for it FULLY,
PARTIALLY, NOT AT ALL.
- Does your agent exhibit social behavior? What about anti-social behavior?
Choices: yes with similar agents, yes with all agents, no.
- social behavior: the behavior of the agent is influenced by other agents
for mutual advantage
- antisocial behavior: e.g. exploiting interagent interactions, such that it
forces other agents to act against their interests. Purely self-interested
behavior does not count as antisocial behavior.
- Try to assess the benefits/disadvantages of your paradigm. Was your paradigm
- NOT SUCCESSFUL: paradigm is not comprehensive or expressive enough
- NOT SUCCESSFUL: difficult to program
- SUCCESSFUL: easy to program
- SUCCESSFUL: paradigm "helped"
- Which one of the other paradigms you wish you had available as well?
- Do you think if the game would be more complex, the paradigm would have
helped more?
- Did you observe any emergent behavior? Things which happened without being
programmed.
Choices of implementation paradigms
- SOAR.
- Flocking models.
- Social potential fields.
- Ant/pheromone based algorithms.
- Genetic programming (I assume that this will evolve a relatively simple
static behavior).
- Neural networks. (TAKEN)
- Affective computing.
- "Naive" programming