24
Pusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiui 1000133690 HOR KENG SENG (Software Engineering) This project is submitted in partial fulfillment of the requirements for the degree of Bachelor of Computer Science with Honours Faculty of Computer Science and Information Technology UNIVERSITI MALAYSIA SARAWAK 2005

P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

  • Upload
    hathu

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

Page 1: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

Pusat Khidmat Makiumat Aka'

UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan

A ROBOTWALL SIMULATOR

P. KHIDMATMAKLUMATAKADEMIK UNIMAS

uummniuimiiiui 1000133690

HOR KENG SENG (Software Engineering)

This project is submitted in partial fulfillment of the requirements for the degree of Bachelor of Computer Science

with Honours

Faculty of Computer Science and Information Technology UNIVERSITI MALAYSIA SARAWAK

2005

Page 2: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

ACKNOWLEGDEMENT

This final year project would not have been successful without the contribution of many

individuals for their kind support and help. Therefore, I would like to take this opportunity

deeply indebted to those peoples in the realization of this project.

First of all, I appreciate the help and support from my beloved supervisor, Madam Eaqerzilla

Pang, who had sacrificed a lot of time and effort to lead and guide me during the development

of this project.

Secondly, I would like to thank my co-operative supervisor, Assoc. Prof. Narayanan

Kulathuramaiyer for his kind support, guidance and abundant ideas.

Finally, I would like to thank to my dearest family, who had offer unlimited morale and

financial supports in the development of this project. Once again, I would like thanks to

everyone that helped me in realizing this project. Thank you!

Ill

Page 3: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

TABLE OF CONTENTS

DECLARATION

ACKNOWLEDGEMENT

TABLE OF CONTENTS

LIST OF FIGURES

LIST OF TABLES

ABSTRACT

ABSTRAK

CHAPTER 01: INTRODUCTION

Page

11

III

iv-xi

xii-xiii

xiv

xv

xvi

1.0 Introduction I

1.1 Overview 1

1.1.1 Research Background 1

1.1.2 Why This Project's Worth 2

1.2 Problem Statement 3

1.2.1 Problem for a RW Moving Forward 4

1.2.2 Problem for a RW Turning a Corner 4

1.2.3 Problem for a RW While Too Far or Too Close From the Wall 4

1.2.4 Problem for a RW Turn Toward, Away From and Parallel to

Closest Wall 4

1.3 Proposed Solution 4

1.3.1 Solution to a RW Moving Forward 5

1.3.2 Solution to a RW Turning a Corner 5

iv

Page 4: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

1.3.3 Solution to a RW While Too Far or Too Close From the Wall 5

1.3.4 Solution to a RW Turn Toward, Away From and Parallel to

Closest Wall 5

1.4 Objectives 6

1.5 Scope of Study 6

1.6 Procedures/Methodologies 7

1.7 Significant of Research 8

1.7.1 Solve Janitorial Problem 8

1.7.2 Help Human Conduct Difficult Jobs 8

1.7.3 Firefighting 8

1.7.4 Security 9

1.8 Project Schedule 9

1.9 Outline Of The Project 10

1.9.1 Chapter 01

1.9.2 Chapter 02

1.9.3 Chapter 03

1.9.4 Chapter 04

1.9.5 Chapter 05

1.9.6 Chapter 06

1.9.7 Chapter 07

10

10

10

11

11

12

12

1.10 Conclusion 12

CHAPTER 02: RESEARCH BACKGROUND

2.0 Literature Review 13

V

Page 5: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

2.1 Introduction

2.2 Definitions and Concepts

2.2.1 The Term "Robot" and "Robotics"

2.2.2 The Word "Wall"

2.2.3 The Term "Simulator"

2.2.4 RobotWall Simulator (RWS)

2.3 History of Robotic

2.4 Current System Study

A) 2D Robot Simulator

2.4.1 WSU Khepera Robot Simulator v7.0 (WSU KRSv7)

2.4.2 Saphira/Pioneer Robot Simulator (S/PRS)

2.4.3 EyeSim Robot Simulator

B) 3D Robot Simulator

2.4.4 GLBot Mobile Robot Simulator (GLBot v3.921)

2.4.5 Webots 2.0 Robot Simulator

2.5 Comparison of Reviewed System

2.6 Artificial Intelligence (AI)

2.6.1 Gamma-Level Intelligence (Heuristic)

2.6.2 Al-Based Problem Solving

2.6.3 Genetic Algorithm (GA)

2.6.4 Metric Path Planning (Quantitative Navigation)

2.7 Reviews on Other Algorithms

2.8 Implementation Tools Study

2.8.1 C++ Object-Oriented Programming

13

13

13

14

15

15

16

16

17

17

18

20

21

21

22

24

24

25

27

27

38

28

29

29

vi

Page 6: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

2.8.2 Java Object-Oriented Programming

2.8.3 Comparison between Java and C++

2.9 Proposed System

2.9.1 Determine the Locus of Wall

2.9.2 GA Algorithm

2.9.2.1 Advantages of GA

2.9.3 Backtracking

2.9.4 Proposed Implementation Tool

2.10 Conclusion

CHAPTER 03: DETAILED REQUIREMENTS AND METHODS OF

INVESTIGATION

3.0 Introduction

3.1 Methodology Approaches

3.2 System Design

3.2.1 User Interface Design

3.2.2 2D Interface

3.2.3 Object-oriented Design (OOD)

3.2.4 Class Design

3.3 System Implementation

3.3.1 System or Program Logic

3.3.2 Algorithm in Artificial Intelligence (AI)

3.3.3 Stages of Implementation

3.4 Evaluation

30

30

31

31

32

34

35

36

36

38

39

40

40

41

41

41

42

42

42

43

43

vii

Page 7: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

3.5 Conclusion

CHAPTER 04: SYSTEM DESIGN

4.0 Introduction

4.1 Bird Eye's View

4.1.1 Five Major Preparatory Steps for GP

4.2 Robot Simulation Design Concept

4.3 Key Features of Good Design in RWS

4.3.1 Identify Bottleneck

4.3.2 Flexibility and Extensibility

4.4 Object-oriented Design

4.4.1 Use Case Diagram

4.4.2 Sequence Diagram

4.4.2.1 Description of Sequence Diagram

4.4.3 Activity Diagram

4.4.3.1 Experimenter Activity Diagram

4.4.3.2 RobotWall Activity Diagram

4.4.4 Object Model (Class Diagram)

4.5 Conclusion

CHAPTER 05: SYSTEM IMPLEMENTATION

5.0 Introduction

5.1 Implementation Coverage

5.1.1 Genetic Programming

44

45

45

45

47

49

49

49

49

50

51

51

54

54

55

57

58

59

59

59

viii

Page 8: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

5.1.2 Flowchart of Genetic Programming

5.2 Fitness Function

5.3 Selection

5.4 Genetic Operators

5.4.1 Reproduction

5.4.2 Crossover

5.5 RobotWall

5.6 Room

5.7 Collision Detection

5.8 Design of Experiment (DOE)

5.8.1 DOE 1

5.8.2 DOE 2

5.8.3 DOE 3

5.8.4 DOE 4

5.8.5 DOE 5

5.9 Conclusion

CHAPTER 06: SYSTEM TESTING AND EVALUATION

6.0 Introduction

6.1 Important of Testing

6.2 Software Quality Assurance

6.2.1 Evolving Wall-following Behaviors

6.2.2 RobotWall Movement

6.2.3 Room Painting

60

61

62

63

63

64

65

67

68

69

70

70

70

71

71

71

72

72

72

73

73

73

IX

Page 9: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

6.3 Line Chart

6.3.1 Experiment Results for DOE 1

6.3.2 Experiment Results for DOE 2

6.3.3 Experiment Results for DOE 3

6.3.4 Experiment Results for DOE 4

6.3.5 Experiment Results for DOE 5

6.4 Experiment Results and Comparison

6.5 Approximations Problem

6.6 Disadvantages of GA

6.6.1 Deception Problem

6.6.2 Fitness Function

6.7 Conclusion

CHAPTER 07: CONCLUSION AND FUTURE WORK

74

74

75

76

78

79

80

80

81

81

81

81

7.0 Introduction 82

7.1 Achievement 82

7.1.1 To Study Wall-following Problem 82

7.1.2 Create an Intelligent Program 82

7.1.3 Niche Targetability and Ease of Portability to Other Domains 83

7.1.4 To Study Genetic Algorithm 83

7.1.5 To Use an Object-oriented Design Method 84

7.1.6 A Prototype Program

7.2 Future Work

7.3 Conclusion

84

84

85

X

Page 10: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

REFERENCES

BIBLIOGRAPHIES

APPENDICES

APPENDIX A - PROJECT SCHEDULE

APPENDIX B - REVIEWS ON OTHER ALGORITHMS

APPENDIX C - DESCRIPTION OF USE CASE DIAGRAM

APPENDIX D - SEQUENCE DIAGRAM

APPENDIX E - DESCRIPTION OF CLASS DIAGRAM

APPENDIX F - DOE'S EXPERIMENT RESULTS

APPENDIX G - DOE'S EXPERIMENT SNAPSHOTS

86

90

91

92

95

100

104

112

120

127

XI

Page 11: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

LIST OF FIGURES

Page

Figure 2.1: WSU Khepera Robot Simulator v7.0 18

Figure 2.2: EyeSim Robot Simulator 21

Figure 2.3: GLBot Mobile Robot Simulator v3.921 22

Figure 2.4: Webots 2.0 Robot Simulator 24

Figure 2.5: Fixed-wall and robot with eight sensors located in the middle of the room 32

Figure 4.1: Bird's Eye View of 2D RWS Design 48

Figure 4.2: RobotWall Simulator Use Case Diagram 50

Figure 4.3: Activity Diagram to Show Experimenter Activities 55

Figure 4.4: Activity Diagram to Show RobotWall Activities 56

Figure 4.5: Class Diagram of RobotWall Simulator Program 57

Figure 5.1: The flowchart of Genetic Programming in RWS 61

Figure 5.2: The Reproduction Operation 63

Figure 5.3: The Crossover Operation 65

Figure 5.4: The Robot Position with Red Solid Oval 67

Figure 5.5: Room with 120 tiles on periphery showing robot at its starting position (8, 8) 68

Figure 6.1: Line Chart of DOE 1

Figure 6.2: Line Chart of DOE 2

Figure 6.3: Line Chart of DOE 3

Figure 6.4: Line Chart of DOE 4

Figure 6.5: Line Chart of DOE 5

Figure D 1: Set Room Sequence Diagram

Figure D2: Run GA Sequence Diagram

75

76

77

78

79

104

105

xii

Page 12: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

Figure D3: Move Forward Sequence Diagram

Figure D4: Move Backward Sequence Diagram

Figure D5: Turn Left Sequence Diagram

Figure D6: Turn Right Sequence Diagram

Figure D7: Clear Steps Sequence Diagram

Figure D8: Rebuild Sequence Diagram

106

107

108

109

110

111

X111

Page 13: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

LIST OF TABLES

Table 2.1: Comparison of Review Robot Simulator

Table 2.2: Comparison between Java and C++

Table F1: 20 Experiment Results of DOE 1

Table F2: 20 Experiment Results of DOE 2

Table F3: 20 Experiment Results of DOE 3

Table F4: 20 Experiment Results of DOE 4

Table F5: 20 Experiment Results of DOE 5

Page

26

31

120

121

122

124

125

XIV

Page 14: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

ABSTRACT

This report is written to study the Genetic Algorithm (GA) that applies to the development of

mobile robot wall-following behaviors. The purpose of the study is to have a better

understanding and a practical experience in robotic fields. GA has presented to be effective

procedures for solving wall-following problems. These algorithms are developed for a

simulated robot that uses an array of range finders for navigation. It mimics the model of

natural evolution and has the ability to adaptively search large spaces in near-optimal ways.

Also, this report will describe the use of genetic programming and path planning techniques

to the task of evolving robot behaviors for wall-following problem. This experiment involves

30 x 20 grids with four extrusions were designed and implemented to test the scalability of

GA to the solution. These experiments show that GA is capable to automatically produce

algorithms for wall-following task.

xv

Page 15: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

ABSTRAK

Laporan ini telah ditulis untuk membuat kajian tentang Algorithma Genetik (GA) yang telah

diaplikasikan ke dalam perkembangan tingkah laku "dinding robotik". Kajian ini bertujuan

untuk mendapat pemahaman yang lebih mendalam dan pengalaman yang lebih praktikal

dalam bidang robotik. GA telah menjadi satu panduan kepada prosedur yang lebih efektif

dalam usaha penyelesaian masalah "dinding robotik". Kesemua algorithma ini

diperkembangkan selaras dengan simulasi robotik yang digunakan dalam bidang pencarian

navigasi dalam sesuatu kawasan. Ia menyerupai modul evolusi yang bersifat alam semulajadi

serta mempunyai kebolehupaya untuk mencari ruang yang lebih luas dan secara adaptif

apabila ia lebih menyerupai sifat optimal.

Selain itu, laporan ini turut menerangkan penggunuan program genetik dan teknik laluan

perancangan dalam bidang yang melibatkan tingkah laku robot untuk bidang penyelesaian

permasalahan yang mencari dinding. Eksperimen ini melibatkan 30x20 grids serta empal

ekstrusi yang telah direkabentuk dan diaplikasikan uniuk mengkaji kebolehupaya skala

penyelesaian. Kesemua eksperimen ini telah menunjukkan bahawa GA berupaya untuk

menghasilkan algorithma dalam bidang penyelesaian "dinding robotik" secara automatik.

xvi

Page 16: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

CHAPTER 01: INTRODUCTION

1.0 Introduction

1.1 Overview

Everyone has heard about the term `robot', and it has become common in

manufacturing facilities all around the world. But, not everyone is really sure about the

meaning of a robot. Therefore, as a software engineering student, the project will be

introducing a robot simulation prototype program to allow people to know more about

what simulated robot actually is. Also, the prototype program is designed based on

basic user interface so that it will not cause any difficulty when a user uses this

prototype program.

Hence, this chapter will show an in depth introduction of the basic knowledge that will

be used in the project. The knowledge that will be applied in this prototype program

are the fundamental study of the research problem, purposes or objectives of the

research study, scope of the study, methodologies that will be used in this research

study and the significance of the research study. In addition, a project schedule and the

outline of each chapter of this report will be included to make this interim report

throughout the development of this project.

1.1.1 Research Background

This report is produced for the Final Year Project with the title `A RobotWall

Simulator' (RWS). This prototype program is a wall-following program, which is

using wall-following behavior or algorithm to perform its functionality. It will outline

1

Page 17: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

the program that would keep a robot within a certain range of the walls of an

enclosure. The term "robot" generally connotes some human-like (anthropomorphic)

appearance; consider robot "arms" for welding. An intelligent robot is a mechanical

creature which can function autonomously.

This project demonstrates the used of genetic algorithm or genetic (evolutionary)

programming to design and develop this proposed RWS. This algorithm will lay out

the fundamental of the solution for planned follow-on projects such as map

generation, maze traversal and so forth. This project will then give a positive result to

show sufficient promise to warrant further research into more complex and large

projects.

1.1.2 Why This Project's Worth

This topic is chosen to be my Final Year Project because it will fulfill the objectives of

the degree requirement. Hence, the project will include several methodologies such as

an object-oriented analysis and design, object-oriented programming and so forth to

develop this RWS. This project is worth implementing because robots are well-suited

for applications where a human is a significant risk such as nuclear, space and

military. The economics or menial nature of the application results in inefficient use of

human workers such as service industry and agriculture. Also, this project is good for

humanitarian uses where there are great risks, for example, demining an area of land

mines, urban search and rescue.

2

Page 18: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

Robot cannot make many decisions and receives little or no sensory input in present-

day. So, this project will enlarge the possibilities of using the Robotic Technology in

terms of machine learning and artificial intelligence (AI) in RWS to answer to the

robot's problem that cannot be solved. Al is used in this project so that the RobotWall

(RW) can do things like a human can. It means that the RW will follow the shape of

the designed wall as a human being wall through it.

Robotics application has become a tool for a little more than 30 years. According to

Grant Fjermedal, "I met the tomorrow makers.. . Among them are the greatest

scientists, and they are in a desperate race to be first at downloading the contents of

the human mind into a computer housed within a robotic body so that we will never

have to die... Others expressed a fear that what was now being created was in fact a

new species that might soar beyond its human creators to become our evolutionary

successors. " [5] Therefore, this RWS can be used in future work and will improve

quality, enhance safety, and so forth.

1.2 Problem Statement

RWS will face different direction of movements when navigating in a desired closed

room. In order to develop this prototype program, it must first figure out the

requirements and the problem faced. Below are those problem statement faced and the

proposed solution to this project:

3

Page 19: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

1.2.1 Problem for a RW Moving Forward

When RW moves along the wall, it will not know whether there is a wall in the front

or at a corner.

1.2.2 Problem for a RW Turning a Corner

The RW will not know whether to turn left or turn right by itself when the RW have

reached a corner. Such case is possible to occur in this corner area. This means that it

will hit the wall from the side and front at the same time.

1.2.3 Problem for a RW While Too Far or Too Close From the Wall

This will happen when the robot is too far or too close from the wall. If it is too far,

the robot would not know where the position and direction is. If the robot is too close

to the wall, then the steps are as the above but the condition is now too close rather

than within acceptable range.

1.2.4 Problem for a RW Turn Toward, Away From and Parallel to Closest Wall

Here is another three problems that will be faced by a RW in this project. The RW

itself needs to think whether to turn towards or turn away from or turn parallel to the

closest wall.

1.3 Proposed Solution

Every problem statement must have at least one solution to solve it. At this point, all

the possible inputs and outputs will be formulating appropriate reactions that the RW

4

Page 20: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

should have in each specific problem area. Below are the suggested solutions that will

be applied into this proposed RWS:

1.3.1 Solution to a RW Moving Forward

To solve this problem, it is just set to return to 1 if RW completes this without hitting.

Otherwise, return to zero. If the RW collides with a wall, movement stops at that

point, it means that the RW is not allowed to move into or through the walls.

1.3.2 Solution to a RW Turning a Corner

The proposed solution is by rotating the RW 90 degrees to the right; return angle robot

is now facing the left corner. When the robot is at the right corner, follow the same

steps to turn right, excepted turn left 90 degrees.

1.3.3 Solution to a RW While Too Far or Too Close From the Wall

To solve this problem, it needs to set an acceptable range (in the corridor range), say

10 to 20 units (1 or 2 grids). This function will then repeatedly execute itself within

this range. If the robot goes out of the range, it will return to zero by the function.

1.3.4 Solution to a RW Turn Toward, Away From and Parallel to Closest Wall

In such circumstances, the RW will be set to find the closest wall and turn to face it if

it is towards closest wall. For RW turn away from the wall, it will be set to find the

closest wall. Also, to turn parallel to the closest wall, find the closest wall first, and

then turn 45 degrees sensor is facing the wall. All three conditions will return angle

RW its facing position.

5

Page 21: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

1.4 Objectives

The design of RWS is to discover the key principles by which how brains work and to

implement these in artificial systems that interact intelligently with the real world.

Below are the objectives of this project:

To study wall-following problem.

" Create an intelligent program.

" Niche targetability and ease of portability to other domains.

" To study genetic algorithm.

" To use an object-oriented design method.

" A prototype program.

1.5 Scope of Study

The scope of this study is to create a genetic algorithm (evolutionary programming)

program that will then be applied to this proposed RWS. Since this project is time

constraint and only one person is developing the whole project, therefore, the

limitation of the study in this project is that it only concentrates on one robot that will

follow the wall at one time during the process. Also, the shape of the wall will be

fixed at all times when the program runs each time. It means that other phenomenons

such as hitting between two or more robots are not included here. And, hitting two or

more times to the wall for the robot is also not covered here.

This RWS project is to navigate the RW through open spaces until it encounters a

wall. Then, it will navigate along the wall at some fairly constant distance. In this

6

Page 22: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

project, the robot will traverse the entire circumference of its environment at least

once without straying either too close, or too far from the wall.

To test these navigation algorithms, a two-dimensional simulated environment is

designed by using GP. Hence, this environment will only have a complete enclosed

room with walls. Each individual algorithm from the GP population is tested in the

same room in a sequence times. Therefore, this prototype program will be scored on

how well it performs the wall-following the behavior by applying this genetic

algorithm.

1.6 Procedures/Methodologies

The study on RWS is limited to the technologies and concepts that will be used to

develop this simulation. There are many procedures and methodologies used to design

a successful prototype.

In this RWS project, the suggestion is to use Object-Oriented System Development

Life Cycle (OOSDLC) to analyze it. Hence, Object-Oriented Analysis (OOA), Object-

Oriented Design (OOD), and Object-Oriented Programming (OOP) will be applied to

this project. In the evaluation phase, it will use the Rapid Application Development

(RAD) and Incremental Testing to analyze and test the program. In addition, CASE

tools such as Rational Rose will be used to develop the design prototype program.

In addition, the study of the concept of Human Computer Interaction (HCI) will also

be included in this project to ensure its usability. By interaction design, Winograd

7

Page 23: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

(1997) discusses it as "the design of spaces for human communication and

interaction. " [3] This means that this project will apply the design of an interactive

system to support people when in their working lives every day. Also, HCI can make

sure this prototype program will meet the usability criteria and user experience.

1.7 Significance of Research

This project is developed to study the performance of GP in robotic fields to evolve

the movements of a robot in wall-following problem.

1.7.1 Solve Janitorial Problem

One such activity is janitorial work, especially maintaining public rest rooms, which

has a high turnover of personnel regardless of pay scale.

1.7.2 Help Human Conduct Difficult Jobs

This project can be applied to manufacturing companies, where repetitious activities in

unpleasant surroundings make human workers inefficient or expensive to retain. One

reason is that it is an unpleasant job for a human to work in such working environment

that includes working in a hot environment, carrying sweaty and tedious work with a

low tolerance for inaccuracy.

1.7.3 Firefighting

This activity is hazardous work for human beings. This project can help humans to

fight fires in dangerous situations which are very dangerous especially to the

firefighters. In addition, it also could survive some conditions that will kill the human

8

Page 24: P. KHIDMATMAKLUMATAKADEMIK UNIMAS uummniuimiiiuikeng+seng.pdfPusat Khidmat Makiumat Aka' UNIVERSITI MALAYSIA SARF 94300 Kula Samarahan A ROBOTWALL SIMULATOR P. KHIDMATMAKLUMATAKADEMIK

beings when this project integrates with other systems to make a robot firefighter. For

example, the robot firefighter will not be affected when faced with extremely heavy

smoke and very low levels of oxygen inside the area.

1.7.4 Security

This RWS is an intelligent simulator which may be applied to other systems to come

out with an intelligent system that can perform dangerous patrols. In this case, that

robot can move faster and remain alert better if compared with humans. Therefore, it

can also be instructed to inform a human security person if it found something amiss.

1.8 Project Schedule

This project is divided into two phases to complete the entire related chapter that is

starting from Chapter 1 until Chapter 7. The outline of every chapter will be discussed

in the next section.

During the first phase, the report has to come out with a research on the RWS that will

include some introduction of the proposed project, comparison for the similar existing

system and so forth. Here it needs to hand in the first two chapters, which are the

Overview of Introduction and Literature Review, as an interim report. For the second

phase, it includes Chapter 3 to Chapter 7. After that, a final report for this project will

be produced and handed in. This project started on Ist April 2004 and will end on 8th

April 2005.

9