MADRAS - multiagent distributed resource allocation simulation

MADRAS was a project I did as an undergraduate majoring in AI at the University of Amsterdam together in 2006 and 2007 with Hylke Buisman and Gijs Kruitbosch. The project was supervised by Ulle Endriss and was part of the honour’s programme in stimulating undergraduate independent research. MADRAS was written in Java and is distributed under the terms of the GPL.


MADRAS is a bit of software which can be used to compare the effects of different negotiation policies in multiagent systems. It does this by simulating negotiation between agents who have individual valuation functions and own a certain set of indivisible resources, finally measuring the social welfare of the final allocation of resources in the society.

Here you can see how the A* search algorithm deals with the centralized distribution of resources amongst 2 agents with separate valuation functions. It is easy to see that the complexity of this centralized distribution would increase exponentially as more agents are added. In societies with many agents who own many resources and have complex valuation functions, a centralized approach is not very feasible. MADRAS was made to research how agents might be able to find social welfare optima in a distributed fashion.

MADRAS runs cross-platoform and is freely available:

We have presented MADRAS at:

The Institute for Logic, Language and Computation

The NSVKI Student Conference

Engineering Societies in the Agents World Workshop 2007

The 3rd MARA get-together in Amsterdam is by nadya peek. she'd love to hear from you.