The present invention relates to an automated storage and retrieval system for storage and retrieval of containers, in particular to a method, system and computer program product for determining a route for a container handling vehicle operating on a rail system of the an automated storage and retrieval system.
The framework structure 100 comprises upright members 102 and a storage volume comprising storage columns 105 arranged in rows between the upright members 102. In these storage columns 105 storage containers 106, also known as bins, are stacked one on top of one another to form stacks 107. The members 102 may typically be made of metal, e.g. extruded aluminum profiles.
The framework structure 100 of the automated storage and retrieval system 10 comprises a rail system 108 arranged across the top of framework structure 100, on which rail system 108 a plurality of container handling vehicles 201,301,401 may be operated to raise storage containers 106 from, and lower storage containers 106 into, the storage columns 105, and also to transport the storage containers 106 above the storage columns 105. The rail system 108 comprises a first set of parallel rails 110 arranged to guide movement of the container handling vehicles 201,301,401 in a first direction X across the top of the frame structure 100, and a second set of parallel rails 111 arranged perpendicular to the first set of rails 110 to guide movement of the container handling vehicles 201,301,401 in a second direction Y which is perpendicular to the first direction X. Containers 106 stored in the columns 105 are accessed by the container handling vehicles 201,301,401 through access openings 112 in the rail system 108. The container handling vehicles 201,301,401 can move laterally above the storage columns 105, i.e. in a plane which is parallel to the horizontal X-Y plane.
The upright members 102 of the framework structure 100 may be used to guide the storage containers during raising of the containers out from and lowering of the containers into the columns 105. The stacks 107 of containers 106 are typically self-supporting.
Each prior art container handling vehicle 201,301,401 comprises a vehicle body 201a,301a,401a and first and second sets of wheels 201b, 201c, 301b, 301c,401b,401c which enable the lateral movement of the container handling vehicles 201,301,401 in the X direction and in the Y direction, respectively. In
Each prior art container handling vehicle 201,301,401 also comprises a lifting device for vertical transportation of storage containers 106, e.g. raising a storage container 106 from, and lowering a storage container 106 into, a storage column 105. The lifting device comprises one or more gripping/engaging devices which are adapted to engage a storage container 106, and which gripping/engaging devices can be lowered from the vehicle 201,301,401 so that the position of the gripping/engaging devices with respect to the vehicle 201,301,401 can be adjusted in a third direction Z which is orthogonal the first direction X and the second direction Y. Parts of the gripping device of the container handling vehicles 301,401 are shown in
Conventionally, and also for the purpose of this application, Z=1 identifies the uppermost layer available for storage containers below the rails 110,111, i.e. the layer immediately below the rail system 108, Z=2 the second layer below the rail system 108, Z=3 the third layer etc. In the exemplary prior art disclosed in
The storage volume of the framework structure 100 has often been referred to as a grid 104, where the possible storage positions within this grid are referred to as storage cells. Each storage column may be identified by a position in an X- and Y-direction, while each storage cell may be identified by a container number in the X-, Y- and Z-direction.
Each prior art container handling vehicle 201,301,401 comprises a storage compartment or space for receiving and stowing a storage container 106 when transporting the storage container 106 across the rail system 108. The storage space may comprise a cavity arranged internally within the vehicle body 201a,401a as shown in
The cavity container handling vehicle 201 shown in
Alternatively, the cavity container handling vehicles 401 may have a footprint which is larger than the lateral area defined by a storage column 105 as shown in
The rail system 108 typically comprises rails with grooves in which the wheels of the vehicles run. Alternatively, the rails may comprise upwardly protruding elements, where the wheels of the vehicles comprise flanges to prevent derailing. These grooves and upwardly protruding elements are collectively known as tracks. Each rail may comprise one track, or each rail 110,111 may comprise two parallel tracks. In other rail systems 108, each rail in one direction (e.g. an X direction) may comprise one track and each rail in the other, perpendicular direction (e.g. a Y direction) may comprise two tracks. Each rail 110,111 may also comprise two track members that are fastened together, each track member providing one of a pair of tracks provided by each rail.
WO2018/146304A1, the contents of which are incorporated herein by reference, illustrates a typical configuration of rail system 108 comprising rails and parallel tracks in both X and Y directions.
In the framework structure 100, a majority of the columns 105 are storage columns 105, i.e. columns 105 where storage containers 106 are stored in stacks 107. However, some columns 105 may have other purposes. In
In
The access station may typically be a picking or a stocking station where product items are removed from or positioned into the storage containers 106. In a picking or a stocking station, the storage containers 106 are normally not removed from the automated storage and retrieval system 10, but are returned into the framework structure 100 again once accessed. A port can also be used for transferring storage containers to another storage facility (e.g. to another framework structure or to another automated storage and retrieval system), to a transport vehicle (e.g. a train or a lorry), or to a production facility.
A conveyor system comprising conveyors is normally employed to transport the storage containers between the port columns 119,120 and the access station.
If the port columns 119,120 and the access station are located at different levels, the conveyor system may comprise a lift device with a vertical component for transporting the storage containers 106 vertically between the port column 119,120 and the access station.
The conveyor system may be arranged to transfer storage containers 106 between different framework structures, e.g. as is described in WO2014/075937A1, the contents of which are incorporated herein by reference.
When a storage container 106 stored in one of the columns 105 disclosed in
When a storage container 106 is to be stored in one of the columns 105, one of the container handling vehicles 201,301,401 is instructed to pick up the storage container 106 from the pick-up port column 120 and transport it to a location above the storage column 105 where it is to be stored. After any storage containers 106 positioned at or above the target position within the stack 107 have been removed, the container handling vehicle 201,301,401 positions the storage container 106 at the desired position. The removed storage containers 106 may then be lowered back into the storage column 105, or relocated to other storage columns 105.
For monitoring and controlling the automated storage and retrieval system 10, e.g. monitoring and controlling the location of respective storage containers 106 within the framework structure 100, the content of each storage container 106, and the movement of the container handling vehicles 201,301,401 so that a desired storage container 106 can be delivered to the desired location at the desired time without the container handling vehicles 201,301,401 colliding with each other, the automated storage and retrieval system 10 comprises a control system 121 which typically is computerized and which typically comprises a database for keeping track of the storage containers 106.
When estimating costs to solve the assignment problem it is important to have good estimations to assign the tasks in an optimal order. A simple way of doing this is to use the Manhattan distance/time as an estimation. One drawback of using Manhattan distance is that the geometry of the grid is not taken into account, so that in some cases the estimation can be very inaccurate, for example across a gap or through a column in the grid. Performing a full A* routing algorithm for all container handling vehicles for all tasks to be performed is in general too time consuming for real time computer processing, especially for large grids.
It is therefore a need in the art for a method of determining routes of a container handling vehicle that is very fast in most cases, while also being accurate in all cases.
The present invention is set forth and characterized in the independent claims, while the dependent claims describe other characteristics of the invention.
In one aspect, the invention is related to a method of determining a route for a container handling vehicle operating on a rail system of an automatic grid-based storage and retrieval system comprising a framework structure including the rail system, the rail system comprising a first set of parallel rails in a first direction, and a second set of parallel rails arranged in a second direction which is perpendicular to the first direction, the rail system defining a plurality of grid positions each being identifiable by a first coordinate in the first direction and a second coordinate in the second direction, the method comprising, using a control system communicating with a vehicle controller in the container handling vehicle:
An advantage of the first aspect of the invention is that it provides a method of determining routes of a container handling very fast in most cases, while also being accurate in all cases.
The method is also very well suited for CPU/GPU parallelization as all the information within the model is constant once created.
One advantageous usage of the method is to optimize the position of available container handling vehicles on the rail system. By using the overlap information, cells belonging to two zones may be easily identified. These cells represent intersections in the rail system. Instructing available container handling vehicles to wait in those intersections provides better usage of the container handling vehicles since standing in an intersection result in more Manhattan routes.
Another advantageous usage is to use the method to find segmentations of the rail system. If there are parts of the rail system that cannot be reached by other parts of the rail system, this may be found from the overlap information by setting it up as an undirected graph and create minimum spanning trees on the graph. If there are more than one minimum spanning tree, there are segmentations in the grid, which can then easily be extracted.
In one embodiment, the method may comprise, determining, using the grid position zone information, that the route is a straight line between the first grid position and the second grid position when the first grid position and the second grid position are in the same zone and share either the same first coordinate or the same second coordinate.
In one embodiment, the method may comprise, determining, using the grid position zone information, that the route is a single-turn Manhattan route between the first grid position and the second grid position when the first grid position and the second grid position are in the same zone and share neither the same first coordinate nor the same second coordinate.
In one embodiment, the method may comprise, determining, using the grid position zone information and the overlap information, that the route is a single-turn Manhattan route between the first grid position and the second grid position when the first grid position and the second grid position are in different and overlapping zones.
In one embodiment, the method may comprise, using the set of first zones, the set of second zones and the overlap information to generate a zone graph comprising nodes and edges, wherein the nodes represent the finite set of first zones and the finite set of second zones, and the edges represent the overlap information.
In one embodiment, the method may comprise, determining, using the grid position zone information and the overlap information, that the first grid position and the second grid position are not in the same zone and not in overlapping zones, and determining the route between the first grid position and the second grid position using a graph traversal and path search algorithm on the zone graph. The graph traversal and path search algorithm may in one embodiment be an A* algorithm.
In one embodiment, representing the rail system as the set of first zones and the set of second zones may comprise:
In one embodiment, the step of determining the first set of regions may comprise determining continuous sections of open cells extending in the first direction that are uninterrupted by a blocked cell, each continuous section having a start position having a first coordinate and a length defined by the number of open cells uninterrupted by a blocked cell, wherein the largest possible rectangle of continuous open cells latitudinally extending in the first direction uninterrupted by a blocked cell comprises either a number of adjacent continuous sections having a start position with the same first coordinate and the same length, or a single vertical continuous section, and the step of determining the second set of regions comprises determining continuous sections of open cells extending in the second direction that are uninterrupted by a blocked cell, each continuous section having a start position having a second coordinate and a length defined by the number of open cells uninterrupted by a blocked cell, wherein the largest possible rectangle of continuous open cells longitudinally extending in the second direction uninterrupted by a blocked cell comprises either a number of adjacent continuous sections having a start position with the same second coordinate and the same length, or a single horizontal continuous section.
In one embodiment, defining grid positions that are not accessible by the container handling vehicle may comprise determining one or more grid positions that have at least one physical dimension that is smaller than at least one physical dimension of the container handling vehicle, and identifying the one or more grid positions as being not accessible by the container handling vehicle.
In one embodiment, the method may comprise
In a second aspect, the invention concerns a system of determining a route for a container handling vehicle operating on a rail system of an automatic grid-based storage and retrieval system comprising a framework structure including the rail system, the rail system comprising a first set of parallel rails in a first direction, and a second set of parallel rails arranged in a second direction which is perpendicular to the first direction, the rail system defining a plurality of grid positions each being identifiable by a first coordinate in the first direction and a second coordinate in the second direction,
In one embodiment, the system may be adapted to determining, using the grid position zone information, that the route is a straight line between the first grid position and the second grid position when the first grid position and the second grid position are in the same zone and share either the same first coordinate or the same second coordinate.
In one embodiment, the system may be adapted to determining, using the grid position zone information, that the route is a single-turn Manhattan route between the first grid position and the second grid position when the first grid position and the second grid position are in the same zone and share neither the same first coordinate nor the same second coordinate.
In one embodiment, the system may be adapted to determining, using the grid position zone information and the overlap information, that the route is a single-turn Manhattan route between the first grid position and the second grid position when the first grid position and the second grid position are in different and overlapping zones.
In one embodiment, the system may be adapted to, using the set of first zones, the set of second zones and the overlap information to generate a zone graph comprising nodes and edges, wherein the nodes represent the finite set of first zones and the finite set of second zones, and the edges represent the overlap information.
In one embodiment, the system may be adapted to determining, using the grid position zone information and the overlap information, that the first grid position and the second grid position are not in the same zone and not in overlapping zones, and determining the route between the first grid position and the second grid position using a graph traversal and path search algorithm on the zone graph. The graph traversal and path search algorithm may in one embodiment be an A* algorithm.
In one embodiment, representing the rail system as the set of first zones and the set of second zones may comprise:
In one embodiment, the step of determining the first set of regions may comprise determining continuous sections of open cells extending in the first direction that are uninterrupted by a blocked cell, each continuous section having a start position having a first coordinate and a length defined by the number of open cells uninterrupted by a blocked cell, wherein the largest possible rectangle of continuous open cells latitudinally extending in the first direction uninterrupted by a blocked cell comprises either a number of adjacent continuous sections having a start position with the same first coordinate and the same length, or a single vertical continuous section, and the step of determining the second set of regions comprises determining continuous sections of open cells extending in the second direction that are uninterrupted by a blocked cell, each continuous section having a start position having a second coordinate and a length defined by the number of open cells uninterrupted by a blocked cell, wherein the largest possible rectangle of continuous open cells longitudinally extending in the second direction uninterrupted by a blocked cell comprises either a number of adjacent continuous sections having a start position with the same second coordinate and the same length, or a single horizontal continuous section.
In one embodiment, defining grid positions that are not accessible by the container handling vehicle may comprise determining one or more grid positions that have at least one physical dimension that is smaller than at least one physical dimension of the container handling vehicle, and identifying the one or more grid positions as being not accessible by the container handling vehicle.
In one embodiment, the system may be adapted to
In a third aspect the invention is directed to computer program product for a control system in the system of the second aspect, wherein the computer program product comprising instructions that when performed on the control system performs the method according to the first aspect.
Following drawings are appended to facilitate the understanding of the invention. The drawings show embodiments of the invention, which will now be described by way of example only, where:
In the following, embodiments of the invention will be discussed in more detail with reference to the appended drawings. It should be understood, however, that the drawings are not intended to limit the invention to the subject-matter depicted in the drawings.
The framework structure 100 of the automated storage and retrieval system 10 is constructed in a similar manner to the prior art framework structure 100 described above in connection with
The framework structure 100 further comprises storage compartments in the form of storage columns 105 provided between the members 102 wherein storage containers 106 are stackable in stacks 107 within the storage columns 105.
The framework structure 100 can be of any size. In particular it is understood that the framework structure can be considerably wider and/or longer and/or deeper than disclosed in
One embodiment of the automated storage and retrieval system according to the invention will now be discussed in more detail with reference to
Grid positions (Xi,Yj) that are permanently inaccessible for a container handling vehicle 201,301,401 are referred to as permanently blocked cells 501. The permanently blocked cells 501 are grid positions that are not physically accessible for the container handling vehicles due to the physical layout of a warehouse, such as a wall, a pillar, a low ceiling or other reasons physical reasons for missing cells. In addition to the permanently blocked cells there may be grid positions (Xi,Yj) that have at least one physical dimension that is smaller than at least one physical dimension of the container handling vehicle 201,301,401 operating on the rail system 500, such that the grid position is not physically accessible for the container handling vehicle 201,301,401. One such grid position 601 is illustrated in
With additional reference to
Then in a following step, determining overlap information 1503, wherein the overlap information is indicative of one or more regions of the rail system in which there is an overlap between a zone of the finite set of first zones A, B, C, D, E, F, G, H, I, J, K, L and a zone of the finite set of second zones 1, 2, 3, 4, 5, 6, 7, 8, 9. For example, using the information from
Then in a following step, determining grid position zone information 1504 by, for each grid position (Xi,Yj), determining in which of the finite set of first zones A, B, C, D, E, F, G, H, I, J, K, L and/or the finite set of second zones 1, 2, 3, 4, 5, 6, 7, 8, 9 the grid position (Xi,Yj) is located. The grid position information may be stored in a matrix or similar structure and is not modified once created.
The steps of receiving and determining the route for the container handling vehicle 201,301,401 from a first grid position to a second grid position using the model of the rail system 500 is described with reference to
Now with reference to
Then in a following step, illustrated in
Then in a following step 1510, illustrated in
Regions that fall completely withing another region are redundant. Removing these redundant regions is important for several reasons such as to make any A* route search efficient, and that moving from one zone to another zone implies making a turn.
Now with reference to
In one embodiment, the method comprises using the set of first zones, the set of second zones and the overlap information to generate a zone graph 1511 comprising nodes and edges, wherein the nodes represent the finite set of first zones A, B, C, D, E, F, G, H, I, J, K, L and the finite set of second zones 1, 2, 3, 4, 5, 6, 7, 8, 9, and the edges represent the overlap information.
A request for a route 1505 for the container handling vehicle 201,301,401 from a first grid position to a second grid position comprises the first grid position, i.e. the start position of the container handling vehicle 201,301,401, and the second grid position, i.e. the end position of the container handling vehicle 201,301,401. The request may also comprise information about the container handling vehicle 201,301,401 such as robot type, current direction of movement, and orientation of the container handling vehicle 201,301,401 on the rail system 500, and information about the rail system 500, such as cell sizes to calculate movement times. The request for the route is for the optimal route from the first grid position to the second grid position, e.g. the fastest route. Alternatively, instead of requesting a route, the request is for minimum cost. The request is the same as for a route, but instead of returning a route, the request returns the cost/duration of the optimal route.
When determining the fastest route, the method of the present invention distinctly handles three main cases: straight routes, Manhattan routes and routes through more than two zones.
Using the grid position zone information it may be determined that the fastest route is a straight line between the first grid position and the second grid position when the first grid position and the second grid position are in the same zone and share either the same first coordinate (Xi) or the same second coordinate (Yj). This guarantees that there is no blockage between the start and end positions. If only considering that the first grid position and the second grid position share either the same first coordinate (Xi) or the same second coordinate (Yj), there is no guarantee that the container handling vehicle can follow the route, for example if going from zone L to zone K as illustrated in
Using the grid position zone information it may be determined that the fastest route is a single-turn Manhattan route between the first grid position and the second grid position when the first grid position and the second grid position are in the same zone and share neither the same first coordinate (Xi) nor the same second coordinate (Yj). For Manhattan routes inside a single zone there are two equally optimal routes to choose from.
If in either of the single zone routes cases discussed above, the container handling vehicle is moving and is currently driving past the second grid position or driving away from the second grid position, additional two turns are required to get to the second grid position, unless currently driving across the target position which requires the container handling vehicle to stop and drive straight back.
Using the grid position zone information and the overlap information it may be determined that the fastest route is a single-turn Manhattan route between the first grid position and the second grid position when the first grid position and the second grid position are in different and overlapping zones, such as illustrated in
In the third case, it is determined using the grid position zone information and the overlap information, that the first grid position and the second grid position are not in the same zone and not in overlapping zones. That is, the route is passing through more than two zones. In this case the fastest route between the first grid position and the second grid position is determined using a graph traversal and path search algorithm on the zone graph 1600. Any suitable graph traversal and path search algorithm known to the skilled person may be used. A preferred graph traversal and path search algorithm is an A* algorithm. As illustrated in
The determination of the fastest route from the first grid position to the second grid position is determined as if the container handling vehicle is alone on the rail system 500. That is, other container handling vehicles on the rail system and other temporary blockages such as top bins, are not considered. The control system 121 is in communication with a plurality of container handling vehicles 201,301,401, and has knowledge of their current positions, paths, and other temporary blockages. The control system 121 may therefore find that the determined fastest route is inaccessible because other container handling vehicles are standing on the route or because of other temporary blockages, and parts of the optimal route can be modified to take this into account. Illustrated in
The determination of the fastest route between a grid positions may be performed for a plurality of container handling vehicles, e.g. to determine which of a plurality of container handling vehicles that is the optimal container handling vehicle to perform a task, or to determine which of a plurality of tasks to be performed first. In one example a task, such as picking up storage container, is to be completed at the second grid position. In one embodiment of the method a request may be received for a route for a plurality of container handling vehicles 201,301,401 from a plurality of first grid position to the second grid position. Then the fastest route for each of the plurality of container handling vehicles 201,301,401 from the plurality of first grid position to the second grid position may be determined using the model of the rail system 500. Based on the fastest route for each of the plurality container handling vehicles 201,301,401 an optimal container handling vehicle of the plurality container handling vehicles 201,301,401 for moving to the second grid position may be determined, and the optimal container handling vehicle is instructed to move to the second grid position to perform the task.
The model of the rail system as created by the claimed method have other advantageous usages.
One advantageous usage is to optimize the position of available container handling vehicles on the rail system 500. By using the overlap information, cells belonging to two zones may be easily identified. These cells represent intersections in the rail system 500. Instructing available container handling vehicles to wait in those intersections provides better usage of the container handling vehicles since standing in an intersection result in more Manhattan routes.
Another advantageous usage is to use the model to find segmentations of the rail system 500. If there are parts of the rail system 500 that cannot be reached by other parts of the rail system 500, this may be found from the overlap information by setting it up as an undirected graph and create minimum spanning trees on the graph. If there are more than one minimum spanning tree, there are segmentations in the grid, which can then easily be extracted.
Another advantageous usage is to use the model as a filter for target cells, that is potential storage cells for returning a storage container 106 into the framework structure 100 once accessed by container handling vehicle 201, 301, 401.
In the preceding description, various aspects of the invention have been described with reference to the method 1500 performed by the control system 121. The invention further comprises a system of determining a route for a container handling vehicle 201,301,401 operating on the rail system 108,500 of an automatic grid-based storage and retrieval system 10 comprising a framework structure 100 including the rail system, the rail system 108, 500 comprising a first set of parallel rails 110 in a first direction X, and a second set of parallel rails 111 arranged in a second direction Y which is perpendicular to the first direction X, the rail system 108, 500 defining a plurality of grid positions (Xi,Yj) each being identifiable by a first coordinate Xi in the first direction X and a second coordinate Yj in the second direction Y. The system comprising the control system 121 adapted to communicate with a vehicle controller in the container handling vehicle 201,301,401. The control system 121 is adapted to the perform the method 1500 described in detail above.
The invention further comprises a computer program product for the control system 121 in the automatic grid-based storage and retrieval system 10, wherein the computer program product comprising instructions that when performed on the control system 121 performs the method 1500.
In the preceding description, various aspects of the delivery vehicle and the automated storage and retrieval system according to the invention have been described with reference to the illustrative embodiment. For purposes of explanation, specific numbers, systems and configurations were set forth in order to provide a thorough understanding of the system and its workings While the invention has been described for rectangular cells, the method can be extended to any cell shape, such as triangular, rectangular, hexagonal, octagonal, and so on. Manhattan routes are also named Manhattan routes for other cell shapes. In this case, depending on the cell shape, more than two zones can overlap (e.g. three for hexagonal shapes). The method is also suitable for other types of robots than the container handling vehicles disclosed herein. As such, this description is not intended to be construed in a limiting sense. Various modifications and variations of the illustrative embodiment, as well as other embodiments of the system, which are apparent to persons skilled in the art to which the disclosed subject matter pertains, are deemed to lie within the scope of the present invention.
| Number | Date | Country | Kind |
|---|---|---|---|
| 20220391 | Mar 2022 | NO | national |
| Filing Document | Filing Date | Country | Kind |
|---|---|---|---|
| PCT/EP2023/057835 | 3/27/2023 | WO |