Research Center on Geomatics ... In this paper1 we demonstrate how agent-based simulation ..... pathfinder by a software agent that we call Pathfinder. Agent.
Published in proceedings of the 2005 Spring Simulation Multi-Conference, San Diego, Cal, April 2005
Real-World Pathfinding using Agent-Based Simulation Nabil Sahli Computer Science Department Research Center on Geomatics 3904 Pav. Pouliot, Laval Unive rsity, Ste-foy, QC, Canada
Keywords: Pathfinding, geosimulation, wildfire.
agent-based
simu lation,
ABSTRACT In this paper1 we demonstrate how agent-based simulation can be used for planning applications and especially for pathfinding problems which involve qualitative spatial constraints. Since we aim to assist human planners in the real-world, simulation agents have to deal with reliable GIS data, which ensure more realism for the simulation. We use our approach to support wildland fire suppression actions. 1. INTRODUCTION Agent-supported simulation is used for various purposes [Ören et al., 2000]. We are interested in using it for planning applications. Lee and Fishwick [Lee and Fishwick 1995] first used a Simulation-Based Planning approach (SBP) for route planning. In this paper, we adopt the same principle but in an agent context to solve real (not in computer games) complex pathfinding problems. Pathfinding in a map is a fundamental problem for many application domains including robotics and computer games. Even in real life, we may face this problem when trying to go somewhere with minimum efforts and as quickly as possible. Depending on the space’s characteristics, the constraints and capabilities of the finder, the problem can be more or less complex. We are interested in supporting wildland fire suppression actions. Removing the fuel source is the most common method of attacking wildfires. This method does not extinguish the fire. The fire continues to burn until the fuel that is still available is consumed. Removal of fuel in 1
This work is done thanks to the collaboration of SOPFEU (la Société de protection des forêts contre le feu) and Alberta Sustainable Resource Development (Forest Protection Division).
Bernard Moulin Computer Science Department Research Center on Geomatics 3904 Pav. Pouliot, Laval University, Ste-foy, QC, Canada
the path of the fire prevents the fire from spreading past the fireline. Depending upon the fire size, the attack may be either direct or indirect. On smaller fires, firefighters usually attack from the flanks and extend their perimeter toward the head until the fire is surrounded: this is the direct attack. The lines should be located at the edge of the fire or parallel to it with plenty of escape routes [Firewise 2004]. When the fire is more intense, an indirect attack is used. Firefighters (using dozers) clear a line (Firebreak) down to the bare soil along a course that runs roughly parallel to the perimeter of the fire but at a safe distance from the fire line. Controlling the perimeter requires anticipating the fire’s behaviour and making skilful use of natural barriers (incorporating them as part of the firebreak) [Firewise 2004]. For example , building the firebreak usually starts from an anchor point and goes through light-fuelled terrain and lakes as much as possible. Sharp angles must be avoided when building the line since they can cause spotting (when a fire crosses over the line) as the wind may blow the fire over the line. In practice, fire managers are responsible for choosing where to roughly build the firebreak and how many resources (dozers) should be deployed. They may then try to use as many anchors and light-fuelled spaces as possible. We aim to assist fire managers using a virtual environment – virtual, but as realistic as possible- in which software agents can find a suitable path for dozers. A suitable path means that: 1) it follows as closely as possible a sketch proposed by a fire manager; 2) it takes into account the fire propagation over time; 3) it tries to pass through easier terrain while respecting particular constraints. During the past decades, several algorithms have been proposed to find the best path. The A* algorithm is certainly one of the most efficient algorithms. It is often used in robotics and computer games. However, some particular real problems (like the one discussed above) have too many constraints to be solved using such
algorithms. These algorithms were created to find the best path under loose constraints. Unfortunately, various real pathfinding problems have tighter constraints and cannot be classified under any class of classical pathfinding problems. For this reason, we propose in Section 2 a wider characterization of pathfinding problems in order to include such particular situations. In Section 3, we present the principles of an agent-based simulation approach which may be suitable for pathfinding problems involving qualitative spatial constraints. In Section 4, we propose a solution for the indirect attack problem in wildfire domain using our agent-based simulation approach.
Pathfinder’s objectives The most common objective for a pathfinder is to reach a specific destination. Nevertheless, the objective may be more complex (for example, a military unit in a hazardous zone may have as an objective to reach “any safe place”). In all circumstances, considering the pathfinder’s objectives is an important issue when searching for the most appropriate path. A pathfinder’s objective may be static if it does not change. It can also be dynamic if it changes during the pathfinding process as shown by the previous example of the vehicle trying to change its path according to the fuel level in its tank.
2. PATHFINDING CHARACTERIZATION There is a wide variety of pathfinding techniques, and one technique may excel under certain circumstances, but do badly under others [Reese and Stout 1999]. The success of a given technique depends on the different factors that may influence pathfinding. The more factors that characterize the problem are combined, the more complex the pathfinding solution becomes. In the following, we try to classify the most important factors to be considered under three broad themes: environment, pathfinder, and search constraints. The two main factors related to the environment are dynamics and uncertainty. In this paper we only focus on factors related to the pathfinder and to search constraints.
2.2 Search constraints Finally, Pathfinding must comply with spatial search constraints, which can be quantitative or qualitative. Quantitative spatial constraints: They are tight and formal. They can then be addressed by algorithms. Only constraints on the path type [Reese and Stout 1999] are usually considered by current applications and especially by games. Among these constraints related to the path type, the most common one is probably the “shortest path”. Qualitative spatial constraints: Another type of constraint emerges from the classic problem of “massed fires” in which three units are assigned to attack a specific target. We suppose that the quicker path (provided by A* algorithm) implies going through a narrow pass to reach the enemy, forcing the three units to go through the pass one after the other. If such a solution is adopted in a real context, the enemy may destroy each of the three units in turn. Forbus and his colleagues [Forbus et al., 2001] noted that for more realism and immersion, the player (since it is applied in a game context) should specify his intent by sketching paths (paths that are longer but enable the units to surround the enemy). We then look for a path that “best follows” the “general shape” of the sketch proposed by the player, a classic algorithm such as A* cannot be applied. We believe that such a qualitative constraint cannot be implemented using formal algorithms since no accurate requirement is provided for the problem. Temporal constraints: Not only spatial constraints can influence the choice of the pathfinding techniques to be used, but temporal constraints are also fundamental. We can distinguish between two kinds of temporal constraints: real-time and “not real-time”. When “not realtime” pathfinding is needed, the well-known classical techniques can be used to find the optimal path. In fact, there is enough time to process the best solution. However, when less time is available to find the path, compromises must be made. We are interested in performing Pathfinding under the following circumstances: (i) The environment is real (data accuracy is fundamental); (ii) The pathfinder has
2.1 Factors related to the Pathfinder With respect to the pathfinder, we will first try to justify why this factor should be considered when choosing the appropriate technique to process pathfinding. Let us suppose that the pathfinder is a vehicle, that the simulated environment is represented by a grid of cells and that a cost function defines the ‘cost’ to move from one cell to another. In reality, various vehicles have more or less difficulties moving uphill or downhill. Taking this fact into account in a simulated world by altering the cost function related to the environment may be inappropriate. In fact, this would imply changing the cost of the environment grid fo r each type of vehicle. For this reason, it is important to consider the pathfinder’s characteristics. Even if most of the characteristics are static, some may be dynamic. Here is an example: if the main objective of a vehicle is to “reach destination ‘A’” but it does not have enough fuel to get there, it may change its initial objective by a new objective: “reaching destination ‘A’ via a gas station.” Hence, the fuel level in the vehicle tank is a dynamic characteristic of the pathfinder ‘vehicle’ since it changes during the pathfinding process. In this example we note the importance of considering the pathfinder’s objectives as well.
vague objectives (e.g. not a precise destination) and several characteristics (static and dynamic) must be taken into account; (iii) Qualitative spatial constraints must be considered. To our knowledge, most research works done in pathfinding do not take into account all these factors. Besides, previous works mainly concentrated on computer game pathfinding. In contrast, we are interested in assisting real pathfinders in real spaces. 3. PATHFINDING USING AN AGENT-BASED SIMULATION Recently, some researchers have shown an interest in applying agents in wayfinding2 . One of the most relevant works was done by Raubal [Raubal 2001] who used agents to simulate how people deal with wayfinding in airports. However, to our knowledge, no one has applied software agents to pathfinding problems. We investigate how to apply software agents in a simulated world in order to help real agents (in this paper, “real agent” refers to a human or a machine) to find their paths in real spaces. As depicted in the previous section, an efficient pathfinding technique has to deal with three aspects: the environment, the pathfinder, and the pathfinding constraints. In this section, we try to show how these themes are considered in an approach which is based on software agents. Since the main objective is to help a real agent to find a path in a real geographical space, we build a virtual world which is similar to the real one. This virtual world embodies relevant and accurate information about the real world. Software agents within this virtual world have access to an enhanced knowledge (data are accurate and known at each cell) in comparison to the real agents which have a limited knowledge about the area in which they are located. The software agents use the enhanced knowledge of the simulated world in order to find a suitable path and then communicate the result (the path) to the real agent. In the rest of the paper, the virtual world is called the Virtual Enhanced-Knowledge Environment (VEKE).
2
Wayfinding research investigates the processes that take place when people orient themselves and navigate through space [Raubal 2001], and aim to explain how people find their ways in the physical world, what people need in order to find their way, how they communicate directions, and how people’s verbal and visual abilities influence wayfinding. Pathfinding is a less complex problem since it does not include the human factor. It is the process of finding a path between an origin and a destination (while trying to avoid obstacles) in a map, which usually involves determining a least-cost path
3.1 How to model the environment? The simulated environment should encapsulate all the information (both static and dynamic) necessary for the pathfinding process. Since we are interested in real applications, data must be as reliable as possible. Consequently, we build the VEKE from real data taken from a Geographical Information System (GIS). A classical approach based on dividing the environment into a grid of cells is adopted. Howe ver, costs are not directly calculated and assigned to each cell. For more scalability, each cell encapsulates several types of data (ex. elevation, slope, etc.) and depending upon what the pathfinder is interested in, one or more kinds of data are considered. Dynamics can also be handled by the environment. Changes within the environment are modeled in the VEKE by an agent or a set of agents. For example, a new obstacle may imply adding a new agent (in the VEKE) which has the characteristics of this obstacle. A moving obstacle can be represented by a moving agent (or a cluster of agents). Natural phenomena, such as a fire spreading in a forest, may be modeled by a set of agents which encapsulate fire characteristics and move through the simulated terrain according to a physical fire propagation model (this is what we have adopted for our implementation). In a military context, an enemy unit may be represented by an agent as well. This software agent has to simulate the enemy behaviour during the pathfinding process (while the pathfinder is looking for a suitable path). 3.2 How to model the pathfinder? In an agent-based approach, it is expected to model the pathfinder by a software agent that we call Pathfinder Agent. In Section 2, we pointed out the necessity of considering both the characteristics and the objectives of the pathfinder3 in certain complex problems. These requirements are well handled by the agent paradigm. In fact, the software agent is able to handle the real agent’s characteristics as well as its objectives. The pathfinding process can then take into account the pathfinder’s features. Figure 1 illustrates the different components of the VEKE and the corresponding elements in the real world. 3.3 How to deal with pathfinding constraints? In a famous paper [Stout 1996], Stout distinguishes between the “pathfinding on the Move” and the “Looking before you leap pathfinding”. The later consists of planning the entire route before the first step is taken. This is the foundation of classic algorithms such as 3
From now on, the term « pathfinder » refers to the real pathfinder.
Breadth-first search, Dijkstra’s algorithm, and A*. Since this approach is not suitable for the situations we are
addressing (as previously mentioned), “on the move” pathfinding is a good alternative. Actually, this is what a
Real Pathfinder
Agent pathfinder
Dynamics
Agent-based model
Environment Space
GIS
Real world Figure 1. The Real world versus the VEKE human subject does when trying to find his way when he cannot apprehend the whole space. This is exactly a wayfinding problem, for which several models based on perception, decision and action processes have already been proposed. For instance, Raubal’s wayfinding model [Raubal 2001] integrates the agent’s cognitive schema and perceptual structures within a Sense-Plan-Act (SPA) approach [Gat 1998]. An internal cognitive schema [Neisser 1976] guides the agent’s processes of perception, decision, and action during the wayfinding task. In a classical wayfinding process, a human subject cannot perceive the whole space from a single viewpoint. Therefore, he has to navigate through spaces to experience them. However, a Pathfinder Agent in our VEKE has access to all data contained in the simulated environment. This is the main difference between the wayfinding process and the type of pathfinding we are addressing. Beyond that, a model similar to the SensePlan-Act is adopted for the Pathfinder Agent. In this way and in order to ensure the Pathfinder Agent ’s processes of perception, decision, and action, we need to provide the agent with an enhanced perception mechanism, a mechanism to manage rules and objectives (to decide), and an adequate navigation capability (to act, since acting in a pathfinding context means moving). 3.3.1 Perception Agent perception is usually simulated in virtual environments with the aim to mimic the real behaviour of the simulated entity (e.g. huma n behaviour). What this kind of agents should perceive has to be as similar as possible to what the real agent would perceive in the real world. In contrast, the Pathfinder Agent uses perception in order to plan a path. Its perception capabilities can then be stronger than those of the real finder, since the main objective is not to simulate reality, but rather, to take advantage of the VEKE as an enhanced source of data. It then seems to be more a data access than a perception process. Nevertheless, we will keep the term “perception”
Simulation platform
VEKE (or Virtual world)
since the Pathfinder Agent has access only to data of its neighbourhood (limited by a certain beam). 3.3.2 Rules and objectives After perceiving and before moving, the Pathfinder Agent needs to know, at each moment, what is the best move that it can do. To this end, it should have objectives that it tries to reach. These objectives are associated with actions that the agent can perform. They can also be changed during the process, as mentioned previously. In a pathfinding context, an example of a typical objective is “to reach a destination A”. The action corresponding to this objective is “move to A”. When the objective is more complex, it is associated with rules which indicate the constraints to respect while trying to reach the objective. Rules may reflect how to take into account the qualitative search constraints. A human subject in such circumstances (trying to determine what the best next move is) may have two different behaviours: a deliberative and a reactive behaviour. When he has enough time to plan his path or a portion of it, he tries to find the best solution: this is deliberative planning. In the opposite, when a problem occurs suddenly, he does not have enough time to fully plan his moves, and he reacts as soon as possible. This is reactive planning. By analogy, the Pathfinder Agent can adopt a deliberative plan generation approach followed by execution, as well as a real-time reactive planning where the agent immediately responds to changes occurring in the environment. The advantage of the reactive approach is that it allows for short reaction time to environment’s changes. The drawback is that neither long nor short-term objectives can be addressed and there is no guarantee that a final solution is reachable. This is why several researchers, such as Jensen and Veloso [Jensen and Veloso 1998] suggest that the ideal approach for real-time dynamic domains is a combination of classical deliberative and reactive planning.
Following this idea, our Pathfinder Agent’s model is based on an interleaving of deliberative and reactive planning. Reactive component: Following an unexpected event, this module may indicate to the navigation module (described below) a short-term objective. Depending on the considered application, main events are depicted and general response rules are consequently be written. For instance, in a military context, a Pathfinder Agent, which represents a real vehicle fleeing enemy units in a hazardous terrain, may have as a reactive rule: “if you are fired upon from the east, set your direction to the west”. These rules indicate where to go when reacting to sudden events. The navigation component has the task of moving the agent according to the objective set by the reactive component. Deliberative comp onent : It consists of continuously finding a path to communicate to the real finder. Depending upon the time available and the current constraints, different strategies may be applied. If no qualitative constraints (as discussed in Section 3) are set and if there is enough time to find the optimal path, an algorithmic solution may be used (D*, A* or shortestpath, etc.). The chosen algorithm may be applied to a short portion of the path according to the application requirements. However, if qualitative constraints (spatial ones) are to be considered or if not enough time is available to wait for optimal solutions (and current algorithms are no longer usable), an approach similar to the one described in Section 4 could be used. 3.3.3 Navigation This component complements the previous ones. It should support several navigation modes such as the obstacleavoidance-mode (the agent moves while trying to avoid obstacles) or the less-costly-mode (the agent moves through the less costly portion of the terrain). De pending upon whether the deliberative component or the reactive one is requested, and which strategy is chosen by the deliberative component (in the case of deliberative planning), only one specific navigation mode is used. For example, the obstacle-avoidance-mode is well suited for reactive pathfinding since not enough time is available to perform the less costly path (less-costly-mode). Figure 2 below summarizes the different components of the Pathfinder Agent. Reactive control
Deliberative control
Objectives and rules manager
Navigation component
Perception component
Figure 2: Pathfinder Agent’s model The functioning of the Pathfinder Agent can be summarized as follows: it starts by perceiving its environment, then acts accordingly (reactively or deliberatively according to the circumstances) and finally moves following its objectives. Since the environment is dynamic, the Pathfinder Agent should restart the cycle with the perception step so that it can detect if any change has occurred in the meantime. 4. APPROACH ILLUSTRATED ON FINDING A SUITABLE PATH FOR A FIREBREAK 4.1 Mags To achieve our objective (mentioned above), we use a simulation platform developed by our research group: Multi-Agent Geo-Simulation MAGS [Moulin et al., 2003]. MAGS allows us to simulate thousands of cognitive agents in real-time moving within a virtual environment (in 2D and 3D). The spatial environment and the static objects are generated from data contained in geographic information systems (GIS) and related databases. With respect to dynamic change which may alter the virtual environment, different approaches can be used depending on the changes’ nature and the simulation objectives. For example, a new obstacle would imply adding a new agent which embodies the main features of this obstacle. A gaseous phenomenon such as smoke, dense gases and odours is modeled by particle systems [Stam 2000] if the objective is to make the visualization within the simulation world more realistic. Since our objective in building a firebreak is not to make an ergonomic simulation, fire will be simulated by a set of agents (see Section 4.2). MAGS agents are equipped with cognitive capabilities (navigation, perception, memory, communication, and objective-based behaviour) which allow them to evolve autonomously during the simulation. MAGS is currently used to simulate crowd behaviour, consumer behaviour in malls, and road traffic. 4.2 Proposed solution In this sub-section we propose a solution for the indirect attack scenario presented in Section 1 the scenario of a direct attack has also been implemented but is not presented here. The architecture of the proposed solution is described in Figure 3. Only relevant components of the MAGS platform are represented.
The Prometheus simulator: Prometheus is the Canadian n Forest Fire Behaviour Prediction (FBP) System and the Wildland Fire Growth Model Project which investigates most recent wave propagation fire algorithms developed the growth of wildland fires under various conditions. The at Brandon University. The FBP System is a complex, foundati semion for emp irica MAGS the l system Prometheus COM interface Prometh that Environment GIS data eus mathem (terrain) model is atically the expresse Prometheus simulator (for Agent Pathfinder Canadia s and forest fire)
Figure 3. The architecture of the proposed solution. integrates many of the fuels, weather, and topographic factors influencing forest fire behaviour. To process Prometheus’ data in a program (such as MAGS), we call a COM interface which gives us access to the simulator engine. Prometheus provides at each period of time the expected perimeters of the growing fire. Each perimeter is given as a set of vertices and each vertex embodies the fire’s characteristics at this point (the geo-referenced position, the fire intensity, the rate of speed, etc.). The environment : The environment is divided into a grid of cells. Each cell represents a real square of the terrain (a 25m2 in our implemented sample). It embodies all sort of relevant information at this square: elevation, percent slope, direction slope, fuel type, etc. Lakes, rivers and roads are also represented since they are fundamental in fighting fires: Lakes and rivers are a source of water and a good natural firebreak; roads are used for transporting firefighting resources and sometimes used as firebreaks (depending on their width). Each cell also contains the information if the square is in a lake, in a river, or in a gravel road, etc. In our exa mple, we have also dynamic data: fire perimeters. As mentioned in the previous sub-section, Prometheus provides the environment with fire perimeters as a set of vertices. We then model these vertices by software agents. Each agent represents a fire vertex and embodies its main features (position, intensity, rate of spread, etc.) The Pathfinder Agent : In our example, the Pathfinder Agent is a MAGS software agent which has to perceive the environment described above, to plan its next move, and to move in order to reach the planned destination. The
purpose of the Pathfinder Agent is to find a suitable path which best follows a sketch made by a fire manager and which respects certain constraints (no sharp angles, etc.). Figure 4 illustrates the problem we try to solve. A Pathfinder Agent starting near a sketch ends, plans its path as follows: (1) detect the direction of the nearest portion of the sketch (2) perceive the environment by launching a beam to a certain distance and according to the direction determined in (1) as well as the nearby directions (the angle between the direction which is the most to left and the one which is the most to the right is called recovering angle). (3) Process the cost of each beam (the cost of moving the dozer according to this beam) (4) if no beam has a reasonable cost (an obstacle is on its way) then enlarge the recovering angles (it means considering more directions) and go to (2) else go to (5) (5) choose the less costly beam and move to the destination reached by this beam. (6) go to (1) In step (5), choosing the less costly beam implies taking into account terrain features, spatial constraints and fire nearby. The terrain features which influence the cost of the move are: elevation, slope, slope direction, and fuel type. Since the objective of the Pathfinder Agent is to follow a sketch without any sharp angles, the deviation from the sketch direction and the neighbourhood of the Pathfinder Agent to the sketch are the two main factors which influence the beam cost. Finally, fire closeness may present a danger for dozers. The Pathfinder Agent has to take this into account while
choosing the best beam to follow. Therefore, a beam which takes a dozer close to the fire line should be more costly than another one which keeps the dozer away from fire. If we call BeamCost the cost of a beam, TerrainCost the cost related to terrain features, SpatialConstraintsCost the cost related to spatial constraints, and FireClosenessCost the cost related to fire closeness, BeamCost is given by the following expression: BeamCost = TerrainCost4 (elevation, slope, slope_direction, fuel_type) + SpatialConstraintsCost(deviation, sketch_nearby) + FireClosenessCost(fire_closeness) The Pathfinder Agent has also to deal with another spatial constraint: the fact that neither a specific starting point nor an accurate ending point is given. Since a starting point can be any point of a certain geographic zone, we have to consider all of them. This
4
To have a minimum cost, the Pathfinder Agent has to avoid rough terrain.
Tools to add obstacles dynamically Recovering angle
beam
Direction of the nearest portion of the sketch
Agent Pathfinder
Already planned portion of the way Sketch
Figure 4. Agent Pathfinder’s procedure to follow a sketch (illustrated in a snapshot) would increase our chance to find the best path for the problem. In fact, starting from a certain point rather than another one may spare the Pathfinder Agent a major obstacle which could increase significantly the cost of the path. If S is the set5 of possible starting points, The Pathfinder Agent has to look for a path from each element of S. Since we are in a virtual world, we can create a Pathfinder Agent for each element of S. This may ensure looking for the best path in shorter time. The Pathfinder Agent considers that it has reached its destination if it is in a certain zone (destination zone). Finally, we have to note that the fire manager does not necessary propose the best position of the sketch because he is not able to process all the constraints mentally. He only gives a vague idea of its shape and an approximation of its location. A better sketch can be obtained for example just by making a translation or rotation (or a combination of both of them) of the sketch proposed by the manager. Such a little enhancement may keep for example the Pathfinder Agent from overcoming a major 5
MAGS can support thousands of active software agents in real-time simulation (and accelerated mode). With the current version of MAGS, we can start thousands of Pathfinder Agents in parallel, which is largely more than necessary.
obstacle in the first version of the sketch (the one proposed by the fire manager). In order to evaluate each possible sketch, an approximation must be made. For example, if the environment is represented by a grid of cells, a low cost of the cells forming the sketch and its neighbourhood may indicate that finding a good path following this sketch is more probable. 5. CONCLUSION AND FUTURE WORK In this paper we demonstrated the benefits of using software agents in a simulation in order to plan a path under real and complex constraints. In fact, an agent can perceive the simulated environment and its dynamics. It can thus act accordingly and can even interact with different environment’s entities (static or dynamic). Thanks to its abilities (perception, navigation, etc.), an agent (ex. Pathfinder Agent) can deal with qualitative spatial constraints. Relevant characteristics of the real pathfinder can be handled by an agent, and a suitable path for each particular real pathfinder can be determined. This can enhance the quality of the found paths and makes the environment independent of the type of the considered pathfinder. The proposed approach strongly depends on data accuracy. Thus, it is crucial to consider reliable data (updated GIS data) to avoid distorted results. In a realtime context, the approach is limited by the level of the reliability of communication. The approach can also be
extended to support more complex scenarios implying collaboration between various agents. The scenario described in Section 1 (already implemented but not yet tested in real situations) shows how to find a suitable path for dozers. This application may help fire managers in different ways: (i) train managers with real data; (ii) help a manager make decisions in a real situation; (iii) after fire, evaluate strategies followed by the manager in order to see if better decisions could have been made. We collaborate with SOPFEU (in charge of extinguishing fires in the province of Quebec) and ASRD (responsible for developing the Canadian fire simulator Prometheus) in order to get real data for our tests, software, and recommendations from their expert s. Since we are addressing a real application in a real terrain, dynamics may influence the proposed solution (the path). An unexpected wind may speed up the fire spreading and make inappropriate the path proposed initially or a real pathfinder (dozer) may move differently than what it was suggested by its Pathfinder Agent. For instance, the dozer can suddenly face an obstacle which is not in the VEKE (this can happen, for example, if the GIS data are not upto-date) and has to react accordingly (by avoiding the obstacle for example). In this case, and in order to maintain consistency between the real and the virtual pathfinder, the VEKE has to be adjusted (by adding the obstacle) and the Pathfinder Agent should also adjust its position within the VEKE and once again start looking for a suitable path based on the new changes.. Hence, monitoring the pathfinder and the availability of the path along time is very important in real situations. This is a hint of the extension we have already made to our initial approach in order to support the real-time constraint. We are currently implementing a real-time scenario to illustrate this extension. This work is not presented in this paper.
Lee, J.; P.A. Fishwick. 1995. “Simulation-Based RealTime Decision Making for Route Planning.” Winter Simulation Conf. 1087-1095. Arlington, VA, 1995. Moulin, B.; W. Chaker; J. Perron; P. Pelletier; J. Hogan; E. Gbei. 2003. “MAGS Project: Multi-agent GeoSimulation and Crowd Simulation.” COSIT 2003: 151-168 Neisser, U. 1976. “Cognition and reality- Principles and Implications of Cognitive Psychology.” Freeman, New York 1976. Ören, T.I.; S.K. Numrich; A.M. Uhrmacher, A.M.; L.F. Wilson; E. Gelenbe. 2000. “Agent-Directed Simulation Challenges to Meet Defense and Civilian Requirements.” Proc. of the Winter Simulation Conf. Vol. 2, 1757-1762, Orlando, 2000. Raubal 2001. “Agent-based Simulation of Human Wayfinding: A Perceptual Model for Unfamiliar Buildings.” Ph.D. Thesis, Vienna University of Technology. Reese, B.; B. Stout. 1999. “Finding a Pathfinder.” In Proceedings of the AAAI 99 Spring Symposium on Artificial Intelligence and Computer Games. Stam, J. 2000. “Interacting with Smoke and Fire in Real Time” Communications of the ACM, vol 43, n 7, 76-83. Stout, B. 1996. “Smart Moves: Intelligent Pathfinding.” In Game Developer Magazine October 1996.
REFERENCES Firewise Website: http://www.firewise.org/pubs/ wildfire_control/ updated 2004. Forbus, K.; J. Mahoney; K. Dill. 2001. “How qualitative spatial reasoning can improve strategy game AIs.” AAAI Spring Symposium on AI and Interactive Entertainment, March, 2001. GAT, E.. 1998. “On three-layer architectures. In Artificial Intelligence and Mobile Robots, Chap. 8, edited by Kortenkamp, Bonnasso and Murphy (AAAI Press). Jensen, R.M.; M.M. Veloso. 1998. “Interleaving Deliberative and Reactive Planning in Dynamic MultiAgent Domains.” In Proceeding of the AAAI Fall Symposium on Integrated Planning for Autonomous Agent Architectures, AAAI Press, October 1998.
Bernard Moulin has obtained an Engineering degree from Ecole Centrale de Lyon (France, 1976), a Degree in Economics (University Lyon2, 1976) and a PhD (applied mathematics - computer science, University Lyon1). He is a full professor at Laval University in the Computer Science Department. He is also one of the main researchers of the Research Center on Geomatics at Laval University. He has been working on software engineering and artificial intelligence since more than 20 years. He is supervising researches mainly subsidized by the Natural Sciences and Engineering Research Council of Canada, the FQRNT funds of Quebec, the Network of Centers of Excellence in Geomatics GEOIDE and the Defence Research and Development Canada. His main interests are : multi-agent systems, agent-based geosimulation, application of AI techniques on geomatics, models and simulation of software agents’ conversations, etc.
BIOGRAPHY Nabil Sahli obtained a Master degree in Computer Science from Laval University (Quebec). He is now a PhD Student (supervised by Bernard Moulin since 2001). He is mainly interested in using multi-agent systems to solve planning problems with strong spatial constraints. He is working on a project which aims at assisting firefighting planning using geosimulation and multi-agent systems.