1. Introduction
This Chapter is intended as a sequel to our Chapter 21 in the book on "Mobile Robots Motion Planning. New Challenges" by this Publisher. It is now commonly accepted that problems of planning and navigation are inseparable: "Most recent contribution to the field combine effective algorithms tested on significant problems, along with some formal guarantees of performance" (J.-C. Latombe in Foreword to "Principles of Robot Motion. Theory, Algorithms and Implementations" by H. Choset et al.). Therefore, as with the former Chapter, we provide in this Chapter planning mechanisms along with navigation tests and a theoretical analysis of underlying constructs. We extend our scope of analysis by considering formations of mobile autonomous robots. We introduce a definition of a robot formation, based on the spatial relation of betweenness and we give a treatment of planning and navigation problems for robot formations. In our investigations into problems of multi-robot planning and navigation, we apply rough mereological theory of spatial reasoning. This theory is briefly recalled in this Chapter for completeness sake. The software system Player/Stage is employed as means of simulation and visualization of robot trajectories to chosen goals. To this end, it has been provided with SQL functions rendering predicates of rough mereological geometry. Robotics of autonomous mobile robots presents the most intricate field for applications of techniques of artificial intelligence, decision making and cognitive methods. Among the basic problems in this area are planning and navigation problems and we are concerned with them both in their mutual bond.The planning and navigation problem for mobile robots is addressed from many angles and a multitude of approaches and techniques have emerged; it suffices to mention a division of planners according to assumptions about robot equipment and abilities as well theoretical principles used in planner construction, from simple bug-type algorithms though potential functions and potential field based strategies to roadmaps constructed by exploiting visibility in configuration spaces, metric-based ideas like Voronoi diagrams and graphs, cell decompositions of various types, and probabilistic (sampling) planners allowing for incremental space exploration by building trees of configuration points like EST-trees or RRT-trees, see (Choset et al., 2005) for an excellent account of these approaches.Path planning methods, according to (Latombe, 1991) can be divided into
From among those methods, we choose to adopt the method of potential field, see sect.5. In classical setting, the potential field is built as the sum of two components: repulsive, induced by obstacles, and attractive, induced by goals. The field force is defined as the gradient of the repulsive, respectively, attractive, potential, see (Choset et al., 2005). In either case, the potential is defined with the use of a metric, in analogy to classical physical examples of a potential field like Coulomb or gravitational fields. Our approach is different: the potential field is constructed by means of a chosen rough inclusion - the primitive predicate of rough mereology, see sect.5. A robot is driven to the goal by following areas of increasing density of the field as shown in sect.5. The problem for a single robot is presented fully in (Polkowski&Osmialowski, 2009) where mereological potential fields have been constructed and applied in planning of paths and robot navigation.
Problems of cooperative mobile robotics are even more demanding as they require an accounting for group behavior of many autonomous mobile robots. There is the increasing need for making use of such teams in practical problems of performing complex tasks inaccessible for a single robot (like pushing large objects, rescue operations, assembling); there is also a theoretical interest in research on aspects of their behavior: cooperative mechanisms, leadership, conflict resolution, consensus making, many of which belong as well in biology and environmental studies, see, e.g., (Balch&Arkin, 1998, Brumitt et al., 2001, Chen&Luh, 1998, Leonard&Fiorelli, 2001, Shao et al., 2005) and also a discussion in (Cao et al., 1997). These motifs have propelled research in direction of multi-robot planning.
Cooperative behavior is perceived by many authors, see, e.g., (Cao et al., 2005) and references therein, as a specialization of collective behavior having the tint of achieving jointly some goal. The goal may mean an economic advantage, reaching a specified position, learning jointly a feature or a category of objects, etc., etc. Main directions of research in this area of schemes for cooperative mobile robotics, include, as distinguished in the literature, see, e.g., (Cao et al., 2005, Kramer&Scheutz, 2007), a study on group architectures, conflicts of resources, motivations for cooperation, learning of a cooperative behavior, spatiotemporal aspects: path planning, moving to formations, pattern generation.
In this work, which extends our earlier results (Osmialowski, 2009, Polkowski&Osmialowski, 2008a), we are concerned with the last aspect, i.e., moving to formations and path planning in order to make robots into a given formation. Alongside, we are concerned with problems of repairing formations and navigating formations in static environments. We study the problem of path planning in order to make robots in a team into a formation. We apply as a theoretical framework for our approach, a qualitative theory of spatial reasoning as provided by Rough Mereology, see, e.g., (Polkowski&Osmialowski, 2008). In this framework, we give a definition of a formation by a team of robots, by means of a rough mereological betweenness relation among them, see (Osmialowski, 2009, Polkowski & Osmialowski, 2008). In the same framework, we study the problem of path planning for moving into a given formation. We propose some procedures to this end. We model our robots on Roomba Roomba is the trademark of iRobot Inc.
2. On formations of autonomous mobile robots
A study of the concept of a robot formation was initially based on a perception of animal behavior like herding, swarming, flocking or schooling. In this respect, a few principles emerged, see, e.g., (Balch&Arkin, 1998), keeping all animals within a certain distance from one another (e.g., to ensure mutual visibility), moving away when the distance becomes too close (to avoid congestion, collision, or resource conflict), adapting own movement to movement of neighbors (e.g., velocity of motion), orienting oneself on a leader.
From those observations a geometric approach to formations has been derived: a formally simplest approach (Balch&Arkin, 1998), uses referencing techniques; reference is made either to the team center or to the team leader, or to a specified neighbor in a coordinate system given by the position of the team center or the leader along with the orientation given by the nearest navigation point; positions are determined, e.g., with the help of GPS or dead reckoning. Another method for forming a geometric formation relies on a direct usage of a metric, say
It seems desirable to propose an approach which in principle would be metric independent and which would take into account only relative positions of robots one to another. In this work we propose a definition of a formation which is based on spatial predicates defined within rough mereological theory of spatial reasoning, see, e.g., (Polkowski, 2001, Polkowski&Osmialowski, 2008, 2008a).
3. Qualitative spatial reasoning: a nutshell reminder
In this Section, we recall elements of spatial theory induced in the rough mereological framework which have already been presented extensively elsewhere, in particular in (Polkowski&Osmialowski, 2008), Ch. 21. Qualitative Spatial Reasoning emerged on basis of an idea by (A. N. Whitehead, 1929, Leonard & Goodman, 1940) of an extension, dual to a notion of part in mereology theory (Lesniewski,1916,1982), reformulated as a theory of Connection (Leonard&Goodman, 1940, Clarke, 1981). Qualitative Spatial Reasoning is a basic ingredient in a variety of problems in mobile robotics, see, e.g., (Kuipers&Byun, 1987). Spatial reasoning which deals with objects like solids, regions etc., by necessity refers to and relies on mereological theories of concepts based on the opposition part - whole (Gotts et al., 1996). Mereological ideas have been early applied toward axiomatization of geometry of solids, see (De Laguna, 1922, Tarski,1929).
Mereological theories rely either on the notion of a part (Lesniewski, 1916, 1982), or on the notion of objects being connected (Clarke, 1981, Gotts et al., 1996). Our approach to spatial reasoning is developed within the paradigm of rough mereology. Rough mereology, see, e.g., (Polkowski, 2003, 2004, 2008), is based on the predicate of being a part to a degree, called a
In our applications to spatial reasoning, objects will be regions in Euclidean spaces, notably rectangles, in particular squares, or discs in 2-dimensional space, and the rough inclusion applied will predominantly be the one defined by the equation,
where |
On the basis of a given rough inclusion
4. Mereogeometry: a geometry of regions
We are interested in introducing into the mereological world defined by
4.1. A notion of a quasi-distance
We first introduce a notion of a quasi-distance
Observe that mereological distance differs essentially from the standard distance: the closer are objects, the greater is the value of
4.2. Nearness and Betweenness: Van Benthem's variant
We apply the distance
Here, nearness means that
We make an essential use of the betweenness predicate
Example 1. We consider a context in which objects are rectangles positioned regularly, i.e., having edges parallel to axes in
The betweenness predicate allows for definitions of various
We will say that a finite sequence
Example 2. With reference to Example 1, rectangles
5. Mereological potential fields
As mentioned in sect.2, the technique of potential fields, see (Krogh, 1984, Khatib, 1986) for seminal ideas, cf., (Choset et al., 2005, Latombe, 1991), well-known from planning in case of a single robot, has been extended to the case of robot teams. An example of this approach is given in (Leonard&Fiorelli, 2001), where robots in a team are organized around a set of beacons called
In our case, we apply the idea already exposed, see (Osmialowski, 2009, Osmialowski& Polkowski,2009, Polkowski&Osmialowski, 2008a), of building a potential field from the rough inclusion
The algorithm for building the potential field is the following.
Structure: a queue Q
1. Add to the queue Q, x and y coordinates of a given goal together with 0 as current distance from current squared area to the next neighboring area (so they will be part of each other to the maximal degree). Also put clockwise as current direction of exploration. These are initial values.
2. Spin in the main loop until there are no more elements in the queue Q:
2.1. Extract x, y, current distance and current direction of exploration from the beginning of queue Q.
2.2. Check if there is any other squared area already present in potential field to which the distance from current x and y coordinates is equal or shorter than current distance. If so, skip taken element and run new main loop turn.
2.3. Form new squared area with current x and y as the coordinates of the centroid of this new area. Check if there are any common part with any static obstacle within this new squared area. If so, skip taken element and run new main loop turn.
2.4. Add new squared area to the potential field.
2.5. Increase current distance by 0.01.
2.6. Add eight neighbor areas to the queue Q (for each area add these data: x and y coordinates, current distance and direction of exploration opposite to current); if direction is clockwise neighbors are: left, left-up, up, right-up, right, right-down, down, left-down; if direction is anti-clockwise neighbors are: left-down, down, right-down, right, right-up, up, left-up, left.
2.7. Run new main loop turn.
6. A definition of a formation of robots
We propose a theory of many robot structures, based on the predicates of rough mereological geometry, of which foremost is the predicate
Definition 1.
This allows as well for a generalization to the notion of
if and only if
We now give the central definition in this work: the definition of a formation. By a formation, we mean a set of robots along with a structure imposed on it as a set of spatial relations among robots.
Definition 2.
In practice, ideal formations will be given as a list of expressions of the form,
indicating that the object
indicating triples which are not in the given betweenness relation.
To account for dynamic nature of the real world, in which due to sensory perception inadequacies, dynamic nature of the environment, etc., etc., we allow for some deviations from ideal formations by allowing that the robot which is between two neighbors can be between them to a degree in the sense of (7).
This leads to the notion of a real formation.
Definition 3.
In practice, real formations will be given as a list of expressions of the form,
indicating that the object
indicating triples which are not in the given betweenness relation.
In Fig. 4, we sketch some cases of instances of relations (between-deg
7. On complexity of formation description
Description of formations, as proposed in Def. 1, 2 of sect. 6, can be a list of relation instances of large cardinality, cf., Examples 3 and 4, below. The problem can be posed of finding a minimal set of instances wholly describing a given formation. It turns out (Polkowski&Osmialowski,2008) that the problem is intractable. We have
Proposition 1.
8. Implementation in Player/Stage software system
Player/Stage is an Open-Source software system designed for many UNIX-compatible platforms, widely used in robotics laboratories (Kramer&Scheutz, 2007, Osmialowski, 2007; http://playerstage.sourceforge.net). Main two parts are Player - message passing server (with bunch of drivers for many robotics devices, extendable by plug-ins) and Stage - a plug{in for Player's bunch of drivers which simulates existence of real robotics devices that operate in the simulated 2D world.
Player/Stage offers client-server architecture. Many clients can connect to one Player server, where clients are programs (robot controllers) written by a user who connects to Player client-side API. Player itself uses drivers to communicate with devices and in this activity it does not make distinction between real and simulated hardware. It gives the user means for testing programmed robot controller in both real and simulated world.
Among all Player drivers that communicate with devices (real or simulated), there are drivers not intended for controlling hardware, instead those drivers offer many facilities for sensor data manipulation, for example, camera image compression, retro-reflective detection of cylindrical markers in laser scans, path planning. One of the new features added to Player version 2.1 is the PostGIS PostGis is an intelectual property of Refractions Research, Inc.
PostGIS itself is an extension to the PostgreSQL object-relational database system which allows GIS (Geographics Information Systems) objects to be stored in the database. It also offers new SQL functions for spatial reasoning. Maps which are to be stored in SQL database can be created and edited by graphical tools like
8.1. SQL queries representing rough mereogeometric predicates
A roboticist can write a robot controller using Player client-side API which obtains information about current situation through the
CREATE FUNCTION meredist(object1 geometry, object2 geometry)
RETURNS DOUBLE PRECISION AS
$$SELECT min(degrees.degree) FROM
((SELECT
ST Area(ST Intersection(extent($1), extent($2)))
/ ST Area(extent($1))
AS degree)
UNION (SELECT
ST Area(ST Intersection(extent($1), extent($2)))
/ ST Area(extent($2))
AS degree))
AS degrees;
$$ LANGUAGE SQL STABLE;
Having mereological distance function we can derive nearness predicate:
CREATE FUNCTION merenear(obj geometry, o1 geometry, o2 geometry)
RETURNS BOOLEAN AS
$$SELECT meredist($1, $2)
$$ LANGUAGE SQL STABLE;
The equi-distance can be derived as such:
CREATE FUNCTION mereequ(obj geometry, o1 geometry, o2 geometry)
RETURNS BOOLEAN AS
$$SELECT (NOT merenear($1, $2, $3))
AND (NOT merenear($1, $3, $2));
$$ LANGUAGE SQL STABLE;
Our implementation of the betweenness predicate makes use of a function
that produces an object which is an extent of given two objects:
CREATE FUNCTION mereextent(object1 geometry, object2 geometry)
RETURNS geometry AS
$$SELECT GeomFromWKB(AsBinary(extent(objects.geom))) FROM
((SELECT $1 AS geom)
UNION (SELECT $2 AS geom))
AS objects;
$$ LANGUAGE SQL STABLE;
The betweenness predicate is defined as follows:
CREATE FUNCTION merebetb(obj geometry, o1 geometry, o2 geometry)
RETURNS BOOLEAN AS
$$SELECT
meredist($1, $2) = 1
OR meredist($1, $3) = 1
OR(meredist($1, $2)
AND meredist($1, $3)
AND meredist(mereextent($2, $3),
mereextent(mereextent($1, $2), $3)) = 1);
$$ LANGUAGE SQL STABLE;
Using the betweenness predicate we can check if three objects form a pattern:
CREATE FUNCTION merepattern(object1 geometry, object2 geometry, object3 geometry)
RETURNS BOOLEAN AS
$$SELECT merebetb($3, $2, $1)
OR merebetb($1, $3, $2)
OR merebetb($2, $1, $3);
$$ LANGUAGE SQL STABLE;
Also having pattern predicate we can check if four objects form a line:
CREATE FUNCTION mereisline4(obj1 geometry, obj2 geometry, obj3 geometry, obj4 geometry)
RETURNS BOOLEAN AS
$$SELECT merepattern($1, $2, $3) AND merepattern($2, $3, $4);
$$ LANGUAGE SQL STABLE;
To figure out if a set of objects form a line an aggregate can be used:
CREATE FUNCTION mereisline_state(state array geometry[4], input data geometry)
RETURNS geometry[4] AS
$$SELECT ARRAY[$1[2], $1[3], $2, result.object]
FROM (SELECT CASE
WHEN $1[4] IS NOT NULL
THEN $1[4]
WHEN $1[3] IS NULL
THEN NULL
WHEN ($1[2] IS NULL) AND (meredist($1[3], $2)
THEN NULL
WHEN ($1[2] IS NULL) AND (meredist($1[3], $2) = 0)
THEN $2
WHEN ($1[1] IS NULL) AND merepattern($1[2], $1[3], $2)
THEN NULL
WHEN ($1[1] IS NULL) AND (NOT merepattern($1[2], $1[3], $2))
THEN $2
WHEN merepattern($1[1], $1[2], $1[3]) AND merepattern($1[2], $1[3], $2)
THEN NULL
ELSE $2
END AS object)
AS result;
$$ LANGUAGE SQL STABLE;
CREATE FUNCTION mereisline_final(state array geometry[4])
RETURNS BOOLEAN AS
$$SELECT ($1[4] IS NULL)
AND ($1[3] IS NOT NULL)
AND ($1[2] IS NOT NULL);
$$ LANGUAGE SQL STABLE;
CREATE AGGREGATE mereisline
(SFUNC = mereisline_state,
BASETYPE = geometry,
STYPE = geometry[],
FINALFUNC = mereisline_final,
INITCOND = '
For our convenience we have derived betweenness predicate in more general form:
CREATE FUNCTION merebet(object geometry, object1 geometry, object2 geometry)
RETURNS BOOLEAN AS
$$SELECT (
ST Area(ST Intersection(extent($1), mereextent($2, $3)))
/ ST Area(extent($1))
) = 1.0;
$$ LANGUAGE SQL STABLE;
8.2. A driver for Player server to maintain formations
We have created a plug-in driver (written in C++ programming language) for Player server that keeps on tracking all robots in a team in order to make sure their positions form desired formation. If formation is malformed, our driver tries to repair it by moving robots to their proper positions within the formation. Also our driver is responsible for processing incoming orders: position commands which are dispatched to formation leader (selected member of a team) and geometry queries which are replied with information about current formation extent size and its global position. As such, our driver can be considered as a finite state machine which by default is constantly switching between two states:
Formation integrity check is done according to a given description. As pointed earlier, description of formation is a list of s-expressions (LISP-style symbolic expressions). To parse those descriptions efficiently we have used
Typical formation description may look like below.
Example 3.
This is a description of a formation of five Roomba robots arranged in a cross shape. The
Example below describes diamond shape formed by team of eight Roomba robots.
Example 4.
If formation is malformed our driver can try to repair it. A run-time parameter of the driver indicates which one of three methods should be used to move robots into their desired positions within the formation.
8.2.1. Three methods of formation repairing
We propose three methods for restoring a team to its prescribed formation shape. The first method is behavioral and does not use any planning. The second one is decoupled as planning is made for each robot separately, and global as all robots are taken into consideration at the same time. The third method is decoupled and global, and in addition is behavioral, as all robots move simultaneously.
Method 1. Pure behavioral. Each robot (except a selected leader) moves to the goal position. Whenever collision is detected (on the robot bumper device), robot goes back for a while then turns left or right for a while and from this new situation, it tries again to go towards goal position. Due to the nature of this method, formation repair process is time-consuming (reactions to possible collisions take additional time) and may be even impossible. Formation is repaired relatively to one selected member of a team called a leader (therefore this selected member sticks in place while all other robot moves to their positions). If formation is not repaired after some grace time, a next member of a team is selected to be the new leader (therefore this new selected member sticks in place while all other robot moves which changes whole situation). If there are no members left to be new leaders, this method signals that the formation shape is impossible to be restored.
Method 2. One robot at a time. The procedure is repeated for each robot in a team: a path is planned by using any available planner (e.g.,
Method 3. All robots at a time. Paths are planned and executed for all robots simultaneously. Whenever collision occurs during plan execution, lower level behavior causes involved robots to go back for a while, turn left or right for a while and new paths for those robots are planned. This is the fastest method and despite the fact that it is not collision aware, it is reliable enough.
9. Navigation by obstacles with robot formations. Formation changing and repairing
The final stage of planning is in checking its soundness by navigating robots in an environment with obstacles. We show results of navigating with a team of robots in the initial formation of cross-shape in a crowded environment, see Fig. 13. In order to bypass a narrow avenue between an obstacle and the border of the environment, the formation changes to a line, and after bypassing it can use repairing to restore to the initial formation (if it is required), see Figs.14-18. The initial cross-shaped formation is shown in Fig. 13 along with obstacles in the environment.
Reaching the target requires passing by a narrow passage between the border and the rightmost obstacle. To carry out this task, robots in the formation are bound to change the initial formation. They try the line formation, see Figs. 14-15.
However, making the line formation at the entrance to narrow passage is coupled with some difficulties: when the strategy
To avoid such blocking of activity the behavior
Surprisingly,
10. Conclusions and future research
We have proposed a precise formal definition of a formation and we have presented a Player driver for making formations according to our definition. Our definition of a formation is based on a set of rough mereological predicates which altogether define a geometry of the space. The definition of a formation is independent of a metric on the space and it is invariant under affine transformations. We have examined three methods of formation restoring, based on a reactive (behavioral) model as well as on decoupled way of planning. We have performed simulations in Player/Stage system of planning paths for formations with formation change. The results show the validity of the approach. Further research will be directed at improving the effectiveness of execution by studying divisions into sub-formations and merging sub-formations into formations as well as extending the results to dynamic environments.
References
- 1.
Arkin R. C. 1998 , MIT Press,0-26201-165-4 MA - 2.
Balch T. Arkin R. C. 1998 Behavior-based formation control for multi-robot teams . , 14(6), 926-939,0104-2296 1042 296 X - 3.
van Benthem J. 1983 , Reidel,9-02771-421-5 - 4.
Brumitt B. Stentz A. Hebert M. Group C. M. U. U. G. V. 2001 Autonomous driving with concurrent goals and multiple vehicles: Mission planning and architecture . ,11 103 115 ,0929-5593 - 5.
Uny Cao. Y. Fukunaga A. S. Kahng A. B. 1997 Cooperative mobile robotics: Antecede-nts and directions. ,4 7 27 ,0929-5593 - 6.
Chen Q. Luh J. Y. S. 1998 Coordination and control of a group of small mobile robots , ,2315 2320 ,078034300 Leuven, May 1998, IEEE Press - 7.
Choset H. Lynch K. M. Hutchinson S. Kantor G. Burgard W. Kavraki L. E. Thrun S. 2005 Principles of Robot Motion. Theory, Algorithms, and Implementations , MIT Press,0-26203-327-5 MA - 8.
Clarke B. L. 1981 A calculus of individuals based on connection. , 22(2), 204-218,0029-4527 0029 4527 - 9.
Das A. Fierro R. Kumar V. Ostrovski J. P. Spletzer J. Taylor C. J. A. vision-based formation. control framework. I. E. E. 185 813-825,0104-2296 1042 296 X - 10.
Gotts N. M. Gooday J. A. Cohn A. G. 1996 A connection based approach to common-sense topological description and reasoning. , 79(1), 51-75 - 11.
Khatib O. 1986 Real-time obstacle avoidance for manipulators and mobile robots. ,5 90 98 ,0278-3649 - 12.
Kramer J. Scheutz M. 2007 Development environments for autonomous mobile robots: A survey . ,22 101 132 ,0929-5593 - 13.
Krogh B. 1984 A generalized potential field approach to obstacle avoidance control . SME-I Technical paper MS84 484 , Society of Manufacturing Engineers, Dearborn MI - 14.
Kuipers B. J. Byun Y. T. 1987 A qualitative approach to robot exploration and map learning, ,390 404 , St. Charles IL, October 1987, Morgan Kaufmann, San Mateo CA - 15.
Ladanyi H. 1997 SQL Unleashed , Sams Publishing,067231133 - 16.
De Laguna T. 1922 Point, line, surface as sets of solids. J. Philosophy,19 449 461 ,0002-2362 -X - 17.
Latombe J. 1991 Robot Motion Planning , Kluwer,079239206 Boston - 18.
Ehrich Leonard. N. Fiorelli E. 2001 Virtual leaders, artificial potentials and coordinated control of groups, ,0-78037-061-9 2968 2973 , Orlando Fla, December 2001, IEEE Press - 19.
Leonard H. Goodman N. 1940 The calculus of individuals and its uses . The ,5 45 55 ,0022-4812 - 20.
Lesniewski S. 1916 (On Foundations of General Theory of Sets, in Polish), The Polish Scientific Circle in Moscow, Moscow - 21.
Lesniewski S. 1982 On the foundations of mathematics, To poi2 7 52 ,0167-7411 - 22.
Osmialowski P. 2007 Player and Stage at PJIIT Robotics Laboratory, ,2 21 28 ,1897-8649 - 23.
Osmialowski P. 2009 On path planning for mobile robots: Introducing the mereological potential field method in the framework of mereological spatial reasoning, , 3(2), 24-33,1897-8649 1897 8649 - 24.
Osmialowski P. Polkowski L. 2009 Spatial reasoning basedon rough mereology: path planning problem for autonomous mobile robots, , in print,0302-9743 Springer Verlag, Berlin - 25.
Polkowski L. 2001 On connection synthesis via rough mereology, Fundamenta Informaticae,46 83 96 ,0169-2968 - 26.
Polkowski L. 2008 A unified approach to granulation of knowledge and granular computing based on rough mereology: A survey, In: , Pedrycz, W.; Skowron, A. & Kreinovich, V., (Eds.),375 400 , John Wiley and Sons,987-0-47003-554-2 Chichester UK - 27.
Polkowski L. Osmialowski P. 2008 Spatial reasoning with applications to mobile robotics, In: Xing-Jian Jing, (Ed.),43 55 , I-Tech Education and Publishing KG,,978-9-53761-901-5 Vienna - 28.
Polkowski L. Osmialowski P. 2008 A framework for multiagent mobile robotics: Spatial reasoning based on rough mereology in Player/stage system , Lecture Notes in Artificial Intelligence,5306 142 149 , Springer Verlag,0302-9743 Berlin - 29.
Ramsey P. 2003 PostGIS Manual, in: postgis.pdf file downloaded from Refractions Research home page. - 30.
Shao J. Xie G. Yu J. Wang L. 2005 Leader-following formation control of multiple mobile robots, In: ,808 813 ,0-78038-936-0 June 2005, IEEE Press - 31.
Sfsexp : Available at http://sexpr.sourceforge.net - 32.
Sugihara K. Suzuki I. 1990 Distributed motion coordination of multiple mobile robots, In: ,138 143 ,9-99132-943-9 PA, Sept. 1990, IEEE Press - 33.
Švestka P. Overmars M. H. 1998 Coordinated path planning for multiple robots , ,23 125 152 ,0921-8890 - 34.
Tarski A. 1929 Les fondements de la géométrie des corps, In: ,29 33 , Krakow, Poland - 35.
Tarski A. 1959 What is elementary geometry?, In: , Henkin, L.; Suppes, P. & Tarski, A., (Eds).,16 29 , North-Holland, Amsterdam - 36.
Tribelhorn B. Dodds Z. 2007 Evaluating the Roomba: A low-cost, ubiquitous platform for robotics research and education, In: ,1393 1399 ,1-42440-601-3 2007, Roma, Italy, IEEE Press - 37.
Urdiales C. Perez E. J. Vasquez-Salceda J. Sanchez-Marrµe M. Sandoval F. 2006 A purely reactive navigation scheme for dynamic environments using Case-Based Reasoning, ,21 65 78 ,0929-5593 - 38.
Whitehead A. N. 1979 Process and Reality. An Essay in Cosmology 2nd. ed., The Free Press,0-02934-570-7 York NY
Notes
- Roomba is the trademark of iRobot Inc.
- PostGis is an intelectual property of Refractions Research, Inc.