|Keywords:||Reinforcement learning, Machine learning, Evolutionary algorithms|
|Ownership:||This software was developed by the DFKI as well as by the Robotics Research Group and the University of Bremen and is being further developed under this responsibility. For questions and suggestions, please refer to the contact persons.|
The Maja Machine Learning Framework (MMLF) is a general framework for problems in the domain of Reinforcement Learning (RL) written in python. It provides a set of RL related algorithms and a set of benchmark domains. Furthermore it is easily extensible and allows to automate benchmarking of different agents. Among the RL algorithms are TD(lambda), CMA-ES, Fitted R-Max, Monte-Carlo learning, the DYNA-TD and the actor-critic architecture. MMLF contains different variants of the maze-world and pole-balancing problem class as well as the mountain-car testbed and the pinball maze domain.
A certain scenario which is studied is called a “world”. An example of such a scenario would be a robot that tries to find its way through a maze. In RL, the world is typically decomposed into the “agent(s)” and the “environment”. In the example, the robot would be the agent and the maze would be the environment. The MMLF adopts this view since it provides a natural modularization, which allows to write general agents capable of learning and to test them in a multitude of environments. All learning (optimization of behavior) is usually done within an agent while simulation of physics and other kinds of dynamics are performed within an environment.
The MMLF provides a powerful GUI, which allows configuring agents and environments, visualizing the learned behavior and its execution in the environment, and configuring and evaluating large-scale experiments. The MMLF is thus well-suited to get experience and insights into RL algorithms and to judge the advantages and disadvantages of methods based on empirical studies. The MMLF's main area of usage is in lectures and tutorials, where it helps students to understand the basics of RL. Further information can be found under http://mmlf.sourceforge.net.