Robots: the prisoner and the guard / the escape game ----------------------------------------------------- Special notes: 1. PRE-REQUISITE: Architecture I 2. Two (competing) teams will be assigned the same project. ----------------------------------------- * Brief description and AI targeted area: The aim of this game is that there are two robots: one standing for a prisoner that is trying to escape, and the other for a guard. Both robots evolve in a limited arena, also called the jail.The prisoner's objective is to escape the jail (i.e., exit through a specified exit) before it is tagged by the guard. In this project, you will have to deal with these two robots and to develop two pieces of software (one for each of them). You will develop the program controling the prisoner, so that this one makes its best to escape the jail, and also the program controling the guard, so that everything is done to prevent the prisoner from escaping (i.e., to tag it before it leaves the jail). The robot, when programmed to be the prisoner, has one main goal: to exit the jail before to be tagged (touched) by the guard. This robot will be positioned initially anywhere in the jail. The prisoner has three main tasks to perform: (1) to exit the arena, (2) to run away from the guard, and (3) to spin around (joyfully :-) ) when it succeeds to exit the jail. The second task must be implemented via an interrupt-service routine. The guard has one main goal: to tag the prisoner before it exits the jail. The guard will be initially position anywhere in the jail. This robot has basically two main tasks to perform: (1) to find and tag the prisoner, and (2) to spin around (joyfully :-) ) after tagging the prisoner. The only restriction to your guard is that it cannot be programmed to be passive, i.e., to wait in the original location and just scan, waiting for the prisoner to come close enough to tag it. At the end of the project, you will be put in competition against the other team working on this same project, and several games will be played with one robot being controlled by the piece of software of one team, and the other one by the other team. Then after 10 trials of each configuration, the winning team (the one with the most success: either tagging the prisoner when controling the guard, or escaping when controling the prisoner) will be granted 10 extra points. --- By working in the project, you will learn about robotics, but also problem solving, decision making, and game playing. ---------- * Description of the objectives and tasks: By the end of the project, you will have a strong knowledge of robots, and both ends of AI: perception and action. In particular, you will have to: - write a short report about robots and their use and connection to AI: this report will be handed out to all students in the class; * it should be ready by the end of week 4 of the project timeline; - propose strategies to make your robots smarter than those of your opponent; - run intensive testing, and report/analyze the results. You will also have to write a general report in which you will include: - an introduction: presenting the problem you plan to address, and explain how you will tackle it; explain how it is related to AI and what specific area it is related to; description of robots, how you can control them, and what strategy you plan to develop to win the ultimate contest (against the other team); - the description of your team: names of the students, tasks assignment (contribution of each one), timeline of your work; - the description of the strategies that you have designed: * in particular, explain why you think that these strategies are efficient ones, and why you think you can win; - the description of your system: * which methods you used and how you implemented them (justify your choice and make your descriptions clear) - the report of your testing your system: * description of your testing; report of the results; * do the abilities of your robots meet your expectations? why? - the description of a toy application of such a software, and how this toy application relates to a real-world problem (and which problem); - a discussion of what went wrong and why: self-criticism; - a conclusion: synthesis of your work, future work directions (what you would do if you were given more time on your project). ----------