Solving Robocup Problems Using Different Methodologies: Agent Oriented Programming & Design, Expert System and Genetic Programming - Binus e-Thesis

  

INTERNATIONAL UNDERGRADUATE PROGRAM

BINA NUSANTARA UNIVERSITY

Major Computer Science

Sarjana Komputer Thesis

  

Semester Even year 2004/2005

SOLVING ROBOCUP PROBLEMS USING DIFFERENT METHODOLOGIES:

Agent Oriented Programming & Design, Expert System, and Genetic

  

Programming

David Kartopranoto 0500552985 Glenn Cornelius Layaar 0500550632 Henry Suryawirawan 0500563521

Abstract

  

RoboCup is an international competition in which teams of autonomous robots or

software softbots compete in simulated soccer matches to demonstrate cooperative

robotic techniques in a very difficult, dynamic, real-time, and noisy environment. This

thesis will only deal with creating software softbots soccer teams which were developed

using three different methodologies: Agent Oriented Programming and Design, Expert

System, and Genetic Programming. It is hoped that the results of the experiment would

be able to point out some advantages and disadvantages of using each methodology in

solving the RoboCup problem or similar type of problems.

To simplify the problem domain, we created our own simulator including the exclusion

of real time problem restriction that is introduced in the real RoboCup simulator. Each

methodology submitted a five-player soccer team, and along with two other benchmark

teams, would compete in a simulated league in which each team would meet each other.

The results show that it is possible to solve RoboCup problem using those three

methodologies which can perform well. A surprising result came through as the Genetic

Programming team, developed using machine learning technique, finished the league on

top of one methodology which was hand-coded with fully human intervention. This

shows promising outcome of the machine learning techniques to solve similar type of

problems.

Even though the result of the league was also subjective to each strategy used by each

team, we tried to draw a conclusion on the advantages and disadvantages of each

methodology by analyzing the general capability of it in dealing with such problems.

Hopefully, the analysis will be beneficial for further experiments on RoboCup problem

and also on using those three methodologies in solving other problems in different areas

as well.

  Abstract

  Acknowledgements

We would like to thank Raymondus Kosala, Ph. D for his guidance, assistance, and

encouragement throughout the development of this thesis. We would also like to thank

our friend Yakin for his participation in creating a benchmark team to be included in our

experiment. Our family, friends, and teachers are also a constant support for which we

are especially grateful.

  Acknowledgements

TABLE OF CONTENTS

  TRUCTURES 2. THEORETICAL FOUNDATION........................................ ERROR! BOOKMARK NOT DEFINED.

  2.1.3 Applications of Expert System ........................................... Error! Bookmark not defined.

  2.1.1 ............................................................ Error! Bookmark not defined. Definition of Expert 2.1.2 Advantages and Disadvantages of Expert System.............. Error! Bookmark not defined.

  RROR ! B OOKMARK NOT DEFINED .

  ..................................................................E

  YSTEM

  S

  XPERT

  2.2 E

  2.1.2 Agent Concept.................................................................... Error! Bookmark not defined.

  2.1.1 Agent Definitions ............................................................... Error! Bookmark not defined.

  RROR ! B OOKMARK NOT DEFINED .

  2.1 A GENT O RIENTED P ROGRAMMING AND D ESIGN .................E

  ......................................................................... ERROR! BOOKMARK NOT DEFINED. COVER PAGE TITLE PAGE ........................................................................... ERROR! BOOKMARK NOT DEFINED.

  CERTIFICATE OF APPROVAL FOR HARDCOVER COPYERROR! BOOKMARK NOT DEFINED.

  1.5 .......................................................................E

  UESTIONS

  Q

  ESEARCH

  RROR ! B OOKMARK NOT DEFINED . R

  1.4 ........................................................E

  IMS AND B ENEFITS

  1.3 ...........................................................E RROR ! B OOKMARK NOT DEFINED . A

  1.1.2 Expert System..................................................................... Error! Bookmark not defined. 1.1.3 ......................................................... Error! Bookmark not defined. Genetic Programming 1.2 S COPE .................................................................................E RROR ! B OOKMARK NOT DEFINED .

  1.1.1 Agent Oriented Programming and Design ......................... Error! Bookmark not defined.

  1.1 B ACKGROUND .....................................................................E RROR ! B OOKMARK NOT DEFINED .

   1. INTRODUCTION................................................................ ERROR! BOOKMARK NOT DEFINED.

  

  RROR ! B OOKMARK NOT DEFINED . S

  2.1.5 Rule-based Expert Systems ................................................ Error! Bookmark not defined.

  1) System Goals.................................................................................. Error! Bookmark not defined. 2) Functionalities ................................................................................ Error! Bookmark not defined. 3) Scenarios ........................................................................................ Error! Bookmark not defined. 4) .............................................................. Error! Bookmark not defined. System Interface Diagram ........................................................... Error! Bookmark not defined.

  RROR ! B OOKMARK NOT DEFINED .

  3.2 ...................................................................E

  RROR ! B OOKMARK NOT DEFINED . M

  Y

  S

  IMULATOR 4. SOLUTION DESIGN .......................................................... ERROR! BOOKMARK NOT DEFINED.

  4.1 A GENT O RIENTED P ROGRAMMING AND D ESIGN .................E

  RROR ! B OOKMARK NOT DEFINED .

  A. System Specification .......................................................... Error! Bookmark not defined.

  B. Architectural Design

  ROBLEM

  ................................................................ Error! Bookmark not defined. 1) Grouping Functionalities 2) Interaction Protocol ........................................................................ Error! Bookmark not defined. 3) ........................................................................... Error! Bookmark not defined. System Overview

  C. .................................................................. Error! Bookmark not defined. Detailed Design

  1) ............................................................................. Error! Bookmark not defined. Agent Overview 2) ............................................................................. Error! Bookmark not defined. Process Diagram

  4.1.1 .................................................................................. Error! Bookmark not defined. JACK

  4.2 E

  XPERT

  S

  YSTEM

  ..................................................................E

  ....................................................E

  P

  2.1.5.1 Rules and Facts .............................................................................. Error! Bookmark not defined.

  2.3.1 Genetic Programming......................................................... Error! Bookmark not defined.

  2.1.5.2 Forward chaining (a data driven strategy) ...................................... Error! Bookmark not defined.

  2.1.5.3 Conflict resolution strategy ............................................................ Error! Bookmark not defined.

  2.1.5.4 Backward chaining (a goal-driven strategy)................................... Error! Bookmark not defined.

  2.3 G

  ENETIC

  P

  ROGRAMMING

  ....................................................E

  RROR ! B OOKMARK NOT DEFINED .

  2.3.2 Functions and Terminals .................................................... Error! Bookmark not defined. 2.3.3 .................................... Error! Bookmark not defined. Closure and Sufficiency Properties 2.3.4 Genetic Programming Algorithm ....................................... Error! Bookmark not defined.

  UP

  2.3.5 ................................................................................. Error! Bookmark not defined. Fitness 2.3.6 .............................................................. Error! Bookmark not defined. Selection Methods

  2.3.7 ...Error! Bookmark not defined. Evolutionary Operations: Reproduction, Crossover, and Mutation

  2.3.8 ............................... Error! Bookmark not defined. Strongly Typed Genetic Programming 2.3.9 Co-evolution....................................................................... Error! Bookmark not defined.

  2.3.10 Genetic Programming Applied to Soccer ........................... Error! Bookmark not defined.

  3. PROBLEM ANALYSIS ...................................................... ERROR! BOOKMARK NOT DEFINED.

  3.1 T

  HE

  R

  OBO

  C

  RROR ! B OOKMARK NOT DEFINED .

  4.2.2 ..................................................................................... Error! Bookmark not defined. Jess 4.2.3 ........................................................................ Error! Bookmark not defined. Facts design 4.2.4 ....................................................................... Error! Bookmark not defined. Rules design 4.2.5 ..................................... Error! Bookmark not defined. Conflict resolution strategy design ....................................................................... Error! Bookmark not defined.

  R

  RROR ! B OOKMARK NOT DEFINED .

  .............................................................E

  ECOMMENDATION

  7.2 R

  ONCLUSION

  RROR ! B OOKMARK NOT DEFINED . C

  7.1 .......................................................................E

  NALYSIS 7. CONCLUSION AND RECOMMENDATION.................... ERROR! BOOKMARK NOT DEFINED.

  A

  ESULT

  R

  6. EVALUATION 6.1 ...................................................E RROR ! B OOKMARK NOT DEFINED . D EVELOPMENT A NALYSIS 6.2 ..............................................................E RROR ! B OOKMARK NOT DEFINED .

  ESULTS .................................................................... ERROR! BOOKMARK NOT DEFINED.

  EAGUE

  4.2.6 Brain Design 4.3 ....................................................E RROR ! B OOKMARK NOT DEFINED .

  5.2 L

  RROR ! B OOKMARK NOT DEFINED .

  ...............................................................E

  REPARATION

  P

  EAGUE

  RROR ! B OOKMARK NOT DEFINED . L

  5.1 .......................................................E

  4.3.4 ............................................................... Error! Bookmark not defined. Evolution History 5. IMPLEMENTATION AND RESULT................................. ERROR! BOOKMARK NOT DEFINED.

  4.3.1 ............................................................. Error! Bookmark not defined. Experiment Design 4.3.2 ................................................... Error! Bookmark not defined. GP System and Simulator 4.3.3 Evolutionary Team Submission.......................................... Error! Bookmark not defined.

  ROGRAMMING

  P

  ENETIC

  G

  BIBLIOGRAPHY .................................................................... ERROR! BOOKMARK NOT DEFINED. CURRICULUM VITAE .......................................................... ERROR! BOOKMARK NOT DEFINED. APPENDIX A: LEAGUE STATISTICAL RESULTS ............ ERROR! BOOKMARK NOT DEFINED. APPENDIX B: FIXTURES RESULTS ................................... ERROR! BOOKMARK NOT DEFINED. APPENDIX C: KAKEGAWA TEAM..................................... ERROR! BOOKMARK NOT DEFINED. APPENDIX D: EVO TEAM PROGRAMS ............................. ERROR! BOOKMARK NOT DEFINED. APPENDIX E: EXPERT SYSTEM TEAM RULES TREES .. ERROR! BOOKMARK NOT DEFINED. APPENDIX F: MYSIMULATOR MANUAL ......................... ERROR! BOOKMARK NOT DEFINED.

List of Tables Table 4.1: Facts table ...................................................... Error! Bookmark not defined. Table 4.2: Terminal set used in the evolutionary runs. ... Error! Bookmark not defined. Table 4.3: Function set used in the evolutionary runs..... Error! Bookmark not defined. Table 4.4: GP control parameters.................................... Error! Bookmark not defined. Table 5.1: League final table result................................. Error! Bookmark not defined. Table 6.1: GP vs ES table result...................................... Error! Bookmark not defined. Table 6.2: ES vs other teams table result ........................ Error! Bookmark not defined. Table 6.3: GP team table result ....................................... Error! Bookmark not defined. Table 6.4: Agent team table result .................................. Error! Bookmark not defined

  

Table 7.1: Advantages and disadvantages of each methodology Error! Bookmark not

defined.

  

Table 7.2: Comparison of each methodology based on some criteria Error! Bookmark

not defined.

List of Figures Figure 2.1: Agent Execution Cycle................................. Error! Bookmark not defined. Figure 2.2: AI Programs.................................................. Error! Bookmark not defined. Figure 2.3: Forward Chaining......................................... Error! Bookmark not defined. Figure 2.4: Depth-first search ......................................... Error! Bookmark not defined. Figure 2.5: Breadth-first search ...................................... Error! Bookmark not defined. Figure 2.6: A GP program represented as a program treeError! Bookmark not defined

  

Figure 2.7: Flow chart of genetic programming algorithmError! Bookmark not

defined.

  Figure 2.8: Crossover Operation..................................... Error! Bookmark not defined. Figure 2.9: Mutation Operation ...................................... Error! Bookmark not defined. Figure 3.1: MySimulator snapshot.................................. Error! Bookmark not defined. Figure 4.1: Prometheus Design Phase............................. Error! Bookmark not defined. Figure 4.2: Goal Diagram ............................................... Error! Bookmark not defined. Figure 4.3: Functionalities Diagram ............................... Error! Bookmark not defined. Figure 4.4: System Interface Diagram ............................ Error! Bookmark not defined. Figure 4.5: Grouping Functionalities Diagram ............... Error! Bookmark not defined. Figure 4.6: Goal Scoring Interaction Protocol ................ Error! Bookmark not defined. Figure 4.7: System Overview Diagram........................... Error! Bookmark not defined. Figure 4.8: Soccer Agent Diagram ................................. Error! Bookmark not defined. Figure 4.9: MidFielder Agent Diagram .......................... Error! Bookmark not defined.

  

Figure 4.10: Soccer Agent Goal Scoring Process DiagramError! Bookmark not

defined.

  Figure 4.11: MidFielder Agent Goal Scoring Process DiagramError! Bookmark not defined. Figure 4.12: Expert system process each tick ................. Error! Bookmark not defined. Figure 4.13: Evolutionary champion team learning curveError! Bookmark not defined.

Appendices Appendix A: League Statistical Results .......................... Error! Bookmark not defined

  

Appendix B: Fixtures Results .......................................... Error! Bookmark not defined.

Appendix C: Kakegawa Team ......................................... Error! Bookmark not defined.

Appendix D: Evo Team Programs ................................... Error! Bookmark not defined.

Appendix E: Expert System Team Rules Trees............... Error! Bookmark not defined.

Appendix F: MySimulator Manual.................................. Error! Bookmark not defined.