ROBOTS IMPLEMENTATION FOR ODOR SOURCE LOCALIZATION …

11
ROBOTS IMPLEMENTATION FOR ODOR SOURCE LOCALIZATION USING PSO ALGORITHM Jatmiko W, Jovan F, Dhiemas R.Y.S Alvissalim M. Sakti, Fanany M Ivan, Febrian A Universitas Indonesia Faculty of Computer Science Margonda, Depok INDONESIA [email protected] T. Fukuda, K. Sekiyama Nagoya University Dept. of Micro-Nano Systems Engineering Chikusa-ku, Nagoya JAPAN Abstract: Research topics in robotic application is quite varies but one of the most interesting topic is odor source localization. This research combine the robot ability to recognize odor and track the movement so that robot can find the source. Most of the research are done to improve the algorithm to localize the source by using simulation software. This paper tries to verify the robustness of one of the localization method known as Particle Swarm Optimization (PSO) in the real-world implementation. This paper will shows robot model that used in the experiment and also discuss the architecture to implement robot behavior. A group of mobile robots equipped with wireless communication device and odor sensors is employed. The experiment is conduct in area of 488cm x 488cm with dynamic odor source in one end. The experiment also used a set of camera to track robots position. The experiement result verifies that PSO is technically sound for real-world odor source localization. In this experiment, PSO can localized the source in 360 seconds or bellow. Key–Words: PSO, Al-Fath, Odor Source 1 Introduction The amount of researchs in the field of robotics ap- plication for odor-sensing technology has grown sub- stantially, such as research of [1] and [2]. The re- searchs is driven by the various attractive applications, including the research for toxic gas leak and fire ori- gin at its initial. Both researchs required the ability for sensing and localize the gas source. Robotic re- search in odor field was opened from the research of odor-sensing technology in 1999 by J.W. Gardner and P. N. Bartlett [3, 4]. In year 2006, Wisnu J. et al, pro- pose a method to enable odor sensor systems to rec- ognize fragrance mixture [5] Their research presents the state-of-the-art in electronic noses. It can also be considered as a guide and a reference to develop odor- sensing application such as in robotic research. Researchs carried out by Michael Wandel [1, 6], et al tried to demonstrate odor sensing system that able to detect volatile substances. The investigations showed that even weak odour could be sensed and the influence of the environment was rather negligi- ble. They revealed that the performance of the mo- bile odor sensing system could be significantly en- hanced by making mobile robot moved with not too low and constant speed. By moving in this manner, robot could add an extra airflow relative to the metal oxide sensors. Another experiment about single odor source localization using single robot also reported by [2]. In this research they define clearly the target and how they can determine the odor source. However, both research is still focusing in utilize and enhance odor sensor ability. Other researchs was performed by Adam T. Hayes et al [7, 8, 9] that used multiple robots to lo- calize the odor source. They used distributed algo- rithm for solving the full odor localization task and shows that in the term of odor localization, group per- formance can exceed the perfomance of single robot. They have demonstrated that one subtask and plume traversal concept can be successfully used to locate odor source using real robots. Eventhough multiple robots were used, communication between robots was never happen. Robot information about odor concen- tration is kept for its self, rather than being distributed to the others. With the algorithm proposed by them, there is a chance that robots search in the same area repeatedly. To handle distribution of information problems, one of our previous research for odor localization uses the Particle Swarm Optimization (PSO) algo- rithm. The PSO algorithm has been proven success- ful in locating odor sources using 2D simulation soft- WSEAS TRANSACTIONS on CIRCUITS and SYSTEMS Jatmiko W, Jovan F, Dhiemas R.Y.S, T. Fukuda, K. Sekiyama ISSN: 1109-2734 115 Issue 4, Volume 10, April 2011

Transcript of ROBOTS IMPLEMENTATION FOR ODOR SOURCE LOCALIZATION …

ROBOTS IMPLEMENTATION FOR ODOR SOURCELOCALIZATION USING PSO ALGORITHM

Jatmiko W, Jovan F, Dhiemas R.Y.SAlvissalim M. Sakti, Fanany M Ivan, Febrian A

Universitas IndonesiaFaculty of Computer Science

Margonda, DepokINDONESIA

[email protected]

T. Fukuda, K. SekiyamaNagoya University

Dept. of Micro-Nano Systems EngineeringChikusa-ku, Nagoya

JAPAN

Abstract: Research topics in robotic application is quite varies but one of the most interesting topic is odor sourcelocalization. This research combine the robot ability to recognize odor and track the movement so that robotcan find the source. Most of the research are done to improve the algorithm to localize the source by usingsimulation software. This paper tries to verify the robustness of one of the localization method known as ParticleSwarm Optimization (PSO) in the real-world implementation. This paper will shows robot model that used inthe experiment and also discuss the architecture to implement robot behavior. A group of mobile robots equippedwith wireless communication device and odor sensors is employed. The experiment is conduct in area of 488cmx 488cm with dynamic odor source in one end. The experiment also used a set of camera to track robots position.The experiement result verifies that PSO is technically sound for real-world odor source localization. In thisexperiment, PSO can localized the source in 360 seconds or bellow.

Key–Words: PSO, Al-Fath, Odor Source

1 IntroductionThe amount of researchs in the field of robotics ap-plication for odor-sensing technology has grown sub-stantially, such as research of [1] and [2]. The re-searchs is driven by the various attractive applications,including the research for toxic gas leak and fire ori-gin at its initial. Both researchs required the abilityfor sensing and localize the gas source. Robotic re-search in odor field was opened from the research ofodor-sensing technology in 1999 by J.W. Gardner andP. N. Bartlett [3, 4]. In year 2006, Wisnu J. et al, pro-pose a method to enable odor sensor systems to rec-ognize fragrance mixture [5] Their research presentsthe state-of-the-art in electronic noses. It can also beconsidered as a guide and a reference to develop odor-sensing application such as in robotic research.

Researchs carried out by Michael Wandel [1, 6],et al tried to demonstrate odor sensing system thatable to detect volatile substances. The investigationsshowed that even weak odour could be sensed andthe influence of the environment was rather negligi-ble. They revealed that the performance of the mo-bile odor sensing system could be significantly en-hanced by making mobile robot moved with not toolow and constant speed. By moving in this manner,robot could add an extra airflow relative to the metal

oxide sensors. Another experiment about single odorsource localization using single robot also reported by[2]. In this research they define clearly the target andhow they can determine the odor source. However,both research is still focusing in utilize and enhanceodor sensor ability.

Other researchs was performed by Adam T.Hayes et al [7, 8, 9] that used multiple robots to lo-calize the odor source. They used distributed algo-rithm for solving the full odor localization task andshows that in the term of odor localization, group per-formance can exceed the perfomance of single robot.They have demonstrated that one subtask and plumetraversal concept can be successfully used to locateodor source using real robots. Eventhough multiplerobots were used, communication between robots wasnever happen. Robot information about odor concen-tration is kept for its self, rather than being distributedto the others. With the algorithm proposed by them,there is a chance that robots search in the same arearepeatedly.

To handle distribution of information problems,one of our previous research for odor localizationuses the Particle Swarm Optimization (PSO) algo-rithm. The PSO algorithm has been proven success-ful in locating odor sources using 2D simulation soft-

WSEAS TRANSACTIONS on CIRCUITS and SYSTEMS Jatmiko W, Jovan F, Dhiemas R.Y.S, T. Fukuda, K. Sekiyama

ISSN: 1109-2734 115 Issue 4, Volume 10, April 2011

ware. The full report for this resarch and 2D simula-tion software can be found in [10]. Under PSO, everyrobot will be treat as particle and communication be-tween these particles become the main key to locatethe odor quickly. Several advances have been madein modifying Particle Swarm Optimization to make itmore robust. One of the approach is by reinitializingthe global best value whenever the robots are trappedin local maximum, named PSO Detect and Respond(DR) [11]. Another approach is to utilize wind tomake the odor source localization faster [12].

Although the use of simulators to measure perfor-mance of Particle Swarm Optimization is quite use-ful, results from the simulation software might notrepresent the actual performance. Therefore, to mea-sure the actual performance of Particle Swarm Opti-mization algorithm for locating an odor source, it isnecessary to implement it on a real hardware. Thisresearch aims to verify the robustness of PSO-basedodor source localization on a real world. A group ofrobots equipped with wireless communication deviceand odor sensors is employed to participate in this re-search.

It’s in the nature of Particle Swarm Optimiza-tion algorithm that this algorithm requires informa-tion about the position of each robot. In simulationsoftware, the position of each robot can be easily de-termined because each robot position is also neededfor the calculation of simulation, hence this data is al-ready stored in a variable. However, in real world itis quite different and difficult. The location where thelocalization is conducted will also impact on the de-vice that can be used to measure robot position hencethis also interfere on the position error which inherr-ited from the device that we use.

For outdoor localization, a global positioning(GPS) device is usually used. GPS can provide re-liable location information anywhere on Earth whenthere is an unobstructed line of sight to four or moreGPS satellites. For indoor localization, GPS devicedoes not perform well due to the blockage of build-ings. With obstacles between GPS satellites and itsobject, the accuracy will be low hence this informa-tion can not be used.

This research is designed for determine PSO ro-bustness in indoor localization. It is then decided thatto provide the position of each robots, a group ofwebcameras is utilized in this research. Images thatprovided by webcameras then being manipulate usingimage processing techniques, this manipulation willgives the data that needed by PSO.

The rest of this paper is structured as follows: insection 2 the PSO algorithm is described, robot designand sensors are described in section 3, systems archi-tecture that includes camera settings and process to

determine robot position is describe in section 4, sec-tion 5 will describe the field and all the accessory usedto construct simple dynamic environment for the ex-periments, the corresponding experimental results arethen presented in section 6, followed by conclusionsand suggestions for future work in section 7.

2 Particle Swarm OptimizationFramework

The particle swarm concept was originated as a simu-lation of simplified social system. The original inten-tion was to graphically simulate the choreography ofbirds or fish school. However, it was found that parti-cle swarm model can be used as an optimizer by Dr.Eberhart and Dr. Kennedy in 1995[13, 14]. With theirimprovement, Particle Swarm Optimization (PSO) isoften used to find global maximum or global mini-mum of a function.

Although it is generally used in static problems,PSO has also proved useful in dynamic problemswhere the environment dynamically changes [15]. Inthat research, Dr. Eberhart et al proposed a PSO witha few modifications to handle dynamic environments.They introduced two environment detection methodsby using global best value as the parameter. Change-gBest-value method and Fixed-gBest-value methodcan succesfully detect the various dynamic changes.These features is embellished by the ability to respondto a wide variety of changes. They called these meth-ods as detect and response.

Particle Swarm Optimization as one branch ofevolutionary algorithm (EA) has proven successful ina number of static applications as well as dynamicand stochastic optimization problems [16, 17]. Theyare particularly successful in problems involving mea-surements that account for the uncertainty that presentin the real world. Every individual in PSO is assumedas a particle and actively contribute to solve the prob-lem. Each particle is trying to optimize its fitnessfunction by exploring the search space using its owninformation as well as information from other indi-viduals. Value that aquired from fitness function willdetermine the fitness of the solution that particle have,the greater the fitness value means the closer that so-lution to the optimum solution. Each individual mustkeep track of its best position which is the positionwith the highest fitness function value perceived. Thisposition is called the personal best or local best value.Beside local best, PSO also have something calledglobal best position. The global best position is thehighest the position with the highest value among allthe local bests. Each individual must also keep trackof its current velocity vector and update it periodically.

WSEAS TRANSACTIONS on CIRCUITS and SYSTEMS Jatmiko W, Jovan F, Dhiemas R.Y.S, T. Fukuda, K. Sekiyama

ISSN: 1109-2734 116 Issue 4, Volume 10, April 2011

In odor source localization context, each robotacts as a particle exploring the search space. Thesearch space is the physical space which the robot canoccupy. The fitness function uses the concentrationvalue of odor that detected by robot sensors from theenvironment around it. All the robots try to optimizetheir position to get nearer to the position that has thehighest value of odor concentration. Robots have beengiven predetermine threshold value so that whenevera robot detected odor concentration that higher thanthe threshold then it’s safe to claim that the source hasbeen found and search can be terminated. Supposethe position and velocity of the i-th robot at iterationt (where t = 1, 2, ...) are represented by Xi(t) andVi(t). Let pi and pg defined as best local and the bestglobal position that evaluated by the robot. The posi-tion and the velocity of each robot are updated at eachtime step to guide the robot exploring the search spaceand to improve the fitness function. A fitness functionis needed to evaluate the fitness of every position thathave been found.

V n+1i =χ (V n

i +

individual︷ ︸︸ ︷c1.Rand().(pn

i − xni ) + (1)

social︷ ︸︸ ︷c2.rand().(pn

g − xni ))

Xn+1i =Xn

i + V n+1i (2)

The closer position to solution, the greater the fit-ness value will be. By using fitness function, everyposition which has been explored can be comparedone to others in order to determine which position iscloser the the solution (in this case, the odor source).When a robot discovers a better position with a higherodor sensor reading, its local best is updated. Thedifference between pi and the current position Xi(t)is stochastically combined with the current velocityVi(t). The update of velocity causes change in robotstrajectory and moves robots to new position. Thestochastically weighted difference between the popu-lations best position pg and individual current positionxi is also added to the velocity to adjust the velocityvector. The addition of the two vectors cause the robotto search between its local best position and the globalbest position. Using this mechanism will eventuallymakes the robots converge to a single position untilanother global best is found.

The velocity and position vector is calculated us-ing Equation 1 and 2. Functions Rand() and rand() arerandom generator functions that will return value be-tween (0, 1) [12]. The χ coefficient is constrictionfactor, which have the value that less than 1. The

constriction factor is used to limit the velocity. Thecoefficient c1 and c2 are learning parameters whichrepresents the tendency of individual to follow localbest and global best. When c1 is greater than c2 thenthe particle tends to move towards its local best posi-tion. Otherwise, when c2 is greater than c1 the particletends to move towards global best position. For solv-ing problems with single solution, it is best to have c2that greater than c1 [18].

PSO algorithm is a convergent algorithm, whichmeans that all particles at a particular iteration willeventually wander around global best position. If thishappens, then the movement of those particles wouldnot be too significant hence make PSO computationbecomes ineffective. At this point decision must madeto decide whether to continue the search will or not. Inother words, PSO must determines whether the con-vergence behavior occurs because the particle havefound a solution, so that the search can be consid-ered successful or not. There are several conditionsthat can be used as parameters to make the PSO stops[19]. This research chooses two of them to be used asparameters, the parameters are describe as follows:

1. Iteration steps already exceeded the time limit.Time is always be an important thing to take intoaccount. If the time limit is too tight, the searchwill stop before any solution is found. If thetime limit is too loose, this will make unneces-sary computational cost due to the PSO compu-tation that being done by robots after PSO reachconvergence state.

2. An acceptable solution has been found. Thesearch will be stopped when theres any robot hada fitness value that exceeds the given threshold.

3 Robot Design3.1 Robot Platform

To verify the robustness of PSO algorithm, robot thatwill implement PSO must be build. The robots used inthis research are built based on the Traxter II platform.

This robot was first developed to participate inrobotic competition which task is to put out firesources inside a house miniature. The name ofthe robot is Al-Fath, it cames from Arab languagethat means victory. The first version of Al-Fath isequipped with various sensors such as compass, sonarranging sensor, and incremental encoder. For this re-search Al-Fath must be moddified. In order to allowcommunication between robots, we add a wireless-communication device. This robot is also need to de-tect odor that planned to be search, hence we add pair

WSEAS TRANSACTIONS on CIRCUITS and SYSTEMS Jatmiko W, Jovan F, Dhiemas R.Y.S, T. Fukuda, K. Sekiyama

ISSN: 1109-2734 117 Issue 4, Volume 10, April 2011

(a) Front view (b) Side view

Figure 1: Al-Fath Model (in centimeters)

Table 1: Hardware specificationHardware Name Used As NumberAtmel AT-MEGA 2560 Main Processor 1Atmel AT-MEGA 8 Slave Processor 2TGS2600 Odor Sensor 2CMPS03 Digital Compass 1YS1020U Wireless UART 1SRF08 Ultrasonic Ranger 2

of odor-sensors to the platform. Overall, Al-fath withevery sensors attached has 23.5 cm in length, 20.3 cmin width and 27.8 in height. The design of robot usedin the research is shown in Fig. 1.

As seen in Table 1, Al-Fath is consisted of odorsensor, compass, wireless UART and sonar range sen-sor as its media to interact with the environment, whileAT-MEGA 2560 and AT-MEGA 8 as its brain. AtmelsAT-MEGA 2560 is an 8-bit microcontroller operatingat 11.059200 MHz. It is used as main controller whichhandles most operations in the robot. Main controllerroles are described as follows:

• As a master.

• Compass value, encoder value and SRF08 valuereader.

• Navigation control.

• Reactor of sensor microswitch.

• Controller of data deliveries to LCD.

• Controller of data deliveries to Wireless UART.

A pair of Atmels AT-MEGA 8 is used for left andright motor speed control and odometry. The micro-controllers communicate using built-in UART com-munication module. List of the component that being

Figure 2: Al-Fath Brain Structure

handler by AT-MEGA 2560 and AT-MEGA 8 can beseen in Fig. 2.

3.2 Sensors

Figaro metal-oxide sensors were used to measure rel-ative odor concentrations. These sensors contain aheating element to maintain a constant operating tem-perature of approximately 300oC [4]. The electricalresistance of the semiconductor affected by redox re-actions of the sensed odor with the sensor surface isused to measured odor quantity. Differently dopedmaterials provide slightly varying sensor characteris-tics, although metal-oxide sensors are not highly se-lective in general. This sensor were chosen for our ex-periments because of their high sensitivity, sufficientto detect odor concentration from distance of severalmeters. Due to the physics of the measuring principlethe time constants of the response and recovery of thesensors are quite long (in the order of a few secondsfor response, and a few tens of seconds for recovery).Thus considerable temporal integration of successivereadings is always performed implicitly by the sen-sors themselves. Graphic explaining the odor sensorcharacteristic can be seen in Fig. 3.

To avoid collision among robots and betweenrobot and the walls, Al-Fath is equipped with ultra-

WSEAS TRANSACTIONS on CIRCUITS and SYSTEMS Jatmiko W, Jovan F, Dhiemas R.Y.S, T. Fukuda, K. Sekiyama

ISSN: 1109-2734 118 Issue 4, Volume 10, April 2011

Figure 3: Odor sensor characteristic.

Figure 4: Al-Fath Physical View

sonic rangers. We select ultrasonic rangers rather thaninfrared sensor because the ultrasonic wave producedby ultrasonic rangers are conical. This makes the re-gion to detect objects in front of Al-Fath greater byonly using a few sensors.

Digital compass is used to determine the direc-tion of the robot by reading the magnetic field in spe-sific points. The maximum resolution of compass is0.1 degree, while it’s accuracy is around 3-4 degrees.Error that made by digital compass is influenced bythe presence of surrounding metals. Metals can givea great influenced in compass reading, this sensors isnot fitted to be used in the area that have a great num-ber of metal.

Communication between robots uses a wirelessUART module. All the wireless UART device is set touse the same frequency, therefore a protocol must bedesigned so that no communication crash occur. Com-munication protocol used in this research is build fromthe scracth and explained in Section 4.3. The standardmodel of Al-Fath is shown in Fig. 4.

Figure 5: Software architecture.

4 ArchitectureThe software running the Particle Swarm Optimiza-tion Algorithm consists of three key modules. Thesethree modules are Behaviour Module, Camera Mod-ule, and Communication Module as illustrated in Fig.5. As can be seen in the architecture, main compu-tation for PSO is performed at the master computer(PC). All robots only perform computation when theyrecieve direction from PC, hence this architecturetreats robots as slave. As a slave, the robot has re-sponsibility to manage all components added in thebody, as state in Fig. 2. Robots must always try tofollow and provide as asked by the master PC. Thisarchitecture was chosen to provide faster developmentcycle since reprogramming the robots microcontrolleris time consuming.

4.1 Behaviour Module

The Behaviour Module is a module that manage thebehaviours of all robots. This module consists of datacenter, robot’s thread, and supervisor. Each robot’sthread will compute new velocity vector of associaterobot and will update robots local best position. Thepseudocode of the algorithm is shown in below.

repeat

WSEAS TRANSACTIONS on CIRCUITS and SYSTEMS Jatmiko W, Jovan F, Dhiemas R.Y.S, T. Fukuda, K. Sekiyama

ISSN: 1109-2734 119 Issue 4, Volume 10, April 2011

for each particle i

// set local best

if f(xi) is better than f(lbest)

thenlbest = xi

end if// set global best

if f(xi) is better than f(gbest)

thengbest = xi

end ifend forfor each particle i

update velocity and position using

Equation 1

end foruntil stopping condition is true

In addition, robot’s thread also collects every in-formation related to the associate robot. Collected in-formations are organized in the data center based ontime arrival and robot’s thread id. Beside local best,PSO also need global best value. Global best value iscomputed in the data center based on the last local bestinformation. The best of all local best in the data cen-ter will be nominated as global best. This global bestvalue is treated as shared data and can be accessedby all robot’s thread. Supervisor is prepared to han-dle changing in environment. Yet in the term of thisresearch, the implementation of this module is beingsuspended. The process run by each thread and thebreakdown of the module is shown Fig. 5.

4.2 Camera Module

In order to implement PSO, the program needs toknow the position of each robot. Camera module isdeveloped to serve that need. The module is imple-mented as a webservice running on several comput-ers managing 12 web cameras. This method can beconsidered as GPS adhock. In real application, thismodule can be replaced by a Global Positioning De-vice (GPS) but remember to check the accuration forparticular search area.

Twelve cameras (Fig. 6) that used in this researchare standard Webcam. The specification of these cam-era are having image resolution about 320 x 240 pix-els and can capture about 30 frame per seconds. Thecameras are placed on the ceiling of the room facingtowards the ground. Every camera are configured to

Figure 6: Twelve camera design.

Figure 7: Al-Fath robot with color identifier mountedin top.

covers a region of 216 x 167 cm wide. There are someregions where camera view might intersect with eachother. This is done to support smooth transition be-tween regions and to confirm that robots do not dis-appear from the system while in transite between re-gions.

To simplify the robot position tracking process,color signatures are mounted on top of the robots. Thecolor signature is a multi-colored circle as pictured inFig. 7. This type of color signature gives an advan-tage in extensibility. Whenever the number of robotsincreases, one can easily add the number of color lay-ers to distinguish them.

The image processing technique employed isColor Filtering and Blobs Filtering. Color FilteringTechnique is used to filter a specific color from an im-age, so that only part of the image with a specific colorremains. By using basic colors(Red, Green, Blue)as color signatures, HSL (Hue, Saturation and Lumi-nance) method become available to be used to filterthe colors. In addition, HSL method can tolerate thechange of light intensity in an environment. Configu-ration the color filters used can be seen in Table 2.

WSEAS TRANSACTIONS on CIRCUITS and SYSTEMS Jatmiko W, Jovan F, Dhiemas R.Y.S, T. Fukuda, K. Sekiyama

ISSN: 1109-2734 120 Issue 4, Volume 10, April 2011

Table 2: HSL ConfigurationColor Hue Saturation LuminanceRed 347 - 11 0.45 - 1.00 0.30 - 0.90Green 66 - 172 0.20 - 1.00 0.20 - 1.00Blue 202 - 300 0.23 - 1.00 0.10 - 0.64

Figure 8: Camera configuration uses many cameras.

Results from the filtering process is then pro-cessed with Blobs Filtering. This technique is usedto detect the object (blobs) on image input by usingcolor value of the pixel in an area. The color signa-ture circles will be identified as blobs in this process.Once the location of the blob is found, the location ofthe robot can be represented by it.

To get an absolute position of the robot(xabs, yabs), a relative position from center point ofthe right blob can be used (xcenter, ycenter). For sin-gle camera (xabs, yabs) can be gotten as follows:

{xabsyabs} = S × {xcenter

ycenter} (3)

Where S is described as follows:

S =fieldlength

framewidth(4)

The Eq. 3 needs to be modified to apply in thecase of many cameras. Suppose the camera is placedas in Fig. 8, the robot position (x, y) can be deter-mined as follows:

{xy} = {xabsyabs} × {(length−offsetX)×IndexXi

(width−offsetY )×IndexYi}+ {δxδy}

(5)

Figure 9: Communication flow.

Where Index Xi and Index Yi are indexs forCamera-i, δx is the deviation of the camera positionon the X-axis (horizontal), and δy is the deviation ofthe camera position on the Y-ordinat (vertical).

4.3 Communication Module

All communication is managed by a program in PCnamed the Communication Module. Since the en-tire wireless UART modules operate on the same fre-quency, communication must be managed so that noconflicts occur. The communication module is imple-mented as a webserver which serves a request fromclients. Other programs can communicate with thecommunication module to obtain sensor data fromeach robots and give direction to robots. It can alsobe accessed from a regular webbrowser.

Requests from the behavior module to communi-cation module have to be queued in the communica-tion module, while requests for information from thebehavior module toward the camera module can beprocessed instantly. This is due to the process timeto obtain data from each sensor varies. The informa-tion’s flow from behavior module to Al-Fath can beseen in Fig. 9.

Periodically every robot’s thread in the behaviormodule will request updated information of sensorfrom communication modules. At the time of PSO it-erations performed, thread PSO on the behavior mod-ule will send commands to the communication proto-col module. Each request from the behavior modulewill be queued on the communication protocol mod-

WSEAS TRANSACTIONS on CIRCUITS and SYSTEMS Jatmiko W, Jovan F, Dhiemas R.Y.S, T. Fukuda, K. Sekiyama

ISSN: 1109-2734 121 Issue 4, Volume 10, April 2011

ule. Requests/commands contained in the queue willbe sent one by one to Al-Fath. Requests/commandswill not be sent to Al-Fath from the communicationprotocol module if the feedback from the intended Al-Fath has not been received. However the time limit isgiven to the packet before the next command is sent.Commands which do not get feedback until the timelimit is considered as a packet drop.

5 Field SettingThe field used for the experiment is a 488x488 cm2

area with 50 cm high walls on the perimeter. The fieldhas a quite large dimension to distribute the odor con-centration in various positions. The field is placed inthe unventilated indoor environments which is domi-nated by turbulence rather than diffusion [20]. Thusan ideal distribution of the odor with a single peak atlocation of the source would not never happen. Ratherthan it, a patchy distribution of temporally fluctuatingeddies results is possible to happen [21, 22]. In thisrespect, the robot itself can be seen as part of the en-vironment due to its influence on physical parameterssuch as local air currents.

In one of the four walls, an odor source is placed.In this experiment, ethanol is used as the source ofodor. Half a liter of 95% liquid ethanol is stored inthe ethanol storage. Ethanol evaporates quite easilyon room temperature. Thus, the ethanol storage alsocontains ethanol in gas form.

In an unventilated room, it is imposibble to modelthe airflow dynamics accurately. One way to over-come this problem is to add a sufficiently strong artifi-cial air current that superimposes the complicated tur-bulent gas distribution with a more simple plume-likestructure [7]. An air compressor becomes an option tomake strong artificial air current so that the odor canburst out and be distributed to the entire field. The di-rection of the source can be controlled along the hor-izontal axis. The odor generation mechanism is dis-played in Fig. 10.

6 Experiment ResultSix experiments were conducted, each with a timeoutof 360 seconds. There were three scenarios involved.Each scenario was run twice with different positionof the source (in the middle and corner of the wall).Three robots were involved in each scenario. Threescenario prepared is described as below:

Figure 10: The odor-source generation mechanism.

• Scenario I. (Fig. 11a)All the three robots were positioned opposing thesource and the direction of exhaust was staticthroughout the experiment. Condition in thefirst scenario represented environment with sta-ble wind where robots had moved against winddirection.

• Scenario II. (Fig. 11b)Robots started the search at the same position asthe first scenario. However, the direction of theexhaust was changing throughout the experiment(Fig. 11b). This condition represented dynamicenvironment with unstable wind.

• Scenario III. (Fig. 11c)Robots were initially positioned and faced par-allel to the direction of exhaust and the exhaustdirection was static throughout the experiment.This condition represented environment with sta-ble wind where robots had not moved againstwind direction. It was used to be compared withfirst scenario in term of time.

Fig. 13 and Fig. 14 shows the result of an ex-periment with second scenario and third scenario. Asshown in those figure, the needed time to accomplishthe given task is same eventhough the environment isdifferent. In third scenario, the time is used to com-pensate the initial position of robots located outsidethe flow of source, while second scenario uses the timeto compensate the unstable wind. The results of theexperiments are shown in Table 3.

In four out of six experiments, the outcome weresuccessful. In the first scenario, robots were able tolocate the odor source under six minutes regardlesswhere the source was placed eventhough the neededtime is different. In the second and third scenarios,robots were not able to locate the odor source undersix minutes where the source is placed near cornerof the wall (Fourth and Sixth experiments in Table

WSEAS TRANSACTIONS on CIRCUITS and SYSTEMS Jatmiko W, Jovan F, Dhiemas R.Y.S, T. Fukuda, K. Sekiyama

ISSN: 1109-2734 122 Issue 4, Volume 10, April 2011

(a) Scenario I (b) Scenario II (c) Scenario III

Figure 11: Three scenarios for odor source experiments.

(a) (b)

Figure 12: Successful trial with three robots on first scenario.

(a) (b)

Figure 13: Successful trial with three robots on second scenario.

3). The two failures were due to the position of thesource. The robots eventually wander around a sin-gle point near the source although it is not the goal.The global best position is not updated until the search

time exceeds.

WSEAS TRANSACTIONS on CIRCUITS and SYSTEMS Jatmiko W, Jovan F, Dhiemas R.Y.S, T. Fukuda, K. Sekiyama

ISSN: 1109-2734 123 Issue 4, Volume 10, April 2011

(a) (b)

Figure 14: Successful trial with three robots on third scenario.

Table 3: Experiment OutcomeNo Scenario used Search Time Success/Fail1 Scenario I 219 Success2 Scenario I 315 Success3 Scenario II 241 Success4 Scenario II 360 Fail5 Scenario III 234 Success6 Scenario III 360 Fail

7 Conclusions and Furture WorksThis paper has show that Particle Swarm Optimiza-tion algorithm suitable for odor source localizationproblems. PSO has been proven quite successful onthe real dynamic environment. Using three robotsto locate the source in the medium area is can bedone within 360 seconds. However there’s a prob-lems when the source is placed in the corner of searcharea, this is due to the nature of collision avoidancealgorithm implement in robots.

It’s also shown that by using standard PSO, thereis a possibility for robots to be trapped in a local bestposition caused by its convergence characteristic. Fur-thermore, problems with localizing odor is not lim-ited to a single odor source hence failure in localizedcan not be avoided. Therefore, a more modification toPSO, such as PSO Detect and Respond and ChargedPSO, is needed to avoid the trap and also handle mul-tiple sources problems. We try to analyze the feasibil-ity to implement more advanced PSO in future work.The same problems goes to the size of search area, thebigger the area the harder it takes to localized the odor.

In this experiment, the communication module is

centered. This surely boost up the chance for datacollision when the behavior module send commandssimultaneously. To handle this problem, distributedcommunication module with multi transmitters can beconsidered as one of the option. Distributed commu-nication module can avoid the frequency’s collisionbecause of multi frequencies that are used.

Acknowledgements: This work was supported inpart by the Incentive Research Program No. 326F /DRPM-UI / A / N1.4 / 2009 by the Ministry of Re-search and Technology Republic of Indonesia and inpart by Grant of Joint Research for Foreign Affairsand International Publication No. 2186 / H2.R12.3 /PPM.00 Penelitian / 2010 by the Ministry of Educa-tion.

References:[1] M. Wandel, A. Lilienthal, T. Duckett, U.

Weimar, and A. Zell. Gas distribution in unventi-lated indoor environments inspected by a mobilerobot. In Proceedings of the IEEE InternationalConference on Advanced Robotics (ICAR03),2003.

[2] Wisnu Jatmiko, T. Fukuda, T. Matsuno, F. Araiand B. Kusumoputro, Robotic Applications forOdor-Sensing Technology: Progress and Chal-lenge, WSEAS Transaction on System, Issue 7,Volume 4, pp. 1134-1141, July 2005.

[3] G T. C. Pearce, S. S. Schiffman, H. T. Nagle,and J. W. Gardner, Handbook of Machine Ol-faction: Electronic Nose Technology. Weinheim,Germany: Wiley VCH, 2002.

WSEAS TRANSACTIONS on CIRCUITS and SYSTEMS Jatmiko W, Jovan F, Dhiemas R.Y.S, T. Fukuda, K. Sekiyama

ISSN: 1109-2734 124 Issue 4, Volume 10, April 2011

[4] J.W. Gardner and P. N. Bartlett, Electronic Nose:Principles and Applications. New York: OxfordUniv. Press, 1999.

[5] Wisnu Jatmiko, T. Fukuda, F. Arai, and B.Kusumoputro, Artificial Odor DiscriminationSystem Using Multiple Quartz Resonator Sen-sor and Various Neural Networks for Recogniz-ing Fragrance Mixtures, IEEE Sensors Journal,vol. 6. no. 1, pp. 223233, Feb. 2006.

[6] M. Wandel, A.Hayes. Sensing odour sources inindoor environments without a constant airflowby a mobile robot. In Proceedings of the IEEEInternational Conference on Advanced Robotics(ICAR01), 2001.

[7] A. Hayes, A. Martinoli, and R.M.Goodman.Distributed Odor Source Localization. IEEESensors Journal, Special Issue on ElectronicNose Technologies, 2(3):260273, 2002. June.

[8] A. Hayes, A. Martinoli, and R.M.Goodman.Swarm Robotic Odor Localization: Off-LineOptimization and Validation with Real Robots.Robotica, vol. 21, num. 4, 2003, p. 427-441.

[9] A. Hayes, A. Martinoli, and R.M.Goodman.Odor Source Localization with Mobile Robots.Bulletin of the Swiss Society for AutomaticControl, num. 46, 2007, p. 11-14.

[10] W. Jatmiko, K. Sekiyama and T. Fukuda, A PSO-based Mobile Sensor Network for Odor SourceLocalization in Dynamic Environment: Theory,Simulation and Measurement, Proc. of the IEEECEC-WCCI ”Congress Evolutionary Computa-tion - Word Congress on Computational Intelli-gence” pp. 3781-3788, 2006.

[11] Wisnu Jatmiko, K. Sekiyama and T. Fukuda,Modified Particle Swarm Robotic for OdorSource Localization in Dynamic Environment.The International Journal of Intelligent Controland Systems: Special Issue on Swarm Robotic,Vol. 11, No 3, pp.176-184, September 2006.

[12] Wisnu Jatmiko, Petrus Mursanto, BenyaminKusumoputro, K. Sekiyama and T. Fukuda,Modified PSO Algorithm Based on Flow of Windfor Odor Source Localization Problems in Dy-namic Environments. WSEAS Transaction onSystem, Issue 3, Volume 7, pp. 106-113, March2008.

[13] Eberhart, R. C. and Kennedy, J. A new opti-mizer using particle swarm theory. Proceedings

of the Sixth International Symposium on Micro-machine and Human Science, Nagoya, Japan.pp. 39-43, 1995.

[14] Kennedy, J. and Eberhart, R. C. Particle swarmoptimization. Proceedings of IEEE InternationalConference on Neural Networks, Piscataway,NJ. pp. 1942-1948, 1995.

[15] X. Hu, R. Eberhart. Adaptive Particle SwarmOptimization: Detection and Response toDynamic System. Proceedings of the IEEECongress on Evolutionary Computation (CEC),pp. 1666-1670, 2002.

[16] Li, X., Dam, K.H. Comparing Particle Swarmsfor Tracking Extrema in Dynamic Environ-ments. Congress on Evolutionary Computation3, 17721779, 2003.

[17] A. Carlisle, G. Dozier. Adapting Particle SwarmOptimization to Dynamic Environment. Proceed-ing of the International Conference on ArtificialIntelligence, pp. 429 - 434, 2000.

[18] Wisnu Jatmiko, K. Sekiyama and T. Fukuda,A PSO-based Mobile Robot for Odor SourceLocalization in Extreme Dynamic Advection-Diffusion Environment with Obstacle: Theory,Simulation and Measurement. IEEE Computa-tional Intelligence Magazine: Special Issue onBiometric. Vol. 2, Issue 2, pp. 37-51, May 2007.

[19] Engelbrecht, Andries P. Fundamentals of Com-putational Swarm Intelligence. Wiley, 2005.

[20] T. Nakamoto, H. Ishida, and T. Moriizumi. ASensing System for Odor Plumes. AnalyticalChem. News and Features, 1:531537, August1999.

[21] A. J. Lilienthal and T. Duckett. ExperimentalAnalysis of Smelling Braitenberg Vehicles. sub-mitted to ICAR 2003, 2003.

[22] R. A. Russell. Odour Sensing for Mobile Robots.World Scientific, 1999.

[23] M. R. Wandel, U. Weimar, A. J. Lilienthal, andA. Zell. Leakage Localisation with a MobileRobot Carrying Chemical Sensors. In Interna-tional IEEE Conference on Electronics, Circuits,and Systems (ICECS), pages 1247 1250, Malta,September, 25 2001. GDI.

WSEAS TRANSACTIONS on CIRCUITS and SYSTEMS Jatmiko W, Jovan F, Dhiemas R.Y.S, T. Fukuda, K. Sekiyama

ISSN: 1109-2734 125 Issue 4, Volume 10, April 2011