A simulation method, device, equipment and storage medium for warehouse logistics
By building a simulated warehouse in the warehouse, simulating the logistics process and analyzing the simulation data, the problems of inefficiency and operational difficulties of traditional human warehousing task allocation plans are solved, and more efficient and higher-quality warehousing and logistics operations are achieved.
Patent Information
- Application Number
- CN202111521885.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-13
- Publication Date
- 2025-05-23
- Estimated Expiration
- 2041-12-13
AI Technical Summary
The traditional human warehousing task allocation plan has problems such as inefficient labor efficiency and difficulty in operation and maintenance, which leads to an increase in the cost of fulfilling goods orders and the difficulty in ensuring service quality, which affects the competitiveness of the enterprise.
By building a simulation warehouse in the warehouse, simulating the logistics process of the actual warehouse, generating simulated delivery orders, allocating simulated logistics vehicles, planning paths and performing simulated pickups, recording and analyzing simulation data, in order to optimize the logistics operation of the actual warehouse.
This method can reduce the cost of fulfilling goods orders, meet customers' diverse needs, improve the efficiency and quality of warehousing and logistics, and reduce the operating risks and costs of enterprises.
Smart Images

Figure CN114219276B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology and provides a simulation method, device, equipment and storage medium for warehouse logistics. Background Art
[0002] With the development of Internet technology and e-commerce, more and more consumers like to shop online, which in turn has led to the vigorous development of the logistics industry. Consumer demand is also gradually shifting towards diversification and personalization. At the same time, the goods orders received by various companies also show the characteristics of "multi-variety, small batch, multiple batches, and high timeliness". Among them, in the process of each company sending goods to consumers, the allocation of warehousing tasks for goods orders is a vital link in the goods supply chain of these companies. However, when the traditional human warehousing task allocation scheme is performing warehousing task allocation, because it is manually searching and picking goods in the warehouse, there are problems such as low labor efficiency and difficult operation and maintenance. As a result, the fulfillment cost of goods orders increases and the service quality is difficult to guarantee, which ultimately affects the competitiveness of the company. Obviously, the traditional human warehousing task allocation scheme can no longer meet the diverse needs of current customers. Summary of the invention
[0003] The embodiments of the present application provide a warehouse logistics simulation method, device, equipment and storage medium, which are used to reduce the fulfillment cost of goods orders and meet the diverse needs of customers through simulation analysis of warehouse logistics.
[0004] In one aspect, a simulation method for warehouse logistics is provided, the method comprising:
[0005] Generate at least one simulated distribution order according to the characteristic information of each product in the simulated warehouse of the actual warehouse and the set order generation strategy, wherein the characteristic information of each product includes location information and quantity information;
[0006] Issuing the at least one simulated distribution order according to a preset order issuance strategy to obtain at least one order to be executed;
[0007] According to the status information of each simulated logistics vehicle, a selected simulated logistics vehicle is respectively allocated to the at least one pending order, and according to the location information of each cargo in the at least one pending order, a planned path corresponding to each of the at least one pending order is generated, and each selected simulated logistics vehicle is called to perform simulated pickup according to the corresponding planned path, and the simulation data generated by each selected simulated logistics vehicle during the simulated pickup process is recorded;
[0008] After executing the at least one simulated distribution order, the simulation data of the at least one simulated distribution order is statistically analyzed to generate simulation statistical analysis results of the actual warehouse.
[0009] In a possible implementation, the method further includes:
[0010] Recognize the input warehouse layout diagram of the actual warehouse, and obtain the building layout information of the actual warehouse, wherein the building layout information includes the position information of each actual building element in the actual warehouse;
[0011] generating a simulated building layout that is identical to the real building layout of the actual warehouse according to the building layout information;
[0012] In response to the simulation element adding operation performed on each simulation element of the simulated warehouse, each simulation element of the simulated warehouse is added to the simulated building layout to obtain a simulated warehouse of the actual warehouse, and each simulation element of the simulated warehouse corresponds one-to-one to each real element of the actual warehouse.
[0013] In a possible implementation, if the simulated warehouse is provided with a starting area, a packaging area, and a waiting area, generating a planning path corresponding to each of the at least one to-be-executed order according to the location information of each of the goods in the at least one to-be-executed order specifically includes:
[0014] Determine the location information of each of the goods in each of the at least one pending order, and the number of simulated logistics vehicles in each waiting area;
[0015] A planned path corresponding to each of the at least one order to be executed is generated according to the starting area, the packaging area, the location information of each cargo in each of the at least one order to be executed, and the number of simulated logistics vehicles in each waiting area.
[0016] In a possible implementation, if the simulated warehouse further includes a loading area corresponding to the waiting area, then generating a planned path corresponding to each of the at least one to-be-executed order according to the starting area, the packaging area, the location information of each of the goods in each of the at least one to-be-executed order, and the number of simulated logistics vehicles in each waiting area includes:
[0017] For each pending order in the at least one pending order, executing:
[0018] Determine, among the goods of the current order to be executed, a first good that is closest to the starting area and a second good that is closest to the packaging area;
[0019] determining whether the first commodity and the second commodity are the same;
[0020] If it is determined that the first cargo is the same as the second cargo, a planned path corresponding to the current order to be executed is generated according to the starting area, the loading area of the first cargo, and the packaging area.
[0021] In a possible implementation, the method further includes:
[0022] If it is determined that the first commodity is different from the second commodity, then for each commodity of the current order to be executed, execute:
[0023] Determine the distance between the loading area of the current goods and the loading areas of each of the goods in the unplanned path of the current order to be executed;
[0024] Determine the next cargo of the current cargo according to the determined distances;
[0025] Determine whether the next product of the current product is the last product of the current order to be executed;
[0026] If it is determined that the next cargo of the current cargo is not the last cargo of the current order to be executed, the current cargo is added to the picking sequence of the current order to be executed, the next cargo is determined as the current cargo, and the step of determining the distance between the loading area of the current cargo and the loading areas of each cargo of the current order to be executed that is not on the planned path is performed;
[0027] If it is determined that the next cargo of the current cargo is the last cargo of the current order to be executed, a planned path corresponding to the current order to be executed is generated according to the starting area, the loading area of each cargo in the picking sequence of the current order to be executed, and the packaging area.
[0028] In a possible implementation manner, determining the next cargo of the current cargo according to the determined distances includes:
[0029] Determine the time for picking up goods from the loading area of the current goods to the loading area of each of the goods on the unplanned path of the current order to be executed according to the determined distances and the number of simulated logistics vehicles in the waiting area of each of the goods of the current order to be executed;
[0030] The next cargo of the current cargo is determined according to the determined time durations.
[0031] In a possible implementation, the step of respectively allocating a selected simulated logistics vehicle to the at least one to-be-executed order according to the status information of each simulated logistics vehicle includes:
[0032] Selecting at least one available simulated logistics vehicle in an idle state from among the simulated logistics vehicles according to the state information of each simulated logistics vehicle, wherein the idle state includes an uncharged state and a non-queued waiting state;
[0033] According to the remaining power of the at least one available simulated logistics vehicle and the generation time of each of the at least one to-be-executed order, a selected simulated logistics vehicle is allocated to each of the at least one to-be-executed order.
[0034] In a possible implementation, calling each selected simulated logistics vehicle to perform simulated pickup according to the corresponding planned path includes:
[0035] For each selected simulated logistics vehicle, execute:
[0036] Determine whether there is another selected simulated logistics vehicle picking up goods in the next loading area of the current loading area of the currently selected simulated logistics vehicle;
[0037] If it is determined that there are other selected simulated logistics vehicles in the next loading area that are picking up goods, then determine the waiting area for the currently selected simulated logistics vehicle to go to, and send a waiting instruction to the currently selected simulated logistics vehicle to instruct the currently selected simulated logistics vehicle to go to the determined waiting area to queue up and wait;
[0038] If it is determined that there is no other selected simulated logistics vehicle loading goods in the next loading area, a loading instruction is sent to the currently selected simulated logistics vehicle to instruct the currently selected simulated logistics vehicle to enter the next loading area to load goods.
[0039] In a possible implementation, determining the waiting area to which the currently selected simulated logistics vehicle is heading includes:
[0040] Determining whether the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area exceeds a set threshold;
[0041] If it is determined that the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area does not exceed the set threshold, then the waiting area to which the currently selected simulated logistics vehicle is heading is determined to be the waiting area of the next loading area;
[0042] If it is determined that the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area exceeds the set threshold, the waiting area to which the currently selected simulated logistics vehicle goes is determined based on whether the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area.
[0043] In a possible implementation, determining the waiting area to which the currently selected simulated logistics vehicle is headed according to whether the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area includes:
[0044] Determine whether the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area;
[0045] If it is determined that the current loading area of the currently selected simulated logistics vehicle is not adjacent to the next loading area, then the waiting area to which the currently selected simulated logistics vehicle is heading is determined to be the waiting area of the adjacent loading area of the next loading area;
[0046] If it is determined that the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area, then the waiting area to which the currently selected simulated logistics vehicle is heading is determined to be the waiting area of the current loading area.
[0047] In a possible implementation, the method further includes:
[0048] After monitoring that the element state of the simulation element in the simulation warehouse has changed, the display state of the icon corresponding to the changed simulation element is displayed on the simulation display interface corresponding to the simulation warehouse; or,
[0049] The simulation display interface displays the simulation data of the at least one simulated distribution order and the simulation statistical analysis results of the actual warehouse.
[0050] In one aspect, a simulation device for warehouse logistics is provided, the device comprising:
[0051] An order generation module, used to generate at least one simulated distribution order according to the characteristic information of each commodity in the simulated warehouse of the actual warehouse and the set order generation strategy, wherein the characteristic information of each commodity includes location information and quantity information;
[0052] An order issuing module, used to issue the at least one simulated distribution order according to a preset order issuing strategy to obtain at least one order to be executed;
[0053] A simulated pickup module is used to allocate a selected simulated logistics vehicle to the at least one pending order according to the status information of each simulated logistics vehicle, generate a planned path corresponding to each of the at least one pending order according to the location information of each of the goods in the at least one pending order, call each selected simulated logistics vehicle to perform simulated pickup according to the corresponding planned path, and record the simulation data generated by each selected simulated logistics vehicle during the simulated pickup process;
[0054] The data analysis module is used to statistically analyze the simulation data of the at least one simulated distribution order after executing the at least one simulated distribution order, and generate simulation statistical analysis results of the actual warehouse.
[0055] In a possible implementation manner, the device further includes a simulation warehouse construction module, wherein the simulation warehouse construction module is used to:
[0056] Recognize the input warehouse layout diagram of the actual warehouse, and obtain the building layout information of the actual warehouse, wherein the building layout information includes the position information of each actual building element in the actual warehouse;
[0057] generating a simulated building layout that is identical to the real building layout of the actual warehouse according to the building layout information;
[0058] In response to the simulation element adding operation performed on each simulation element of the simulated warehouse, each simulation element of the simulated warehouse is added to the simulated building layout to obtain a simulated warehouse of the actual warehouse, and each simulation element of the simulated warehouse corresponds one-to-one to each real element of the actual warehouse.
[0059] In a possible implementation manner, the simulated pickup module is specifically used to:
[0060] Determine the location information of each of the goods in each of the at least one pending order, and the number of simulated logistics vehicles in each waiting area;
[0061] A planned path corresponding to each of the at least one order to be executed is generated according to the starting area, the packaging area, the location information of each cargo in each of the at least one order to be executed, and the number of simulated logistics vehicles in each waiting area.
[0062] In a possible implementation manner, the simulated pickup module is specifically used to:
[0063] For each pending order in the at least one pending order, executing:
[0064] Determine, among the goods of the current order to be executed, a first good that is closest to the starting area and a second good that is closest to the packaging area;
[0065] determining whether the first commodity and the second commodity are the same;
[0066] If it is determined that the first cargo is the same as the second cargo, a planned path corresponding to the current order to be executed is generated according to the starting area, the loading area of the first cargo, and the packaging area.
[0067] In a possible implementation manner, the simulated pickup module is specifically used to:
[0068] If it is determined that the first commodity is different from the second commodity, then for each commodity of the current order to be executed, execute:
[0069] Determine the distance between the loading area of the current goods and the loading areas of each of the goods in the unplanned path of the current order to be executed;
[0070] Determine the next cargo of the current cargo according to the determined distances;
[0071] Determine whether the next product of the current product is the last product of the current order to be executed;
[0072] If it is determined that the next cargo of the current cargo is not the last cargo of the current order to be executed, the current cargo is added to the picking sequence of the current order to be executed, the next cargo is determined as the current cargo, and the step of determining the distance between the loading area of the current cargo and the loading areas of each cargo of the current order to be executed that is not on the planned path is performed;
[0073] If it is determined that the next cargo of the current cargo is the last cargo of the current order to be executed, a planned path corresponding to the current order to be executed is generated according to the starting area, the loading area of each cargo in the picking sequence of the current order to be executed, and the packaging area.
[0074] In a possible implementation manner, the simulated pickup module is specifically used to:
[0075] Determine the time for picking up goods from the loading area of the current goods to the loading area of each of the goods on the unplanned path of the current order to be executed according to the determined distances and the number of simulated logistics vehicles in the waiting area of each of the goods of the current order to be executed;
[0076] The next cargo of the current cargo is determined according to the determined time durations.
[0077] In a possible implementation manner, the simulated pickup module is specifically used to:
[0078] Selecting at least one available simulated logistics vehicle in an idle state from among the simulated logistics vehicles according to the state information of each simulated logistics vehicle, wherein the idle state includes an uncharged state and a non-queued waiting state;
[0079] According to the remaining power of the at least one available simulated logistics vehicle and the generation time of each of the at least one to-be-executed order, a selected simulated logistics vehicle is allocated to each of the at least one to-be-executed order.
[0080] In a possible implementation manner, the simulated pickup module is specifically used to:
[0081] For each selected simulated logistics vehicle, execute:
[0082] Determine whether there is another selected simulated logistics vehicle picking up goods in the next loading area of the current loading area of the currently selected simulated logistics vehicle;
[0083] If it is determined that there are other selected simulated logistics vehicles in the next loading area that are picking up goods, then determine the waiting area for the currently selected simulated logistics vehicle to go to, and send a waiting instruction to the currently selected simulated logistics vehicle to instruct the currently selected simulated logistics vehicle to go to the determined waiting area to queue up and wait;
[0084] If it is determined that there is no other selected simulated logistics vehicle loading goods in the next loading area, a loading instruction is sent to the currently selected simulated logistics vehicle to instruct the currently selected simulated logistics vehicle to enter the next loading area to load goods.
[0085] In a possible implementation manner, the simulated pickup module is specifically used to:
[0086] Determining whether the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area exceeds a set threshold;
[0087] If it is determined that the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area does not exceed the set threshold, then the waiting area to which the currently selected simulated logistics vehicle is heading is determined to be the waiting area of the next loading area;
[0088] If it is determined that the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area exceeds the set threshold, the waiting area to which the currently selected simulated logistics vehicle goes is determined based on whether the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area.
[0089] In a possible implementation manner, the simulated pickup module is specifically used to:
[0090] Determine whether the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area;
[0091] If it is determined that the current loading area of the currently selected simulated logistics vehicle is not adjacent to the next loading area, then the waiting area to which the currently selected simulated logistics vehicle is heading is determined to be the waiting area of the adjacent loading area of the next loading area;
[0092] If it is determined that the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area, then the waiting area to which the currently selected simulated logistics vehicle is heading is determined to be the waiting area of the current loading area.
[0093] In a possible implementation, the device further includes a display module, wherein the display module is used to:
[0094] After monitoring that the element state of the simulation element in the simulation warehouse has changed, the display state of the icon corresponding to the changed simulation element is displayed on the simulation display interface corresponding to the simulation warehouse; or,
[0095] The simulation display interface displays the simulation data of the at least one simulated distribution order and the simulation statistical analysis results of the actual warehouse.
[0096] On the one hand, a computer device is provided, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the method described in the above aspects when executing the computer program.
[0097] On the one hand, a computer storage medium is provided, on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the steps of the method described in the above aspects are implemented.
[0098] In an embodiment of the present application, after generating at least one simulated distribution order according to the characteristic information of each cargo in the simulated warehouse of the actual warehouse and the set order generation strategy, at least one simulated distribution order can be issued according to the preset order issuance strategy to obtain at least one to-be-executed order. Furthermore, after allocating a selected simulated logistics vehicle to at least one to-be-executed order according to the status information of each simulated logistics vehicle, a planned path corresponding to at least one to-be-executed order can be generated according to the location information of each cargo in at least one to-be-executed order, and each selected simulated logistics vehicle can be called to perform simulated picking according to the corresponding planned path, and the simulation data generated by each selected simulated logistics vehicle during the simulated picking process is recorded. After executing at least one simulated distribution order, the simulation data of at least one simulated distribution order can be statistically analyzed to generate simulation statistical analysis results of the actual warehouse.
[0099] It can be seen that in the embodiment of the present application, the processes of generating distribution orders, issuing pending orders, allocating logistics vehicles, planning routes, and picking up goods according to the planned routes in real warehousing and logistics can be simulated based on the constructed simulation warehouse, and after comprehensive analysis of the simulation data generated by these simulation processes, the simulation statistical analysis results of the actual warehouse can be obtained. In other words, the simulation method based on the warehousing and logistics can comprehensively evaluate and optimize the warehousing and logistics corresponding to the actual warehouse, so that before the enterprise deploys the new warehousing and logistics solution, it can provide the enterprise with a detailed analysis report of the new warehousing and logistics solution, thereby shortening the verification cycle of the new warehousing and logistics solution, helping enterprise decision makers to make effective decisions, so as to determine the best warehousing and logistics solution, and thus reduce decision-making risks and costs. BRIEF DESCRIPTION OF THE DRAWINGS
[0100] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the related technologies, the drawings required for use in the embodiments or the related technical descriptions are briefly introduced below. Obviously, the drawings described below are only the embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying any creative work.
[0101] Figure 1 A schematic diagram of a deadlock phenomenon provided in an embodiment of the present application;
[0102] Figure 2 A schematic diagram of an application scenario provided for an embodiment of the present application;
[0103] Figure 3 A schematic diagram of a flow chart of a simulation method for warehouse logistics provided in an embodiment of the present application;
[0104] Figure 4 A schematic diagram of a simulation warehouse provided in an embodiment of the present application;
[0105] Figure 5 A schematic diagram of a process for constructing a simulation warehouse provided in an embodiment of the present application;
[0106] Figure 6 A schematic diagram of a process for obtaining the architectural layout information of an actual warehouse through image recognition;
[0107] Figure 7 A schematic diagram of a simulation warehouse with simulation elements added provided in an embodiment of the present application;
[0108] Figure 8 A schematic diagram of setting a waiting area provided in an embodiment of the present application;
[0109] Fig. 9 A schematic diagram of a process flow for planning a path provided in an embodiment of the present application;
[0110] Fig.10 Another schematic diagram of a planning path provided in an embodiment of the present application;
[0111] Fig.11 Another schematic diagram of a planning path provided in an embodiment of the present application;
[0112] Fig.12 A flow chart for determining the next cargo according to the pickup time;
[0113] Fig.13 Schematic diagram of modeling a queue with finite capacity for the waiting area;
[0114] Fig.14 A schematic diagram of executing simulated pickup provided in an embodiment of the present application;
[0115] Fig.15 A schematic diagram of a process for determining a waiting area provided in an embodiment of the present application;
[0116] Fig.16 A schematic diagram of the structure of a simulation device for warehouse logistics provided in an embodiment of the present application;
[0117] Fig.17 A schematic diagram of the architecture of a warehouse logistics simulation system provided in an embodiment of the present application;
[0118] Fig.18 A schematic diagram of the structure of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0119] In order to make the purpose, technical scheme and advantages of the present application clearer, the technical scheme in the embodiment of the present application will be clearly and completely described below in conjunction with the drawings in the embodiment of the present application. Obviously, the described embodiment is only a part of the embodiment of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without making creative work are within the scope of protection of the present application. In the absence of conflict, the embodiments in the present application and the features in the embodiments can be combined with each other arbitrarily. In addition, although the logical order is shown in the flow chart, in some cases, the steps shown or described can be performed in an order different from that here.
[0120] First, some terms used in this application are explained.
[0121] (1) Unity3D is a creation engine and development tool. Unity is a real-time three-dimensional (3D) interactive content creation and operation platform. It enables all creators, including game developers, art, architecture, automotive design, and film and television, to turn their ideas into reality with the help of Unity. The Unity platform provides a complete set of software solutions that can be used to create, operate, and monetize any real-time interactive 2D and 3D content.
[0122] (2) Simulated logistics vehicle, or automated guided vehicle (AGV), also commonly known as AGV cart, refers to a transport vehicle equipped with electromagnetic or optical automatic navigation devices, capable of traveling along a specified navigation path, and having safety protection and various transfer functions.
[0123] (3) Deadlock phenomenon. In a multiprogramming environment, multiple processes can compete for a limited number of resources. When a process applies for resources, if there are no available resources at this time, the process will enter a waiting state. However, sometimes the resources applied for by the waiting process will be occupied by other waiting processes. Therefore, the waiting process may no longer be able to change its state and remain in a waiting state. This situation can be called a deadlock phenomenon.
[0124] like Figure 1 As shown, it is a schematic diagram of the deadlock phenomenon provided in an embodiment of the present application. While the AGV trolley 1 is occupying the loading area 1, it will issue a loading request to the loading area 2, and the loading area 2 is occupied by the AGV trolley 2, and the AGV trolley 2 also issues a loading request to the loading area 1 while occupying it.
[0125] The AGV's loading application can only be successful when the loading area is not occupied, and only after the application is successful can the AGV leave the occupied loading area. Figure 1 AGV 1 will always occupy loading area 1. Similarly, AGV 2 will always occupy loading area 2. As a result, AGV 1 and AGV 2 will never be able to move, eventually resulting in a deadlock.
[0126] (4) Limited capacity queuing model, which is used to describe the limited number of simulated logistics vehicles waiting in the waiting area of the loading area.
[0127] (5) Poisson distribution is often used to describe the number of random events that occur per unit time.
[0128] Simulation technology has great value in assisting analysis and decision-making in complex systems due to its good controllability, non-destructiveness, repeatability, and the fact that it is not restricted by factors such as meteorological conditions and site environment.
[0129] At present, system simulation technology has been widely used in the fields of manufacturing and logistics, and its specific applications include scheme comparison, layout optimization, resource allocation, bottleneck analysis and real-time scheduling. And because the Unity3D engine has the advantages of small size, easy expansion, simple deployment, cross-platform adaptability and powerful picture effects, the Unity3D engine has gradually become one of the mainstream development platforms of virtual reality. The warehouse logistics simulation method provided in this application is designed and modeled based on the Unity3D engine.
[0130] In recent years, with the development of Internet technology and e-commerce, more and more consumers like to shop online, which in turn has led to the vigorous development of the logistics industry. Consumer demand is also gradually shifting towards diversification and personalization. At the same time, the goods orders received by various companies also show the characteristics of "multi-variety, small batch, multiple batches, and high timeliness". Among them, in the process of each company sending goods to consumers, the allocation of warehousing tasks for goods orders is a vital link in the goods supply chain of these companies. However, when the traditional human warehousing task allocation scheme is performing warehousing task allocation, because it is manually searching and picking goods in the warehouse, there are problems such as low labor efficiency and difficult operation and maintenance. As a result, the fulfillment cost of goods orders increases and the service quality is difficult to guarantee, which ultimately affects the competitiveness of the company. Obviously, the traditional human warehousing task allocation scheme can no longer meet the diverse needs of current customers.
[0131] Based on this, in an embodiment of the present application, after generating at least one simulated distribution order according to the characteristic information of each cargo in the simulated warehouse of the actual warehouse and the set order generation strategy, at least one simulated distribution order can be issued according to the preset order issuance strategy to obtain at least one order to be executed. Furthermore, after assigning a selected simulated logistics vehicle to at least one order to be executed according to the status information of each simulated logistics vehicle, at least one planned path corresponding to each order to be executed can be generated according to the location information of each cargo in at least one order to be executed, and each selected simulated logistics vehicle can be called to perform simulated picking according to its corresponding planned path, and the simulation data generated by each selected simulated logistics vehicle during the simulated picking process is recorded. After executing at least one simulated distribution order, the simulation data of at least one simulated distribution order can be statistically analyzed to generate simulation statistical analysis results of the actual warehouse.
[0132] It can be seen that in the embodiment of the present application, the generated distribution orders, the orders to be executed, the distribution of logistics vehicles, the planning of routes and the picking up of goods according to the planned routes in the real warehousing and logistics can be simulated based on the constructed simulation warehouse, and after the simulation data generated by these simulation processes are comprehensively analyzed, the simulation statistical analysis results of the actual warehouse can be obtained. In other words, the simulation method based on the warehousing and logistics can comprehensively evaluate and optimize the warehousing and logistics corresponding to the actual warehouse, so that before the enterprise deploys the new warehousing and logistics solution, it can provide the enterprise with a detailed analysis report of the new warehousing and logistics solution, thereby shortening the verification cycle of the new warehousing and logistics solution, helping enterprise decision makers to make effective decisions, so as to determine the best warehousing and logistics solution, and thus reduce the decision-making risk and cost.
[0133] In addition, in the embodiment of the present application, since the simulated warehouse is obtained by image recognition through the warehouse layout diagram of the actual warehouse, and each simulation element in the simulated warehouse can be added and set according to the specific needs of the enterprise, the real warehouse building layout can be simulated to the greatest extent, thereby realizing personalized customization of the simulation scene.
[0134] Moreover, in an embodiment of the present application, a corresponding waiting area is set for each loading area in the simulated warehouse, so that when there are other selected simulated logistics vehicles in the next loading area of the selected simulated logistics vehicle and they are picking up goods, the route can be replanned during the picking process to avoid deadlock and prevent the selected simulated logistics vehicle from going to the next loading area to load goods.
[0135] After introducing the design ideas of the embodiments of the present application, the following briefly introduces the application scenarios to which the technical solutions of the embodiments of the present application can be applied. It should be noted that the application scenarios introduced below are only used to illustrate the embodiments of the present application and are not limited. In the specific implementation process, the technical solutions provided by the embodiments of the present application can be flexibly applied according to actual needs.
[0136] The technical solution of the embodiment of the present application can be applied to any possible warehousing and logistics scenario. Figure 2 FIG. 2 is a schematic diagram of an application scenario provided by an embodiment of the present application. The application scenario of the warehousing logistics may include a terminal 20 and a server 21 .
[0137] The terminal 20 may be, for example, a mobile phone, a personal computer (PC), a laptop computer, etc. A simulation client capable of performing warehouse logistics simulation is installed in the terminal 20, through which the user may perform modeling and simulation of the corresponding warehouse logistics simulation process.
[0138] Specifically, the terminal 20 may include one or more processors 201, a memory 202, and an I / O interface 203 for interacting with other devices. In addition, the terminal 20 may also include a display panel 204, which is used to present a visual interactive interface, such as displaying the simulated warehouse, the simulation data recorded during the warehousing and logistics simulation process, and the simulation statistical analysis results. Among them, the memory 202 of the terminal 20 may store program instructions of the warehousing and logistics simulation method provided in the embodiment of the present application, and these program instructions can be used to implement the steps of the warehousing and logistics simulation method provided in the embodiment of the present application when executed by the processor 201.
[0139] Server 21 can be a server that provides data storage and data calculation for warehousing logistics simulation. It can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers. It can also be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, as well as big data and artificial intelligence platforms, but is not limited to these.
[0140] In a possible implementation, the warehouse logistics simulation process can be implemented by the terminal 20. Specifically, when the user performs warehouse logistics simulation through the simulation client installed in the terminal 20, the processor 201 will run the program instructions of the warehouse logistics simulation method stored in the memory 202, thereby performing warehouse logistics simulation, and storing the simulation data generated during the simulation process in real time to the memory 202. In addition, the corresponding warehouse logistics simulation process, simulation data, and simulation statistical analysis results can also be displayed on the display panel 204.
[0141] In another possible implementation, the server 21 may be a background server of the simulation client installed in the terminal 20, and then the warehouse logistics simulation process may be implemented by the terminal 20 and the server 21. Specifically, when the user triggers the warehouse logistics simulation start instruction on the simulation interface of the simulation client installed in the terminal 20, the server 21 will perform the warehouse logistics simulation based on the program instructions of the warehouse logistics simulation method of the embodiment of the present application. At the same time, the changes of various simulation elements in the simulation process, simulation data, and simulation statistical analysis results can be displayed on the display panel 204 of the terminal 20 through the interaction between the terminal 20 and the server 21.
[0142] Of course, the method provided in the embodiment of the present application is not limited to Figure 2 The application scenarios shown can also be used in other possible application scenarios, and the embodiments of the present application are not limited thereto. Figure 2The functions that can be realized by each device in the application scenario shown will be described in the subsequent method embodiments, and will not be described in detail here. Below, the method of the embodiment of the present application will be introduced in conjunction with the accompanying drawings.
[0143] like Figure 3 As shown, it is a flow chart of a simulation method of warehouse logistics provided in an embodiment of the present application. The method can be Figure 2 The terminal 20 and the server 21 in the method may be executed together, or may be executed by the terminal 20 or the server 21. The embodiment of the present application does not limit this. The process of the method is described as follows.
[0144] Step 301: Generate at least one simulated distribution order according to the characteristic information of each product in the simulated warehouse of the actual warehouse and the set order generation strategy.
[0145] In the embodiment of the present application, the characteristic information of each cargo may include location information and quantity information.
[0146] Specifically, in the actual logistics distribution process, when a user purchases goods, the goods need to be shipped or delivered to the user, and a distribution order corresponding to the goods purchased by the customer will be generated. Then, after the warehouse receives the order, it can perform corresponding operations such as picking up and packing based on the distribution order. In actual application, each distribution order can include one or more goods of different quantities and types.
[0147] Furthermore, in order to be as similar as possible to the actual warehousing and logistics process, and because in the actual warehousing and logistics process, there may be a situation where some goods are insufficient in stock or completely out of stock, therefore, in the embodiment of the present application, an order generation strategy that can simulate the order generation process is set according to the characteristic information of each good in the simulated warehouse of the actual warehouse to generate a simulated distribution order. Specifically, the order generation strategy may include the following two.
[0148] The first method is to generate a simulated distribution order based on the actual distribution order data stored in advance.
[0149] For example, if there is real order data corresponding to a customer order, then these real order data can be preprocessed first, and then the preprocessed real order data can be stored in the warehouse logistics simulation system. Then, when it is necessary to generate a simulated distribution order, these real order data can be directly called to simulate the operation of real warehouse logistics. Since this order generation strategy generates simulated distribution orders based on real order data, the generated simulated distribution orders can be more consistent with the real warehouse logistics situation.
[0150] The second method is to generate the simulated distribution order according to the distribution order generation method with set method parameters.
[0151] For example, if there is no real order data corresponding to the customer order at present, then a simulated distribution order can be generated based on the distribution order generation method with set method parameters. Taking into account that in warehousing and logistics, the generation of logistics distribution orders has discrete characteristics, therefore, in an embodiment of the present application, an event-based discretization method is used to model the simulated distribution orders. For example, the distribution order generation method can be a random method in which "the time interval between the generation of two adjacent simulated distribution orders is a random time interval", or a fixed arrival time interval method in which "the time interval between the generation of two adjacent simulated distribution orders is a fixed time interval", or a Poisson distribution method in which "the number of times the simulated distribution orders are generated per unit time presents a Poisson distribution".
[0152] The following is a specific introduction using the Poisson distribution method as an example of the distribution order generation method. When the Poisson distribution method is used to generate simulated distribution orders, the probability function of the number of simulated distribution orders generated per unit time k is:
[0153]
[0154] Among them, the parameter β represents the average number of occurrences of simulated distribution order generation per unit time, and the expectation and variance of the Poisson distribution are both β.
[0155] Furthermore, based on the distribution order generation method selected by the user, appropriate method parameters can be set for the distribution order generation method according to the actual operation statistical laws of the specific enterprise that needs to be simulated. For example, the method parameters can include the types of goods, the order ratios of different types of goods, the generation time interval of order events, etc. Then, a simulated distribution order can be generated according to the distribution order generation method with set method parameters.
[0156] For the above Poisson distribution method, the user needs to set the parameter β, so that the number of orders that need to be generated in each unit time during the simulation process can be solved based on the set parameter β, and the number of orders in each unit time during the entire simulation process presents a Poisson distribution.
[0157] Step 302: at least one simulated distribution order is issued according to a preset order issuing strategy to obtain at least one order to be executed.
[0158] In actual application, in order to complete the distribution order, the distribution order will be assigned to the corresponding AGV car, so that the AGV car picks the goods according to the distribution order, thereby completing the distribution order. Therefore, in the embodiment of the present application, at least one generated simulated distribution order can be issued according to the preset order issuance strategy, thereby obtaining at least one pending order, wherein a pending order can include one or more simulated distribution orders. Specifically, the order issuance strategy may include the following.
[0159] The first one is an order issuing strategy that issues orders according to the priority of each simulated distribution order.
[0160] For example, when there are currently simulated distribution order A and simulated distribution order B, where the priority of simulated distribution order A is higher than the priority of simulated distribution order B, then simulated distribution order A can be issued first, and then simulated distribution order B can be issued.
[0161] The second type: an order issuing strategy that issues orders based on the generation time of the simulated distribution order.
[0162] For example, simulated distribution order A is generated at 9:00 am, and simulated distribution order B is generated at 9:15 am. The generation time of simulated distribution order A is earlier than the generation time of simulated distribution order B. Therefore, simulated distribution order A can be issued first, and then simulated distribution order B can be issued.
[0163] The third type: an order issuing strategy for issuing orders according to order batches of simulated distribution orders.
[0164] In the embodiment of the present application, order batches can be divided into two types: "timing" mode (all distribution orders within a fixed time window are the same batch) and "quantity" mode (every fixed number of distribution orders accumulated are the same batch).
[0165] Specifically, when dividing order batches according to the "timing" method, for example, the fixed time window can be set to 1 hour, so all simulated distribution orders generated in the time period of 9:00-10:00 in the morning are divided into the same batch. When dividing order batches according to the "quantity" method, for example, the fixed number can be set to 10, so whenever the number of simulated distribution orders accumulates to 10, these 10 simulated distribution orders can be divided into the same batch. In addition, for each simulated distribution order in the same batch, each simulated distribution order can be issued according to the auction-based multi-agent order issuance method.
[0166] The fourth type: an order issuing strategy based on the placement areas of each product in the simulated distribution order.
[0167] For example, Figure 4 As shown, a schematic diagram of a simulation warehouse provided by an embodiment of the present application, the simulation warehouse includes 4 rooms A, B, C, and D, each of which corresponds to a goods placement area. Then, first, according to the placement area of the simulated goods to be picked contained in the simulated picking order, the simulated picking order can be divided into the simulated picking order set corresponding to each placement area. For example, the placement area of the simulated goods to be picked contained in the simulated picking order A and the simulated picking order B is room A, and the placement area of the simulated goods to be picked contained in the simulated picking order C and the simulated picking order D is room B. Then, the simulated picking order A and the simulated picking order B can be divided into the simulated picking order set corresponding to room A, and the simulated picking order C and the simulated picking order D can be divided into the simulated picking order set corresponding to room B. Of course, when issuing orders according to the placement area, it is not necessary to issue them according to the room, and they can also be issued according to the specific shelves in the room. The specific range of this placement area can be set according to user needs.
[0168] Furthermore, after dividing each simulated distribution order according to the placement area, for each simulated distribution order in each simulated distribution order set, the order can be issued according to the order generation time of each simulated distribution order, or according to the order batch to which each simulated distribution order belongs.
[0169] When warehousing logistics simulation is carried out, the corresponding order issuing strategy can be selected from the above-mentioned order issuing strategies according to the specific warehousing scenario. For example, when the storage operation area of the warehouse is small, since the number of goods to be picked at one time is small, it is more suitable to use an order issuing strategy for picking a small number of goods, such as an order issuing strategy that issues orders according to the "priority" or "order generation time" of the simulated distribution order. When the complexity of the goods contained in the distribution order is high, that is, when the goods contained in the distribution order have many placement areas, the order issuing strategy that issues orders according to the placement areas of the simulated goods to be distributed in the simulated distribution order can be selected to carry out picking.
[0170] Step 303: Allocate a selected simulated logistics vehicle to at least one pending order according to the status information of each simulated logistics vehicle, generate a planned path corresponding to at least one pending order according to the location information of each cargo in at least one pending order, call each selected simulated logistics vehicle to perform simulated pickup along the corresponding planned path, and record the simulation data generated by each selected simulated logistics vehicle during the simulated pickup process.
[0171] In an embodiment of the present application, after generating the pending orders, each pending order needs to be assigned to a simulated logistics vehicle for simulated distribution. However, in actual application, since each AGV in the warehouse may be in different states, such as charging state, task execution state, queue waiting state, and idle state, an AGV may also be in multiple states at the same time. For example, when the AGV is charging, it is not working. At this time, the AGV is in the charging state and the non-queue waiting state at the same time. However, when selecting an AGV that can allocate pending orders, only AGVs that are in the idle state, uncharged state, and non-queue waiting state and have sufficient power can be selected to allocate pending orders for the corresponding distribution process. Furthermore, for the sake of convenience, the "idle state" that appears later refers to being in the idle state, uncharged state, and non-queue waiting state at the same time.
[0172] Therefore, in an embodiment of the present application, when allocating a selected simulated logistics vehicle to each order to be executed according to the status information of each simulated logistics vehicle, specifically, at least one available simulated logistics vehicle in an idle state can be selected from each simulated logistics vehicle according to the status information of each simulated logistics vehicle, wherein the status information includes relevant information about the state of the corresponding simulated logistics vehicle, for example, relevant information about the idle state, relevant information about the charging state, etc.
[0173] Furthermore, a selected simulated logistics vehicle can be allocated to each of the at least one pending order according to the remaining power of the at least one selected available simulated logistics vehicle and the generation time of each pending order in the at least one pending order. For example, assuming that the remaining power of the available simulated logistics vehicle is less than 20%, it cannot be allocated to the pending order, and currently it is determined that there are 5 available simulated logistics vehicles, of which the remaining power of 1 available simulated logistics vehicle is less than 20%, then, when allocating the pending orders, each pending order can be randomly allocated to the remaining 4 available simulated logistics vehicles according to the "first in, first out" principle, or, based on the remaining power of the available simulated logistics vehicle, according to the principle that the more power is allocated first, the corresponding available simulated logistics vehicle is selected from the 4 available simulated logistics vehicles for the allocation of the pending orders.
[0174] Furthermore, since each of the goods in the pending order is placed in a different position, in order to pick up the goods in different positions, the planned path must pass through the positions of these goods. Therefore, in an embodiment of the present application, the planned path corresponding to the pending order can be generated according to the position information of each of the goods in the pending order. Furthermore, the planned path can be assigned to the selected simulated logistics vehicle corresponding to the corresponding pending order, so that the selected simulated logistics vehicle can be called to perform simulated pickup according to the planned path assigned to it. In addition, in order to facilitate the subsequent analysis and summary of the simulation process, the simulation data generated by each selected simulated logistics vehicle can also be recorded during the simulated pickup process.
[0175] Step 304: After executing at least one simulated distribution order, statistically analyze at least one simulated distribution order to generate simulation statistical analysis results of the actual warehouse.
[0176] The main analysis indicators may include: average delivery time and average route length for each delivery order, completion rate of delivery orders within the specified time, total travel distance of each simulated logistics vehicle, waiting rate and idle rate of each simulated logistics vehicle, total travel distance and idle rate of each staff member, average queue length and average waiting time of simulated logistics vehicles in each waiting area, average shipment rate and storage capacity utilization rate of the warehouse, etc., thereby generating simulation statistical analysis results of the actual warehouse. In order to facilitate user understanding, these simulation data can also be presented and stored in the form of charts or reports, so as to facilitate users to analyze the delivery efficiency of warehousing logistics.
[0177] In a possible implementation, in order to make the warehouse logistics simulation more realistic and referenceable, therefore, in the embodiment of the present application, the CAD floor plan of the actual warehouse provided by the user is used as the original image of the simulated warehouse layout map of the warehouse logistics simulation, and then, based on the original image, a simulated warehouse for warehouse simulation is constructed. Figure 5 The figure is a flow chart of building a simulation warehouse provided in an embodiment of the present application.
[0178] Step 501: Identify the input warehouse layout diagram of the actual warehouse and obtain the building layout information of the actual warehouse.
[0179] In an embodiment of the present application, the building layout information may include the position information of each actual building element in the actual warehouse. Specifically, the building layout information of the actual warehouse may be obtained by performing image recognition on the warehouse layout diagram of the input actual warehouse, for example, by performing image recognition on the CAD floor plan of the input actual warehouse. The position information of the actual building elements may be represented by coordinates in the constructed coordinate system. For example, if each building element includes a wall, the position information of each building element may include the coordinates of the wall. The CAD floor plan of the actual warehouse may be represented as follows: Figure 4 As shown in the CAD floor plan, the actual warehouse contains 4 rooms, A, B, C, and D. The black lines in the figure are the locations of the warehouse walls. Of course, if there is no CAD floor plan of the actual warehouse provided by the user, the commonly used warehouse floor plan template can also be used as the original drawing of the simulated warehouse layout for warehousing and logistics simulation.
[0180] Further, such as Figure 6 As shown, it is a schematic diagram of a process of obtaining the building layout information of an actual warehouse through image recognition provided by an embodiment of the present application.
[0181] Step 5011: Perform building wall recognition on the warehouse layout diagram of the actual warehouse to obtain a binary feature image.
[0182] In the embodiment of the present application, pixels with the first value in the binary feature image are building wall pixels, and pixels with the second value are non-building wall pixels.
[0183] Specifically, the warehouse layout diagram may be preprocessed first. For example, image denoising, image enhancement, and grayscale conversion may be used to highlight the walls in the warehouse layout diagram, so that the image display effect is clearer.
[0184] Then, the preprocessed warehouse layout map is converted into a binary feature image by using a threshold segmentation method, wherein the segmentation threshold T in the threshold segmentation method can be set to be determined by the average gray value of the wall and the average gray value of the background, and the background can be the image part other than the wall in the warehouse layout map. For example, when the average gray value of the wall is 200 and the average gray value of the background is 30, the segmentation threshold T can be set to (200+20)÷2=110, so the pixel points with gray values greater than 110 in the warehouse layout map can be set to a first value (for example, set to 1), and the pixel points with gray values less than 110 can be set to a second value (for example, set to 0), and then the warehouse layout map can be converted into a binary feature image.
[0185] Step 5012: Perform edge detection on the binary feature image to obtain edge information of the building walls in the warehouse layout diagram.
[0186] Specifically, the binary feature image can be enlarged or reduced by corrosion or dilation, and then the pixel points with obvious brightness changes in the warehouse layout map can be marked by edge detection to obtain the edge information of the building wall in the warehouse layout map.
[0187] Step 5013: Based on the building wall edge information and the constructed coordinate system, the building wall coordinate information of the actual warehouse is obtained.
[0188] Specifically, since the building walls can basically be simplified to consist of straight lines, the Hough transform can be used based on the edge information of the building walls to transform the building walls into straight lines composed of multiple mathematical equations in the constructed coordinate system, thereby obtaining the actual building layout information of the warehouse.
[0189] Step 502: Generate a simulated building layout that is identical to the real building layout of the actual warehouse based on the building layout information.
[0190] In the embodiment of the present application, each simulated element of the simulated warehouse corresponds one-to-one to each real element of the actual warehouse.
[0191] In actual application, after obtaining the building layout information of the actual warehouse, that is, after knowing the building wall coordinate information of the actual warehouse, a simulated building layout that is the same as the actual building layout of the actual warehouse can be generated in the constructed coordinate system based on these building wall coordinate information.
[0192] Step 503: In response to the simulation element adding operation performed on each simulation element of the simulated warehouse, each simulation element of the simulated warehouse is added to the simulated building layout to obtain a simulated warehouse of the actual warehouse.
[0193] In actual applications, in general, there should be shelves, goods, AGV carts and various equipment in the actual warehouse. Therefore, when conducting warehouse logistics simulation, in order to make the simulation more in line with the actual logistics situation of the enterprise, simulation elements corresponding to the real elements in the actual warehouse should be added to the generated simulation building layout, such as various types of simulated shelves, simulated containers, simulated logistics vehicles, simulated logistics packaging tables, simulated buildings, simulated people, simulated cargo boxes, simulated cargo and other simulation elements. Figure 7As shown, a schematic diagram of a simulated warehouse with simulation elements added to an embodiment of the present application is provided. In the simulated warehouse, the rectangles in the form of a network are simulated shelves, the pentagons, five-pointed stars and ovals in the form of shadows are simulated goods, and the carts in the shape of trucks are simulated logistics vehicles. These simulation elements can be stored in the resource file library of the warehouse task allocation scheme determination system. In order to ensure the authenticity of the warehouse logistics scene, these simulation elements are presented in a three-dimensional form and established according to the actual data of various elements in reality using 3Dmax software at a ratio of 1:1, so that they can be used to construct a three-dimensional storage warehouse logistics scene in Unity3D. In addition, the model resource library can continuously add elements according to actual needs.
[0194] Specifically, when it is necessary to add a simulation element, the user can perform a simulation element adding operation, and then the terminal will respond to the simulation element adding operation and add the corresponding simulation element in the simulated terrain, thereby obtaining a complete simulation warehouse. For example, the simulation element adding operation can be a user "dragging" the icon corresponding to the simulation element from the simulation element menu bar to the simulated terrain, or "right-clicking" the icon corresponding to the simulation element in the simulation element menu bar and selecting Add, so that the corresponding simulation element is added to the simulated terrain.
[0195] In the application embodiment, after obtaining a complete simulation warehouse, corresponding attribute parameters can be configured for each simulation element contained in the simulation warehouse. For example, the walking speed and picking time of the staff, the driving speed of the simulated logistics vehicle, the cargo loading and unloading speed, the charging speed and discharging speed of the simulated logistics vehicle, the number of staff, the number of simulated logistics vehicles, the mathematical model constraints, and the configuration information of the system database. These attribute parameters can be stored in the configuration file library of the warehouse task allocation scheme determination system. Users can realize dynamic editing of static models, parameter tuning of different methods, and modification and improvement of models by editing the configuration files in the configuration file library. Then, when using, you can choose to load the configuration file used for this simulation, and then configure the corresponding attribute parameters.
[0196] In the embodiment of the present application, in order to prevent the "deadlock phenomenon" of the simulated logistics vehicle during the loading process, in addition to setting the starting area and the packaging area, a waiting area can also be set in the constructed simulated warehouse, wherein the packaging area is an area for packaging and packaging goods, and the waiting area is an area where the simulated logistics vehicle queues and waits before loading goods. Figure 8As shown in the figure, it is a schematic diagram of setting a waiting area provided by an embodiment of the present application. In the figure, the rectangular box shown as gray shadow is the waiting area. One room can correspond to one packaging area, so packaging areas A, B, C, and D each correspond to a waiting area. Of course, in actual application, each packaging area can set the loading area according to actual needs. Since the path planning process corresponding to each pending order is similar, the following is a specific introduction to the path planning of pending order A as an example. Fig. 9 The figure is a schematic diagram of a process flow of planning a path provided in an embodiment of the present application, and the specific process flow is described as follows:
[0197] Step 901: Determine the location information of each cargo in the pending order A and the number of simulated logistics vehicles in each waiting area.
[0198] In the embodiment of the present application, since the planned path corresponding to the pending order A is a pickup path for picking up each of the goods in the pending order A, when determining the planned path corresponding to the pending order A, it is necessary to determine the location information of each of the goods in the pending order A. In addition, in order to simulate the "deadlock phenomenon" of the logistics vehicle during the loading process and to shorten the pickup time, the number of simulated logistics vehicles in each waiting area needs to be considered when planning the path. When the number of simulated logistics vehicles in the waiting area is greater than a certain set threshold, the simulated logistics vehicle corresponding to the pending order A cannot go to the waiting area to queue up and wait.
[0199] Step 902: Generate a planned path corresponding to the order A to be executed according to the starting area, the packaging area, the location information of each cargo in the order A to be executed, and the number of simulated logistics vehicles in each waiting area.
[0200] In the embodiment of the present application, since the goods included in the to-be-executed order A may be one or more, when performing path planning, the planning process can be specifically divided into the following two types.
[0201] The first is the planning process corresponding to the case where "the pending order A contains only one item", such as Fig.10 FIG. 1 is another flow chart of planning a path provided in an embodiment of the present application, and the specific flow chart is described as follows:
[0202] Step 1001: Determine the first cargo that is closest to the starting area and the second cargo that is closest to the packaging area among the cargoes of the order A to be executed.
[0203] Step 1002: Determine whether the first product and the second product are the same.
[0204] Step 1003: If it is determined that the first cargo is the same as the second cargo, a planned path corresponding to the to-be-executed order A is generated according to the starting area, the loading area and the packaging area of the first cargo.
[0205] In the embodiment of the present application, when it is determined that the first and second goods are the same, that is, the pending order A contains only one good, the planned path corresponding to the pending order A can be directly generated according to the starting area, the loading area of the first goods, and the packaging area. The planned path corresponding to the pending order A is "starting area-loading area of the first goods-packaging area", so that the picking process of the one good contained in the pending order A can be completed, wherein the packaging area corresponds to the packing table used for packing goods in the actual warehouse. Of course, the termination area can also be set in the simulated warehouse, then the planned path corresponding to the pending order A becomes "starting area-loading area of the first goods-packaging area-termination area".
[0206] The second type is the planning process when "there are multiple goods in the pending order A", that is, it has been determined that the first and second goods in the pending order A are different. Therefore, when planning the route, it is necessary to plan the route according to the specific situation of each good in the pending order A (whether it has been picked up and the distance between the good and other goods). Since the planning process of each good in the pending order A is similar, here we take the good 1 in the pending order A as an example for a specific introduction. Fig.11 FIG. 1 is another flow chart of planning a path provided in an embodiment of the present application, and the specific flow chart is described as follows:
[0207] Step 1101: Determine the distance between the loading area of the cargo 1 in the pending order A and the loading areas of each cargo in the unplanned path of the pending order A.
[0208] In the embodiment of the present application, the planned path can be determined by the "shortest pickup path" method. Furthermore, when determining the shortest path, the planned path corresponding to the goods 1 can be determined by the shortest path between the two goods. Therefore, for the goods 1, it is necessary to determine the distance between the loading area of the goods 1 and the loading area of each of the goods in the unplanned path of the to-be-executed order A. Specifically, the shortest path algorithm such as the Dijkstra algorithm, the Bellman-Ford algorithm and the Floyd algorithm can be used to determine the shortest distance.
[0209] Step 1102: Determine the next cargo of cargo 1 according to the determined distances.
[0210] In this embodiment of the present application, the cargo that has the shortest distance to cargo 1 and is not included in the planned route can be determined as the next cargo of cargo 1.
[0211] Step 1103: Determine whether the next item of item 1 is the last item of order A to be executed.
[0212] In the embodiment of the present application, if the next cargo of cargo 1 is the last cargo of pending order A, then it means that the pickup route has been determined for all cargoes in pending order A. On the contrary, if the next cargo of cargo 1 is not the last cargo of pending order A, then it means that there are still cargoes in pending order A that have not been planned for the route, and then, it is necessary to continue to plan the routes for these cargoes that have not been planned for the route.
[0213] Step 1104: If it is determined that the next product of product 1 is not the last product of order A to be executed, then product 1 is added to the picking sequence of order A to be executed, the next product is determined to be product 1, and step 1101 is executed.
[0214] In an embodiment of the present application, when picking up goods, the selected simulated logistics vehicle corresponding to the pending order A can pick up the goods in sequence according to the picking sequence of the pending order A, thereby completing the process of picking up all the goods in the pending order A.
[0215] Step 1105: If it is determined that the next cargo of cargo 1 is the last cargo of order A to be executed, a planned path corresponding to order A to be executed is generated according to the starting area, the loading area and the packaging area of each cargo in the picking sequence of order A to be executed.
[0216] In an embodiment of the present application, after determining that the next cargo of cargo 1 is the last cargo of order A to be executed, that is, after determining the order of picking up the cargoes of order A to be executed, the planned path corresponding to order A to be executed can be generated based on the starting area and the loading area and packaging area of these cargoes. For example, order A to be executed has 3 cargoes, namely cargo A1, cargo A2 and cargo A3, wherein their picking sequences are respectively “cargo A2-cargo A1-cargo A3”, then the planned path corresponding to order A to be executed is “starting area-loading area of cargo A2-loading area of cargo A1-loading area of cargo A3-packaging area”. Of course, if the user is not satisfied with the planned path obtained by planning, he or she can also set the pickup route of the simulated logistics vehicle in a customized way.
[0217] In a possible implementation, in the embodiment of the present application, in addition to determining the planned path by the "shortest path", the planned path can also be determined by the "shortest pickup time", that is, the planned path corresponding to the final delivery of Goods 1 can be determined by the shortest pickup time between two goods, that is, the next goods of Goods 1 are the goods with the shortest pickup time between Goods 1. Since the planning process of each good in the pending order A is similar, Goods 1 in the pending order A is also taken as an example for specific introduction. Fig.12 As shown, it is a schematic diagram of a process for determining the next cargo according to the pickup time provided by an embodiment of the present application. The specific process is described as follows:
[0218] Step 1201: Determine the time required to pick up goods from the loading area of cargo 1 to the loading areas of the unplanned paths of order A based on the determined distances and the number of simulated logistics vehicles in the waiting areas of the goods of order A to be executed.
[0219] In an embodiment of the present application, the time for picking up goods can be divided into two parts. The first part is the "driving time" of the simulated logistics vehicle traveling on the path, and the second part is the "queuing time" of the simulated logistics vehicle waiting in line in the waiting area.
[0220] Among them, the "driving time" is related to the driving speed and driving distance of the simulated logistics vehicle. Therefore, the "driving time" between the cargo 1 and each cargo on the unplanned path of the order A to be executed can be determined by the quotient of these distances and the driving speed of the simulated logistics vehicle.
[0221] The "queue time" can be calculated using the "limited capacity queue model". Specifically, the "queue time" can be calculated based on the number of simulated logistics vehicles in the waiting area for each cargo that has not been planned, the arrival rate of simulated logistics vehicles, and the service rate of simulated logistics vehicles. Fig.13 , which is a schematic diagram of modeling the waiting area provided by the embodiment of the present application using a finite capacity queuing model. In this model, the maximum number of simulated logistics vehicles waiting in the waiting area for each cargo whose route is not planned is K. Specifically, the probability P when the number of simulated logistics vehicles waiting in the waiting area is n n The following formula can be used to solve it:
[0222] P n =ρ n P 0 ,n=1,2,…,K
[0223] Among them, K is the maximum number of simulated logistics vehicles waiting in the waiting area, ρ = λ / μ, λ and μ are the arrival rate and service rate of the simulated logistics vehicle in the waiting area, respectively. Specifically, the service rate of the simulated logistics vehicle is the probability that the simulated logistics vehicle can load goods in the loading area corresponding to the waiting area.
[0224] It can be seen that since the number of simulated logistics vehicles waiting in a waiting area is limited, when the number of simulated logistics vehicles waiting in the waiting area reaches the maximum value, the simulated logistics vehicle cannot enter the waiting area. In other words, the probability that the simulated logistics vehicle cannot enter the waiting area is P. K .
[0225] Then, the average number of simulated logistics vehicles waiting in the waiting area is L q The following formula can be used to solve it:
[0226]
[0227] Furthermore, the average waiting time W of the simulated logistics vehicles waiting in the waiting area is q The following formula can be used to solve it:
[0228] W q =L q / λ e =L q / λ(1-P K )
[0229] λ e is the effective arrival rate of the simulated logistics vehicle, where λ e =λ(1-P K ).
[0230] In an embodiment of the present application, the average waiting time of the simulated logistics vehicles waiting in line in the waiting area can be used as the "queue time" corresponding to the selected simulated logistics vehicle of the order A to be executed in the waiting area for each cargo without a planned route.
[0231] In addition, in actual application, since the pickup and unloading time also correspond to a certain length of time, and since the pickup and unloading time usually do not fluctuate greatly, in the embodiment of the present application, it can be assumed that the pickup time and unloading time are negligible. Of course, the pickup time and unloading time can also be set to a fixed value according to the needs of the user.
[0232] Step 1202: Determine the next cargo of cargo 1 according to the determined time durations.
[0233] In one possible implementation, in the process of selecting a simulated logistics vehicle to simulate picking up goods along the corresponding planned path, there may be some emergencies. For example, the selected simulated logistics vehicle A and the selected simulated logistics vehicle B are traveling in opposite directions on the same one-way path and are about to collide. Or, when the number of simulated logistics vehicles in the waiting area for the next cargo of the selected simulated logistics vehicle A exceeds the set threshold, the selected simulated logistics vehicle A cannot go directly to the waiting area for the next cargo to wait. In an embodiment of the present application, in order to avoid these situations, when picking up goods according to the planned path, the corresponding planned path can be "dynamically" modified according to the actual situation, thereby improving the efficiency of picking up goods. Since the picking up process of each selected simulated logistics vehicle is similar, the loading area 1 of the selected simulated logistics vehicle A is also taken as an example for specific introduction. Fig.14 As shown, it is a schematic diagram of executing simulated pickup provided in an embodiment of the present application, and the specific process is described as follows:
[0234] Step 1401: Determine whether there is another selected simulated logistics vehicle picking up goods in the next loading area of loading area 1 of the selected simulated logistics vehicle A.
[0235] In the embodiment of the present application, since it is not certain whether there are other selected simulated logistics vehicles in the next loading area picking up goods when picking up goods, in order to avoid simulated logistics vehicle A going directly to the next loading area to pick up goods, causing simulated logistics vehicle A to be deadlocked and affecting normal loading, before simulated logistics vehicle A enters the next loading area to load goods, it is also necessary to determine whether there are other selected simulated logistics vehicles in the next loading area picking up goods.
[0236] Step 1402: If it is determined that there are other selected simulated logistics vehicles in the next loading area that are picking up goods, then the waiting area for the selected simulated logistics vehicle A to go to is determined, and a waiting instruction is issued to the selected simulated logistics vehicle A to instruct the selected simulated logistics vehicle A to go to the determined waiting area to queue up and wait.
[0237] In an embodiment of the present application, after the waiting area for the selected simulated logistics vehicle A to go to is determined and it enters the waiting area, the queue status of the selected simulated logistics vehicle A can be determined at regular intervals. When it is determined that no other selected simulated logistics vehicles are loading goods in the loading area corresponding to the waiting area, and the selected simulated logistics vehicle A is at the first in the queue, the selected simulated logistics vehicle A can be allowed to enter the loading area corresponding to the waiting area to pick up goods.
[0238] Step 1403: If it is determined that there is no other selected simulated logistics vehicle loading goods in the next loading area, a loading instruction is sent to the selected simulated logistics vehicle A to instruct the selected simulated logistics vehicle A to enter the next loading area to load goods.
[0239] In a possible implementation manner, since the process of determining the waiting area for each selected simulated logistics vehicle is similar, the loading area 1 of the selected simulated logistics vehicle A is taken as an example for description. Fig.15 As shown, it is a schematic diagram of a process for determining a waiting area provided in an embodiment of the present application, and the specific process is described as follows:
[0240] Step 1501: Determine whether the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area exceeds a set threshold.
[0241] For example, assuming that the next loading area of the selected simulated logistics vehicle A is loading area 2, and the waiting area of loading area 2 can accommodate up to 5 simulated logistics vehicles waiting in queue, then the threshold can be set to 4. Before the selected simulated logistics vehicle A goes to the waiting area to queue, it will be determined whether the number of selected simulated logistics vehicles waiting in queue in the waiting area corresponding to loading area 2 exceeds 4.
[0242] Step 1502: If it is determined that the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area does not exceed the set threshold, the waiting area to which the selected simulated logistics vehicle A goes is determined to be the waiting area of the next loading area.
[0243] Continuing with the above example, if the number of selected simulated logistics vehicles waiting in the waiting area of loading area 2 does not exceed 4, then it can be determined that the waiting area to which the selected simulated logistics vehicle A goes is the waiting area of loading area 2.
[0244] Step 1503: If it is determined that the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area exceeds the set threshold, the waiting area to which the selected simulated logistics vehicle A goes is determined based on whether the current loading area of the selected simulated logistics vehicle A is adjacent to the next loading area.
[0245] Continuing with the above example, when the number of selected simulated logistics vehicles waiting in the waiting area of loading area 2 of the selected simulated logistics vehicle A exceeds 4, it can be specifically divided into the following two cases to determine the waiting area to which the selected simulated logistics vehicle A goes.
[0246] The first case: the loading area 1 and the loading area 2 of the selected simulated logistics vehicle A are not adjacent.
[0247] Specifically, the selected simulated logistics vehicle A can be controlled to go to the waiting area of the adjacent loading area of loading area 2 to wait. For example, if the adjacent loading area of loading area 2 is loading area 3, the selected simulated logistics vehicle A can go to the waiting area of loading area 3 to wait until the number of other selected simulated logistics vehicles waiting in the waiting area of loading area 2 does not exceed 4, and then the selected simulated logistics vehicle A can go to the waiting area of loading area 2 to wait in the waiting area.
[0248] The second case: the loading area 1 and the loading area 2 of the selected simulated logistics vehicle A are adjacent.
[0249] Specifically, the selected simulated logistics vehicle A can be allowed to go to the end of the queue in the waiting area of loading area 1 to wait. During the waiting process, it can be continuously checked whether the number of other selected simulated logistics vehicles waiting in the waiting area of loading area 2 exceeds 4. After determining that it does not exceed 4, a control instruction can be sent to the selected simulated logistics vehicle A to make the selected simulated logistics vehicle A go from the waiting area of loading area 1 to the waiting area of loading area 2 to wait.
[0250] In a possible implementation, a simulation display interface can also be designed for the warehouse simulation, and then, when the element state of the simulation element in the simulated warehouse changes, the display state of the icon corresponding to the simulation element on the simulation display interface corresponding to the simulated warehouse can be controlled to change accordingly. For example, if the selected simulated logistics vehicle A is in a driving state, then the icon corresponding to the selected simulated logistics vehicle A on the simulation display interface corresponding to the simulated warehouse can also be moved accordingly.
[0251] In addition, after the simulation is finished, the simulation data of each simulated distribution order and the simulation statistical analysis results of the actual warehouse can also be displayed on the simulation display interface. For example, the simulation data of each simulated distribution order and the simulation statistical analysis results are presented on the simulation display interface in the form of a chart or report for the user to view.
[0252] In order to more clearly understand the present application, the above embodiments are described in detail below in conjunction with specific warehousing and logistics scenarios.
[0253] In summary, in the embodiments of the present application, the processes of generating distribution orders, issuing pending orders, allocating logistics vehicles, planning routes, and picking up goods according to the planned routes in real warehousing and logistics can be simulated based on the constructed simulation warehouse, and after comprehensive analysis of the simulation data generated by these simulation processes, the simulation statistical analysis results of the actual warehouse can be obtained. In other words, the simulation method based on the warehousing and logistics can comprehensively evaluate and optimize the warehousing and logistics corresponding to the actual warehouse, so that before the enterprise deploys the new warehousing and logistics solution, it can provide the enterprise with a detailed analysis report of the new warehousing and logistics solution, thereby shortening the verification cycle of the new warehousing and logistics solution, helping enterprise decision makers to make effective decisions, so as to determine the best warehousing and logistics solution, and thus reduce decision-making risks and costs.
[0254] like Fig.16 As shown, based on the same inventive concept, the embodiment of the present application provides a warehouse logistics simulation device 160, which includes:
[0255] The order generation module 1601 is used to generate at least one simulated distribution order according to the characteristic information of each commodity in the simulated warehouse of the actual warehouse and the set order generation strategy, wherein the characteristic information of each commodity includes location information and quantity information;
[0256] The order issuing module 1602 is used to issue at least one simulated distribution order according to a preset order issuing strategy to obtain at least one order to be executed;
[0257] The simulated pickup module 1603 is used to allocate a selected simulated logistics vehicle to at least one pending order according to the status information of each simulated logistics vehicle, generate a planned path corresponding to at least one pending order according to the location information of each cargo in at least one pending order, call each selected simulated logistics vehicle to perform simulated pickup according to the corresponding planned path, and record the simulation data generated by each selected simulated logistics vehicle during the simulated pickup process;
[0258] The data analysis module 1604 is used to statistically analyze the simulation data of at least one simulated distribution order after executing at least one simulated distribution order, and generate simulation statistical analysis results of the actual warehouse.
[0259] In a possible implementation, the device further includes a simulation warehouse construction module 1605, wherein the simulation warehouse construction module 1605 is used to:
[0260] Recognize the input warehouse layout diagram of the actual warehouse, and obtain the building layout information of the actual warehouse, where the building layout information includes the location information of each actual building element in the actual warehouse;
[0261] Generate a simulated building layout that is identical to the real building layout of an actual warehouse based on the building layout information;
[0262] In response to the simulation element adding operation performed on each simulation element of the simulated warehouse, each simulation element of the simulated warehouse is added to the simulated building layout to obtain a simulated warehouse of the actual warehouse, and each simulation element of the simulated warehouse corresponds one-to-one to each real element of the actual warehouse.
[0263] In a possible implementation, the simulation pickup module 1603 is specifically configured to:
[0264] Determine the location information of each of the goods in each of the at least one pending order, and the number of simulated logistics vehicles in each waiting area;
[0265] A planned path corresponding to at least one order to be executed is generated according to the starting area, the packaging area, the location information of each cargo in each order to be executed, and the number of simulated logistics vehicles in each waiting area.
[0266] In a possible implementation, the simulation pickup module 1603 is specifically configured to:
[0267] For each pending order in at least one pending order, perform:
[0268] Determine, among the goods of the current order to be executed, a first good that is closest to the starting area and a second good that is closest to the packaging area;
[0269] determining whether the first good is identical to the second good;
[0270] If it is determined that the first cargo is the same as the second cargo, a planned path corresponding to the current order to be executed is generated according to the starting area, the loading area and the packaging area of the first cargo.
[0271] In a possible implementation, the simulation pickup module 1603 is specifically configured to:
[0272] If it is determined that the first product is different from the second product, then for each product of the current pending order, execute:
[0273] Determine the distance between the loading area of the current goods and the loading areas of each of the goods of the current pending order that are not on the planned path;
[0274] Determine the next cargo of the current cargo according to each determined distance;
[0275] Determine whether the next item of the current item is the last item of the current order to be executed;
[0276] If it is determined that the next cargo of the current cargo is not the last cargo of the current order to be executed, the current cargo is added to the pickup sequence of the current order to be executed, the next cargo is determined as the current cargo, and the step of determining the distance between the loading area of the current cargo and the loading areas of each cargo of the current order to be executed that is not on the planned path is performed;
[0277] If it is determined that the next cargo of the current cargo is the last cargo of the current order to be executed, a planned path corresponding to the current order to be executed is generated according to the starting area, the loading area and the packaging area of each cargo in the pickup sequence of the current order to be executed.
[0278] In a possible implementation, the simulation pickup module 1603 is specifically configured to:
[0279] Determine the time for picking up goods from the loading area of the current goods to the loading area of each of the goods on the unplanned path of the current order to be executed according to the determined distances and the number of simulated logistics vehicles in the waiting area of each of the goods of the current order to be executed;
[0280] The next cargo for the current cargo is determined based on the determined durations.
[0281] In a possible implementation, the simulation pickup module 1603 is specifically configured to:
[0282] Selecting at least one available simulated logistics vehicle in an idle state from among the simulated logistics vehicles according to the state information of each simulated logistics vehicle, where the idle state includes an uncharged state and a non-queued waiting state;
[0283] According to the remaining power of at least one available simulated logistics vehicle and the generation time of each of the at least one to-be-executed order, a selected simulated logistics vehicle is allocated to each of the at least one to-be-executed orders.
[0284] In a possible implementation, the simulation pickup module 1603 is specifically configured to:
[0285] For each selected simulated logistics vehicle, execute:
[0286] Determine whether there is another selected simulated logistics vehicle picking up goods in the next loading area of the current loading area of the currently selected simulated logistics vehicle;
[0287] If it is determined that there are other selected simulated logistics vehicles picking up goods in the next loading area, the waiting area for the currently selected simulated logistics vehicle to go to is determined, and a waiting instruction is issued to the currently selected simulated logistics vehicle to instruct the currently selected simulated logistics vehicle to go to the determined waiting area to queue up and wait;
[0288] If it is determined that there is no other selected simulated logistics vehicle in the next loading area for loading goods, a loading instruction is sent to the currently selected simulated logistics vehicle to instruct the currently selected simulated logistics vehicle to enter the next loading area for loading goods.
[0289] In a possible implementation, the simulation pickup module 1603 is specifically configured to:
[0290] determining whether the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area exceeds a set threshold;
[0291] If it is determined that the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area does not exceed the set threshold, the waiting area to which the currently selected simulated logistics vehicle is heading is determined to be the waiting area of the next loading area;
[0292] If it is determined that the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area exceeds the set threshold, the waiting area to which the currently selected simulated logistics vehicle goes is determined based on whether the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area.
[0293] In a possible implementation, the simulation pickup module 1603 is specifically configured to:
[0294] Determine whether the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area;
[0295] If it is determined that the current loading area of the currently selected simulated logistics vehicle is not adjacent to the next loading area, then the waiting area to which the currently selected simulated logistics vehicle is heading is determined to be the waiting area of the adjacent loading area of the next loading area;
[0296] If it is determined that the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area, then the waiting area to which the currently selected simulated logistics vehicle is heading is determined to be the waiting area of the current loading area.
[0297] In a possible implementation, the device further includes a display module 1606, wherein the display module 1606 is configured to:
[0298] After monitoring the element status of the simulation element in the simulation warehouse to change, the display status of the icon corresponding to the changed simulation element is displayed on the simulation display interface corresponding to the simulation warehouse; or,
[0299] The simulation display interface displays simulation data of at least one simulated distribution order and simulation statistical analysis results of an actual warehouse.
[0300] The device can be used to perform Figure 3 to Figure 15Therefore, for the functions that can be realized by each functional module of the device, reference can be made to Figure 3 to Figure 15 The description of the embodiment shown is not repeated here. It should be noted that: Fig.16 The functional modules shown in the dotted boxes are non-essential functional modules of the device.
[0301] In one possible embodiment, Fig.16 Based on the modules of the warehouse logistics simulation device 160, a warehouse logistics simulation system 170 for warehouse logistics simulation can be constructed by adding a system configuration file library 1701, a system resource file library 1702 and a simulation database 1703. Fig.17 As shown, it is a schematic diagram of the architecture of the warehouse logistics simulation system provided in the embodiment of the present application. Among them, the above-mentioned various units and libraries can be deployed in the above-mentioned terminal 20 or server 21, or partially deployed in the terminal 20 and the other partially deployed in the server 21, and the embodiment of the present application does not limit this.
[0302] The system configuration file library 1701 can be used to store the attribute parameters corresponding to each simulation element, such as: the walking speed and picking time of the staff, the driving speed of the simulated logistics vehicle, the cargo loading and unloading speed, the charging speed and discharging speed of the simulated logistics vehicle, the number of staff, the number of simulated logistics vehicles, the constraints of the mathematical model for generating the distribution order, and the configuration information of the system database, etc. The user can edit the configuration files in the system configuration file library 1701 to realize the dynamic editing of the attribute parameters of each simulation element, the parameter tuning of different order generation strategies and order delivery strategies, and the modification and improvement of the mathematical model.
[0303] The system resource file library 1702 can be used to store model resources related to various types of simulated shelves, simulated containers, simulated logistics vehicles, simulated logistics packaging platforms, simulated buildings, simulated people, simulated cargo boxes, simulated cargo, etc. In order to ensure the authenticity of the warehousing and logistics scenes, these simulated elements are based on the actual data of each real element in the actual scene and are constructed using 3D Studio Max software at a 1:1 ratio.
[0304] The simulation database 1703 can be used to store the simulation data and simulation results generated during the entire simulation process.
[0305] In a possible implementation, when a user needs to simulate a new warehousing and logistics plan, the simulation warehouse construction module 1605 can construct a corresponding simulation warehouse according to the input CAD floor plan of the actual warehouse, and then, based on the system resource file library 1702, corresponding simulation elements (such as simulated shelves and simulated logistics vehicles, etc.) can be added to the simulation warehouse, and the system configuration file library 1701 can be used to configure the attribute parameters corresponding to the actual warehouse for the added simulation elements (for example, configuring the driving speed and quantity of the simulated logistics vehicles, etc.), and then, the order generation module 1601 generates a simulated distribution order, and the order issuance module 1602 is used to issue the generated simulated distribution order to each selected simulated logistics vehicle, and based on the simulation pickup module 1603, a corresponding distribution path can be planned for each selected simulated logistics vehicle, and the determined distribution path will be fed back to the order issuance module 1602, so that the order issuance module 1602 controls the simulated logistics vehicle to pick up each of the goods in the simulated distribution order according to the determined distribution path.
[0306] During the simulation process, the configuration files stored in the system configuration file library 1701 can be used to configure the method parameters used in the order generation module 1601, the order issuance module 1602 and the simulation pickup module 1603. Moreover, the simulation data generated during the entire simulation process will be stored in the simulation database 1703. The data analysis module 1604 can perform statistical analysis on the simulation data generated during the entire simulation process in real time, or can retrieve the corresponding simulation data from the simulation database 1703 for statistical analysis. After the statistical analysis, the simulation statistical analysis results can also be stored in the simulation database 1703.
[0307] See also Fig.18 Based on the same technical concept, an embodiment of the present application also provides a computer device 180, which may include a memory 1801 and a processor 1802.
[0308] The memory 1801 is used to store computer programs executed by the processor 1802. The memory 1801 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function, etc.; the data storage area may store data created according to the use of the computer device, etc. The processor 1802 may be a central processing unit (CPU), or a digital processing unit, etc. The specific connection medium between the memory 1801 and the processor 1802 is not limited in the embodiments of the present application. The embodiments of the present application are Fig.18 In the embodiment, the memory 1801 and the processor 1802 are connected via a bus 1803. The bus 1803 is Fig.18The connection between other components is shown by bold lines, and is not intended to be limiting. The bus 1803 can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Fig.18 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0309] The memory 1801 may be a volatile memory, such as a random-access memory (RAM); the memory 1801 may also be a non-volatile memory, such as a read-only memory, a flash memory, a hard disk drive (HDD) or a solid-state drive (SSD), or the memory 1801 is any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 1801 may be a combination of the above memories.
[0310] The processor 1802 is used to execute the following when calling the computer program stored in the memory 1801: Figure 3 to Figure 15 The method executed by the device in the illustrated embodiment.
[0311] In some possible implementations, various aspects of the method provided in the present application may also be implemented in the form of a program product, which includes a program code. When the program product is run on a computer device, the program code is used to enable the computer device to execute the steps of the method according to various exemplary embodiments of the present application described above in this specification. For example, the computer device may execute the following steps: Figure 3 to Figure 15 The method described in the embodiment shown.
[0312] It can be understood by those skilled in the art that all or part of the steps of the above-mentioned method embodiment can be completed by hardware related to program instructions, and the aforementioned program can be stored in a computer-readable storage medium. When the program is executed, the steps of the above-mentioned method embodiment are executed; and the aforementioned storage medium includes: various media that can store program codes, such as mobile storage devices, read-only memory (ROM), random access memory (RAM), magnetic disks or optical disks. Alternatively, if the above-mentioned integrated unit of the present invention is implemented in the form of a software function module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the embodiment of the present invention can be essentially or partly reflected in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the methods described in various embodiments of the present invention. And the aforementioned storage medium includes: various media that can store program codes, such as mobile storage devices, ROM, RAM, magnetic disks or optical disks.
[0313] Although the preferred embodiments of the present application have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications falling within the scope of the present application.
[0314] Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.
Claims
1. A simulation method for warehouse logistics, It is characterized in that The method comprises: At least one simulated distribution order is generated according to the characteristic information of each commodity in the simulated warehouse of the actual warehouse and the set order generation strategy, wherein the characteristic information of each commodity includes location information and quantity information; wherein the simulated warehouse is provided with a starting area, a packaging area and a waiting area; Issuing the at least one simulated distribution order according to a preset order issuance strategy to obtain at least one order to be executed; According to the status information of each simulated logistics vehicle, a selected simulated logistics vehicle is respectively allocated to the at least one order to be executed; Determine the location information of each of the goods in each of the at least one order to be executed, and the number of simulated logistics vehicles in each waiting area; generate a planned path corresponding to each of the at least one order to be executed according to the location information of each of the goods in the at least one order to be executed, the starting area, the packaging area, and the number of simulated logistics vehicles in each waiting area; Calling each selected simulated logistics vehicle to simulate picking up goods according to the corresponding planned paths, and recording the simulation data generated by each selected simulated logistics vehicle during the simulated picking up process; wherein, calling each selected simulated logistics vehicle to simulate picking up goods according to the corresponding planned paths includes: for each selected simulated logistics vehicle, executing: Determine whether there is another selected simulated logistics vehicle picking up goods in the next loading area of the current loading area of the currently selected simulated logistics vehicle; If it is determined that there are other selected simulated logistics vehicles in the next loading area that are picking up goods, then determine the waiting area for the currently selected simulated logistics vehicle to go to, and send a waiting instruction to the currently selected simulated logistics vehicle to instruct the currently selected simulated logistics vehicle to go to the determined waiting area to queue up and wait; If it is determined that there is no other selected simulated logistics vehicle in the next loading area that is loading goods, a loading instruction is sent to the currently selected simulated logistics vehicle to instruct the currently selected simulated logistics vehicle to enter the next loading area to load goods; After executing the at least one simulated distribution order, the simulation data of the at least one simulated distribution order is statistically analyzed to generate simulation statistical analysis results of the actual warehouse.
2. The method according to claim 1, It is characterized in that The method further comprises: Recognize the input warehouse layout diagram of the actual warehouse, and obtain the building layout information of the actual warehouse, wherein the building layout information includes the position information of each actual building element in the actual warehouse; generating a simulated building layout that is identical to the real building layout of the actual warehouse according to the building layout information; In response to the simulation element adding operation performed on each simulation element of the simulated warehouse, each simulation element of the simulated warehouse is added to the simulated building layout to obtain a simulated warehouse of the actual warehouse, and each simulation element of the simulated warehouse corresponds one-to-one to each real element of the actual warehouse.
3. The method according to claim 1, It is characterized in that If the simulated warehouse further includes a loading area corresponding to the waiting area, then generating a planned path corresponding to each of the at least one to-be-executed order according to the starting area, the packaging area, the location information of each of the goods in each of the at least one to-be-executed order, and the number of simulated logistics vehicles in each of the waiting areas includes: For each pending order in the at least one pending order, executing: Determine, among the goods of the current order to be executed, a first good that is closest to the starting area and a second good that is closest to the packaging area; determining whether the first commodity and the second commodity are the same; If it is determined that the first cargo is the same as the second cargo, a planned path corresponding to the current order to be executed is generated according to the starting area, the loading area of the first cargo, and the packaging area.
4. The method according to claim 3, It is characterized in that The method further comprises: If it is determined that the first commodity is different from the second commodity, then for each commodity of the current order to be executed, execute: Determine the distance between the loading area of the current goods and the loading areas of each of the goods in the unplanned path of the current order to be executed; Determine the next cargo of the current cargo according to the determined distances; Determine whether the next product of the current product is the last product of the current order to be executed; If it is determined that the next cargo of the current cargo is not the last cargo of the current order to be executed, the current cargo is added to the picking sequence of the current order to be executed, the next cargo is determined as the current cargo, and the step of determining the distance between the loading area of the current cargo and the loading areas of each cargo of the current order to be executed that is not on the planned path is performed; If it is determined that the next cargo of the current cargo is the last cargo of the current order to be executed, a planned path corresponding to the current order to be executed is generated according to the starting area, the loading area of each cargo in the picking sequence of the current order to be executed, and the packaging area.
5. The method according to claim 4, It is characterized in that The step of determining the next cargo of the current cargo according to the determined distances includes: Determine the time for picking up goods from the loading area of the current goods to the loading area of each of the goods on the unplanned path of the current order to be executed according to the determined distances and the number of simulated logistics vehicles in the waiting area of each of the goods of the current order to be executed; The next cargo of the current cargo is determined according to the determined time durations.
6. The method according to claim 1, It is characterized in that The method of allocating a selected simulated logistics vehicle to the at least one to-be-executed order according to the status information of each simulated logistics vehicle comprises: Selecting at least one available simulated logistics vehicle in an idle state from among the simulated logistics vehicles according to the state information of each simulated logistics vehicle, wherein the idle state includes an uncharged state and a non-queued waiting state; According to the remaining power of the at least one available simulated logistics vehicle and the generation time of each of the at least one to-be-executed order, a selected simulated logistics vehicle is allocated to each of the at least one to-be-executed order.
7. The method according to claim 1, It is characterized in that The step of determining the waiting area to which the currently selected simulated logistics vehicle is directed includes: Determining whether the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area exceeds a set threshold; If it is determined that the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area does not exceed the set threshold, then the waiting area to which the currently selected simulated logistics vehicle is heading is determined to be the waiting area of the next loading area; If it is determined that the number of selected simulated logistics vehicles waiting in the waiting area of the next loading area exceeds the set threshold, the waiting area to which the currently selected simulated logistics vehicle goes is determined based on whether the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area.
8. The method according to claim 7, It is characterized in that The step of determining the waiting area to which the currently selected simulated logistics vehicle is directed based on whether the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area comprises: Determine whether the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area; If it is determined that the current loading area of the currently selected simulated logistics vehicle is not adjacent to the next loading area, then the waiting area to which the currently selected simulated logistics vehicle is heading is determined to be the waiting area of the adjacent loading area of the next loading area; If it is determined that the current loading area of the currently selected simulated logistics vehicle is adjacent to the next loading area, then the waiting area to which the currently selected simulated logistics vehicle is heading is determined to be the waiting area of the current loading area.
9. The method according to claim 2, It is characterized in that The method further comprises: After monitoring that the element state of the simulation element in the simulation warehouse has changed, the display state of the icon corresponding to the changed simulation element is displayed on the simulation display interface corresponding to the simulation warehouse; or, The simulation display interface displays the simulation data of the at least one simulated distribution order and the simulation statistical analysis results of the actual warehouse.
10. A simulation device for warehouse logistics, It is characterized in that The device comprises: An order generation module, used to generate at least one simulated distribution order according to the characteristic information of each commodity in the simulated warehouse of the actual warehouse and the set order generation strategy, wherein the characteristic information of each commodity includes location information and quantity information; wherein the simulated warehouse is provided with a starting area, a packaging area and a waiting area; An order issuing module, used to issue the at least one simulated distribution order according to a preset order issuing strategy to obtain at least one order to be executed; The simulation pickup module is used to allocate a selected simulated logistics vehicle to the at least one pending order according to the status information of each simulated logistics vehicle; determine the location information of each cargo in each pending order of the at least one pending order, and the number of simulated logistics vehicles in each waiting area; generate the planned path corresponding to each of the at least one pending order according to the location information of each cargo in the at least one pending order, the starting area, the packaging area and the number of simulated logistics vehicles in the waiting area, call each selected simulated logistics vehicle to perform simulated pickup according to the corresponding planned path, and record the simulation data generated by each selected simulated logistics vehicle during the simulated pickup process; wherein, each selected simulated logistics vehicle is called according to the corresponding planned The method comprises: for each selected simulated logistics vehicle, determining whether there is another selected simulated logistics vehicle picking up goods in the next loading area of the current loading area of the currently selected simulated logistics vehicle; if it is determined that there is another selected simulated logistics vehicle picking up goods in the next loading area, determining the waiting area for the currently selected simulated logistics vehicle to go to, and sending a waiting instruction to the currently selected simulated logistics vehicle to instruct the currently selected simulated logistics vehicle to go to the determined waiting area to queue up and wait; if it is determined that there is no other selected simulated logistics vehicle loading goods in the next loading area, sending a loading instruction to the currently selected simulated logistics vehicle to instruct the currently selected simulated logistics vehicle to enter the next loading area to load goods; The data analysis module is used to statistically analyze the simulation data of the at least one simulated distribution order after executing the at least one simulated distribution order, and generate simulation statistical analysis results of the actual warehouse.
11. A computer device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, It is characterized in that When the processor executes the computer program, the steps of the method according to any one of claims 1 to 9 are implemented.
12. A computer storage medium having computer program instructions stored thereon, It is characterized in that When the computer program instructions are executed by a processor, the steps of the method according to any one of claims 1 to 9 are implemented.
Citation Information
Patent Citations
AGV path planning method and system
CN111290402A