Supervisor: Michael Hoffmann (mh55)
Good programming skills in either Java or C++.
Aims of Project
Consider following the situation: There are two people, each of them has a collection of different colored balls. For example person A has 2 red, 1 yellow and 1 blue ball. Also each person has an objective of what selection of colored balls he/she would like achieve. The two people can now start to negotiate. Offering 2 red balls for a yellow one and so on.... The negotiation will take place, some balls get exchanged, until either a certain time is up or both people don't want to trade any more.
For just two people this situation can be already tricky, but now imagine a whole network of these people (Agents). Each agents a selection of colored balls and an individual objective selection that they would like to achieve. The network structure restricts the communication between agents to only the ones that are linked together. The negotiation of making and accepting offers is no longer done by people but by computer programs for each agent.
The aim of this project is to create a computer program that allows the simulation of such a scenario.
The basic features of the product would be to handle different networks, starting selection, objectives of each agent and different computer programs controlling different agents.
Challenges presented by the project
The challenges in the project lie in
- defining and implementing a protocol on negotiation and trading between agents
- Creating and handling of graph structures
- Write your own agent controlling programs
- Analyzing and evaluating different agent controlling programs
The student will learn about multi agents programs, the communications between them and agent programming strategies.
Nature of End-Product
The end product is a mulit agent negotiation simulator. It is based on agents are located on nodes of a graph (network. The agent trade different colored balls.
- Analyzing skill needed to complete the project
- Gaining/testing these skills by proto typing in a two agent scenario
- Establish the communication protocol between the agents
- Implement simple agents programs
- Extend to multiple agent
- Position the agent in a graph
- Implement more agents programs
- Analyze your finding