Multi-Agent Programming Contest

Last updated

The Multi-Agent Programming Contest is an annual international programming competition with stated goal of stimulating research in the area of multi-agent system development and programming.

Contents

History

In 2005, Jürgen Dix (Clausthal University of Technology), Mehdi Dastani (University Utrecht) and Peter Novák (Czech Technical University in Prague) have brought the contest into being and running. The competition originally focused on Logic programming of Multi-agent systems. The goals, raised in 2005, have proven to be a solid basis for multi-agent system development and are still valid:

  1. Identification of key problems
  2. To collect suitable benchmarks.

In 2007, a third goal has been added:

  • To gather test cases which require and enforce coordinated action. Although it is necessary to find a solution for the contest quest to win, the organizers pursue the intention that the solution is a system of cooperating autonomous programs that achieve the objectives together. They are also interested in how the contest participants develop the solution.

    Scenarios

    Food collectors

    Agents have to look for food and bring it to a depot on a two-dimensional grid world. Each cell can contain an agent, or food. The agents can only see a small part of the map. Initially there is no food available, it appears randomly during the game, so that agents need to search the map constantly in order to win. This scenario was used in 2005.

    Gold miners

    On a grid based map, teams of agents look for gold and transport it to the depot. As opposed to the food scenario, cells can also contain trees which block the agents and can form more or less complex labyrinths. Also, there are now two opposing teams competing for the gold. This scenario was used in the contests of 2006 and 2007. In 2007, the scenario was extended to allow the agents to carry more than one piece of gold, and to push opposing agents aside.

    Cowboys

    A grid based map contains trees, corrals, cows and agents. Two opposing teams try to drive as many cows as possible in ones corral. Cows behave using Swarm intelligence. They are also afraid of cowboys and try and run away. This scenario was used in 2008, 2009 and 2010. For the last two years, gates were introduced to make the scenario more challenging.

    Agents on Mars

    The 2011 contest introduces a scenario called agents on mars. Goal is to conquer as much space on mars as possible, using a team of cooperating agents. The challenge here is the higher complexity resulting from the introduction of five roles with different properties and abilities, which have to be used to scout, conquer, and keep the conquered land. The team HactarV2 from the TU-Delft won the 2011 competition while using the GOAL programming language.

    Related Research Articles

    <span class="mw-page-title-main">Wargame</span> Strategy game that realistically simulates war

    A wargame is a strategy game in which two or more players command opposing armed forces in a simulation of an armed conflict. Wargaming may be played for recreation, to train military officers in the art of strategic thinking, or to study the nature of potential conflicts. Many wargames re-create specific historic battles, and can cover either whole wars, or any campaigns, battles, or lower-level engagements within them. Many simulate land combat, but there are wargames for naval, air combat, and cyber as well as many that combine various domains.

    Distributed artificial intelligence (DAI) also called Decentralized Artificial Intelligence is a subfield of artificial intelligence research dedicated to the development of distributed solutions for problems. DAI is closely related to and a predecessor of the field of multi-agent systems.

    <span class="mw-page-title-main">Multi-agent system</span> Built of multiple interacting agents

    A multi-agent system is a computerized system composed of multiple interacting intelligent agents. Multi-agent systems can solve problems that are difficult or impossible for an individual agent or a monolithic system to solve. Intelligence may include methodic, functional, procedural approaches, algorithmic search or reinforcement learning.

    <span class="mw-page-title-main">Meta-process modeling</span>

    Meta-process modeling is a type of metamodeling used in software engineering and systems engineering for the analysis and construction of models applicable and useful to some predefined problems.

    The belief–desire–intention software model (BDI) is a software model developed for programming intelligent agents. Superficially characterized by the implementation of an agent's beliefs, desires and intentions, it actually uses these concepts to solve a particular problem in agent programming. In essence, it provides a mechanism for separating the activity of selecting a plan from the execution of currently active plans. Consequently, BDI agents are able to balance the time spent on deliberating about plans and executing those plans. A third activity, creating the plans in the first place (planning), is not within the scope of the model, and is left to the system designer and programmer.

    A problem solving environment (PSE) is a completed, integrated and specialised computer software for solving one class of problems, combining automated problem-solving methods with human-oriented tools for guiding the problem resolution. A PSE may also assist users in formulating problem resolution. A PSE may also assist users in formulating problems, selecting algorithm, simulating numerical value and viewing and analysing results.

    <span class="mw-page-title-main">Pathfinding</span> Plotting by a computer application

    Pathfinding or pathing is the search, by a computer application, for the shortest route between two points. It is a more practical variant on solving mazes. This field of research is based heavily on Dijkstra's algorithm for finding the shortest path on a weighted graph.

    <span class="mw-page-title-main">Intelligent agent</span> Software agent which acts autonomously

    In intelligence and artificial intelligence, an intelligent agent (IA) is an agent acting in an intelligent manner. It perceives its environment, takes actions autonomously in order to achieve goals, and may improve its performance with learning or acquiring knowledge. An intelligent agent may be simple or complex: A thermostat or other control system is considered an example of an intelligent agent, as is a human being, as is any system that meets the definition, such as a firm, a state, or a biome.

    <span class="mw-page-title-main">Mesh generation</span> Subdivision of space into cells

    Mesh generation is the practice of creating a mesh, a subdivision of a continuous geometric space into discrete geometric and topological cells. Often these cells form a simplicial complex. Usually the cells partition the geometric input domain. Mesh cells are used as discrete local approximations of the larger domain. Meshes are created by computer algorithms, often with human guidance through a GUI, depending on the complexity of the domain and the type of mesh desired. A typical goal is to create a mesh that accurately captures the input domain geometry, with high-quality (well-shaped) cells, and without so many cells as to make subsequent calculations intractable. The mesh should also be fine in areas that are important for the subsequent calculations.

    Multi-objective optimization or Pareto optimization is an area of multiple-criteria decision making that is concerned with mathematical optimization problems involving more than one objective function to be optimized simultaneously. Multi-objective is a type of vector optimization that has been applied in many fields of science, including engineering, economics and logistics where optimal decisions need to be taken in the presence of trade-offs between two or more conflicting objectives. Minimizing cost while maximizing comfort while buying a car, and maximizing performance whilst minimizing fuel consumption and emission of pollutants of a vehicle are examples of multi-objective optimization problems involving two and three objectives, respectively. In practical problems, there can be more than three objectives.

    Agent-Oriented Software Engineering (AOSE) is a new software engineering paradigm that arose to apply best practice in the development of complex Multi-Agent Systems (MAS) by focusing on the use of agents, and organizations (communities) of agents as the main abstractions. The field of Software Product Lines (SPL) covers all the software development lifecycle necessary to develop a family of products where the derivation of concrete products is made systematically and rapidly.

    Lateral computing is a lateral thinking approach to solving computing problems. Lateral thinking has been made popular by Edward de Bono. This thinking technique is applied to generate creative ideas and solve problems. Similarly, by applying lateral-computing techniques to a problem, it can become much easier to arrive at a computationally inexpensive, easy to implement, efficient, innovative or unconventional solution.

    GOAL is an agent programming language for programming cognitive agents. GOAL agents derive their choice of action from their beliefs and goals. The language provides the basic building blocks to design and implement cognitive agents by programming constructs that allow and facilitate the manipulation of an agent's beliefs and goals and to structure its decision-making. The language provides an intuitive programming framework based on common sense or practical reasoning.

    AgentSpeak is an agent-oriented programming language. It is based on logic programming and the belief–desire–intention software model (BDI) architecture for (cognitive) autonomous agents. The language was originally called AgentSpeak(L), but became more popular as AgentSpeak, a term that is also used to refer to the variants of the original language.

    JACK Intelligent Agents is a framework in Java for multi-agent system development. JACK Intelligent Agents was built by Agent Oriented Software Pty. Ltd. (AOS) and is a third generation agent platform building on the experiences of the Procedural Reasoning System (PRS) and Distributed Multi-Agent Reasoning System (dMARS). JACK is one of the few multi-agent systems that uses the BDI software model and provides its own Java-based plan language and graphical planning tools.

    2APL is a modular BDI-based programming language that supports the development of multi-agent systems. 2APL provides a rich set of programming constructs allowing direct implementation of concepts such as beliefs, declarative goals, actions, plans, events, and reasoning rules. The reasoning rules allow run-time selection and generation of plans based on declarative goals, received events and messages, and failed plans. 2APL can be used to implement multi-agent systems consisting of software agents with reactive as well as pro-active behaviours.

    Open energy system models are energy system models that are open source. However, some of them may use third party proprietary software as part of their workflows to input, process, or output data. Preferably, these models use open data, which facilitates open science.

    The SARL programming language is a modular agent-oriented programming language. It aims at providing the fundamental abstractions for dealing with concurrency, distribution, interaction, decentralization, reactivity, autonomy and dynamic reconfiguration.

    <span class="mw-page-title-main">Leon van der Torre</span>

    Leendert (Leon) van der Torre is a professor of computer science at the University of Luxembourg and head of the Individual and Collective Reasoning (ICR) group, part of the Computer Science and Communication (CSC) Research Unit. Leon van der Torre is a prolific researcher in deontic logic and multi-agent systems, a member of the Ethics Advisory Committee of the University of Luxembourg and founder of the CSC Robotic research laboratory. Since March 2016 he is the head of the Computer Science and Communication (CSC) Research Unit.

    <span class="mw-page-title-main">Multi-agent pathfinding</span> Pathfinding problem

    The problem of Multi-Agent Pathfinding (MAPF) is an instance of multi-agent planning and consists in the computation of collision-free paths for a group of agents from their location to an assigned target. It is an optimization problem, since the aim is to find those paths that optimize a given objective function, usually defined as the number of time steps until all agents reach their goal cells. MAPF is the multi-agent generalization of the pathfinding problem, and it is closely related to the shortest path problem in the context of graph theory.

    References

    • Toni, Francesca; Torroni, Paolo (Eds.): Computational Logic in Multi-Agent Systems. 6th International Workshop, CLIMA VI 2005. Springer 2006 - ISBN   978-3-540-33996-0.
    • Dastani, M.; El Fallah Seghrouchni, A.; Ricci, A.; Winikoff, M. (Eds.): Programming Multi-Agent Systems. Fifth International Workshop, ProMAS 2007. Springer 2008 - ISBN   978-3-540-79042-6
    • Tristan Behrens, Mehdi Dastani, Jürgen Dix, Michael Köster, Peter Novak: Multi-Agent Contest 2009 Edition
    • Multi-agent Programming Contest 2013: The Teams and the Design of their Systems. In: M. Cossentino, A. El Fallah Seghrouchni, M. Winikoff (Eds.): Engineering Multi-Agent Systems. 1st Intl. Workshop. EMAS 2013. Revised Selected Papers. Springer 2013 - ISBN   978-3-642-45343-4