Vector Approach of Collision Prognosis of Mobile Robots

If several mobile robots are operating in the same environment, it is necessary to create a control system in order to avoid not only obstacles but also inter-collisions. Usually, paths of robots are designed, to ensure movement without collisions with obstacles and each other [1,2,3], but it also restricts the "freedom" of movement of robots, is more appropriate to resolve conflicts dynamically. It is necessary to predict the potential conflicts between robots for this purpose. Assume that the robot can "see" the other robots, and to determine direction and speed of their movement, or is controlled by supervision system which "see" all the robots, and can "communicate" with them. Capability to predict collisions is necessary in both cases. The method to predict possible collisions is described in this paper, i.e. the method and program of a robot or supervisor actions to achieve this result is proposed, but there is no deal with ways to avoid them.


Introduction
If several mobile robots are operating in the same environment, it is necessary to create a control system in order to avoid not only obstacles but also inter-collisions.Usually, paths of robots are designed, to ensure movement without collisions with obstacles and each other [1,2,3], but it also restricts the "freedom" of movement of robots, is more appropriate to resolve conflicts dynamically.It is necessary to predict the potential conflicts between robots for this purpose.Assume that the robot can "see" the other robots, and to determine direction and speed of their movement, or is controlled by supervision system which "see" all the robots, and can "communicate" with them.Capability to predict collisions is necessary in both cases.The method to predict possible collisions is described in this paper, i.e. the method and program of a robot or supervisor actions to achieve this result is proposed, but there is no deal with ways to avoid them.

Assumptions
The trajectory of a mobile robot may be quite complicated curve, with respect of dynamic features of it, aims of operation and so on.Therefore, it is necessary to approximate traces before analyzing possibility of collision.It seems quite acceptable to use polygon line, consisting of straight sections, the more so that the design of the future trajectory is often found only in the characteristic, such as turning, points [4].This paper assumes that robots move along straight lines, which are extrapolated sections of the fragments, Fig. 1.
The size of a robot, especially in transportation, is not steady, but in the initial analysis seems useful to assume that each of the robots, "fit" circle with a radius R, while the robot trajectories are straight lines intersecting at point C (Fig. 1).So, they will examine whether these circles not intersects.
Robot dimensions involving circles may be different radius, but, as we shall see below, the expressions are obtained using the minimum distance between centers of the circles, corresponding robots, i.e. the amount of distance of two circles 2R, and it can be concluded from the two different circles.

The collision prediction
Moving one of the robots in their first, for example, A (Fig. 1), will come to a point of intersection of the trajectories, then it is clear that the other one (B) must be removed from the center of the latter more than in the 2R.
Assume that the robots move by v a and v b , speeds, respectively, and their distances from the point of intersection of the trajectories are vectors a and b.Denote the initial distances to the point C are a 0 and b 0 , respectively.Then, applied a cosine theorem, we obtain that the skin contact of robots describes the equation If speeds are different, there may be cases that skin contacts between two robots are when: 1. Still did not come, or both have passed the point C; 2. The point C point is passed, only by one robot.These two cases differs by sign of

cos
, but sign of the product of the distances changes too, so that (1) terms for all positions of the robots.
In general, the distance between the centers of robots, analogous to the (1) expression can be described as follows Let us find the time change from start moment, when the distance between the robots will be minimal.At extre- Robots do not come into collision if When the robot speeds are equal   i. e. robots pass without conflict, if following condition is fulfilled: Obtained with (8) condition is sufficient, when speeds of both robots are equal, i.e.
Let the centers of robots, at collision time is forecast at points A and B (Fig. 2).Let us treat the distances from robots to crossing point C as vectors, along the trajectories of robots T a and T b, preserving the same directions as appropriate velocity vectors (Fig. 2).Than passing without collision condition can be written as follows Then, from Fig. 2 can be seen that (10) inequality is , and the vector drawn from point L will not cross the circle of radius 2R, i.e., if the vector is present in a limited sector with vectors BM and BN.These vectors are tangent to the circle.In other words, the angle between the vectors Fig. 2. The graphical interpretation of the passing terms The (12) expression is valid for any robot speed.When modules of speeds are same (Fig. 3), from the sinus theorem, we get 2 cos sin sin Robot safely pass then It is obvious that this condition is identical to (8) expression.
Real robot trajectory is not linear.It is the polygon line made up of straight sections.Therefore, it may happen that at least one of the robots will turn without reaching a potential crash point, if the extrapolation of these straight sections determines the robots crash yet.Then it becomes important to determine the collision (skin contact) place.Again, let the local coordinates of the conflict remains hypothetical robot distances to the point of intersection of the trajectories.
cross the circle whose radius is 2R (Fig. 4).The time value corresponding to the intersection can be found using the cosine theorem The smaller root of the equation is c t .Denote Then (16) equation we can rewrite as follows The collision time is the root of the equation ( 18) It remains to compare the time, when the robots will come to the positions A' and B' (Fig. 5), with the time when the robot comes to a turning point in G, G t and, if conflict is absent.In order to perform the control of potential collisions is useful to streamline the analysis as screening for potential collisions in pairs, the number of robots is a n need to make Moreover, the upper time limit of the range of conflict is: The lower limit -C t , as can be seen from Fig. 4, is: Then it is sufficient to look up for new potential collisions only in start position, and when any robot reaches a Turn point on its.The pseudo-code of the algorithm to forecast collisions, when potential collisions are recorded in "bump" array, could be:

Conclusions
Two robots, moving towards to the point of intersection of the straight paths, will collide, if the angle between the vector of difference of velocities and the vector difference between the distances to the intersection point, is less than the critical angle, i.e. half of the angle in which the circle of diameter equal to the sum of diameters of circles surrounding robots, placed in the position of another robot, is visible.
It is sufficient to check possibility of collision of robots only in start position of robots and when one of them reaches a turning point of the trajectory

Fig. 1 .
Fig. 1.Robots A and B, moving speeds a v and b v , their tracks otherwise we have to use (4) (2) and (5) expressions.Favorable is the vector interpretation of passing condition

Fig. 3 .
Fig. 3.The passing geometry of the robot when speed modules are the same Robots conflict when the angle

Fig. 4 .
Fig. 4. Detection of the skin contact time a

)
If the time G t which spend up to the next turn point in robot trajectory is L G t t  , conflict will not arise before the turn point and the conflict time C t is not need to calculate.