Bots in Blue

 

In the not-so-distant future, the hacking tradition at MIT is alive and well.  To enforce order and counteract the “misdeeds” of these hackers, the campus police have decided to use autonomous robots to keep the peace.

 

In their pilot program, the campus police are evaluating the performance of different robots by having the robots compete against each other.  The campus police will select for mass deployment the robot that best eliminates the hacker threat for its assigned campus.

 

Your mission is to design and construct an autonomous police robot (RoboCP for short) for the campus police to test.  Each RoboCP must scour its assigned campus for hackers and neutralize this threat, while not harassing “innocent” students or professors.

 

A: The Table

 

The layout of the contest table is shown in Figure 1.  All measurements in the figure are not guaranteed to be accurate, and the only official measurements are those of the actual tables.  The tables may also have features such as seams where the sections of the table meet, which are not shown in the diagram.

            Overall, the playing surface is 10 feet by 5 feet.  The table is sectioned into West Campus, Mass Ave, and East Campus, which are roughly 4 feet, 2 feet, and 4 feet respectively.  The robots begin at either end of the table on the 18 inch by 18 inch starting areas on each campus.  The starting area represents the jail for that campus, and is colored blue.  The table also has a number of 2 inch wide lines painted on the surface to help the RoboCP navigate.

            The steps in the center of Mass Ave are in 3/8 inch increments, so the plateau of the steps is 9/8 inches high.

 

B: The Blocks

 

At the start of every round, each campus has 6 hackers and 6 students, represented by blocks.  In each campus, there are 12 places where the blocks are located.  The two locations above and below the jail will always have hackers.  The two rows of five blocks will have a random permutation of the remaining 4 hackers and 6 students.  There are 4 professors located in Mass Ave, as shown in Figure 1.

            Each block is a 1 inch cube of wood.  Students are colored white, and have no holes drilled into the blocks.  Hackers are colored black, and have holes drilled along all three axis.  Finally, professors are colored red, and have holes drilled in their sides (x and y axis).  Thus, the top plane of the professor block will always be solid.

 

C: Definitions

 

Each RoboCP will be assigned to either West Campus or East Campus.  A block is either in possession, on a campus, in jail, or off a campus.

 

In possession: any block that moves freely with the robot as the robot is moved in both dimensions of the playing surface is said to be “possessed” by that robot.

 

On the campus: any block that’s not possessed by a robot, and either touching the campus or vertically supported by another block that is “on campus” is said to be “on campus”.  If a block is vertically supported by more than one block, then it is “on campus” if at least one of the support blocks is considered “on campus”.

 

In jail: any block where either the contact area between the block and the table is completely within the starting area, or is vertically supported by a block that is “in jail” is said to be “in jail”.  If a block is vertically supported by more than one block, then it is “in jail” only if all of the support blocks are “in jail”.

 

Off the campus: any block that is not possessed, not on campus, and not in jail is said to be “off campus”.

 

            Please note that at the start of the match, the students and hackers naturally start on campus, while the professors in the neutral Mass Ave are off campus.

 


D: Scoring

 

            The score that each robot receives is determined by the final state of the contest table after the match has been played.  The calculation is based on the following table:

 

each block

On your campus

In your possession

In your jail

Off your campus

student

+1

-1

-3

0

hacker

-1

+1

+3

0

professor

+3

-3

-9

0

 

            In other words, each block has some associated value.  On your campus, hackers have a detrimental value, while students and professors are beneficial to your score.  Possessing a block reverses its value, so a hacker in possession helps your score.  Putting a block in jail reverses the value and multiplies it by a factor of three, so a hacker in jail earns many points, while innocent students or professors in jail will greatly harm your score.

            Finally, to encourage your RoboCP to go to the other side of the table (as if putting professors in your opponent’s jail is not enough of an incentive), there is the Jailbreak Rule.

 

Jailbreak: at the end of the match, if all the points of contact that your RoboCP had with the table at the beginning of the match are completely within your opponent’s jail, then any blocks in your opponent’s jail are considered on your opponent’s campus.

 

E: Examples

 

You have a dud robot that just sits there for 60 seconds: net of 0.

Your robot finds 1 hacker, and pushes the hacker completely onto Mass Ave: net of +1.

Your robot finds 1 hacker, and tosses the hacker block off the table and onto the floor: net of +1.

Your robot finds 1 hacker, and pushes or tosses the hacker block to your opponent’s campus: net of +2 (you gain a point, your opponent losses a point).

Your robot finds and possesses 1 hacker block at the end of the match: net of +2.

Your robot possesses 4 hackers and 6 students, and 2 hackers are on your campus: net of -4.

Your robot puts 1 hacker completely in its jail, and possesses 1 student: net of +2.

The opponent puts 1 professor in your jail, and stays out of your jail: net of –9.

The opponent puts 1 professor in your jail, but never leaves your jail (i.e. all four of its wheels which were touching the table at the beginning of the match are completely within your jail): net of +3.