GithubHelp home page GithubHelp logo

agentcontest / mapc2018-pucrs Goto Github PK

View Code? Open in Web Editor NEW

This project forked from smart-pucrs/mapc2018-pucrs

0.0 1.0 0.0 98.21 MB

Team PUCRS code for the 2018 Multi-Agent Programming Contest.

License: GNU General Public License v3.0

Java 100.00%

mapc2018-pucrs's Introduction

The SMART_JaCaMo Team

This is the source code of the SMART_JaCaMo team, one of the teams participating in the 2018 Multi-Agent Programming Contest (MAPC). In this repository, you will find all the information required to run our code.

Have fun!

Our Approach

We used the JaCaMo platform to develop our team of agents. Here, we briefly describe how we applied each programming abstraction of the JaCaMo framework (agent, environment, organisation).

  • Jason: we use Jason to develop the behaviour of our agents. They are able to reason about the percepts that come from the environment in order to decide their course of action. In our approach, agents may change their intentions depending on the team and environment state;

  • CArtAgO: we use CArtAgO to exchange team information between our agents and to interact with the MAPC server;

  • Moise: our agents adopt roles in the Moise organisation which represent particular tasks (builders, gatherers, etc.). We developed our strategies based on these roles, and in this sense, it is easy for our agents to adopt autonomously to a different strategy (i.e., the agents themselves decide to change to a different role). Moise is also useful to facilitate coordination when multiple agents are required to work together to accomplish a desired task.

For further details about our team implemantation, check out our paper (coming soon).

Prepare the Environment

To start developing and contributing to this repository, you will need the JaCaMo plugin for Eclipse. In order to install it, please follow this tutorial. Now, open Eclipse and select from the toolbar:

File > Import > Git > Projects from Git > Clone URI

Copy https://github.com/smart-pucrs/mapc2018-pucrs.git and paste it on the URI field.

If you’re fond of command line, just copy and paste the following command at your terminal in your desired folder:

And import this project from local git repository at Eclipse.

Run the Code

We use JUnit to run both the server and our JaCaMo code.

To run the simulation with one round, choose your appropriate JUnit test depending on the map you’re interested in, and in folder test/pucrs/agentcontest2018/ right-click ScenarioRun1sim{desired_map}.java file, "Run as", "jUnit Test".

To run the simulation with three rounds, right-click test/pucrs/agentcontest2018/ScenarioRun3sim.java file, "Run as", "jUnit Test".

The server’s output is shown on the Eclipse console. The JaCaMo output is loaded into a separate gui. Press enter at the server output (Eclipse console) to start the simulation.

Watch the Matches

If you’d like to see our matches, follow the links below:

To see all the MAPC matches, click this link and search for Section Replays.

mapc2018-pucrs's People

Contributors

tabajarakrausburg avatar rafaelcaue avatar rbordini avatar giovanifarias avatar deboraengelmann avatar viitormiiguel avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.