UNIVERSITY of HERTFORDSHIRE Faculty of Science Technology and Creative Arts
Total Page:16
File Type:pdf, Size:1020Kb
UNIVERSITY OF HERTFORDSHIRE Faculty of Science Technology and Creative Arts Modular BSc Honours in Computer Science 6COM0282 – Computer Science Project Final Report April 2014 Artificially Intelligent Pac-Man A M Waterhouse 10219812 Supervised By: Neil Davey 1 Andrew Waterhouse 10219812 Table of Contents Attached below is a table of contents to aid navigation throughout this project. The project has been sectioned according to the steps of the System Life Cycle – starting with an introduction and abstract behind the project. ABSTRACT ........................................................................................................................................... 4 ACKNOWLEDGEMENTS .................................................................................................................................... 4 1 INTRODUCTION TO THE PROJECT .......................................................................................... 5 1.1 BACKGROUND OF NETLOGO AND INTELLIGENT AGENTS ............................................................... 5 2. WHY DO WE PLAY GAMES? ....................................................................................................... 9 2.1 WHAT IS A GAME? ..................................................................................................................................... 9 2.2 WHY DO WE PLAY? ................................................................................................................................ 10 2.3 MASLOW’S HIERARCHY OF NEEDS ...................................................................................................... 10 2.4 SELF-DETERMINATION THEORY ......................................................................................................... 11 2.4.1 Competence .......................................................................................................................................... 11 2.4.2 Autonomy .............................................................................................................................................. 11 2.4.3 Relatedness .......................................................................................................................................... 11 3. ANALYSIS.......................................................................................................................................12 3.1 INITIAL ANALYSIS .................................................................................................................................. 12 3.2 HOW THE CURRENT GAME OPERATES ................................................................................................ 12 3.2.1 User Interface ...................................................................................................................................... 12 3.2.2 Controls .................................................................................................................................................. 12 3.2.3 Gameplay .............................................................................................................................................. 13 3.3 DETAILED BREAKDOWN OF EXISTING SYSTEM ................................................................................ 15 4. REQUIREMENTS SPECIFICATION ..........................................................................................20 4.1 FUNCTIONAL REQUIREMENTS ............................................................................................................. 20 4.2 NON-FUNCTIONAL REQUIREMENTS ................................................................................................... 20 4.3 WHAT OLD, EXISTING METHODS WILL BE TAKEN FROM OLD SYSTEM INTO THE NEW? ............. 21 4.4 OUT OF SCOPE ........................................................................................................................................ 22 5. FEASIBILITY STUDY ..................................................................................................................23 5.1 ISSUES TO ADDRESS ............................................................................................................................... 23 5.1.1 Tools ........................................................................................................................................................ 23 5.1.2 Programming Language ............................................................................................................... 23 5.1.3 Hardware .............................................................................................................................................. 23 5.1.4 Time ......................................................................................................................................................... 23 5.2 RECOMMENDATIONS ............................................................................................................................. 23 5.2.1 Tools and Programming Language .......................................................................................... 23 5.2.2 Hardware .............................................................................................................................................. 24 5.2.3 Time ......................................................................................................................................................... 24 6. DESIGN ...........................................................................................................................................25 6.1 OUTLINE OF WHAT IS EXPECTED ......................................................................................................... 25 6.2 HOW THIS WILL BE IMPLEMENTED ..................................................................................................... 25 7. IMPLEMENTATION ....................................................................................................................26 7.1 RANDOM PAC-MAN ............................................................................................................................... 26 7.1.1 Code Analysis ....................................................................................................................................... 26 7.1.2 Problems Encountered .................................................................................................................... 27 7.2 CORRIDOR PAC-MAN ............................................................................................................................ 28 7.2.1 Code Analysis ....................................................................................................................................... 28 7.2.2 PROBLEMS ENCOUNTERED ............................................................................................................... 28 2 Andrew Waterhouse 10219812 7.3 LEFT PAC-MAN ...................................................................................................................................... 29 7.3.1 Code Analysis ....................................................................................................................................... 29 7.3.2 Problems Encountered .................................................................................................................... 29 7.4 MORE INTELLIGENT PAC-MAN ........................................................................................................... 30 7.4.1 CODE ANALYSIS .................................................................................................................................. 30 7.5 VERY INTELLIGENT PAC-MAN ............................................................................................................. 33 7.5.1 Code Analysis ....................................................................................................................................... 33 7.5.2 Problems Encountered .................................................................................................................... 37 8. TESTING .........................................................................................................................................38 8.1 PURPOSE OF TESTING............................................................................................................................ 38 8.2 HYPOTHESIS ............................................................................................................................................ 38 8.3 TEST RESULTS ........................................................................................................................................ 39 8.4 OBSERVATIONS AND TESTING CONCLUSION ..................................................................................... 41 9. EVALUATION ................................................................................................................................43 9.1 DESIGN EVALUATION ............................................................................................................................ 43 9.2 IMPLEMENTATION EVALUATION ......................................................................................................... 43 9.3 TESTING EVALUATION .......................................................................................................................... 43 10. CONCLUSION..............................................................................................................................44