-
Notifications
You must be signed in to change notification settings - Fork 1
Home
Disributed MARLA (Multi Agent Reinforcement Learning Application) has been developed by Malte Eckhoff, Christian Hüning, Jason Wilmans and Sven Dettmers during a project course in 2012 at Hamburg University of Applied Sciences.
MARLA is both a framework and a toolkit for working with Reinforcement Learning Agents and related problems. It enables you to develop your agents in a distributed environment without having to bother about technology. You can fully concentrate on the artificial intelligence problem at hand.
Thus MARLA as a framework offers a variaty of services like persistent saving of your agent learning data to a filebased (and therefore transportable!) Database, network communication between the different application pieces and storage of statistical data for later analysations of your agentsystems and how well they perform.
MARLA as a toolkit enables you to run different server instances each loaded with a certain problem or game logic and then to connect as many AI-Client instances to these servers. Each of the clients may have a different approach of solving the problem on the server. Thus in a competitive scenario you can have different approaches play against each other. After a couple of games finished you can make good use of the Overseer Tool and analyse the performance of your AI-Clients. Since the Overseer is standalone and network capable as well, a number of people can analyse in parallel, each concentrating on a specific aspect. All applications come with a Graphical User Interface.
First you should get yourself an overview of the three componencts MARLA is made of. To do so, read the MARLA Modules Quick Overview
Now you should check for yourself whether or not you need to extend MARLA. This might be the case if for example you want to use a neuronal net for saving learning data instead of a database, or if you want to make use of RL Algorithms other than those already implemented in the Agent Provider Component.
If you can answer this with 'Yes' you should proceed with the MARLASourceDevGuide
Otherwise the MARLAUserGuide will be sufficient.