FIT3094 : Artificial Life, Artificial Intelligence and Virtual Environments

Fleet

Assignment 2: Pirate Fleet
cooperative agent control

Semester 1, 2014

Task: Design and implement cooperative controllers for mobile non-player agents in the context of a simple computer game, Pirate Fleet.

This game is a direct extension of assignment 1, Pirates!

Extra Details

Wreckless

Due to your success in assignment 1, your wealth has enabled you to purchase a full fleet of 10 indentical pirate ships and crew. Polygon Pete has returned to Rectangular Bay since the sneaky pirates have stolen his treasure whilst he was on holiday. He is not happy!

Pete has deposited an unknown number of new, large treasure chests under marker buoys around the bay. He will protect these at all costs using his super strong multi-gunned ship (guns on the bow, port and starboard) the PixSail. You must use your fleet to capture the gold and sink the PixSail. The only means your ships have to communicate is via three (binary) signal flags on each one.

Detailed information on the flags, the controller you must write and the PixSail are provided with the software API.

Specification:

    1. Search the bay and recover the gold using a coordinated strategy(40%)

      Test: Your fleet is placed in a bay with rocks and gold. You gain marks for every box of gold your fleet collects in a fixed time limit so be efficient! Don't waste time searching where others in your fleet have already searched. The PixSail is sailing around but his guns are jammed. How will you know which ship is the PixSail? Does it matter?

    2. Avoid being hit by cannon fire from the PixSail (20%)

      Test: Your fleet is placed in a bay with rocks, gold and the PixSail. Now all PixSail's guns are working. You must minimise the number of hits the PixSail lands on your ships. Will you do this by sinking him fast? Or by carefully avoiding him? How will you know which ship is the PixSail?

    3. Attack the PixSail in a coordinated fashion in which no ship will attack on its own. Lone ships must flee the PixSail until they find help (35%)

      Test: Your fleet is placed in a bay with rocks, gold and the PixSail. You must minimise the number of hits your ships take as "friendly fire" but maximise the damage to the PixSail. How will you know which ships are friendly and which are foe? How will you coordinate movement between friends?

      Components 1-3 are assessed by (i) the lecturer examining and running the code (ii) a compulsory demonstration during the designated lab class in which you place your ship into a bay with the enemy pirate ship PixSail provided by the lecturer as part of the framework and run it through its paces.

    Advanced (optional): improve your design from assignment 1 and see if you can write a single ship controller that beats your fleet and those of your classmates.

Consult the assignment submission details for information on how to complete you work.

*Assignments that do not build and run correctly under Mac OS X will receive a mark of zero!


Last updated 5 May 2014. Maintained by Alan Dorin.