CSCI 364: Homework Assignment #1

Critters 2.0 (Party Edition)
Due: 11:00 AM on Wednesday, February 15

Our first assignment this semester has two goals:

  1. Have some fun experimenting with creating intelligent agents that interact in an environment, updating a favorite lab from CSCI 150
  2. Practice using GitHub for source code management

In particular, we will be creating critters that play a modified version of the critter lab, adding new actions for more interesting emergent behaviors. Your goal is to implement five critters to interact in the Critter world, at least three of which should follow some interesting, (semi-)intelligent behavior.

You can download the assignment instructions by clicking on this link

Instructions for using GitHub for our assignments can be found on the Resources page of the class website, as well as using this link.

To evaluate the critters, we will use a tournament with the following parameters:

  • Each species of critter will be placed in 100 environments where critters will move around and interact
  • Each environment will have width 50 and height 40 and hold 5 randomly chosen species of critter, with 20 critters per species.
  • An environment will be simulated for 2,000 time steps.
  • For each species, we will record the number of critters alive at the end of each environment, the number of critters killed by a species, the karma earned, and the final health.
  • Afterwards, the species will be ranked and compared based on these 4 measures (with the overall winner determined by karma).

I will assign a random seed at the start of each environment simulation so that we can hopefully replay the most interesting ones that occur and view them as a class. Please do not set any random seeds in your code