Term Project for
U1760,
Intelligent Agents
John Chia-chin Wang
National Taiwan University
The preliminary project report is
available here.
Original research paper is
also available online in PostScript format.
Click on the "Add Agent" button in the applet several times to add agents to the pool. Watch them interact through status shown in bars of four colors.
The flashing red bars indicate engagement between pairs of agents. The numbers underneath the names are the current accumulated wealth of the agent. When you want more agents into the pool, click on Add Agent. Clicking on Remove Stagnant Agent kicks out the oldest agent that has turned down the most number of collaboration opportunities. The Controlled Environment option requires each addition of agents be designated the same investment chunks and collaboration efficiencies, as well as a regulated encounter permutation.
Currently there are eight classes of agent strategies implemented. Program listings in Java for each strategy are available for the interested reader.
During each round of encounter, each of the two agents receive a history of the other. The history of an agent records whether its previous partner made a profit. Based on this history of its partner, an agent must make a decision to devote to the collaboration (by spending its investment chunk) or to hold back. If an agent's wealth changes after an encounter, this is put in the record as one engagement.
The profit or loss to each agent during a collaboration is computed according to
profit = 1/2 * ( 1 + q * (R - R') / (R + R') ) * ( c'R + cR' )where q is the quality of share, R my investment, R' partner's investment, c my effectiveness, and c' partner's effectiveness. In our CollaWorld simulator, q is set to 0.0. When an agent decides to cooperate, R is equal to its investment chunk; otherwise R is set to zero.
For interesting behavior that calls for detailed analysis, you may use the CollaCalc applet to compute the detailed profits to each agent during a collaboration. CollaCalc computes cases more general than those used in CollaWorld. For example, besides spending just zero when defecting, CollaCalc considers cases where there may be more serious results. An agent can cause a negative investment when it defects (the value of negligence). Of course, CollaCalc also computes the case where the quality of share is anywhere between 0.0 and 1.0.
The displayed results are the best calculated strategies for each agent (I or my partner) to choose under the situation. When short term choices conflict with that for the long term, there is a dilemma and agents must make a wise choice to profit from the encounters. That is precisely what CollaWorld had set out to investigate.
Created: June 6, 1997