Table of Contents

Assignment #1 – Multiagent system

Assignment

A group of four miners is facing an uneasy task. It is deployed to a gold mine and the miners have to collect all gold stones scattered around the mine and bring them all to one of the company depots. The company is saving money wherever it can and the stones they have to carry are becoming more and more heavy. At this point, these stones have become that heavy that no single one of them can lift them alone. Every time a miner wants to lift a stone, he must call some friend to help him. Will you help them to collect all the gold stones in time?

Scenario 1: On day one, they were quite lucky. They have arrived in a tidy gold mine and they may go wherever they want. The only problem here is that the work is still in progress and new gold stones appear from time to time. Whenever a gold stone appears somewhere in the mine, miners must be able to find it and bring it to a depot. If the miners do succeed, they will be awarded 2 points. (see task0.txt)

Scenarios 2-8: The conditions in the mine get more and more challenging on the subsequent days. Debris is scattered around the mine and the miners are still asked to perform what they are paid for – collecting the gold! Make your agent navigate through these mines obstructed by heavy machinery and other obstacles and make them succeed! Miners get 1 point for every scenario they complete successfully. (see task1.txt-task7.txt - we will evaluate the performance of your mining team on slightly modified versions of these scenarios)

Competition: The group of the miners was proven to be highly competent and thus the managers have decided to send them to a mining competition. 25% fastest groups of miners will be awarded another 1 point.

Mining research The conditions in the mining industry are getting worse every day. If you think your group of miners can overcome even greater difficulties, they may be awarded some extra points (after prior discussion with the tutor).

Rules:

Download and implementation

Java project

You should implement your solution inside the student.Agent class (and possibly other classes of your need within the student package). You can test your solution by launching mas.agents.SimulationCore [map file] where [map file] is the name of scenario you want to test (e.g., /maps/task0.txt). If you want to be sure that your agents do not share any knowledge, you can use mas.agents.SimulationCore [map file] ~ (this setting may complicate debugging).

Assessment

Submitting your solution

Create a zip archive containing the content of the student package and your report in PDF format and submit it to the upload system.