A scheduling scheme optimization method for O2O shared transportation system
By constructing a transport path coding solution model and exchange point pair algorithm in the O2O shared transport system, the problem that the system is difficult to optimize the transport solution when facing a large number of transport tasks is solved, and the system is quickly selected and determined, which improves the system Efficiency and equipment utilization.
Patent Information
- Application Number
- CN202111635222.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-29
- Publication Date
- 2025-02-11
- Estimated Expiration
- 2041-12-29
AI Technical Summary
When faced with a large number of transportation tasks, existing O2O shared transportation systems are difficult to effectively handle and provide optimized transportation solutions. They usually rely on manager experience to make decisions and are inefficient.
By constructing a transport path coding solution model, the transport task is decomposed into a composable subtask by using the real-number coding method, forming a directed coding table, and using the exchange point pair algorithm to generate a variety of transport solutions to quickly select the best solution.
It realizes the rapid selection and determination of transportation solutions in the O2O shared transportation system, improves transportation efficiency and equipment utilization, and reduces equipment idle time.
Abstract
Description
Technical Field
[0001] The present application belongs to the field of O2O Internet of Things business dispatching technology, and in particular, relates to a dispatching scheme optimization method for an O2O shared dispatching system. Background Art
[0002] With the continuous development of the Internet of Things and the online interconnected sharing industry, the O2O multi-channel resource sharing management solution provides effective assistance for realizing the effective use of resources, reducing the cost of data management and use between channels, and improving the efficiency of enterprise operation and management. There are a large number of domestic e-commerce and small enterprises, and their business and service scope involves all aspects of people's life, work and study. Among them, the O2O shared transportation system provides an effective solution to reduce the transportation and management costs of individual practitioners. It can comprehensively utilize all the transportation resources in the sharing system, make full use of them, and achieve the purpose of improving equipment utilization and reducing equipment idle time, improving the efficiency of boring transportation in the system, etc. However, the basic functions of the current O2O shared transportation system are generally only to provide a simple interface and recommended data exchange and overall analysis capabilities. When random large-scale transportation tasks occur in the sharing system, it is often difficult to effectively handle and provide better transportation plan suggestions. Generally, managers can only rely on their experience to independently judge and decide on transportation plans, which is inefficient. Summary of the invention
[0003] The purpose of this application is to provide a method for quickly optimizing and determining a specific transportation plan for a shared transportation system, and for generating and optimizing a scheduling plan that provides an effective transportation reference plan.
[0004] To achieve the above objectives, this application adopts the following technical solutions.
[0005] A method for optimizing a dispatching scheme for an O2O shared dispatching system comprises the following steps:
[0006] Step A, construct a shared dispatching system dispatching path coding solution model, count and analyze the dispatching tasks in the shared dispatching system, decompose them into n combinable subtasks, form n pairs of arrays with the input points and output points of the subtasks, and use the real number coding method to form a coding sequence P = {1, 2, ...i..., n} corresponding to the n dispatching tasks, a coding table A = {0, 2, 4...2i...2n} corresponding to the n output points, and a coding table B = {1, 3, 5...2i+1...2n+1} corresponding to the n input points, where the output point code corresponding to the i-th subtask is 2i, and the corresponding input point code is 2i+1;
[0007] Step B. First, determine whether there are any planned subtasks in the shared dispatching system. If yes, place the outgoing and incoming point codes corresponding to the subtasks at the front and back of the directional code, and search whether there are any unassigned subtasks in the shared dispatching system within a fixed time period T. If yes, proceed to step B2; if no, call out the directional code;
[0008] Step D: For the directional codes obtained in the previous steps, based on the point pair exchange algorithm, the transfer-in and transfer-out points of any two transfer tasks are exchanged in pairs to obtain more transfer plans, and the capacities of the two transfer equipments during the execution of the two transfer tasks after the point pair exchange are compared, and the plans that exceed the allowable limit are eliminated;
[0009] Step E: The transportation plans composed of the aforementioned directed code sets are rapidly optimized by directly comparing the overall transportation paths or the total transportation time.
[0010] A further improvement or preferred implementation scheme of the above-mentioned scheduling scheme optimization method for the O2O shared transportation system further includes between step B and step D:
[0011] Step C, according to the order in which the subtasks are generated, extract the new subtasks generated within a fixed time period T, extract the call-out points and call-in points corresponding to the new subtasks in turn, form an initial call-out sequence according to the distance from each call-out point to the transfer starting point in order from far to near, and add the corresponding call-out point code to the front side of the directional code based on the order in the initial call-out sequence; extract all call-in points, eliminate the points that already exist in the code sequence, summarize the codes of the remaining call-in points, form an initial call-in sequence according to the distance from the transfer starting point in order from far to near, insert the corresponding call-in point code into the directional code based on the order in the initial call-in sequence, adjust the code sequence according to the above rules to ensure that the corresponding call-in point codes of all subtasks are located behind the corresponding call-out point codes; otherwise, swap the two codes; then call out each directional code that meets the rules after adjustment.
[0012] A further improvement or preferred implementation scheme of the above-mentioned scheduling scheme optimization method for the O2O shared transportation system further includes between step B and step D:
[0013] For known directional codes, two random coding elements are extracted from the coding sequence for replacement. According to the subtasks corresponding to the two coding elements, the corresponding other two coding elements are determined to generate new directional codes, ensuring that the corresponding input point codes of all subtasks are located behind the corresponding output point codes; otherwise, the directional code is discarded.
[0014] A further improvement or preferred implementation scheme of the above-mentioned scheduling scheme optimization method for the O2O shared transportation system, wherein the step E further includes the following contents:
[0015] Within a fixed time period T, when the shared dispatching system generates a new subtask in real time, and the codes corresponding to the input point and the output point of the subtask are both present in the directional coding scheme corresponding to a dispatching device that is currently dispatching, the following procedures are executed:
[0016] F1. Extract all directional codes containing the aforementioned transfer-in point and transfer-out point code pairs, and determine the corresponding transfer equipment according to the directional code pairs;
[0017] F2. Collect the execution status of the subtasks of the aforementioned transport equipment, and clear the completed subtask codes in the directional codes corresponding to each transport equipment;
[0018] F3. Update the cleared directional codes of the aforementioned transfer equipment, and select the transfer equipment corresponding to both the aforementioned transfer-in point and the transfer-out point in the directional codes;
[0019] F4. Extract the load of each transport equipment between the corresponding transfer-in point and transfer-out point in turn, select the transport equipment with the smallest load, and assign the transport task to the transport equipment;
[0020] In this process, it is also possible that the total load of the transport equipment with the smallest load exceeds the limit after obtaining the newly assigned transport task. To this end, the following optimization scheme can be adopted:
[0021] F40, after sequentially extracting the load of each transport equipment between the corresponding transfer-in point and the transfer-out point, arrange them in order from small to large according to their load;
[0022] F41, select the transport equipment with the smallest load, extract the subtasks of the transport equipment between the corresponding transfer-in point and the transfer-out point and add them to the new task list; arrange the new tasks in descending order according to the corresponding loads to generate a new task sequence; assign the new task at the front of the sequence, that is, the new task with the largest load, to the aforementioned transport equipment;
[0023] F42. Reorder all the transport equipment with corresponding input and output points according to the change of the load of the equipment; reselect the transport equipment with the smallest load and assign the transport task to the transport equipment; if the allocation result causes the capacity of the transport equipment to exceed the limit, return to step F41 until all new tasks are assigned.
[0024] Its beneficial effects are:
[0025] The scheduling scheme optimization method for the O2O shared transportation system of the present application, under the premise of considering the directional, traceable and correctable characteristics of the transportation task degree in the shared system, carefully encodes and manages the origin and destination points related to the transportation task, and constructs a directional coding method for the transportation task based on this, so as to convert the transportation task into a directional coding optimization and search work that is convenient for direct analysis and data processing, so that the transportation scheduling that is generally controlled and maintained mainly by the personal management experience of the manager is converted into a scheme that can be processed and optimized at high speed using machine language, and a method is provided for determining the best scheme under this idea and generating the specific details of the corresponding transportation scheme. The method is easy to implement and has good feasibility. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] This application does not have any drawings. DETAILED DESCRIPTION
[0027] The present application is described in detail below in conjunction with specific embodiments.
[0028] In the O2O shared transportation system, the transportation of materials between merchants involves multiple links of production or sales, which may be production materials or necessary service types. This application is mainly used for the dispatching behavior that considers the actual path between two points for the needs of material transfer and personnel dispatch, and does not include online transportation tasks such as online technical services or virtual asset transfers. Each material transportation task can be decomposed into several subtasks, each subtask involves an outbound transfer point and an inbound transfer point. For transportation tasks that are executed from the same outbound transfer point to multiple inbound transfer points at the same time, for the convenience of processing, this application regards it as multiple independent subtasks one-to-one between the outbound transfer point and each inbound transfer point. In the O2O shared transportation system, any outgoing point may be used as an incoming point in another subtask. Similarly, the incoming point in this transportation task may also become an outgoing point in the next transportation task. However, for any dispatching task, its outgoing point and incoming point are clear and have clear directions. The workload of each transportation task and the capacity of the transportation equipment are clear. The number and location of all outgoing and incoming points in the system can be directly obtained from the system. Therefore, the dispatching of transportation tasks in the shared transportation system can be regarded as the path and time optimization of the transportation equipment under the premise of considering the transportation load distribution and ensuring the transportation order.
[0029] Based on the above theoretical foundation, the specific steps of the O2O-based shared transportation system scheduling optimization method of this application are as follows:
[0030] Step A: Construct a shared transportation system transportation path coding solution model
[0031] Statistics and analysis of the transport tasks in the shared transport system are conducted, and the transport tasks are decomposed into n combinable subtasks. The input and output points of the subtasks are used to form n pairs of arrays. By using the real number coding method, the coding sequence P = {1, 2, ...i..., n} corresponding to the n subtasks, the coding table A = {0, 2, 4...2i...2n} corresponding to the n output points, and the coding table B = {1, 3, 5...2i+1...2n+1} corresponding to the n input points can be formed, where the output point code corresponding to the i-th subtask is 2i, and the corresponding input point code is 2i+1;
[0032] Then the transportation process of any transportation task can be represented by a certain directed coding table composed of the above codes, and in this directed coding, the input point code corresponding to any subtask must be located behind the corresponding output point code, otherwise the two codes need to be swapped;
[0033] Under the above coding rules, the directional coding rules can be used to determine the directional coding corresponding to any transport task. For the transport equipment that has not executed the transport task, its initial directional coding is first set to be empty. A feasible transport plan can be determined according to the occurrence of the transport task in the shared transport system. Specifically:
[0034] Step B. First, determine whether there are any planned subtasks in the shared dispatching system. If yes, place the outgoing and incoming point codes corresponding to the subtasks at the front and back of the directional code, and search whether there are any unassigned subtasks in the shared dispatching system within a fixed time period T. If yes, proceed to step B2; if no, call out the directional code;
[0035] Step C, according to the order in which the subtasks are generated, extract the new subtasks generated within a fixed time period T, extract the call-out points and call-in points corresponding to the new subtasks in turn, form an initial call-out sequence according to the distance from each call-out point to the transfer starting point in order from far to near, and add the corresponding call-out point code to the front side of the directional code based on the order in the initial call-out sequence; extract all call-in points, eliminate the points that already exist in the code sequence, summarize the codes of the remaining call-in points, form an initial call-in sequence according to the distance from the transfer starting point in order from far to near, insert the corresponding call-in point code into the directional code based on the order in the initial call-in sequence, adjust the code sequence according to the above rules, ensure that the corresponding call-in point codes of all subtasks are located behind the corresponding call-out point codes; otherwise, swap the two codes; then call out each directional code that meets the rules after adjustment;
[0036] Step D, based on the above B1 and B2, several directional codes are formed. For example, for a certain 5-time subtask, the corresponding outgoing point code is specified as {0,2,4,6,8}, and the corresponding incoming point code is {1,3,4,5,9}, which can form an optional transfer task execution code {0,1,2,3,4,5,6,7,8,9}. Limited by the transportation capacity of the transportation equipment, the transportation task will be divided and allocated as needed during the specific execution. For example, it will be divided into two tasks {0,1,2,3,4,5}+{6,7,8,9} to facilitate assignment to different transportation equipment. After all tasks are combined, the validity of the materials in the transportation task from the outgoing point to the incoming point can be guaranteed, but the allocation It is not necessarily the only or optimal transportation plan. Therefore, based on the point pair exchange algorithm, more transportation plans are obtained by exchanging the transfer-in and transfer-out points of any two transportation tasks in pairs. For example, the original transportation plan {0,1,2,3,4,5}+{6,7,8,9} can be obtained by exchanging the point pairs {2,3} and {6,7} to obtain a new transportation plan {0,1,6,7,4,5}+{2,3,8,9}. In this process, the material load may exceed the capacity of the transportation equipment during a certain transportation process during the operation of the equipment. Therefore, it is necessary to compare the capacity of the two transportation equipment during the execution of the two transportation tasks after the point pair exchange, and eliminate the plan where the subtask load exceeds the allowable limit.
[0037] In the actual implementation process, according to the actual system operation mode, a new dispatching plan can also be generated by exchanging internal elements. Specifically, for known directional codes, two random coding elements are extracted from the coding sequence for replacement, and the corresponding other two coding elements are determined according to the subtasks corresponding to the two coding elements to ensure that the corresponding input point codes of all subtasks are located behind the corresponding output point codes; otherwise, the plan is discarded.
[0038] Step E: Based on the above steps, within each task cycle T, we can obtain several optional transport plans for executing the current transport task. Each transport plan is represented by a set of several directional codes. The transport equipment arrives at each outgoing point and incoming point in sequence according to the code value in the directional code to complete the transport. For the transport plans composed of the above several directional code sets, by directly comparing the size of their overall transport path or total transport time, the best transport plan can be quickly selected;
[0039] In the process of the transport equipment actually executing the transport task, new transport tasks related to the transport out and in points of the transport task may be generated in real time in the shared transport system. In this case, if the transport capacity meets the demand, allocating the new transport task to the matching transport equipment can improve the transport efficiency, thereby improving the transport efficiency. At the same time, several emergency transport tasks may be generated in real time in the shared transport system. If the transport capacity meets the demand, the emergency transport tasks can also be completed by allocating them to the existing transport plan or replacing the existing point-to-point tasks in the transport plan. There are two specific situations:
[0040] For a new subtask generated in real time by the shared dispatching system within a fixed time period T, determine the codes corresponding to the input point and output point of the subtask. If the codes corresponding to the input point and output point exist in the directional coding scheme corresponding to a dispatching device that is performing dispatching, execute the following procedure:
[0041] F1. Extract all directional codes containing the aforementioned transfer-in point and transfer-out point code pairs, and determine the corresponding transfer equipment according to the directional code pairs;
[0042] F2. Collect the execution status of the subtasks of the aforementioned transport equipment, and clear the completed subtask codes in the directional codes corresponding to each transport equipment;
[0043] F3. Update the cleared directional codes of the aforementioned transfer equipment, and select the transfer equipment corresponding to both the aforementioned transfer-in point and the transfer-out point in the directional codes;
[0044] F4. Extract the load of each transport equipment between the corresponding transfer-in point and transfer-out point in turn, select the transport equipment with the smallest load, and assign the transport task to the transport equipment;
[0045] In this process, it is also possible that the total load of the transport equipment with the smallest load exceeds the limit after obtaining the newly assigned transport task. To this end, the following optimization scheme can be adopted:
[0046] F40, after sequentially extracting the load of each transport equipment between the corresponding transfer-in point and the transfer-out point, arrange them in order from small to large according to their load;
[0047] F41, select the transport equipment with the smallest load, extract the subtasks of the transport equipment between the corresponding transfer-in point and the transfer-out point and add them to the new task list; arrange the new tasks in descending order according to the corresponding loads to generate a new task sequence; assign the new task at the front of the sequence, that is, the new task with the largest load, to the aforementioned transport equipment;
[0048] F42. Reorder all the transport equipment with corresponding input and output points according to the change of the load of the equipment; reselect the transport equipment with the smallest load and assign the transport task to the transport equipment; if the allocation result causes the capacity of the transport equipment to exceed the limit, return to step F41 until all new tasks are assigned.
[0049] Finally, it should be noted that the above embodiments are only used to illustrate the technical solution of the present application, rather than to limit the scope of protection of the present application. Although the present application has been described in detail with reference to the preferred embodiments, ordinary technicians in this field should understand that the technical solution of the present application can be modified or replaced by equivalents without departing from the essence and scope of the technical solution of the present application.
Claims
1. A method for optimizing a dispatching scheme for an O2O shared dispatching system, characterized in that: The steps include: Step A, construct a shared dispatching system dispatching path coding solution model, count and analyze the dispatching tasks in the shared dispatching system, decompose them into n combinable subtasks, form n pairs of arrays with the input points and output points of the subtasks, and use the real number coding method to form a coding sequence P = {1, 2, ...i..., n} corresponding to the n dispatching tasks, a coding table A = {0, 2, 4...2i...2n} corresponding to the n output points, and a coding table B = {1, 3, 5...2i+1...2n+1} corresponding to the n input points, where the output point code corresponding to the i-th subtask is 2i, and the corresponding input point code is 2i+1; Step B. First, determine whether there are any planned subtasks in the shared dispatching system. If yes, place the outgoing point and incoming point codes corresponding to the subtasks into the first and last positions of the directional code, and search whether there are any unassigned subtasks in the shared dispatching system within a fixed time period T. If no, call out the directional code; Step D: For the directional codes obtained in the previous steps, based on the point pair exchange algorithm, the transfer-in and transfer-out points of any two transfer tasks are exchanged in pairs to obtain more transfer plans, and the capacities of the two transfer equipments during the execution of the two transfer tasks after the point pair exchange are compared, and the plans that exceed the allowable limit are eliminated; Step E: The transportation plans composed of the aforementioned directed code sets are rapidly optimized by directly comparing the overall transportation paths or the total transportation time.
2. A method for optimizing a dispatching scheme for an O2O shared dispatching system according to claim 1, characterized in that: The step B and the step D also include: Step C, according to the order in which the subtasks are generated, extract the new subtasks generated within a fixed time period T, extract the call-out points and call-in points corresponding to the new subtasks in turn, form an initial call-out sequence according to the distance from each call-out point to the transfer starting point in order from far to near, and add the corresponding call-out point code to the front side of the directional code based on the order in the initial call-out sequence; extract all call-in points, eliminate the points that already exist in the code sequence, summarize the codes of the remaining call-in points, form an initial call-in sequence according to the distance from the transfer starting point in order from far to near, insert the corresponding call-in point code into the directional code based on the order in the initial call-in sequence, adjust the code sequence according to the above rules to ensure that the corresponding call-in point codes of all subtasks are located behind the corresponding call-out point codes; otherwise, swap the two codes; then call out each directional code that meets the rules after adjustment.
3. The method for optimizing a dispatching scheme for an O2O shared dispatching system according to claim 1, characterized in that: The step B and the step D also include: For known directional codes, two random coding elements are extracted from the coding sequence for replacement. According to the subtasks corresponding to the two coding elements, the corresponding other two coding elements are determined to generate new directional codes, ensuring that the corresponding input point codes of all subtasks are located behind the corresponding output point codes; otherwise, the directional code is discarded.
4. The method for optimizing a dispatching scheme for an O2O shared dispatching system according to claim 1, characterized in that: The step E also includes the following: In a fixed time period T, when the shared dispatching system generates a new subtask in real time, determine the codes corresponding to the input point and output point of the subtask. If the codes corresponding to the input point and output point exist in the directional coding scheme corresponding to a dispatching device that is performing dispatching, execute the following procedure: F1. Extract all directional codes containing the aforementioned transfer-in point and transfer-out point code pairs, and determine the corresponding transfer equipment according to the directional code pairs; F2. Collect the execution status of the subtasks of the aforementioned transport equipment, and clear the completed subtask codes in the directional codes corresponding to each transport equipment; F3. Update the cleared directional codes of the aforementioned transfer equipment, and select the transfer equipment corresponding to both the aforementioned transfer-in point and the transfer-out point in the directional codes; F4. Extract the load of each transport equipment between the corresponding transfer-in point and transfer-out point in turn, select the transport equipment with the smallest load, and assign the transport task to the transport equipment; In this process, when the total load of the transport equipment with the smallest load exceeds the limit after obtaining the newly assigned transport task, the following optimization plan is adopted: F40, after sequentially extracting the load of each transport equipment between the corresponding transfer-in point and the transfer-out point, arrange them in order from small to large according to their load; F41, select the transport equipment with the smallest load, extract the subtasks of the transport equipment between the corresponding transfer-in point and the transfer-out point and add them to the new task list; arrange the new tasks in descending order according to the corresponding loads to generate a new task sequence; assign the new task at the front of the sequence, that is, the new task with the largest load, to the aforementioned transport equipment; F42. Reorder all the transport equipment with corresponding input and output points according to the change of the load of the equipment; reselect the transport equipment with the smallest load and assign the transport task to the transport equipment; if the allocation result causes the capacity of the transport equipment to exceed the limit, return to step F41 until all new tasks are assigned.
Citation Information
Patent Citations
Shared automobile scheduling method and system based on unmanned driving technology
CN110853374A
Assembly line resource intelligent scheduling method and device, equipment and medium
CN113344350A