An agent of behaviour architecture for unmanned control of a farming vehicle

10
computers and electronics in agriculture 60 ( 2 0 0 8 ) 39–48 available at www.sciencedirect.com journal homepage: www.elsevier.com/locate/compag An agent of behaviour architecture for unmanned control of a farming vehicle L. Garc´ ıa-P´ erez, M.C. Garc´ ıa-Alegre , A. Ribeiro, D. Guinea Industrial Automation Institute (IAI), Spanish Council for Scientific Research (CSIC), 28500 Arganda del Rey, Madrid, Spain article info Article history: Received 7 March 2006 Received in revised form 18 June 2007 Accepted 19 June 2007 Keywords: Autonomous navigation Farming vehicle DGPS Odometer Digital compass Laser Hydraulic control AGROAMARA architecture Agent of behaviour Precision agriculture abstract This paper presents a hybrid agent of behaviour architecture to deal with the autonomous navigation of a farming vehicle. To this end, a conventional vehicle was fitted with a set of sensors and actuators to acquire continuous location and environmental data to safely and appropriately interact with a dynamic environment. The vehicle autonomously performs local piloting, following a tentative path initially specified by the human operator through a set of intermediate positions. A wireless LAN is used to get a bi-directional communica- tion between the farming vehicle and the human supervisor. Sensor-fusion algorithms are proposed to overcome the lack of GPS signals so as to obtain continuous and precise posi- tioning. From a set of basic motion agents ADVANCE, TURN, STOP, AVOID OBSTACLE, more specific agents related to the agricultural operation are defined, such as FOLLOW STRAIGHT LINE and CHANGE OF ROW. Some results are presented to show global navigation. © 2007 Elsevier B.V. All rights reserved. 1. Introduction Agricultural machinery, such as farming vehicles and imple- ments, is a highly specialized production tool. Farming vehicles are used in many different agricultural operations and are equipped with the proper implements to harvest, spray, plant, fertilize, till, weed, haul or mow. Such versa- tility makes autonomous navigation of farming vehicles an interesting case for automation. Tractor steering, in spite of being a collateral task from an agricultural perspective, is a fundamental issue as it needs the operator attention for long time periods and this affects the safety and production quality (Jahns, 1983). Farm mechanization in the last cen- tury has released operators from many of the heavy tasks in Corresponding author. Tel.: +34 918711900; fax: +34 918717050. E-mail address: [email protected] (M.C. Garc´ ıa-Alegre). crop production, but workers still perform arduous and long- term repetitive tasks under hard meteorological conditions (Nagasaka et al., 2004). The potential benefits of the automa- tion of vehicles in such tedious, and sometimes hazardous, operations have led to an increasing application of new tech- nologies to the agricultural field (Torii, 2000; Wilson, 2000; Zhang, 2002; Zhang et al., 2004). These benefits include, among others, enhanced operational safety, increased productivity and increased application accuracy. The main objective of the automation of a farming vehi- cle has been the self-guidance along a predefined or specified trajectory with the required accuracy, which in most cases is concerned with following a crop row. In most agricultural oper- ations, large vehicles such as harvesters perform trajectories 0168-1699/$ – see front matter © 2007 Elsevier B.V. All rights reserved. doi:10.1016/j.compag.2007.06.004

Transcript of An agent of behaviour architecture for unmanned control of a farming vehicle

Ac

LI

a

A

R

R

1

A

K

A

F

D

O

D

L

H

A

A

P

1

Amvastibalqt

0d

c o m p u t e r s a n d e l e c t r o n i c s i n a g r i c u l t u r e 6 0 ( 2 0 0 8 ) 39–48

avai lab le at www.sc iencedi rec t .com

journa l homepage: www.e lsev ier .com/ locate /compag

n agent of behaviour architecture for unmannedontrol of a farming vehicle

. Garcıa-Perez, M.C. Garcıa-Alegre ∗, A. Ribeiro, D. Guineandustrial Automation Institute (IAI), Spanish Council for Scientific Research (CSIC), 28500 Arganda del Rey, Madrid, Spain

r t i c l e i n f o

rticle history:

eceived 7 March 2006

eceived in revised form

8 June 2007

ccepted 19 June 2007

eywords:

utonomous navigation

arming vehicle

GPS

dometer

igital compass

a b s t r a c t

This paper presents a hybrid agent of behaviour architecture to deal with the autonomous

navigation of a farming vehicle. To this end, a conventional vehicle was fitted with a set of

sensors and actuators to acquire continuous location and environmental data to safely and

appropriately interact with a dynamic environment. The vehicle autonomously performs

local piloting, following a tentative path initially specified by the human operator through

a set of intermediate positions. A wireless LAN is used to get a bi-directional communica-

tion between the farming vehicle and the human supervisor. Sensor-fusion algorithms are

proposed to overcome the lack of GPS signals so as to obtain continuous and precise posi-

tioning. From a set of basic motion agents ADVANCE, TURN, STOP, AVOID OBSTACLE, more

specific agents related to the agricultural operation are defined, such as FOLLOW STRAIGHT

LINE and CHANGE OF ROW. Some results are presented to show global navigation.

© 2007 Elsevier B.V. All rights reserved.

aser

ydraulic control

GROAMARA architecture

gent of behaviour

cle has been the self-guidance along a predefined or specified

recision agriculture

. Introduction

gricultural machinery, such as farming vehicles and imple-ents, is a highly specialized production tool. Farming

ehicles are used in many different agricultural operationsnd are equipped with the proper implements to harvest,pray, plant, fertilize, till, weed, haul or mow. Such versa-ility makes autonomous navigation of farming vehicles annteresting case for automation. Tractor steering, in spite ofeing a collateral task from an agricultural perspective, isfundamental issue as it needs the operator attention for

ong time periods and this affects the safety and productionuality (Jahns, 1983). Farm mechanization in the last cen-ury has released operators from many of the heavy tasks in

∗ Corresponding author. Tel.: +34 918711900; fax: +34 918717050.E-mail address: [email protected] (M.C. Garcıa-Alegre).

168-1699/$ – see front matter © 2007 Elsevier B.V. All rights reserved.oi:10.1016/j.compag.2007.06.004

crop production, but workers still perform arduous and long-term repetitive tasks under hard meteorological conditions(Nagasaka et al., 2004). The potential benefits of the automa-tion of vehicles in such tedious, and sometimes hazardous,operations have led to an increasing application of new tech-nologies to the agricultural field (Torii, 2000; Wilson, 2000;Zhang, 2002; Zhang et al., 2004). These benefits include, amongothers, enhanced operational safety, increased productivityand increased application accuracy.

The main objective of the automation of a farming vehi-

trajectory with the required accuracy, which in most cases isconcerned with following a crop row. In most agricultural oper-ations, large vehicles such as harvesters perform trajectories

i n a

An industrial processor was integrated to perform sen-sor data acquisition, processing and actuator control. Theonboard processor, an Intel 150 MHz laptop, is located on adamped platform coupled to one of the rear fenders. Initial-

40 c o m p u t e r s a n d e l e c t r o n i c s

that can be described as a combination of straight line andcurved segments to follow a crop row and change from onerow to another (Thuilot et al., 2002). Nevertheless, automaticnavigation would also benefit lower precision operations withsmaller tractors in medium size fields. The spraying applica-tion is particularly compelling as workers are often concernedabout its implication to their long-term health from chemicalexposure (Reid, 2004). Up to now, most research on farmingvehicles has been performed with ad hoc platforms or propri-etary robots. Arguments to favour its use are that they havea high degree of adaptation to the field operation, as theyare designed from scratch. But conventional farming vehicleshave other advantages as the farmer is accustomed to theirversatility, operability and robustness, thus making them suit-able targets for automation. Farming vehicles developed tooperate in greenhouses are usually proprietary (Mandow etal., 1996; Van Henten et al., 2002), however in-field operations,initially performed also with proprietary vehicles (Bak andJakobsen, 2004), have started to use automated conventionaltractors (Stentz et al., 2002; Pilarski et al., 2002; Garcıa-Alegreet al., 2005).

To convert a conventional farming vehicle to a semi-autonomous robot, sensors, processors and actuators haveto be incorporated. Sensor systems are required to mimicthe operator ability to drive the vehicle and to perceiverelevant features in the environment. Thus different posi-tioning systems, from mechanical, optical, ultrasonic, toleader cable, have been developed and tested during the lastdecades. Nowadays, most outdoor vehicles are fitted withglobal positioning systems (GPS) receivers, which providedirect absolute positioning, but the high cost of the higher pre-cision RTK–DGPS receivers is an obstacle for their widespreaduse in agriculture. Vision systems, in spite of their widespreaduse, are not the most convenient in dusty and wet agriculturalenvironments, which in addition suffer from high variabil-ity in the lighting conditions. As a result, some researcherspropose to combine a lower precision (∼1 m) DGPS position-ing system (Guo and Zhang, 2004) with other complementarysensors such as a gyroscope (Nagasaka et al., 2004), an iner-tial sensor (Pilarski et al., 2002) or a dead-reckoning system(Garcıa-Alegre et al., 2005). This options implies an increase inthe robustness and sensor-failure tolerance, but on the otherhand they are computationally costly. Concerning actuation,most medium size farming vehicles have hydraulic integratedsteering, appropriate for the power to cost ratio required ina broad range of agricultural operations, which favours thesteering automation.

However, autonomous navigation requires not only theintegration of multiple sensors and actuators, but an adequateorganization of all perceptual information acquired, as wellas of the reasoning and control processes involved (Keicherand Seufert, 2000). Researchers in robotics have addressedthis topic since the 1970s, under the name of control archi-tectures. These have evolved from the Robot Shakey, builtin Stanford Research Institute in the 1970s, that displays apure deliberative architecture based on the artificial intelli-

gence paradigm. Later on, robots developed at the MIT in themid-1980s were designed with a reactive architecture withneither symbolic reasoning nor world model representation.From the early 1990s, a broad variety of hybrid control archi-

g r i c u l t u r e 6 0 ( 2 0 0 8 ) 39–48

tectures emerged, integrating the features of both deliberativeand reactive approaches (Mataric, 1992; Garcıa-Alegre andRecio, 1998). In spite of this development, very little researchhas considered the problem of knowledge organization andbehaviour control in the field of multi-sensor farming vehi-cles (Blackmore et al., 2004), with most efforts addressed to thedevelopment of guidance systems to aid the manual drivingof farming vehicles in long and repetitious returning opera-tions with U-turns (Matsuo et al., 2004), or to experiment withautonomous guidance on proprietary platforms (Nagasaka etal., 2004).

The objective of the current research is to explore theadvantages of an agent of behaviour architecture to imple-ment autonomous navigation in a farming vehicle endowedwith multiple sensors. To this end, the automation process totransform a medium-small size conventional farming vehicleinto an automated robot, performed at the Industrial Automa-tion Institute (IAI), is presented. The first section of the paperdescribes sensors, actuators, processors and communicationsystems integrated in the vehicle. The next section defines theagent concept and the distributed agent of behaviour model,called AGROAMARA architecture. The motor and perceptualagents, implemented to achieve autonomous navigation aredisplayed in the following sections. Finally, the last two sec-tions present some results on the position estimations andtrajectories produced by the farming vehicle in the real fieldand some comments and conclusions.

2. Automation of a conventional farmingvehicle

The research platform is a commercial farming vehicle, man-ufactured by the Spanish firm AGRIA HISPANIA. It is anarticulated, medium-small size tractor designed to carry outin-field farming operation using different implements (Fig. 1).

Fig. 1 – Farming vehicle engineered to operate as anagricultural robot.

n a g

iocssp

2

SaasOwa

itrcaui(ocsvcp

(t

c o m p u t e r s a n d e l e c t r o n i c s i

zation, monitoring and visualization processes are executedn an external laptop (Fujitsu Stylistic 3500 Intel Celeron Pro-essor 500 MHz) with Wifi communications. This laptop hasimilar characteristics to a lightweight PDA, but its larger-sizecreen and higher processing capabilities allow a more com-lex user-interface suitable for most outdoor applications.

.1. Sensors

ensors are the key elements in autonomous navigation oper-tions. Unfortunately, the precise and continuous location ofvehicle usually requires redundant positioning systems and

ensor-fusion algorithms (Hague et al., 1999; Nehmzow andwen, 2000). Accordingly, the farming vehicle was endowedith three sensors: a GPS receiver with differential correction,digital compass and a dead-reckoning system.

The GPS receiver provides direct absolute positioning, butt sometimes experiences a loss of signal when it runs close torees or buildings under some special weather conditions, thusequiring the aid of other positioning systems. In these cir-umstances, the dead-reckoning system, in current platformn odometer with rotary sensor, helps to maintain a contin-ous relative positioning. Nevertheless, odometers have the

nconvenience of large position errors with travelled distanceBorenstein and Feng, 1998), in addition to the errors due to slipr block, common in outdoor environments. If these points arearefully taken into account, the fusion of DGPS and odometerignals provides a reliable and continuous positioning of theehicle. A digital compass has been used to obtain a more pre-ise absolute orientation with reference to the magnetic north

ole, than the one calculated from GPS signals.

The DGPS integrated into the tractor is a metric-precisionAshtech 3100) 12-channel receiver that obtains the differen-ial correction via FM signal from National Radio Station, free

Fig. 2 – Schematic of the

r i c u l t u r e 6 0 ( 2 0 0 8 ) 39–48 41

of charge and with an accuracy similar to the one obtainedwith an Omnistar user license. Its performance depends onthe distance to the nearest differential base station, and inthat case one of them is close to the experimental fields. Itis a medium cost system, when compared with centimetre-precision RTK–DGPS receivers that may require the transportof the proprietary base station from one field to another.

The digital compass is a flux gate model (KVH-C100) with0.5◦precision, located on a damped aluminium stand, that alsohold the on-board processor, to minimize both vibrations andmagnetic interferences. The dead-reckoning system is basedin odometers which are composed of a disk fixed to one ofthe front wheels, with 82 equidistant pins located on the cir-cumference and a proximity capacitive sensor. Safeguardingsensors, such as bumper, laser range-finder, inclinometers(for pitch and roll) and emergency stops, are installed todetect unexpected events and avoid static/dynamic obstaclesor abrupt terrains. The laser range-finder (SICK-LMS291) deliv-ers a 2D image, in polar coordinates, of the scenario ahead toa distance of 40 m at a maximum rate of 5 Hz (Garcıa-Alegre etal., 2005).

2.2. Actuators

The automation of the tractor has been focused on the steer-ing wheel and on the brake and clutch pedals, maintaining themanual driving mode. Thus, once a gear is manually selected,the tractor drives at a constant speed, if brake and clutch ped-als are released. In order to re-use the tractor hydraulic pumpthat drives the power-assisted steering, an hydraulic circuit

and two single-rod cylinders have been installed and adaptedto press on the brake and clutch pedals under the control oftwo-way-valves. Another three-way-valve was integrated forthe automatic control of the steering cylinder, already fitted

hydraulic system.

42 c o m p u t e r s a n d e l e c t r o n i c s i n a g r i c u l t u r e 6 0 ( 2 0 0 8 ) 39–48

Fig. 3 – Fuzzy rule base formulated with fuzzy set that are described by means of trapezoidal membership functions for bothen ththe

the input and output variables. Error is the difference betwecycle and PWM the percentage of the pulse width relative to

to the vehicle. The electro-valves integrated in the tractor, areused to shift the rod from one end to the other, and they aresufficient to control the brake and clutch pedal in less than 1 s(Fig. 2).

2.3. Steering fuzzy control system

In contrast to the brake and clutch, the steering automaticcontrol requires a gradual and continuous positioning ofthe wheel, with angles ranging from −40◦ to +40◦. Propor-tional actuators were not employed to obtain such a gradualbehaviour because of the high cost. Instead, the gradual actionwas obtained through pulse width modulation (PWM) controlof the three-way-valve that commands the steering hydrauliccircuit. A closed-loop control system is required to reach andkeep the steering angle reference, due to the uncertaintyassociated with the irregularities of the terrain, types of soil,furrows, stones and field unevenness, in addition to the impre-cision of sensors signals and mechanical free movements.

A fuzzy controller has been proposed, implemented anddemonstrated to control the hydraulic steering of the articu-lated farm vehicle according to the non-linear characteristicsof the system, the knowledge acquired from open-loop exper-imentation with the current electro-hydraulic system andthe authors previous experience with fuzzy control systems(Garcıa-Perez et al., 2000)(Fig. 3). As a consequence of the lin-earity of the central zone of the state space, displayed in theopen-loop response function, a fuzzy proportional (PFuzzy)

controller was suggested. The fuzzy proportional controllerhas a unique input variable: the error and output variable: thepulse width modulation, pwm. The knowledge base or qualita-tive model of the control system is composed of five linguistic

e reference and experimental rod position at each controlone required to shift the rod from one end to the other.

rules. The input variable is defined by means of five fuzzy set,linguistic terms, defined by means of trapezoidal membershipfunctions: negative large, negative low, zero, positive low, pos-itive large, as well as the output variable: left large, left low,zero, right low, right large. All five rules contain the expertknowledge acquired from the manual control of the steeringsystem.

Initial experiments showed over-shoots in the controlresponse that did not quickly dampen in the hydraulic steer-ing system (Niksefat and Sepehri, 2000). This effect is causedby the non-linear characteristics of the hydraulic system. Thecontrol signal has to sweep the entire dead-zone range tochange the sign, and this provokes a lack of response of thefuzzy proportional controller for low increment in the steer-ing angle (Costa-Branco and Dente, 2000). This effect hasbeen overcome, in current work, integrating a specific statespace zone pooling controller and the results are displayed in(Fig. 4).

3. An agent of behaviour architecture:AGROAMARA

Most trajectories described in agricultural operations can beconsidered as a combination of straight and U-turn segmentsthat display a regular and repetitive pattern. This pattern,initially planned by the human worker, is run safely and pre-cisely, taking into account “on-the-fly” unexpected events bythe deliberative and reflex abilities of the human driver, who

reacts smartly without greatly disturbing the navigation plan.Accordingly, the farming vehicle self-piloting in an agricul-tural operation has to complete a geometric coverage patternunder the restrictions imposed by a specific task. These

c o m p u t e r s a n d e l e c t r o n i c s i n a g

Fig. 4 – Steering control response curve for different startpl

rlUFeitm

Ftw

oint and reference signals. References are displayedighter than the experimental values.

estrictions refer to pilot ability to precisely describe a straightine, which in most cases corresponds to a crop row, and a-turn segment when changing from one row to the other.ortunately, most permanent spatial attributes of the farming

nvironment are usually known in advance, and this valuablenformation is initially injected into the system to modulatehe control architecture to efficiently perform a navigation

ission. Nevertheless, dynamic aspects of the system and

ig. 5 – AGROAMARA multiagent architecture. Left boxes corresphe central one represents the shared memory. At the botton, theheel and break/clutch.

r i c u l t u r e 6 0 ( 2 0 0 8 ) 39–48 43

environment must obviously be considered to warranty safetyin those environments where machines and operators inter-act while working together. Aiming to organize data, cognitiveprocesses and control commands to achieve an unmannednavigation, a hybrid agent of behaviour architecture has beenproposed as a suitable framework to deal with all the infor-mation acquired by the sensors and the “a priori” knowledgeabout the system, the environment, and the agricultural oper-ations. In current work, the terms agent, behaviour or agentof behaviour are indistinctly used in the sense of computa-tional and control processes addressed to reach or to maintaina goal, with perceptual, deliberative and reactive abilitieswithout restriction in their complexity (Garcıa-Alegre andRecio, 1998). The multiagent system is implemented under theclient/server paradigm, where processes running on differentmachines are appropriately connected by winsocket driversand standard protocols. In addition, a data-commands serveragent, namely DEDALO and several other agents have beendesigned to reproduce the sequence of actions, both percep-tual and motor, performed by the human driver in manualpiloting operations. The agent of behaviour architecture dis-plays a hierarchy of agent activation, top-down and right toleft, and a bi-directional information flow: top-down from the

operator to the actuators and bottom-up from the sensors tothe perceptions required by motor agents (Fig. 5).

The autonomous navigation mission is initiated by theoperator, at the laptop human–machine interface of the NAV-

ond to perceptual agents, right ones to motor agents andtwo motor agent that command the actuators, steering

i n a

44 c o m p u t e r s a n d e l e c t r o n i c s

IGATION PLAN agent which is in charge of the coordination ofthe agent activation sequence aided by the Map. The NAVIGA-TION PLAN is a coordination agent of behaviour that relies onthe intermediate level agents FOLLOW STRAIGHT LINE andCHANGE OF ROW which control the two different kinds ofsegments that compose many agricultural operations. Pose,position and orientation, detection is the essential feedbackto perform autonomous navigation and is performed by theactivation of the perceptual agent UPDATE POSE at each con-trol cycle. To trigger autonomous navigation modes, anotherperceptual agent UPDATE FIELD REGION is activated to com-pute the robot position relative to the limits of the predefinedfield regions on the Map.

Two perceptual agents are designed to deal with safetyin dynamic environments, UPDATE OBSTACLE and UPDATELOCAL MAP. All perceptual agents, are always alert sensing theenvironment. Whenever UPDATE FIELD REGION agent detectsand off-row region, the CHANGE OF ROW agent is activated.The FOLLOW STRAGHT LINE and CHANGE OF ROW agents per-form the same action on the UPDATE FIELD REGION agent,and in turn, their operation activates sequentially, guided bythe environment and the goals, the motor agents ADVANCE,TURN, STOP or AVOID OBSTACLES. Whenever an unexpectedobstacle is detected by the laser range-finder within the emer-gency area, either the AVOID OBSTACLE or the STOP agent isactivated to take control of the farming vehicle.

4. Motor agent of behaviour

4.1. NAVIGATION PLAN agent

The NAVIGATION PLAN agent is a manager that coordinatesthe rest of the agents to drive the vehicle along the proposedroute. This route is defined through a set of intermediatepositions on the digital georeferenced map. This can beaccomplished either off-line or on-line, by the operator, mark-ing on the digital map displayed in the external laptop. Thus,the operator needs to mark the initial and final point of eachrow if trees distribution is uneven or there is a lack of treesat the end of some rows. It uses two additional global datastructures: map and plan, to operate. Once the NAVIGATIONPLAN agent is informed that the plan has been successfullycompleted, it switches on the STOP agent and sends a successmessage to the operator.

4.2. FOLLOW STRAIGHT LINE agent

Straight line tracking is a fundamental strategy for most agri-cultural operations and entails the development of smartcontrol algorithms. The FOLLOW STRAIGHT LINE agentembodies all the processes required to reach a destinationposition while accurately tracking a straight line trajectory,defined by segments. The strategies used so far to follow arow can be classified as: (1) local approaches that are guidedby the information extracted from field structures (Ribeiro

et al., 2005) and (2) global policies guided by DGPS absolutecoordinates (Stentz et al., 2002). Self-guidance approaches areusually based on global information that relies on RTK-GPSreceivers (Noguchi et al., 1998). The straight-line tracking algo-

g r i c u l t u r e 6 0 ( 2 0 0 8 ) 39–48

rithm implemented in current work is based on the purepursuit path-tracking algorithm (Coulter, 1992). The basic ideaunderlying the algorithm is to drive the robot ahead to aclose position, at a fixed interval, along the tentative trajectorydefined by the NAVIGATION PLAN agent, that is, a straight lineconnecting the robot current location and the next intermedi-ate destination. Pure pursuit intermediate goals are computedat each look-ahead control interval and the steering fuzzy con-trol system embedded in the ADVANCE agent is in charge toreactively drive the robot to the next intermediate position.This process continues until the final destination in the row isreached.

4.3. CHANGE OF ROW agent

The CHANGE OF ROW agent controls the navigation betweentwo adjacent rows. This change of row usually implies a180◦steer. Turning manoeuvres based on vehicle kinematicsparameters for an ideal articulated farm vehicle are describedin (McCarthy et al., 2004). The objective of the CHANGE OFROW agent is to drive the vehicle from the final destinationlocation of a row to the beginning of the adjacent row, reachingthe proper orientation, based on a set of heuristics. Wheneverthe on row variable is set to a false one by the UPDATE FIELDREGION agent, the agent state changes from alert to active.At this point, the CHANGE OF ROW agent activates its calcu-lation processes to derive the vehicle steering angle, whichis defined by the robot heading relative to the adjacent rowtravel orientation. Then, it calculates the steering radius tak-ing into account the distance between two adjacent rows andthe kinematics model. Finally, searching in a look-up table forthe radius, the steering angle command is calculated. If rowsare closer than the minimum turning radius of the tractor,an error message is reported to the operator and the agent ofbehaviour STOP is activated.

4.4. ADVANCE, STOP, TURN, AVOID OBSTACLE

These four agents are the elementary bricks to build upthe whole navigation architecture. The ADVANCE, STOP, andAVOID OBSTACLE agents of behaviour, have as inputs the laserand bumper sensor readings and the destination position.Each of them generate the control actions to the physi-cal actuators such as the brake and clutch pedals, and thesteering-wheel. The default behaviour is ADVANCE to the goal,but AVOID OBSTACLE takes the control when an unexpectedobject appears in the scene, to safely perform a deviation tra-jectory. The basic motion competence layer is composed of thebasic control agents, ADVANCE, TURN, STOP, AVOID OBSTACLEthat operate guided by the scenario perceptual cues, such asFree space, Obstacle, Robot Pose, Wall or Row. These conceptsare obtained from the raw sensor data and context informa-tion. The ADVANCE agent is the default actor to pilot the trac-tor to an intermediate goal, relying on the dynamic local map.

5. Perceptual agent of behaviour

The hybrid agent of behaviour architecture, AGROAMARA,has been implemented as a hierarchy, in such a way thateach agent initializes those agents required for the mission,

n a g

aoacaastit

5

TsSDc

5

Tdifiat

5

AiccomvPmt(aoattp

(

(

(

(

is low as the elapsed time to recover the differential correctionwas always below 30 s.

The next experiment shows the position estimation whenthe digital compass is disconnected (Fig. 7). It should be noted

c o m p u t e r s a n d e l e c t r o n i c s i

llowing the reuse of agent abilities in different agriculturalperations. Agents have three different states: inactive, alertnd active. Those agents which may not be required for a spe-ific task are set to inactive state. But whenever an inactivegent gets an activation signal its state changes to alert. Angent in context-sensitive alert state continuously monitorsome input variables until a match with the defined condi-ions occurs, that is, a key stimulus is perceived. Then its states set to active and it takes control of the vehicle, performinghe actions explicitly described in its processes.

.1. DEDALO agent

his agent has been designed to act both as a sensor dataerver and as a client, accepting action commands at run time.ensing and actions flow bi-directionally, data-driven fromEDALO agent to any client agent and goal-driven from anylient to DEDALO agent.

.2. UPDATE OBSTACLES agent

he UPDATE OBSTACLES agent is in charge of updating theynamic local map and the Obstacles list (Fig. 5), from the

nstantaneous distance readings received from the laser rangender. The information contained in the dynamic local mapnd in the Obstacles list is crucial for system and environmen-al safeguarding (Garcıa-Perez et al., 2005).

.3. UPDATE POSE agent

ccurate farming vehicle position and orientation in real times one of the major issue in autonomous navigation. Althoughostly RTK–DGPS receivers have been used in precision agri-ulture navigation to reach 1 –2 cm precision, precision of therder of 1 m is acceptable in many agricultural operations,ainly in orchards, if this information is fused with that pro-

ided by other complementary sensors. Thus, the UPDATEOSE agent has been designed to acquire and fuse the infor-ation from three different sensor systems, to give as output

he Robot position, Robot orientation and the Field positionGarcıa-Alegre et al., 2005). Initial assumptions concerning theccuracy of the positioning sensors are: the DGPS receiver isne of the most precise sensor for global position estimation,nd the same holds for the digital compass with the orienta-ion estimation. Whenever their estimation is not available,he fusion algorithm is activated to derive the more accurateosition possible according to the following rules base:

1) IF (DGPS OK) AND (digital compass PRESENT) THENpositioning BEST (DGPS + digital compass) AND activateADVANCE agent.

2) IF (DGPS OK) AND (digital compass ABSENT) THEN posi-tioning MEDIUM (DGPS) AND activate ADVANCE agent.

3) IF (DGPS (malfunctioning OR absent) AND (NOT time-out)) AND (digital compass PRESENT) THEN position-ing MEDIUM (odometer + digital compass) AND activate

ADVANCE agent.

4) IF (DGPS (malfunctioning OR absent) AND (time-out))AND (digital compass PRESENT) THEN positioning BAD(odometer + digital compass) AND activate STOP agent.

r i c u l t u r e 6 0 ( 2 0 0 8 ) 39–48 45

5.4. UPDATE FIELD REGION agent

This agent calculates the binary value of the trigger signal Fieldposition, to change the navigation mode from that conductedby the FOLLOW STRAIGHT LINE agent to CHANGE OF ROWagent and viceversa. This agent updates the Field position toa true value if robot is located in a row and to false otherwise.Perceptual agents are continuously updating the information,which is recorded in the blackboard memory to be used byother agents.

6. Results

Several experiments and different runs have been performedto test the AGROAMARA architecture for autonomous navi-gation of the farming vehicle. Experiments are sorted in twoclasses. First, those required to validate the positioning sys-tems which are mainly concerned with perceptual agents andsecond, those which illustrate the functioning of the motoragents, from the very basic ones such as the ADVANCE agent tothe more complex such as FOLLOW STRAIGHT LINE. The mainobjective of the first experiments is to demonstrate the robust-ness of the navigation when the UPDATE POSE agent calculatesthe vehicle position estimation in the absence of differentialcorrection, GPS or digital compass signals. As these eventsare very unusual, artificial failures have been induced in thesensors to be able to control and display their effect on theresulting trajectories. Thus, the differential correction wasswitched off, and the estimation obtained along the routeis displayed in Fig. 6. In this case, the position estimationremains correct, both in straight and U-turn segments of thetrajectory, as an accurate orientation estimation is obtainedfrom the digital compass and the odometer positioning error

Fig. 6 – Position estimations calculated by the perceptualUPDATE POSE agent. Crosses are position estimations in theabsence of differential corrections for short elapsed time.

46 c o m p u t e r s a n d e l e c t r o n i c s i n a g r i c u l t u r e 6 0 ( 2 0 0 8 ) 39–48

Fig. 7 – Position estimations calculated by the UPDATE POSE

Fig. 8 – Trajectory described by the farming vehicle underthe control of the AGROAMARA architecture. The field is anirregular olive tree area at the IAI-CSIC campus. The star

is the turn to be performed in the wheel. At this moment thepiloting control returns to the FOLLOW STRAIGHT LINE agent,as the UPDATE FIELD POSITION perceptual agent sets the Fieldposition to the true value (Fig. 9). The trajectory displays a U-

Fig. 9 – Position estimations calculated by the UPDATE

perceptual agent. Black line corresponds to pose estimationin the absence of digital compass for a short elapsed time.

that the position estimated from the DGPS receiver is accept-able, but not for the orientation. Errors in orientation generatea high degradation in the vehicle control as they directly affectthe steering command that acts on the trajectory describedby the robot. As expected, the worst trajectory is obtained inthose cases where only the dead-reckoning system is func-tioning. In just a few meters run, the cumulative positionerrors force the operator to stop the robot. Experimentally, ithas been determined that after a 30 m run at a speed of 0.5 m/s,the position estimated by using only the dead-reckoning sys-tem was unacceptable due to the large positioning errors.

Next, the performance of the agent of behaviour architec-ture is displayed through the operation of the NAVIGATIONPLAN agent. The global trajectory described by the trac-tor while performing an autonomous navigation throughan olive grove is displayed in the interface window of theNAVIGATION PLAN agent (Fig. 8). The trajectory is com-posed of two straight segments and one U-turn describedwhen changing from one row to the adjacent one. Thistrajectory corresponds to the repetitive pattern that is per-formed during the manual navigation in a pesticide sprayingoperation.

The trajectory clearly shows the activation of the FOLLOWSTRAIGHT LINE agent to control the two straight and paralleltrajectory segments and that of the CHANGE OF ROW agentto connect the two adjacent rows, to accomplish the Planthat was introduced by the operator to the NAVIGATION PLANagent. The resulting trajectory validates the design of bothnavigation agents, as well as that of the basic motor agentsactivated, namely TURN, ADVANCE, STOP. The basic agentAVOID OBSTACLE was not activated as no unexpected objectappears during this run. During all the autonomous navigationruns performed, the DGPS position estimation error was below

1 m, being lower than 0.5 m in 68% of the cases. Sometimes,the trajectory presents 3 m error, usually caused by extremeunevenness of the soil. This soil unevenness greatly perturbsthe tractor automatic steering system, but deviations from the

marks the final destination. The diameter of the wider olivetree top is about 4 m.

tentative trajectory are quickly recovered to keep track of thepath.

The curved trajectory between the two rows is controlledby the CHANGE OF ROW agent. Goal destination position forthe first row and initial position for the adjacent one are con-nected by the curved trajectory described by the CHANGE OFROW agent. The steering manoeuvre executed by this motoragent begins at a position 1 m away from the point manuallyselected on the visualization application window, final desti-nation in each row, and ends when the robot is closer than1 m to the initial position of the adjacent row. The distancebetween rows is about 10 m. The closer the rows are, the larger

POSE perceptual agent and used by the FOLLOW STRAIGHTLINE and CHANGE OF ROW agents. Large circles and arrowscorrespond to the positions initially selected on thevisualisation window of the NAVIGATION PLAN agent.

n a g

twmFIf

7

TgnnCdssc

crdntuu

ovesilmo

Mgaaso

A

AamffksIbaSR

r

c o m p u t e r s a n d e l e c t r o n i c s i

urn pattern similar to that resulting from the experimentalork reported in (Thuilot et al., 2002). If there are some treesissing in a row, the tractor will not initiate the turn until the

ield position, initially marked by the operator on the NAV-GATION PLAN agent window, change of value from true toalse.

. Comments and conclusions

his paper describes the ongoing work on autonomous navi-ation of a medium-small size conventional farming vehicle,amely DEDALO. To achieve a high degree of autonomy inavigation, the farming vehicle was fully engineered in theSIC,IAI workshops with several positioning sensors (DGPS,igital compass and dead-reckoning system) and safety sen-ors (laser rangefinder, bumper, inclinometers, emergencytops) as well as an on-board processor, wireless communi-ation systems (WLAN) and electro-hydraulic actuators.

An agent of behaviour architecture is proposed to safelyontrol the farming vehicle navigation in dynamic envi-onments, for instantaneous decision making from all dataelivered by the multiple heterogeneous sensors. The mainovelty of the present work is the agent of behaviour architec-ure as it was successfully able to deal with the complexity andncertainty associated with real systems and environmentsnder different experimental tests.

A sensor-fusion algorithm is demonstrated, based on a setf simple fuzzy heuristics to immediately stop the farmingehicle whenever there is a degradation or absence in thestimations provided by one of the position or orientation sen-ors. Although much more experimental work is still required,nitial tests and runs validate the proposed model for medium-ow precision, low speed navigational tasks, as required in

any farming operations, such as pesticides spraying inrchards.

In summary, the agents of behaviours architecture, AGROA-ARA, offers a powerful methodological framework to

radually include, update and improve farming operations,nd perception and control algorithms. The power of therchitecture is in the concurrent agents behaviour and in theharing of knowledge performed both through a shared mem-ry and by peer-to-peer message passing.

cknowledgments

uthors thank Eugenio Villanueva for useful and valuableid in the tractor engineering and reviewers for fruitful com-ents and suggestions. This research has been funded in

ull by the Spanish Science and Technology Commissionor projects MCYT-AGL-2005-06180-C03-03: Spatio-temporalnowledge extraction and artificial vision in the automation ofite-specific agriculture applications, CICYT-DPI-2006-14497:ntegration of perception, planning and action in an agent of

ehaviour cognitive and distributed architecture (PARSEVAL)nd Scientific Research, Technology and Innovation Madridtate Government program, project ROBOCITY2030: Serviceobots-PRICIT-CAM-2005.

r i c u l t u r e 6 0 ( 2 0 0 8 ) 39–48 47

e f e r e n c e s

Bak, T., Jakobsen, H., 2004. Agricultural robotic platform with fourwheel steering for weed detection. Biosyst. Eng. 87 (2),125–136.

Blackmore, B.S., Fountas, S., Vougioukas, S., Tang, L., Sorensen,C.G., Jorgensen, R., 2004. A method to define agricultural robotbehaviours. In: Zhang, Q., Iida, M., Mizushima, A. (Eds.),Automation Technology for Off-Road Equipment. ASAEPublications, St. Joseph, MI, USA, pp. 155–161.

Borenstein, J., Feng, L., 1998. Measurement and correction ofsystematic odometry errors in mobile robots. IEEE T. Robotic.Autom. 12 (6), 869–880.

Costa-Branco, P., Dente, J., 2000. Using fuzzy logic to integratelearning mechanisms in a electro-hydraulic system. Part I.Actuator’s fuzzy modeling. IEEE T. Syst. Man Cy. C. 30 (3),305–316.

Coulter, R., 1992. Implementation of the Pure Pursuit PathTracking Algorithm. Technical Report CMU-RI-TR-92–01. TheRobotics Institute, Carnegie Mellon University, Pittsburgh, PA,USA.

Garcıa-Alegre, M.C., Recio, F., 1998. Basic visual and motor agentsfor increasingly complex behavior generation on a mobilerobot. Auton. Robot. 5, 1–10.

Garcıa-Alegre, M.C., Garcıa-Perez, L., Ribeiro, A., Guinea, D., 2005.Integration of sensors and actuators in a commercial tractorfor a safe teleoperated and autonomous navigation. In:Stanford, V., (Ed.), Proceedings of the Fifth EuropeanConference on Precision Agriculture. Wageningen AcademicPublishers, Netherland, pp. 637–644.

Garcıa-Perez, L., Canas, J., Garcıa-Alegre, M.C., Yanez, P., Guinea,D., 2000. Fuzzy control of an electropneumatic actuator. In:Proceedings of the X Congreso Espaol sobre tecnologias ylogica fuzzy, pp. 233–978.

Garcıa-Perez, L., Garcıa-Alegre, M.C., Ribeiro, A., Guinea, D.,Canas, J.M. 2005. Perception and tracking of dynamic objectsfor optimization of avoidance strategies in autonomouspiloting of vehicles. In: Freksa, Ch., Knauff, M.,Krieg-Bruckner, B., Nebel, B., Barkowsky, T., (Eds.), LecturesNotes on Computer Science: Spatial Cognition IV: Action andInteraction. Springer-Verlag, Heidelberg, pp. 500–520.

Guo, L.S., Zhang, Q., 2004. A low cost navigation system forautonomous off-road vehicles. In: Zhang, Q., Iida, M.,Mizushima, A. (Eds.), Automation Technology for Off-RoadEquipment. ASAE Publications, St. Joseph, MI, USA, pp.107–119.

Hague, T., Marchant, J., Tillett, N., 1999. Autonomous robotnavigation for precision horticulture. In: Proceedings of theIEEE International Conference on Robotics and Automation,pp. 21–29.

Jahns, G., 1983. Automatic Guidance in Agriculture. A Review.Presented at October Annual International Meeting, Paper No.83–404, ASAE Publications, St. Joseph, MI, USA.

Keicher, R., Seufert, H., 2000. Automatic guidance for agriculturalvehicles in Europe. Comput. Electron. Agric. 25, 169–194.

Mandow, A., Gomez-de-Gabriel, J.M., Martinez, J.L., Muoz, V.F.,Ollero, A., Garcia-Cerezo, A., 1996. The autonomous mobilerobot AURORA for greenhouse operation. IEEE Robot. Autom.Magn. 18, 19–28.

Mataric, M.J., 1992. Integration of representation into goal-drivenbehaviour-based robots. IEEE T. Robotic. Autom. 8 (3), 304–312.

Matsuo, Y., Hamada, Y., Yukumoto, O., Yamamoto, S., 2004.Auto-steering rice transplanter for straight traveling. In:Zhang, Q., Iida, M., Mizushima, A. (Eds.), AutomationTechnology for Off-Road Equipment. ASAE Publications, St.Joseph, MI, USA, pp. 292–297.

i n a

48 c o m p u t e r s a n d e l e c t r o n i c s

McCarthy, S.G., Pocknee, S., Rains, G., Kvien, C., 2004. Pathfollowing studies with an articulated farm vehicle. In: In:Zhang, Q., Iida, M., Mizushima, A. (Eds.), AutomationTechnology for Off-Road Equipment. ASAE Publications, St.Joseph, MI, USA, pp. 264–273.

Nagasaka, Y., Umeda, N., Kanetai, Y., Taniwaki, K., Sasaki, Y.,2004. Autonomous guidance for rice transplanting usingglobal positioning and gyroscopes. Comput. Electron. Agric.43, 223–234.

Nehmzow, U., Owen, C., 2000. Robot navigation in the real world:experiments with Manchester’s fortytwo in unmodified, largeenvironments. Robot. Auton. Syst. 33, 223–242.

Niksefat, N., Sepehri, N., 2000. Design and experimentalevaluation of a robust force controller for an electro-hydraulicactuator via quantitative feedback theory. Control Eng. Pract.8, 1335–1345.

Noguchi, N., Reid, J., Will, J., Benson, E., Stombaugh, T., 1998.Vehicle Automation system based on multi-sensorintegration. Presented at 1998 Annual International Meeting,Paper No. 98–3111, ASAE Publications, St. Joseph, MI, USA.

Pilarski, T., Happold, M., Pangels, H., Ollis, M., Fitzpatrick, K.,Stentz, A., 2002. The demeter system for automatedharvesting. Auton. Robot. 13, 9–20.

Reid, J.F., 2004. Mobile intelligent equipment for off-roadenvironments. In: Zhang, Q., Iida, M., Mizushima, A. (Eds.),Automation Technology for Off-Road Equipment. ASAEPublications, St Joseph, MI, USA, pp. 1–9.

Ribeiro, A., Fernndez-Quintanilla, C., Barroso, J., Garca-Alegre,M.C., 2005. Development of an image analysis system forestimation of weed cover and weed pressure. In: Stanford, V.(Ed.), Proceedings of the Fifth European Conference onPrecision Agriculture. Wageningen Academic Publishers,Netherland, pp. 169–174.

Stentz, A., Dima, C., Wellington, C., Herman, H., Stager, D., 2002.A system for semi-autonomous tractor operations. Auton.Robot. 13, 83–104.

Thuilot, B., Cariou, C., Martinet, P., Berducat, M., 2002. Automaticguidance of a farm tractor relying on a single CP-DGPS. Auton.Robot. 13, 53–71.

Torii, T., 2000. Research in autonomous agriculture vehicles inJapan. Comput. Electron. Agric. 25, 133–153.

Van Henten, E.J., Hemming, J., Tuijl, B.A.J., Kornet, J.G., Meuleman,J., Bontsema, J., Van Os, E.A., 2002. An autonomous robot forharvesting cucumbers in greenhouses. Auton. Robot. 13,241–258.

Wilson, J., 2000. Guidance of agricultural vehicles: a historicalperspective. Comput. Electron. Agric. 25, 3–9.

Zhang, Q., (Ed.), 2002. Proceedings Automation Technology forOff-Road Equipment Conference. ASAE Publications, StJoseph, MI, USA.

Zhang, Q., Iida, M., Mizushima, A. (Eds.), 2004. Automation

Technology for Off-Road Equipment. ASAE Publications, StJoseph, MI, USA.

Lıa Garcıa-Perez received the PhD degree in March 2004 atthe Complutense University, Madrid. She has been working in

g r i c u l t u r e 6 0 ( 2 0 0 8 ) 39–48

the last 6 years at the Industrial Automation Institute (Span-ish Council for Scientific Research) in Madrid involved withresearch on autonomous navigation of agricultural robots. Herresearch interest includes farming robots, outdoor navigationand robot architectures for autonomous behavior.

Marıa C. Garcıa-Alegre is a staff scientist in the IndustrialAutomation Institute (Spanish Council for Scientific Research)in Madrid since 1990. She received a PhD degree in Physicsat the University of La Laguna, Tenerife in 1983, where sheheld a permanent position as an Assistant Professor. She wasa visiting Professor at the Applied Machine Intelligence andRobotics Laboratory at Drexel University, Philadelphia in 1992doing research on hierarchical architectures for intelligentrobot behaviour generation. Participant and leader of severalEuropean and National Research Projects related to MobileAutonomous Robots, Fuzzy Logic, Multi-Agents Architecturesand Artificial Vision Systems. She is a member of severalprofessional societies, IEEE, EUSFLAT, EUNITE. Her work hasbeen published in professional journals, books and confer-ences proceedings in Computer Science, Fuzzy Logic andRobotics.

Angela Ribeiro is a staff scientist in the Industrial AutomationInstitute (Spanish Council for Scientific Research) in Madridsince 1990. She received her MSc and PhD degrees in Physicsfrom the Complutense University of Madrid in 1984 and 1989,respectively. She was a visiting researcher at Computer Schoolat the Carnegie Mellon University in 1989 investigating paral-lel systems in artificial intelligence. She has taught diversePhD courses in several Spanish universities. She has devel-oped her research activities mainly in artificial intelligence,distributed artificial intelligence, and data mining. Her cur-rent interests are related to the development of complexsystem, in particular man-machine systems and the imple-mentation of novel reasoning techniques for both spatial dataand web data. Her work has been published in professionaljournals, books and conferences proceedings in ComputerScience.

Domingo Guinea is a staff scientist in the Industrial Automa-tion Institute (Spanish Council for Scientific Research) inMadrid since 1990. He received a PhD degree in Physics atthe University of La Laguna-Tenerife in 1980, where he helda permanent position as an Assistant Professor. He was avisiting Professor at the Applied Machine Intelligence andRobotics Laboratory at Drexel University, Philadelphia in 1992doing research on perception mechanisms in hierarchical con-trol architectures. Participant and leader of several Europeanand National Research Projects related to Mobile AutonomousRobots, Artificial Perception, Intelligent Architectures, Artifi-cial Vision Systems and Modelling and Applications of Fuel

Cells. His work has been published in professional journals,books and conferences proceedings in Computer Science, Pat-tern Recognition, Robotics and Renewable Power Sources. Hehas served as a proposal referee of the Spanish National Sci-ence Foundation (CICYT).