GB2457927A - Method and System for Resolving Deadlocks in a System - Google Patents

Method and System for Resolving Deadlocks in a System Download PDF

Info

Publication number
GB2457927A
GB2457927A GB0803718A GB0803718A GB2457927A GB 2457927 A GB2457927 A GB 2457927A GB 0803718 A GB0803718 A GB 0803718A GB 0803718 A GB0803718 A GB 0803718A GB 2457927 A GB2457927 A GB 2457927A
Authority
GB
United Kingdom
Prior art keywords
station
vehicle
node
berth
vehicles
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB0803718A
Other versions
GB2457927B (en
GB0803718D0 (en
Inventor
John David Lees-Miller
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Transport Systems Ltd
Original Assignee
Advanced Transport Systems Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advanced Transport Systems Ltd filed Critical Advanced Transport Systems Ltd
Priority to GB0803718.6A priority Critical patent/GB2457927B/en
Publication of GB0803718D0 publication Critical patent/GB0803718D0/en
Publication of GB2457927A publication Critical patent/GB2457927A/en
Application granted granted Critical
Publication of GB2457927B publication Critical patent/GB2457927B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0289Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling with means for avoiding collisions between vehicles

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

A method resolves deadlocks in a system that synchronously controls movement of a plurality of objects such as autonomous guided vehicles (AGV) to and from a plurality of nodes or stations. The method allowing a first object to move to a destination node if the arrival time of the first object at the destination node is later than a departure time of a second object present at the destination node. Scheduled movement of the vehicles is to prevent any deadlocks and prevent any collisions. Preferably a remote waiting graph is constructed 1502 and a cycle detection is run 1504. If a cycle is detected, then for each pair of nodes in the cycle, the object that has been remote waiting the longest is chosen 1508. For each of the objects involved in the cycle, the earliest departure time and corresponding arrival time is determined 1510.Slots are booked for all objects in the cycle 1514 based on arrival and departure times. If any times collide then the booking tables are rolled back to their previous state step 1516.

Description

METHOD AND SYSTEM FOR RESOLVING DEADLOCKS
FIELD OF THE INVENTION
This invention relates to a method and system for resolving deadlocks and particularly, but not exclusively to, a method for resolving deadlocks in a synchronously controlled personal rapid transport (PRT) system.
BACKGROUND OF THE INVENTION
Personal rapid transport (PRT) systems commonly comprise a dedicated track on which individual vehicles travel between stations. Each vehide contains only one passenger or group of passengers, and the vehicle travels continuously between a starting point and a destination without stopping at any intermediate stations. PRT systems thus provide a compromise between a conventional mass transport system such as buses, trains and metro systems, and individual passenger cars. It is known to provide unmanned or driverless vehicles for use in PRT systems.
A method for controlling the movement of an object (e.g. a vehicle) within a system such as a PRT system is disclosed in GB 2427709. A path is selected for the object between a first node and a second node. A desired movement envelope (or time slot) is determined for the object along the path such that the determined movement envelope does not conflict with the movement envelope of any other object of the system. Once a path and start time has been communicated, the object is caused to begin travelling over the selected path at the start time. This method enables vehicles of the PRT system to move under a controlled regime which avoids collisions between vehicles. This method is called synchronous control.
In a PRT system it is necessary that every vehicle that is being launched onto the network has a defined location to which it can travel. This defined location is known as a "waypoint and may be either a berth at the destination station or a queue point. The queue point is normally at, or in close proximity to, the destination station. Each station on the network may have a number of waypoints.
A problem occurs in a PRT system when a vehicle seeks allocation of a waypoint at a particular station whose waypoints are unavailable. For example, the waypoints of the station may each be occupied by vehicles due to passengers loading or unloading. In this case, the vehicle's departure must be delayed until a waypoint at the destination station becomes available. When a plurality of vehicles at a plurality of stations is so delayed, situations can arise in which no vehicle will ever be permitted to depart. These situations are called deadlocks. A possible deadlock is shown in Figure 1.
With reference to Figure 1, the system 10 comprises a first station 12 and a second station 14. The first station 12 comprises five waypoints 16.1, 16.2, 16.3, 16.4, 16.5 and the second station comprises five waypoints 18.1, 18.2, 18.3, 18.4, 18.5. In the example shown in Figure 1 assume that four of the waypoints 16.2, 16.3, 16.4, 16.5 of the first station 12 are already assigned to vehicles and that four of the waypoints 18.2, 18.3, 18.4, 18.5 of the second station 14 are already assigned to vehicles. The vehicles for which the waypoints are assigned may be positioned at the waypoint where passengers can enter or leave the vehicle or the vehicles may by in transit between stations. A passenger arrives at the first station 12 and enters the empty vehicle at waypoint 16.1 at the same time as a passenger arrives at the second station 14 and enters an empty vehicle at waypoint 18.1. The passenger at waypoint 16.1 seeks a waypoint at the second station 14 and the passenger waypoint 18.1 seeks a waypoint at the first station 12. However, all the waypoints of the system are now in use i.e. there are no available waypoints to be assigned. This is called a cycle, because each vehicle is waiting for the other to depart. In many cases, the cycle will be resolved when a currently assigned waypoint is relinquished by another vehicle on the conclusion of its journey. However, there will be situations where all pairs of waypoints are involved in cycles and the system is deadlocked.
Within a PRT system there is a need for a method that prevents a deadlock situation occurring with minimal disruption of the flow of vehicles.
SUMMARY OF THE INVENTION
The present invention seeks to provide resolution of deadlocks of moving objects in systems.
This is achieved, according to one aspect of the present invention, by a method for resolving deadlocks in a system, said system synchronously controlling movement of a plurality of objects and said system comprising at least a first object located at a first node and a second object located at a second node at a point in time, the method comprising the step of: allowing the first object to move from the first node to the second node only if the arrival time of the first object at the second node is later than the departure time of the second object at the second node.
The method may further comprise the steps of: determining the earliest departure time for each of said at least first and second objects; determining the corresponding arrival time of said at least first object; and comparing said determined corresponding amval time of said at least first object with said determined earliest departure time for said at least second object. In this way, the respective arrival of the first object and departure time of the second object is easily determined from the earliest departure time.
The first object may move from the first node to the second node at a predetermined speed, with a predetermined acceleration from rest and deceleration to rest.
In an embodiment, time slots for the first object are booked in which the first object moves from the first node to the second node and for the second object to move from the second node to the first node such that the first and second objects do not collide.
The booked time slots are rolled back if the arrival time of the first object at the second node is not later than the departure time of the second object at the second node.
The first and second objects may be a vehicle and the system may be a vehicle movement control system including more than two nodes and a plurality of vehicles.
One of the nodes may be a system arrival point and/or one of the nodes may be a system exit point and/or at least one of the nodes may be a vehicle berthing point and/or queue point.
According to another aspect of the present invention, there is provided a system comprising a plurality of movable objects, the movements of which are controlled by a method as defined above. The movable objects of the system may be vehicles and may be dnverless passenger vehicles. The vehicles may be steerable and the vehicles may be steered to move along the determined path. The system may be a personal rapid transport system.
BRIEF DESCRIPTION OF THE DRAWINGS
For a more complete understanding of the invention, reference is made to the following description in conjunction with the accompanying drawings, in which: Figure 1 is a simplified schematic illustration of a possible deadlock situation; Figure 2 is a simplified schematic illustration of a simple PRT system; Figure 3 is a simplified schematic illustration of a typical PRT station; Figure 4 is a simplified schematic illustration of the movement of vehicles within a simple PRT system; Figure 5 is a simplified schematic illustration of the movement of vehicles within a more complex PRT system; Figure 6 is a simplified schematic illustration of the movement of vehicles within the more complex PRT system with a greater number of passengers; Figure 7 is a simplified schematic illustration of a simple PRT system in a deadlock situation; Figure 8 is a simplified schematic illustration of a process for controlling the movement of vehicles within a PRT system; Figure 9 is a simplified schematic illustration of the movement of vehicles within the more complex PRT system in which a deadlock forms; Figure 10 is a simplified schematic illustration of the movement of vehicles within the more complex PRT system in which no deadlock forms; Figure 11 is a simplified schematic illustration of a process for controlling the movement of vehicles within a PRT system to resolve a deadlock; Figure 12 is a simplified schematic illustration of the movement of vehicles within a PRT system in which a deadlock is resolved; Figure 13 is a simplified schematic illustration of the movement of vehicles within a simple PRT system used under synchronous control; Figure 14 is a simplified schematic illustration of a simple PRT system in which a cycle has arisen involving three stations; and Figure 15 is a flowchart of a process for resolving a cycle involving more than two stations which has arisen in a simple PRT system according to an embodiment of the invention.
DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION
The present invention provides a method for resolving deadlocks of moving objects in a system. The objects may be data packets and the system may be a network.
Alternatively, the objects may be vehicles and the system may be a personal rapid transport (PRT) system, which may include more than two nodes (or waypoints) and a plurality of vehicles.
In order to understand the embodiments of the invention more clearly, a simple PRT system and the movement of vehicles within such a system will be described with reference to Figures 2, 3 and 4.
With reference to Figure 2, a simplified PRT system 100 comprises a first station 102 and a second station 104. Only two stations are shown for illustrative purposes but it can be appreciated that the network may comprise a complex network having a large number of stations. The system 100 also comprises a depot 114, where vehicles which are not currently in use are stored.
The first station 102 and the second station 104 may be a typical PRT station such as that shown in Figure 3. Referring to Figure 3, a typical PRT station comprises an entry point 202, a holding area 204 (consisting of a plurality of queue points), a plurality of berths 206 and an exit point 208. Driverless, steerable passenger vehicles enter the station via the entry point 202 and proceed to an available berth 206. A berth 206 can be occupied by only one vehicle at any one time. If all berths are occupied (for example, if each berths is in use by another vehicle), a vehicle may remain in a queue point of the holding area 204 until a berth becomes available. Passengers are able to enter or leave the vehicle while it is at rest in a berth 206 and the vehicle exits the station via the exit point 208.
For illustrative purposes, the first station 102 of the simplified PRT system 100 illustrated in Figure 2 comprises a single berth 106 and a single queue point 108.
Similarly, the second station 104 comprises a single berth 110 and a single queue point 112. However, it can be appreciated that the stations may comprise a plurality of queue points and a plurality of berths as illustrated in Figure 3.
The first and second stations 102, 104 are branched off the main line of the PRT system 100 so that vehicles that are not required to stop at the stations can proceed along the main line without entering the stations.
With reference to Figures 2 and 4, a vehicle 116 is located in the berth 106 of the first station 102. A passenger arrives at the first station 102 and enters the vehicle 116 whilst the vehicle 116 is located at the berth 106. The vehicle 116 is then considered occupied (illustrated by the shaded circle in Figure 4). Once the vehicle 116 is occupied, the vehicle 116 leaves the berth 106 of the first station 102 and moves to the second station 104. The synchronous control method ensures that the time needed to travel from station 102 to station 104 is known in advance. The vehicle 116 enters the second station 104 via the queue point 112 and, as the berth 110 is not occupied, proceeds to the berth 110. The passenger leaves the vehicle 116 whilst the vehicle 116 is located at the berth 110.
The time that the passenger will spend entering and leaving the vehicle 116 is not known in advance, and there is no time restriction on this within the system.
The transit time between the first station 102 and the second station 104 is known because the system uses synchronous control. Each piece of track has a prescribed set of manoeuvres that all the vehicles traversing it must make. Each vehicle moves at a predetermined speed, with a predetermined acceleration from rest and deceleration to rest. The vehicle 116 is prevented from colliding with other vehicles by timing its departure from the first station 102 to coincide with a time slot that does not conflict with other vehicles. When a safe slot is found, it is allocated to the vehicle 116 to ensure that no subsequent vehicles will use the slot. The vehicle remains in the berth 106 of the first station 102 until the start of its time slot. This delay is referred to as slot waiting.
Due to the synchronous control of the system, the berth 110 or the queue point 112 at the second station 104 must be available when the vehicle 116 arrives. The vehicle 116 can only stay in its allocated time slot, and the time slot is only guaranteed to be free of other vehicles before the vehicle reaches the second station 104. So1 if neither the berth 110 nor the queue point 112 is available when it reaches the second station 104, the vehicle 116 cannot be rerouted to another station (or in a loop back to the second station 104). The vehicle 116 must therefore be further delayed from departing the first station 102 until a free waypoint (i.e. a free berth or queue point) is guaranteed.
This is referred to as remote waiting. The vehicle remains in the berth 106 at the first station 102 while it is remote waiting.
If there are a large number of passengers that want to travel from the first station 102 to the second station 104, available waypoints will run out quickly. Such a situation will now be described with reference to Figures 5 and 6 in order to provide a more complete understanding of the embodiments of the invention.
With reference to Figure 5, a first vehicle 402 is located at the berth 106 of the first station 102. A first passenger enters the first vehicle 402 (illustrated as the shaded circle in Figure 5). The first vehicle 402 departs the first station 102 and moves toward the second station 104. The berth 106 at the first station 102 is now available and a second vehicle 404 is launched from, say, the depot 114 or another waypoint to the station 102. A second passenger enters the second vehicle 404 whilst it is positioned at the berth 106 and the second vehicle 404 departs the first station 102. A third vehicle 406 is launched to the station 102. A third passenger enters the third vehicle 406 whilst the third vehicle 406 is positioned at the berth 106. At this point the first and second vehicles 402, 404 are in transit from the first station 102 to the second station 104. Vehicles can continue to be sent to the second station 104 until there are two vehicles already in transit. Since there are two vehicles in transit, the third vehicle 406 must remote wait at the first station 102 (illustrated as the black circle in Figure 5) until one of the moving vehicles 402, 404 reaches the second station 104 and its passenger leaves. A fourth vehicle 408 is launched to the station 102. As the berth 106 is already occupied by the third vehicle 406, the fourth vehicle 408 moves into the queue point 108.
The first vehicle 402 arrives at the second station 104 via the queue point 112 and, as the berth 110 is available, it proceeds to the berth 110. The second vehicle 404 then arrives at the second station 104 via the queue point 112 and, as the berth 110 is occupied by the first vehicle 402, the second vehicle 404 remains in the queue point 112. Both the berth 110 and the queue point 112 of the second station 104 are occupied.
At the first station 102, the third vehicle 406 is located at the berth 106 waiting to be launched to the second station 104 and the empty fourth vehicle 408 is located at the queue point 108. A fourth passenger 410 arrives at the first station 102. However, a passenger may only enter and leave a vehicle whilst it is positioned at the berth 106.
Since the third vehicle 406, which is currently positioned at the berth 106, is already occupied, the fourth passenger 410 must wait for an empty vehicle to arrive at the berth 106. The third vehicle 406 cannot be launched from the first station 102 to the second station 104 because neither the berth 110 nor the queue point 112 of the second station 104 is available.
At the second station 104, the first passenger leaves the first vehicle 402 whilst the first vehicle 402 is located at the berth 110. The first vehicle 402 is then launched from the berth 110 and moves to the depot 114. As the berth 110 is now available, the second vehicle 404 moves from the queue point 112 to the berth 110. As the queue point 112 at the second station 104 is now available, the third vehicle 406 Is launched from the first station 102 to the second station 104. At the first station 102, as the berth 106 is now available, the fourth vehicle 408 moves from the queue point 108 to the berth 106.
Once the fourth vehicle 408 is positioned at the berth 110, the fourth passenger 410 enters the fourth vehicle 408.
At the second station 104, the second passenger leaves the second vehicle 404 whilst it is positioned at the berth 110. Once the second passenger has left the second vehicle 404, the second vehicle 404 is launched from the berth 110 of the second station 104 to the depot 114 or another waypoint, not shown. The fourth vehicle 408 is launched from the first station 102 to the second station 104.
If more passengers had arrived at the first station 102 when both the berth 106 and the queue point 108 were unavailable, no more vehicles would be allowed to launch from the depot 114 to the first station 102 and the passengers would have to wait. There must be a guaranteed waypoint at the first station 102 in order to launch an empty vehicle from the depot 114. This will be demonstrated with reference to Figure 6.
With reference to Figure 6, a first vehicle 502 containing a first passenger is located at the berth 110 of the second station 104 and a second vehicle 504 containing a second passenger is located at the queue point 112 of the second station 104. A third vehicle 506 containing a third passenger is located at the berth 106 of the first station 102 and an empty fourth vehicle 508 is located at the queue point 108 of the first station 102. In other words, all the waypoints (i.e. all the berths and queue points) are occupied. A fourth passenger 510 arrives at the first station 102. Since the third vehicle 506, which is currently located at the berth 106, is already occupied, the fourth passenger 510 has to wait for an empty vehicle to arrive at the berth 106. A fifth passenger 512 arrives at the first station 102 and also has to wait for an empty vehicle to arrive at the berth 106.
At the second station 104, the first passenger leaves the first vehicle 502 whilst the first vehicle 502 is positioned at the berth 110. Once the first passenger has left the first vehicle 502, the first vehicle 502 is launched from the berth 110 to the depot 114. As the berth 110 is now available, the second vehicle 504 moves from the queue point 112 into the berth 110. As the queue point 112 of the second station 104 is now available, the third vehicle 506 is launched from the berth 106 of the first station 102 to the second station 104. As the berth 106 is now available, the fourth vehIcle 508 moves from the queue point 108 of the first station to the berth 106. The fourth passenger 510 enters the fourth vehicle 508 whilst it is positioned at the berth 106. As the queue point 108 is now available, a fifth vehicle 514 is launched from the depot 114 to the first station 102 and moves into the queue point 108.
At the second station 104, the second passenger leaves the second vehicle 504 whilst the second vehicle 504 is positioned at the berth 110. Once the passenger has left the second vehicle 504, the second vehicle 504 is launched from the berth 110 to the depot 114. As the berth 110 is now available, the fourth vehicle 508 is launched from the berth 106 of the first station 102 to the second station 104. As the berth of the first station 102 is now available, the fifth vehicle 514 moves from the queue point 108 into the berth 106. The fifth passenger 512 enters the fifth vehicle 514 whilst it is positioned at the berth 106. All passengers have been allocated to a vehicle.
In order to further understand the embodiment of the invention, possible deadlock situations will now be described with reference to Figures 7, 8, 9, 10, 11, 12 and 13.
With reference to Figure 7, a simple system comprises a first station 602 and a second station 604. The first station 602 comprises a berth 606 and the second station 604 comprises a berth 608. An empty first vehicle 610 is located at the berth 606 of the first station 602. The first and second stations 602, 604 do not comprise any queue points.
An empty second vehicle 612 is located at the berth 608 of the second station 604. A first passenger arrives at the first station 602 and enters the first vehicle 610 (illustrated by the shaded circle). A second passenger then amves at the second station 604 and enters the second vehicle 612 (illustrated by the shaded circle). The second passenger arrives at the second station 604 before the first passenger finishes entering the first vehicle 610 at the first station 602 and a deadlock arises. The vehicles will remote wait for one another indefinitely (illustrated by the black circles).
If the second passenger had arrived after the first passenger had finished entering the first vehicle 610, the second vehicle 612 would have still been empty when the first vehicle 610 was ready to depart. The system could then have used a "remote push" to move the second vehicle 612 to the depot, thereby avoiding the deadlock. However, once the second passenger begins entering the second vehicle 612, it is no longer possible to push either vehicle to the depot (unless the passengers are instructed to leave the vehicles).
The problem of remote deadlocks arises since each passenger is allowed to hold a waypoint (a berth, in particular) at the origin station and then, some time later, try to obtain a waypoint at the destination station before releasing the waypoint at the origin station. This is the classic pattern of shared resource use that leads to deadlocks.
With reference to Figures 7 and 8, a vehicle 610 is positioned at the berth 606 of the first station 802. The second station 604 is selected as the destination station (step 702). A passenger enters the vehicle 610 while it is positioned at the berth 606 of the first station 602 (step 704). The vehicle 610 remains at the berth 606 of the first station 602 until there is an available waypoint at the second station 604. In other words, the vehicle 610 remote waits at the berth 606 of the first station 602 (step 706). It is also necessary for the vehicle 610 to wait for a slot so that it is prevented from colliding with other vehicles (step 708). For steps 704 through to 708, it is necessary for the vehicle to hold a waypoint at the first station 602 (in this case, the berth 606). When a waypoint becomes available at the destination station 604 and a safe slot is found, the vehicle 610 is launched from the berth 606 of the first station 602 and moves to the destination station 604 (step 710). The vehicle 610 enters the second station 604 and proceeds to the berth 612. The passenger leaves the vehicle 6 whilst the vehicle 116 is located at the berth 110 (step 714). For steps 706 through to 714, it is necessary for the vehicle to hold a waypoint at the second station 104. There is a time period in which it is necessary for the vehicle to hold a waypoint at both the first station 102 and the second station 104 (as illustrated by the shaded area of Figure 8).
Deadlocks can be made less likely by adding more queue points. However, adding more queue points does not completely prevent deadlocks from occurring. For example, there only needs to be a sufficient number of vehicles that are moving between the stations before a burst of passengers arrives at both stations such that the last passenger in the burst starts entering a vehicle before the first passenger in the burst finishes entering the vehicle.
With reference to Figure 9, a first vehicle 902 is located at the berth 106 of the first station 102 and a second vehicle 904 is located at the berth 110 of the second station 104.
A first passenger enters the first vehicle 902 (illustrated by the shaded circle) whilst it is located at the berth 106 of the first station 102. As there is an available queue point 108 at the first station 102, a third vehicle 906 is launched from the depot 114 and moves to the first station 102. The third vehicle 906 enters the first station 102 via the queue point 108 and, as the berth 106 is already occupied by the first vehicle 902, the third vehicle 906 remains at the queue point 108.
At the second station 104, a second passenger enters the second vehicle 904 (illustrated by the shaded circle) whilst it is located at the berth 110 of the second station 104. As there is an available queue point 112 at the second station 104, a fourth vehicle 908 is launched from the depot 114 and moves to the second station 104.
The second vehicle 904 is launched from the berth 110 of the second station 104 and moves to the first station 102. The fourth vehicle 908 enters the second station 104 via the queue point 112 and, as the berth 110 is now available, the fourth vehicle 908 proceeds to the berth 110.
At the first station 102, the first vehicle 102 is launched from the berth 106 of the first station 102 and moves to the second station 104. As the berth 106 is now available, the third vehicle 906 moves from the queue point 108 into the berth 106. A third passenger enters the third vehicle 906 (illustrated by the shaded circle) whilst the third vehicle 906 is positioned at the berth 106.
At the second station 104, a fourth passenger enters the fourth vehicle 908 (illustrated by the shaded circle) whilst the fourth vehicle 908 is positioned at the berth 110. At this point, all vehicles contain passengers. The first vehicle 102 is moving from the first station 102 to the second station 104, the second vehicle 104 is moving from the second station 104 to the first station 102, the third vehicle 906 is located at the berth 106 of the first station 102, and the fourth vehicle 908 is located at the berth 110 of the second station 104.
As there are two vehicles moving between stations and only two available waypoints, the third vehicle 906 has to remote wait at the berth 106 of the first station 102 and the fourth vehicle 908 has to remote wait at the berth 110 of the second station 104. There is a remote waiting deadlock. A necessary condition for a remote waiting deadlock is a remote waiting TMcycle" (illustrated by black arrows between the remote waiting vehicles 906, 908 of Figure 9).
If the remote waiting cycles are broken, the remote waiting deadlock will be broken.
The existence of a cycle is not a sufficient condition for a deadlock. With reference to Figure 10, a first station 1002 comprises a single berth 1006 and a second station 1004 comprises a first berth 1006 and a second berth 1010. A first vehicle 1012 is located at the berth 1006 of the first station 1002 and contains a first passenger (illustrated by the shaded circle). A second vehicle 1014 is located at the first berth 1008 of the second station 1004.
The first vehicle 1012 is launched from the berth 1006 of the first station 1002 to the second station 1004. As the berth 1006 is now available, a third vehicle 1016 is launched from the depot (not shown) and moves into the berth 1006 of the first station 1002. At the second station 1004, a second passenger enters the second vehicle 1014 located at the first berth 1008. At the first station 1002, a third passenger enters the third vehicle 1016 located at the berth 1006. AU vehicles now contain passengers.
As there is one vehicle 1012 moving between the stations and there is only one available waypoint 1010, a remote waiting cycle occurs. The second vehicle 1014 has to remote wait at the first berth 1008 of the second station 1004 (illustrated by the black circle) and the third vehicle 1016 has to remote wait at the berth 1006 of the first station 1002 (illustrated by the black circle). The remote waiting cycle is illustrated by the black arrows in Figure 10.
The first vehicle 1012 arrives at the second station 1004 and moves into the available second berth 1010. The first passenger leaves the first vehicle 1012 whilst it is located at the second berth 1010 of the second statIon 1004. Once the first passenger has left the first vehicle 1012, the first vehicle 1012 is launched from the second berth 1010 of the second station 1004 to the depot 114. The remote waiting cycle has now been resolved.
As the second berth 1010 of the second station 1004 is now available, the third vehicle 1016 is launched from the berth 1006 of the first station 1002 to the second station 1004. As the berth 1006 of the first station 1002 is now available, the second vehicle 1014 is launched from the first berth 1008 of the second station 1004 to the first station 1002. In this case, no deadlock forms.
In order to prevent cycles occurring, both waypoints that are needed for the movement of a vehicle from a first station to a second station can be obtained in one step. In this case, a passenger can begin entering a vehicle (i.e. begin holding a waypoint at the origin station) only when the passenger has reserved a waypoint at the destination station. In other words, a waypoint at the origin station and a waypoint at the destination station are obtained automatically. It should be noted that it is possible to safely release the waypoint at the origin station before releasing the waypoint at the destination station.
With reference to Figure 11, a vehide is positioned at the berth of the first station 1102.
The second station 1104 is selected as the destination station (step 1106). A passenger arrives at the first station 1102 and remote waits at the first station 1102 before entering the vehicle (step 1108). When a waypoint has been held at the destination station 1104, the passenger enters the vehicle (step 1110). The vehicle must wait for a slot to prevent it from colliding with other vehicles when moving from the first station 1102 to the second station 1104 (step 1112). Once a safe slot is found, the vehicle is launched from the first station 1102 and moves to the second station 1104 (step 1114). The vehicle enters the second station 1104 via the queue point and, if the berth Is occupied, remains at the queue point (step 1116). If the berth is not occupied, the vehicle proceeds to the berth. The passenger leaves the vehicle whilst the vehicle Is located at the berth (step 1118).
In this way, the deadlock situation can be resolved by using a remote push. With reference to Figure 12, a first station 1202 comprises a single berth 1206 and a second station 1204 comprises a single berth 1208. A first vehicle 1210 is located at the berth 1206 of the first station 1202. A second vehicle 1212 is located at the berth 1208 of the second station 1204.
A first passenger arrives at the first station 1202 and enters the first vehicle 1210 whilst it is located at the berth 1206. The passenger wishes to move from the first station 1202 to the second station 1204. However, there are no available waypoints at the second station 1204. In order to remedy this, the second vehicle 1212 located at the berth 1208 of the second station 1204 is remote pushed (i.e. it is launched from the second station 1204 to the depot 114). As the berth 1208 of the second station 1204 is now available, the first vehicle 1210 is launched from the berth 1206 of the first station 1202 to the second station 1204.
A second passenger 1214 arrives at the second station 1204. However, there is no vehicle located at the berth 1208 of the second station 1204. The second passenger 1214 therefore has to wait for a vehicle to arrive at the berth 1208. The first vehicle 1210 arrives at the berth 1208 of the second station 1204 and the first passenger leaves the first vehicle 1210 whilst it is located at the berth 1208. The first vehicle 1210 is now empty and so the second passenger 1214 enters the first vehicle 1210 whilst it is located at the berth 1208. As the berth 1206 of the first station 1202 is available, the first vehicle 1210 is launched from the berth 1208 of the second station 1204 and moves to the first station 1202. The first vehicle 1210 arrives at the berth 1206 of the first station 1202 and the second passenger 1214 leaves the first vehicle 1210 whilst it is located at the berth 1206.
The problem with such a resolution is that the destination waypoint (i.e. the berth 1208 at the second station 1204) has to be held for a long period of time. It has to be held while the passenger is entering the first vehicle 1210 at the first station 1202. This results in a decrease in the overall throughput of the system.
The formation of cycles (and therefore deadlocks) can also be prevented by limiting the supply of vehicles relative to the supply of waypoints. A system cannot deadlock if for every pair of stations (s,t), the number of waypoints at s plus the number of waypoints at t is greater than the number of vehicles in service. However, this is impractical on most systems because the number of vehicles is large and there are many more than two stations.
Remote waiting cycles can be allowed to form provided that there is a method for breaking them. This will allow greater throughput than the cycle-prevention methods.
According to an embodiment of the invention, a cycle is detected and broken without causing a delay to the passengers. This is achieved by allowing both vehicles in the cycle to leave their respective stations, as illustrated in Figure 13. The exact conditions under which this is safe depend on information from the synchronous control system.
According to an embodiment of the invention, a remote waiting cycle is detected between a station A and a station B, where a first vehicle is ready to depart station A and a second vehicle is ready to depart station B. The travel time from station A to station B is t and the travel time from station B to station A is t. In order to resolve the cycle, the following steps are carried out.
The earliest safe departure time for the first vehicle from station A (tA) is found and the corresponding slot for the first vehicle is booked. Similarly, the earliest safe departure time for the second vehicle from station B (t9) is found and the corresponding slot for the second vehicle is booked.
The first vehicle will arrive at station B at time tA+t and the second vehicle will arrive at station A at time t+f. It is sufficient to have a lower bound on tAB (and t), which will be significant if vehicles are allowed to deviate from their schedules under extreme operating conditions.
If t < t + t and tA < t8 + t, then the vehicle now at station A will leave station A before the vehicle now at station B arrives at station A and vice versa. Both vehicles can safely depart as scheduled. Otherwise, neither vehicle can depart safely. The changes that were made to the booking system would need to be rolled back, i.e. the slot bookings would need to be cancelled and the vehicles would need to continue remote waiting. However, it is highly unlikely that this situation would occur since the slot waiting delay is much less than t,. and t under normal operating conditions.
This procedure is sufficient for cycles involving only two stations. However, cycles may involve more than two stations. For example, a situation involving three stations is illustrated in Figure 14.
Cycles involving more than two stations, such as that illustrated in Figure 14, can be resolved using the same method in that all vehicles can leave provided that it is possible to book slots for all the vehicles such that no vehicle arrives before the next vehicle in the cycle departs. The steps of the method, according to an embodiment of the invention, are illustrated in Figure 15.
With reference to Figure 15, a remote waiting graph R is constructed (step 1502). The graph R has one node for every station in the system. If there is a remote waiting vehicle at node s that Is going to node t, the graph has an edge from node s to node t.
A cycle detection is run on the graph R (step 1504). Detecting cycles is a well-known graph theory problem with a polynomial-time solution algorithm. An example of a well-known cycle detection algorithm is colored depth-first search (DFS). If no cycle Is detected, then there is no deadlock and the method is terminated (step 1506).
If a cycle (s0, s,, ..., s) is detected, then for each pair of nodes (Sk, Sk+1) in the cycle, the vehicle going from Sk to Sk.1 that has been remote waiting the longest is chosen (step 1508). This yields the vehicles v0,,, v2, ..., that are involved in the cycle.
By choosing the starting points for the colored DFS traversals in the longest-remote waiting vehicle first order, it is ensured that the longest lasting remote waiting cycles are broken first.
For each of the vehicles that are involved in the cycle, the earliest departure time (and corresponding arrival time) is determined (step 1510). This is achieved by booking slots for all of the vehicles, in an arbitrary order, on the assumption that all bookings will succeed and that it will be possible to break the cycle.
For each station that is involved in the cycle S*, it is checked whether the departure time of Vk,k+1 is less than the arrival time of Vk.1,k, where indexes k-I and k+1 are taken modulo n (step 1512).
If the departure time of Vk.k+1 is less than the arrival time of Vk.1k, then slots can be safely booked for all vehicles in the cycle (step 1514).
If the departure time of VIçk+1 is not less than the arrival time of VI.S,k, the cycle cannot yet be broken: However, the deadlock should eventually dissipate because, as more vehicles become involved in the deadlock, the density of the slot booking table will decrease. The booking tables are rolled back to their previous state (step 1516).
Although embodiments of the present invention have been illustrated in the accompanying drawings and described in the foregoing detailed description, it will be understood that the invention is not limited to the embodiments disclosed, but is capable of numerous modifications without departing from the scope of the invention as set out in the following claims.

Claims (19)

  1. CLAIMS1. A method for resolving deadlocks in a system, said system synchronously controlling movement of a plurality of objects and said system comprising at least a first object located at a first node and a second object located at a second node at a point in time, the method comprising the step of: allowing the first object to move from the first node to the second node only if the arrival time of the first object at the second node is later than the departure time of the second object at the second node.
  2. 2. A method as claimed in claim 1, the method further comprising the steps of: determining the earliest departure time for each of said at least first and second objects; determining the corresponding arrival time of said at least first object; and comparing said determined corresponding arrival time of said at least first object with said determined earliest departure time for said at least second object.
  3. 3. A method as claimed in any one of the preceding claim, wherein the first object moves from the first node to the second node at a predetermined speed, with a predetermined acceleration from rest and deceleration to rest.
  4. 4. A method as claimed in any preceding claim, the method further comprising the step of: determining the longest waiting object; and said determined longest waiting object becoming one of said first or second objects.
  5. 5. A method as claimed in any one of the preceding claim, the method further comprising the step of: detecting a cycle between the first node and the second node.
  6. 6. A method as claimed in any one of the preceding claim, further comprising the step of: booking time slots for the first object to move from the first node to the second node and for the second object to move from the second node to the first node such that the first and second objects do not collide.
  7. 7. A method as claimed in claim 6. further comprising the step of: roiling back the booked time slots if the arrival time of the first object at the second node is not later than the departure time of the second object at the second node.
  8. 8. A method as claimed in any one of the preceding claims, wherein said first and second objects are a vehicle.
  9. 9. A method as claimed in claim 8, wherein the system is a vehicle movement control system including more than two nodes and a plurality of vehicles.
  10. 10. A method as claimed in claim 9, wherein one of the nodes is a system arrival point.
  11. 11. A method as claimed in claim 9 or 10, wherein one of the nodes is a system exit point.
  12. 12. A method as claimed in any one of claims 9 to 11, wherein at least one of the nodes is a vehicle berthing point and/or queue point.
  13. 13. A method as claimed in claim I and substantially as described herein.
  14. 14. A system comprising a plurality of movable objects, the movements of which are controlled by a method in accordance with any one of the preceding claims.
  15. 15. A system as claimed in claim 14, in which the movable objects are vehicles.
  16. 16. A system as claimed in claim 15, in which the vehicles are driverless passenger vehicles.
  17. 17. A system as claimed in claim 16, in which the vehicles are steerable.
  18. 18. A system as claimed in any one of claims 14 to 17, wherein the system is a personal rapid transport system.
  19. 19. A system substantially as described herein, with reference to and as shown in the accompanying drawings.
GB0803718.6A 2008-02-28 2008-02-28 Method and system for resolving deadlocks Active GB2457927B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB0803718.6A GB2457927B (en) 2008-02-28 2008-02-28 Method and system for resolving deadlocks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0803718.6A GB2457927B (en) 2008-02-28 2008-02-28 Method and system for resolving deadlocks

Publications (3)

Publication Number Publication Date
GB0803718D0 GB0803718D0 (en) 2008-04-09
GB2457927A true GB2457927A (en) 2009-09-02
GB2457927B GB2457927B (en) 2013-02-13

Family

ID=39315670

Family Applications (1)

Application Number Title Priority Date Filing Date
GB0803718.6A Active GB2457927B (en) 2008-02-28 2008-02-28 Method and system for resolving deadlocks

Country Status (1)

Country Link
GB (1) GB2457927B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110554673A (en) * 2019-09-17 2019-12-10 胡华清 Intelligent RGV processing system scheduling method and device
WO2022029132A1 (en) 2020-08-04 2022-02-10 Dromos Technologies AG A method and infrastructure for communication of perturbation information in an autonomous transportation network

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116774603B (en) * 2023-04-18 2024-01-30 湖南大学 Multi-AGV cooperative scheduling simulation platform and simulation method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0367527A2 (en) * 1988-10-31 1990-05-09 Texas Instruments Incorporated A method for controlling movements of a mobile robot in a multiple node factory
US5283739A (en) * 1985-08-30 1994-02-01 Texas Instruments Incorporated Static collision avoidance method for multiple automatically guided vehicles
JPH08211937A (en) * 1995-01-31 1996-08-20 Tsubakimoto Chain Co Operation managing method for traveling object
JP2006113687A (en) * 2004-10-12 2006-04-27 Matsushita Electric Works Ltd Autonomous mobile system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2427709B (en) * 2005-06-24 2009-03-25 Advanced Transp Systems Ltd Movement control method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5283739A (en) * 1985-08-30 1994-02-01 Texas Instruments Incorporated Static collision avoidance method for multiple automatically guided vehicles
EP0367527A2 (en) * 1988-10-31 1990-05-09 Texas Instruments Incorporated A method for controlling movements of a mobile robot in a multiple node factory
JPH08211937A (en) * 1995-01-31 1996-08-20 Tsubakimoto Chain Co Operation managing method for traveling object
JP2006113687A (en) * 2004-10-12 2006-04-27 Matsushita Electric Works Ltd Autonomous mobile system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110554673A (en) * 2019-09-17 2019-12-10 胡华清 Intelligent RGV processing system scheduling method and device
WO2022029132A1 (en) 2020-08-04 2022-02-10 Dromos Technologies AG A method and infrastructure for communication of perturbation information in an autonomous transportation network

Also Published As

Publication number Publication date
GB2457927B (en) 2013-02-13
GB0803718D0 (en) 2008-04-09

Similar Documents

Publication Publication Date Title
TWI713781B (en) Traveling vehicle system and control method of traveling vehicle system
WO2012176348A1 (en) Train operation control system
US9003039B2 (en) Method and apparatus of resource allocation or resource release
RU2559674C2 (en) Method and system for controlling traffic on railroad network
CN101568482B (en) Elevator system with multiple cars in single hoistway
US5797330A (en) Mass transit system
GB2457927A (en) Method and System for Resolving Deadlocks in a System
WO2013092113A1 (en) Decentralized interlocking
CN112249100A (en) Method and device for detecting route selection conflict
CN114475726B (en) Automatic train operation adjusting method
JP4940542B2 (en) Operation control device
Anderson Control of personal rapid transit systems
Anderson Control of personal rapid transit system
JP2008544384A (en) Movement control method
CN115743237A (en) Anti-deadlock resource allocation method, electronic equipment and storage medium
JP2003085700A (en) Guidance and traffic control supporting system for airplane
JP6453065B2 (en) On-board device and signal security system
CN110155832B (en) Elevator group management device
JP6613073B2 (en) Train control system
KR102710185B1 (en) Method And Apparatus for Providing Data Structure Based Interlocking Logic for Railway Signaling Based on Moving Block
JP7293603B2 (en) driving support system
WO2022019274A1 (en) Supervision device, vehicle guidance method, and vehicle guidance program
CN115723817A (en) Fire hazard treatment method, electronic equipment and vehicle
JP7048346B2 (en) Operation management system
Kangas Alternative dual mode network control strategies

Legal Events

Date Code Title Description
732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)

Free format text: REGISTERED BETWEEN 20111117 AND 20111123