Daniel Flower Dot Com Banner

Market-oriented Programming

Developing applications where many individual agents interact with each other has the potential to create very powerful applications, however it can also be extremely difficult to ensure that the agents work together efficiently. It has been decades since someone realised that multiagent systems could benefit from mimicking the market economy, where each individual tries to attain it's own goals, each performing it's own cost/benefit analysis and taking the best (for itself) alternative. For my Agents class at the University of Auckland in 2005, I did a survey of the field of market-oriented programming, and then implemented an example. You download the reports below.

A Survey of Market Oriented Programming

A survey covering both early and contemporary implementations and theories regarding market oriented programming. Disclaimer: having been written in March 2005 in a very short time, it may be out of date and/or omit relevant studies. Provided "as is" :)


Automatic Division of Labour in Multiagent Systems

This is a report for a project I did in April 2005. It uses as an example a vritual farm where different products can be produced. The goal of the programmer is to create a multiagent system that maximises the amount produced. In my implementation, agents are "paid" for what they produce, and each agent simply tries to maximise its own profit. When considering that it takes time to change jobs, and that diseconomies of scale can decrease production in popular products, the agents soon specialise. An advantage is that if disaster should strike, such as when suddenly half of the agents stop functioning, the other agents can automatically reallocate themselves to a new, efficient configuration.


Comments for this page
I got a website!!!
posted by Daniel Flower on 11/12/2006 8:25:10 a.m. (NZ time)
My name is also Daniel Flower! just wondered what I would find if I searched my own name... bizzare. Have a good one

posted by Angel Pollard on 9/01/2009 4:48:54 p.m. (NZ time)
good luck
posted by Angel Pollard on 9/01/2009 4:49:04 p.m. (NZ time)
good luck
posted by Thuong on 1/10/2012 12:05:00 p.m. (NZ time)
Hi Raphael; that's a good question but with so much to say! Building such a game reuqries quite a bit of work between entity-model rigging, animation importing, level importing, biped physics, etc. I would use, since you are using C#, XNA as your base game engine, then work on 1. Importing a level from Blender (look into reading *.obj file formats), 2. Building 2D biped models as physical bodies using Box2D, and finally 3. Import animations for those bipeds so that you can move them around. Good luck!
Add your comment below
Your Name:
Comment Title: