6.11.0.4

Week 14 Set a

home work!

Programming Language ISL+

Due Date Mon at 9:00pm (Week 14)

Purpose Let’s make a game for sw devs.

Finger Exercises

None.

Graded Exercises

Exercise 1 The software architect of ApperGamer has come up with one more idea—to organize a programming competition. The server already accommodates it all, what is needed are clients that can compete.

The goal of this exercise is to develop an algorithm that sets the next waypoint for your avatar. Instead of a player’s mouse clicks, your client software reacts to every incoming message with a computation. If the already chosen waypoint is still the best one, it does nothing; if it recognizes that it is better to change the waypoint, it sends a Package back to the server that sets the new waypoint.

Clearly, all pieces of food are potential waypoints, but it will take less time to reach the closest one than some other one. Then again, some other turkey might be even closer to that one and may have its eyes on it. Hence, your algorithm is mostly an evaluation function, that is, a function that assigns a value to each waypoint based on proximity to your turkey’s position, the positions of other turkeys, etc. Your message handler will naturally pick the waypoint with the best evaluation score.

Remember that the server informs the client of the locations of the food and the locations of the other turkeys. It will not reveal where these turkeys are going, that is, the waypoints they have chosen.

Note This exercise requires both proper design of software and creativity (to come up with good ideas for the evaluation function and to compute it before some other turkey eats the food). The grading will reward good design over creativity. Specifically,
  • We will only award 30% extra points to the two winners of the Gobbler AI competition in 12 Modules, Syntax, Languages (Tuesday's lab).

  • Every Gobbler AI that survives the competition (due to solid design) will receive 50% of all design points. The other 50% will be assigned by the graders.

The graders will nominate the best idea, and the TAs will vote on the nominations, with Becca playing tie breaker.