Object scheduling method and device, electronic equipment and storage medium
By obtaining the address information and termination date of the container scheduling task, determining the scheduling strategy and automatically assigning tasks, the problems of traditional manual scheduling are solved, and efficient and accurate container scheduling is achieved.
Patent Information
- Application Number
- CN202411916201.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-24
- Publication Date
- 2025-04-08
AI Technical Summary
The traditional manual scheduling method is inefficient and prone to errors in container scheduling, resulting in reduced production efficiency and increased operating costs.
By obtaining the address information of the pending scheduling task and the termination date of the target scheduling object, the corresponding scheduling policy is determined, and the scheduling execution object is determined according to the policy, and the tasks are automatically allocated to achieve target scheduling.
Automatic task scheduling is realized, manual intervention is reduced, task allocation and execution efficiency is improved, error rate is reduced, and target scheduling objects can be completed on schedule.
Smart Images

Figure CN119784068A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of container scheduling, and in particular to an object scheduling method, device, electronic device and storage medium. Background Art
[0002] In the modern industrial production process, the dispatching of vehicles and containers inside and outside the factory is a complex and critical link. Traditional dispatching methods usually rely on manual dispatching, which is not only inefficient but also prone to errors, resulting in reduced production efficiency and increased operating costs. Summary of the invention
[0003] In order to solve the technical problems of low efficiency and high error rate in manual container scheduling, the present application provides an object scheduling method, device, electronic device and storage medium.
[0004] In a first aspect, the present application provides an object scheduling method, comprising:
[0005] Acquire the first scheduling task address information of the first scheduling task to be processed and the first scheduling expiration date of the target scheduling object scheduled by the first scheduling task;
[0006] Determining a scheduling strategy for scheduling the target object according to the first scheduling task address information and the first scheduling expiration date;
[0007] Determine a first scheduling execution object according to the scheduling strategy;
[0008] The first scheduling task is allocated to the first scheduling execution object, so that the first scheduling execution object schedules the target scheduling object.
[0009] Optionally, determining a scheduling strategy for scheduling the target object according to the first scheduling task address information and the first scheduling expiration date includes:
[0010] Get the current date;
[0011] Determine the magnitude relationship between the current date and the first scheduling end date;
[0012] Determine the task sequence number of the first scheduled task according to the first scheduled task address information;
[0013] The scheduling strategy is determined according to the size relationship and the task sequence number.
[0014] Optionally, determining the scheduling strategy according to the size relationship and the task sequence number includes:
[0015] Determine whether the current date is less than the first scheduling end date according to the size relationship;
[0016] If the current date is less than the first scheduling end date, determining whether the first scheduled task is the first scheduled task of the target scheduling object according to the task sequence number;
[0017] If it is determined according to the task sequence number that the first scheduling task is the first scheduling task of the target scheduling object, the scheduling strategy is determined to be a polling allocation mode.
[0018] Optionally, determining the scheduling strategy according to the size relationship and the task sequence number further includes:
[0019] If it is determined according to the task sequence number that the first scheduling task is not the first scheduling task of the target scheduling object, the scheduling strategy is determined to be a pre-nearby allocation mode.
[0020] Optionally, determining the scheduling strategy according to the size relationship and the task sequence number includes:
[0021] If the current date is greater than or equal to the first scheduling end date, determining whether the first scheduled task is the first scheduled task of the target scheduling object according to the task sequence number;
[0022] If it is determined according to the task sequence number that the first scheduling task is not the first scheduling task of the target scheduling object, determining that the scheduling strategy is an inheritance assignment mode;
[0023] Optionally, determining the scheduling strategy according to the size relationship and the task sequence number further includes:
[0024] If it is determined according to the task sequence number that the first scheduling task is the first scheduling task of the target scheduling object, the scheduling strategy is determined to be a nearest allocation mode.
[0025] Optionally, determining the first scheduling execution object according to the scheduling strategy includes:
[0026] If the scheduling strategy is a round-robin allocation mode, determining the candidate object at the head of the candidate object queue as the first scheduling execution object;
[0027] Alternatively, if the scheduling strategy is a pre-nearby allocation mode, the second scheduling address information of the second scheduling task being executed and the second scheduling end date of the target scheduling object scheduled by the second scheduling task are obtained, and the first scheduling execution object is determined according to the second scheduling address information, the second scheduling end date and the first scheduling task address information;
[0028] Alternatively, if the scheduling strategy is an inherited assignment mode, the second scheduling execution object of the previous first scheduling task is determined as the first scheduling execution object;
[0029] Alternatively, if the scheduling strategy is the nearest allocation mode, the scheduling start position is determined according to the first scheduling task address information, and the third scheduling execution object that is closest to the scheduling start position and is in an idle state is determined as the first scheduling execution object.
[0030] Optionally, determining the first scheduling execution object according to the second scheduling address information, the second scheduling expiration date and the first scheduling task address information includes:
[0031] Determine, in the second scheduling task, a third scheduling task whose current date is less than the first scheduling end date and whose scheduling destination is the scheduling start position of the first scheduling task;
[0032] Determine a fourth scheduling task in the third scheduling task that has the shortest time to reach the scheduling destination and a time to reach the scheduling destination that is less than a preset threshold;
[0033] The third scheduling execution object corresponding to the fourth scheduling task is determined as the first scheduling execution object.
[0034] Optionally, determining the candidate object at the head of the candidate object queue as the first scheduling execution object includes:
[0035] If the first scheduling task is an off-site task, determining the off-site object queue as the candidate object queue, and determining the candidate object at the head of the off-site object queue as the first scheduling execution object;
[0036] Alternatively, if the first scheduling task is an in-field task, the in-field object queue is determined as the candidate object queue, and the candidate object at the head of the in-field object queue is determined as the first scheduling execution object.
[0037] In a second aspect, the present application provides an object scheduling device, comprising:
[0038] An acquisition module, used to acquire first scheduling task address information of a first scheduling task to be processed and a first scheduling expiration date of a target scheduling object scheduled by the first scheduling task;
[0039] A first determining module, configured to determine a scheduling strategy for scheduling a target object according to the first scheduling task address information and the first scheduling expiration date;
[0040] A second determination module, used to determine the first scheduling execution object according to the scheduling strategy;
[0041] The allocation module is used to allocate the first scheduling task to the first scheduling execution object so that the first scheduling execution object schedules the target scheduling object.
[0042] Yes, the first determining module includes:
[0043] A first acquisition unit is used to acquire the current date;
[0044] A first determining unit, configured to determine a magnitude relationship between the current date and the first scheduling end date;
[0045] A second determining unit, configured to determine a task sequence number of the first scheduled task according to the first scheduled task address information;
[0046] The third determining unit is used to determine the scheduling strategy according to the size relationship and the task sequence number.
[0047] Optionally, the third determining unit includes:
[0048] A first determining subunit, configured to determine whether the current date is less than the first scheduling end date according to a size relationship;
[0049] A second determining subunit is used to determine whether the first scheduled task is the first scheduled task of the target scheduling object according to the task sequence number if the current date is less than the first scheduling end date;
[0050] A third determining subunit is configured to determine that the scheduling strategy is a round-robin allocation mode if the first scheduling task is determined to be the first scheduling task of the target scheduling object according to the task sequence number;
[0051] Optionally, the third determining unit further includes:
[0052] The fourth determining subunit is configured to determine that the scheduling strategy is a pre-nearby allocation mode if it is determined according to the task sequence number that the first scheduling task is not the first scheduling task of the target scheduling object.
[0053] Optionally, the third determining unit includes:
[0054] A fifth determining subunit, configured to determine whether the first scheduled task is the first scheduled task of the target scheduling object according to the task sequence number if the current date is greater than or equal to the first scheduling end date;
[0055] A sixth determining subunit, configured to determine that the scheduling strategy is an inherited assignment mode if it is determined according to the task sequence number that the first scheduling task is not the first scheduling task of the target scheduling object;
[0056] Optionally, the third determining unit further includes:
[0057] The seventh determining subunit is used to determine that the scheduling strategy is a nearby allocation mode if the first scheduling task is determined to be the first scheduling task of the target scheduling object according to the task sequence number.
[0058] Optionally, the second determining module includes:
[0059] a fourth determining unit, configured to determine, if the scheduling strategy is a round-robin allocation mode, a candidate object at the head of a candidate object queue as the first scheduling execution object;
[0060] Alternatively, a second acquisition unit is used to obtain the second scheduling address information of the second scheduling task being executed and the second scheduling end date of the target scheduling object scheduled by the second scheduling task if the scheduling strategy is the pre-nearby allocation mode, and determine the first scheduling execution object according to the second scheduling address information, the second scheduling end date and the first scheduling task address information;
[0061] Alternatively, a fifth determining unit is configured to determine the second scheduling execution object of the previous first scheduling task as the first scheduling execution object if the scheduling strategy is an inherited assignment mode;
[0062] Alternatively, the sixth determination unit is used to determine the scheduling starting position according to the first scheduling task address information if the scheduling strategy is the nearest allocation mode, and determine the third scheduling execution object that is closest to the scheduling starting position and is in an idle state as the first scheduling execution object.
[0063] Optionally, the second acquiring unit includes:
[0064] An eighth determining subunit is used to determine, in the second scheduling task, a third scheduling task whose current date is less than the first scheduling end date and whose scheduling destination is the scheduling start position of the first scheduling task;
[0065] A ninth determining subunit, configured to determine, from among the third scheduling tasks, a fourth scheduling task having the shortest arrival time at the scheduling destination and a arrival time at the scheduling destination less than a preset threshold;
[0066] The tenth determining subunit is configured to determine the third scheduling execution object corresponding to the fourth scheduling task as the first scheduling execution object.
[0067] Optionally, the fourth determining unit includes:
[0068] an eleventh determining subunit, configured to, if the first scheduling task is an off-site task, determine the off-site object queue as the candidate object queue, and determine the candidate object at the head of the off-site object queue as the first scheduling execution object;
[0069] Alternatively, the twelfth determining subunit is configured to, if the first scheduling task is an in-field task, determine the in-field object queue as the candidate object queue, and determine the candidate object at the head of the in-field object queue as the first scheduling execution object.
[0070] In a third aspect, the present application provides an electronic device, including a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other via the communication bus;
[0071] Memory, used to store computer programs;
[0072] The processor is used to implement any object scheduling method described in the first aspect when executing a program stored in the memory.
[0073] In a fourth aspect, the present application provides a computer-readable storage medium, on which a program of an object scheduling method is stored. When the program of the object scheduling method is executed by a processor, the steps of the object scheduling method described in any one of the first aspects are implemented.
[0074] The above technical solution provided by the embodiment of the present application has the following advantages compared with the prior art:
[0075] The embodiment of the present application determines the scheduling strategy according to the first scheduling task address information of the first scheduling task to be processed and the first scheduling end date of the target scheduling object scheduled by the first scheduling task, determines the first scheduling execution object according to the scheduling strategy, and assigns the first scheduling task to the first scheduling execution object so that the first scheduling execution object schedules the target scheduling object. The embodiment of the present application can obtain the urgency of the first scheduling task according to the first scheduling end date, and the time consumption of the first scheduling task according to the first scheduling task address information, and then determine the corresponding scheduling strategy and the corresponding first scheduling execution object based on the urgency and time consumption, automatically ensuring that the target scheduling object can be completed on schedule, and through automatic task scheduling, reduce manual intervention, improve the efficiency of task allocation and execution, and reduce the error rate. BRIEF DESCRIPTION OF THE DRAWINGS
[0076] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
[0077] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0078] Figure 1 A flowchart of an object scheduling method provided in an embodiment of the present application;
[0079] Figure 2 A flowchart of another object scheduling method provided in an embodiment of the present application;
[0080] Figure 3 A structural diagram of an object scheduling device provided in an embodiment of the present application;
[0081] Figure 4 A structural diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0082] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application.
[0083] Since traditional scheduling methods usually rely on manual scheduling, they are not only inefficient but also prone to errors, resulting in reduced production efficiency and increased operating costs. To this end, the present application provides an object scheduling method, device, electronic device, and storage medium.
[0084] The present application embodiment provides an object scheduling method, such as Figure 1 As shown, the following steps are included:
[0085] Step S101, obtaining first scheduling task address information of a first scheduling task to be processed and a first scheduling expiration date of a target scheduling object scheduled by the first scheduling task;
[0086] In an embodiment of the present application, a queue of pending tasks can be set in advance, and the queue of pending tasks includes one or more pending scheduling tasks, and the scheduling tasks are used to schedule corresponding scheduling objects, wherein the scheduling task located at the head of the queue of pending tasks is the first scheduling task, and the scheduling object of the first scheduling task is the target scheduling object. Exemplarily, the scheduling object is a container, and the target scheduling object is a target container. Each scheduling task has scheduling address information, and the scheduling address information includes: task sequence number, scheduling start position, scheduling destination and other information. The time consumption of the scheduling task is determined according to the distance between the scheduling start position and the scheduling destination. The scheduling end date may refer to the deadline for scheduling the scheduling object. Exemplarily, the scheduling end date may refer to the customs declaration date. The first scheduling end date may refer to the deadline for scheduling the target scheduling object. Exemplarily, the first scheduling end date may refer to the customs declaration date of the target container.
[0087] In this step, the first scheduling task address information of the first scheduling task located at the head of the pending task queue can be obtained in the pending task queue, the target scheduling object scheduled by the first scheduling task can be determined, and the first scheduling end date of the target scheduling object can be obtained.
[0088] Step S102, determining a scheduling strategy for scheduling the target object according to the first scheduling task address information and the first scheduling end date;
[0089] In this step, the scheduling strategy can be determined based on the task number in the first scheduling task address information and the first scheduling end date. Furthermore, the scheduling strategy can be determined based on whether the task number is the task number of the first scheduled task and the first scheduling end date, and whether the current date reaches the first scheduling end date.
[0090] Step S103, determining a first scheduling execution object according to the scheduling strategy;
[0091] In an embodiment of the present application, the scheduling execution object may refer to an object used to execute scheduling. By way of example, the scheduling execution object may refer to a driver used to transport a container. The first scheduling execution object is an object that executes scheduling on a target scheduling object. By way of example, the first scheduling execution object may refer to a driver used to transport a target container.
[0092] Different scheduling execution object determination rules may be set in advance for different scheduling strategies. Therefore, in this step, the first scheduling object corresponding to the scheduling strategy may be determined according to the determination rule.
[0093] Step S104: Allocate the first scheduling task to the first scheduling execution object, so that the first scheduling execution object schedules the target scheduling object.
[0094] In this step, the first scheduling task may be assigned to the terminal account logged in by the first scheduling execution object, and then the first scheduling execution object may schedule the target scheduling object according to the scheduling address information of the first scheduling task.
[0095] The embodiment of the present application determines the scheduling strategy according to the first scheduling task address information of the first scheduling task to be processed and the first scheduling end date of the target scheduling object scheduled by the first scheduling task, determines the first scheduling execution object according to the scheduling strategy, and assigns the first scheduling task to the first scheduling execution object so that the first scheduling execution object schedules the target scheduling object. The embodiment of the present application can obtain the urgency of the first scheduling task according to the first scheduling end date, and the time consumption of the first scheduling task according to the first scheduling task address information, and then determine the corresponding scheduling strategy and the corresponding first scheduling execution object based on the urgency and time consumption, automatically ensuring that the target scheduling object can be completed on schedule, and through automatic task scheduling, reduce manual intervention, improve the efficiency of task allocation and execution, and reduce the error rate.
[0096] In another embodiment of the present application, step S102 determines a scheduling strategy for scheduling the target object according to the first scheduling task address information and the first scheduling expiration date, including:
[0097] Step S201, obtaining the current date;
[0098] Step S202, determining the magnitude relationship between the current date and the first scheduling end date;
[0099] In this step, the current date and the first scheduling end date may be compared, that is, the time sequence between the current date and the first scheduling end date may be compared to obtain the size relationship.
[0100] Step S203, determining the task sequence number of the first scheduled task according to the first scheduled task address information;
[0101] Since a container may be divided into multiple scheduling tasks, such as: picking up the container and entering the factory (outside the factory, from the picking up terminal to the factory gate), pouring the container and trailering task (inside the factory, from the factory gate to the pouring area), parking the container and trailering task (inside the factory, from the pouring area to the parking yard), transferring the container and trailering task (inside the factory, from the parking yard to the loading platform), tallying and trailering task (inside the factory, from the loading platform to the tallying area), outgoing container and trailering task (inside the factory, from the tallying area to the parking yard), outgoing container and trailering task (outside the factory, from the parking yard to the return terminal), etc., a task number can be assigned to each scheduling task. Among them, the first scheduling task needs to go to the terminal to pick up the container, which is a long distance and takes a long time.
[0102] Step S204: determining the scheduling strategy according to the size relationship and the task sequence number.
[0103] In the embodiment of the present application, the urgency of the first scheduled task can be determined according to the relationship between the current date and the first scheduled end date, and the time consumption of the first scheduled task can be obtained according to the task sequence number of the first scheduled task address information.
[0104] In another embodiment of the present application, step S204 determines the scheduling strategy according to the size relationship and the task sequence number, including:
[0105] Step S301, determining whether the current date is less than the first scheduling end date according to the size relationship;
[0106] Step S302: if the current date is less than the first scheduling end date, determine whether the first scheduled task is the first scheduled task of the target scheduling object according to the task sequence number;
[0107] Step S303, if it is determined according to the task sequence number that the first scheduling task is the first scheduling task of the target scheduling object, the scheduling strategy is determined to be a polling allocation mode;
[0108] In the embodiment of the present application, the polling allocation mode may refer to allocating dispatch tasks to corresponding drivers in a cyclic order. The polling allocation mode is mainly for non-urgent dispatch tasks.
[0109] The embodiment of the present application can determine the scheduling strategy as the polling allocation mode when the current period is less than the first scheduling end date and the first scheduling task is determined to be the first task number according to the task sequence number. The polling allocation mode can facilitate the allocation of tasks to each driver more fairly when the container task is not urgent, thereby determining the corresponding scheduling strategy based on the degree of urgency and minimizing the imbalance of task distribution.
[0110] Step S304: if it is determined according to the task sequence number that the first scheduling task is not the first scheduling task of the target scheduling object, the scheduling strategy is determined to be a pre-nearby allocation mode.
[0111] In the embodiment of the present application, the pre-proximity allocation mode refers to allocating dispatch tasks to drivers with appropriate time and distance. The pre-proximity allocation mode is mainly for non-emergency dispatch tasks.
[0112] In an embodiment of the present application, when the current period is less than the first scheduling end date and it is determined according to the task sequence number that the first scheduling task is not the first task sequence number, the scheduling strategy can be determined as a pre-nearest allocation mode. The pre-nearest allocation mode can facilitate the allocation of drivers with suitable time and distance for non-emergency containers, thereby determining the corresponding scheduling strategy based on the degree of urgency and time consumption, and improving the efficiency of container scheduling.
[0113] On the basis of the above-mentioned embodiment, in another embodiment of the present application, step S204 determines the scheduling strategy according to the size relationship and the task sequence number, including:
[0114] Step S305: if the current date is greater than or equal to the first scheduling end date, determine whether the first scheduled task is the first scheduled task of the target scheduling object according to the task sequence number;
[0115] Step S306, if it is determined according to the task sequence number that the first scheduling task is not the first scheduling task of the target scheduling object, determining that the scheduling strategy is an inheritance assignment mode;
[0116] In the embodiment of the present application, the inheritance assignment mode refers to the inheritance assignment of the next dispatching task of the container to the driver corresponding to the previous dispatching task. The inheritance assignment mode is mainly for emergency dispatching tasks.
[0117] In an embodiment of the present application, when the current period is greater than or equal to the first scheduling end date and it is determined according to the task sequence number that the first scheduling task is not the first task sequence number, the scheduling strategy can be determined as the inheritance assignment mode. Through the inheritance assignment mode, in the case of an urgent container task, one driver can complete the task of pulling the entire container, thereby determining the corresponding scheduling strategy based on the degree of urgency and avoiding time wasted in assigning previous and subsequent tasks to different drivers to hand over containers.
[0118] Step S307: If it is determined according to the task sequence number that the first scheduling task is the first scheduling task of the target scheduling object, the scheduling strategy is determined to be a nearest allocation mode.
[0119] In the embodiment of the present application, the nearest allocation mode refers to allocating drivers nearby for dispatching tasks, and the nearest allocation mode is mainly for emergency dispatching tasks.
[0120] In an embodiment of the present application, when the current period is greater than or equal to the first scheduling end date and the first scheduling task is determined to be the first task number according to the task number, the scheduling strategy can be determined as the nearest allocation mode. The nearest allocation mode can facilitate the emergency allocation of drivers for emergency containers, and the corresponding scheduling strategy can be determined based on the degree of urgency and time consumption, so as to save time and improve container scheduling efficiency.
[0121] In another embodiment of the present application, step S103 determines the first scheduling execution object according to the scheduling strategy, including:
[0122] If the scheduling strategy is a round-robin allocation mode, the candidate object at the head of the candidate object queue is determined as the first scheduling execution object; the candidate object queue is a circular queue containing multiple candidate objects.
[0123] Among them, determining the candidate object at the head of the candidate object queue as the first scheduling execution object includes: if the first scheduling task is an off-site task, then determining the off-site object queue as the candidate object queue, and determining the candidate object at the head of the off-site object queue as the first scheduling execution object; if the first scheduling task is an on-site task, then determining the on-site object queue as the candidate object queue, and determining the candidate object at the head of the on-site object queue as the first scheduling execution object.
[0124] For example, when the scheduling strategy is the polling allocation mode, if it is an off-site task, the first employee information in the available logistics driver queue is obtained; if it is an in-site task, the first employee information in the available in-site driver queue is obtained, and the task is assigned to the driver, and the employee is removed from the head of the available driver queue; if the previous task is an off-site task and the current task is an in-site task, and there are no idle in-site drivers, the task is assigned to the logistics driver using the inheritance assignment mode to improve the efficiency of container task execution. The polling allocation mode can facilitate the fair allocation of tasks to each driver when the container task is not urgent, and minimize the imbalance of task distribution.
[0125] If the scheduling strategy is the pre-nearby allocation mode, obtain the second scheduling address information of the second scheduling task being executed and the second scheduling end date of the target scheduling object scheduled by the second scheduling task, and determine the first scheduling execution object according to the second scheduling address information, the second scheduling end date and the first scheduling task address information;
[0126] Among them, the first scheduling execution object is determined according to the second scheduling address information, the second scheduling termination date and the first scheduling task address information, including: determining a third scheduling task in the second scheduling task whose current date is less than the first scheduling termination date and whose scheduling destination is the scheduling starting position of the first scheduling task; determining a fourth scheduling task in the third scheduling task whose time to reach the scheduling destination is the shortest and whose time to reach the scheduling destination is less than a preset threshold; and determining the third scheduling execution object corresponding to the fourth scheduling task as the first scheduling execution object.
[0127] For example, when the scheduling strategy is the pre-nearest allocation mode, all tasks whose current date is less than the customs declaration date and whose destination is the starting point of the current task are obtained, and the shortest time required to reach the destination and the driver information are obtained. If the time is less than the average waiting time interval T between two basic tasks, the task is assigned to the driver. The pre-nearest allocation mode can facilitate the allocation of drivers with appropriate time and distance to non-emergency containers, thereby improving the efficiency of container scheduling.
[0128] If the scheduling strategy is the inherited assignment mode, the second scheduling execution object of the previous first scheduling task is determined as the first scheduling execution object;
[0129] For example, when the scheduling strategy is the inherited assignment mode, the executor information of the previous task is obtained and the task is assigned to the driver. The purpose of the inherited assignment mode is: in the case of an urgent container task, one driver can complete the task of pulling the entire container, avoiding the time wasted by assigning the previous tasks to different drivers to hand over the container.
[0130] If the scheduling strategy is the nearest allocation mode, the scheduling start position is determined according to the first scheduling task address information, and the third scheduling execution object that is closest to the scheduling start position and is in an idle state is determined as the first scheduling execution object.
[0131] For example, when the dispatch strategy is the nearest allocation mode, the system obtains the starting point of the current task and the real-time location of all drivers' vehicles that have not performed the task, obtains the information of the nearest driver, and assigns the task to him. The nearest allocation mode can facilitate the emergency allocation of drivers for urgent containers, so as to save time and improve the efficiency of container transportation.
[0132] For ease of understanding, Figure 2 As shown, the present application also provides an embodiment in practical application, as follows:
[0133] 1. The management personnel maintain the logistics driver information and the factory driver information in the system. At the same time, they need to maintain the basic information of the vehicles available for the system and the basic information of the on-board terminal equipment. The vehicle terminal will report the vehicle location information and record the vehicle location in real time.
[0134] 2. The management personnel enter the basic information of the container tasks for the entire process from picking up the container to returning the container in the scheduling system, including the task type (off-site task, on-site task), task content, task starting point and destination of each task, and indicate the sequence of each container task.
[0135] 3. The (logistics / factory) driver clocks in on the system's mobile terminal and binds the vehicle information. After successful binding, the system will record the correspondence between the driver and the vehicle; if there is no task in progress, the driver information will be placed at the end of the available (logistics / factory) driver queue.
[0136] 4. After receiving the pick-up plan, the system can obtain the information of the relevant containers, including the pick-up terminal, customs declaration date, etc. The system processes each container in the positive order of the customs declaration date.
[0137] 5. First, a container pick-up order information is generated in the system (including: container number, notification number, pick-up terminal, return terminal, customs declaration date, current location and other information related to the container), and the current location of the container is recorded as the pick-up terminal. The information of the first task is obtained in the system, and a specific container task is generated for the current container. The departure point is the current location of the container, and the destination is the task destination. Then the task is assigned to the driver.
[0138] 6. Get the customs declaration date of the container. If the current date is less than the customs declaration date, the container is considered to be a non-urgent container, and the task adopts the pre-nearest allocation plus polling allocation mode. If the task is not the first task, first use the pre-nearest allocation mode to obtain all tasks in the ongoing tasks whose current date is less than the customs declaration date and whose destination is the starting point of the current task, obtain the shortest time required to reach the destination and the driver information, and if the time is less than the average waiting time interval T between the two basic tasks, assign the task to the driver; if the task does not meet the above conditions, use the polling allocation mode, in which if it is an off-site task, obtain the first employee information in the available logistics driver queue, and if it is an in-site task, obtain the first employee information in the available in-site driver queue, and assign the task to the driver, who will be removed from the head of the available driver queue; if the previous task is an off-site task and the current task is an in-site task, and there is no idle in-site driver, the task is assigned to the logistics driver using the inheritance assignment mode to improve the efficiency of container task execution.
[0139] 7. If the current date is greater than or equal to the container declaration date, the container is considered to be an emergency container. The first task adopts the nearest allocation mode. The system obtains the starting point of the current task and the real-time location of the vehicles bound to all drivers who have not performed the task, obtains the information of the nearest driver, and assigns the task to him. The non-first task adopts the inheritance assignment mode, obtains the executor information of the previous task, and assigns the task to the driver.
[0140] 8. After receiving the task, the driver needs to perform the task according to the instructions and transport the container from the task starting point to the task destination. After the driver arrives at the task starting point, when starting the task, the time difference between the start time of the current task of the container and the completion time of the previous task is recorded, and the average waiting time interval T of the two basic tasks is updated. After the driver arrives at the destination and completes the task, the vehicle location information is obtained, and the current location information of the container is recorded in the container management module. The employee information is placed at the end of the available queue for this driver type; the next task information is obtained in turn, and the specific container task is generated using the current location of the container and the task destination as the starting point and destination, and it is executed from step 6 until all tasks are executed, and all processes of the container are completed.
[0141] 9. The driver clocks out and the driver information is removed from the available driver queue.
[0142] In another embodiment of the present application, an object scheduling device is also provided, such as Figure 3 As shown, including:
[0143] An acquisition module 11 is used to acquire first scheduling task address information of a first scheduling task to be processed and a first scheduling expiration date of a target scheduling object scheduled by the first scheduling task;
[0144] A first determining module 12, configured to determine a scheduling strategy for scheduling a target object according to the first scheduling task address information and the first scheduling end date;
[0145] A second determination module 13, configured to determine a first scheduling execution object according to the scheduling strategy;
[0146] The allocating module 14 is configured to allocate the first scheduling task to the first scheduling execution object, so that the first scheduling execution object schedules the target scheduling object.
[0147] Yes, the first determining module includes:
[0148] A first acquisition unit is used to acquire the current date;
[0149] A first determining unit, configured to determine a magnitude relationship between the current date and the first scheduling end date;
[0150] A second determining unit, configured to determine a task sequence number of the first scheduled task according to the first scheduled task address information;
[0151] The third determining unit is used to determine the scheduling strategy according to the size relationship and the task sequence number.
[0152] Optionally, the third determining unit includes:
[0153] A first determining subunit, configured to determine whether the current date is less than the first scheduling end date according to a size relationship;
[0154] A second determining subunit is used to determine whether the first scheduled task is the first scheduled task of the target scheduling object according to the task sequence number if the current date is less than the first scheduling end date;
[0155] The third determining subunit is configured to determine that the scheduling strategy is a round-robin allocation mode if the first scheduling task is determined to be the first scheduling task of the target scheduling object according to the task sequence number.
[0156] Optionally, the third determining unit further includes:
[0157] The fourth determining subunit is configured to determine that the scheduling strategy is a pre-nearby allocation mode if it is determined according to the task sequence number that the first scheduling task is not the first scheduling task of the target scheduling object.
[0158] Optionally, the third determining unit includes:
[0159] A fifth determining subunit, configured to determine whether the first scheduled task is the first scheduled task of the target scheduling object according to the task sequence number if the current date is greater than or equal to the first scheduling end date;
[0160] A sixth determining subunit, configured to determine that the scheduling strategy is an inherited assignment mode if it is determined according to the task sequence number that the first scheduling task is not the first scheduling task of the target scheduling object;
[0161] Optionally, the third determining unit further includes:
[0162] The seventh determining subunit is used to determine that the scheduling strategy is a nearby allocation mode if the first scheduling task is determined to be the first scheduling task of the target scheduling object according to the task sequence number.
[0163] Optionally, the second determining module includes:
[0164] a fourth determining unit, configured to determine, if the scheduling strategy is a round-robin allocation mode, a candidate object at the head of a candidate object queue as the first scheduling execution object;
[0165] Alternatively, a second acquisition unit is used to obtain the second scheduling address information of the second scheduling task being executed and the second scheduling end date of the target scheduling object scheduled by the second scheduling task if the scheduling strategy is the pre-nearby allocation mode, and determine the first scheduling execution object according to the second scheduling address information, the second scheduling end date and the first scheduling task address information;
[0166] Alternatively, a fifth determining unit is configured to determine the second scheduling execution object of the previous first scheduling task as the first scheduling execution object if the scheduling strategy is an inherited assignment mode;
[0167] Alternatively, the sixth determination unit is used to determine the scheduling starting position according to the first scheduling task address information if the scheduling strategy is the nearest allocation mode, and determine the third scheduling execution object that is closest to the scheduling starting position and is in an idle state as the first scheduling execution object.
[0168] Optionally, the second acquiring unit includes:
[0169] An eighth determining subunit is used to determine, in the second scheduling task, a third scheduling task whose current date is less than the first scheduling end date and whose scheduling destination is the scheduling start position of the first scheduling task;
[0170] A ninth determining subunit, configured to determine, from among the third scheduling tasks, a fourth scheduling task having the shortest arrival time at the scheduling destination and a arrival time at the scheduling destination less than a preset threshold;
[0171] The tenth determining subunit is configured to determine the third scheduling execution object corresponding to the fourth scheduling task as the first scheduling execution object.
[0172] Optionally, the fourth determining unit includes:
[0173] an eleventh determining subunit, configured to, if the first scheduling task is an off-site task, determine the off-site object queue as the candidate object queue, and determine the candidate object at the head of the off-site object queue as the first scheduling execution object;
[0174] Alternatively, the twelfth determining subunit is configured to, if the first scheduling task is an in-field task, determine the in-field object queue as the candidate object queue, and determine the candidate object at the head of the in-field object queue as the first scheduling execution object.
[0175] In another embodiment of the present application, an electronic device is provided, including a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus;
[0176] Memory, used to store computer programs;
[0177] The processor is used to implement the object scheduling method described in any of the above method embodiments when executing the program stored in the memory.
[0178] In the electronic device provided by the embodiment of the present invention, the processor determines the scheduling strategy according to the first scheduling task address information of the first scheduling task to be processed and the first scheduling end date of the target scheduling object scheduled by the first scheduling task by executing the program stored in the memory, determines the first scheduling execution object according to the scheduling strategy, and assigns the first scheduling task to the first scheduling execution object so that the first scheduling execution object schedules the target scheduling object. The embodiment of the present application can obtain the urgency of the first scheduling task according to the first scheduling end date, and the time consumption of the first scheduling task according to the first scheduling task address information, and then determine the corresponding scheduling strategy and the corresponding first scheduling execution object based on the urgency and time consumption, automatically ensure that the target scheduling object can be completed on time, and through automatic task scheduling, reduce manual intervention, improve the efficiency of task allocation and execution, and reduce the error rate.
[0179] The communication bus 1140 mentioned in the above electronic device can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. The communication bus 1140 can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 4 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.
[0180] The communication interface 1120 is used for communication between the above electronic device and other devices.
[0181] The memory 1130 may include a random access memory (RAM) or a non-volatile memory, such as at least one disk memory. Optionally, the memory may also be at least one storage device located away from the aforementioned processor.
[0182] The above-mentioned processor 1110 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components.
[0183] In another embodiment of the present application, a computer-readable storage medium is provided, on which a program of the object scheduling method is stored. When the program of the object scheduling method is executed by a processor, the steps of the object scheduling method described in any of the aforementioned method embodiments are implemented.
[0184] It should be noted that, in this article, relational terms such as "first" and "second" are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.
[0185] The foregoing is merely a specific embodiment of the present invention, which enables those skilled in the art to understand or implement the present invention. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention will not be limited to the embodiments shown herein, but rather to the widest scope consistent with the principles and novel features claimed herein.
Claims
1. An object scheduling method, characterized in that: include: Acquire the first scheduling task address information of the first scheduling task to be processed and the first scheduling expiration date of the target scheduling object scheduled by the first scheduling task; Determining a scheduling strategy for scheduling the target object according to the first scheduling task address information and the first scheduling expiration date; Determine a first scheduling execution object according to the scheduling strategy; The first scheduling task is allocated to the first scheduling execution object, so that the first scheduling execution object schedules the target scheduling object.
2. The object scheduling method according to claim 1, characterized in that: Determining a scheduling strategy for scheduling the target object according to the first scheduling task address information and the first scheduling expiration date includes: Get the current date; Determine the magnitude relationship between the current date and the first scheduling end date; Determine the task sequence number of the first scheduled task according to the first scheduled task address information; The scheduling strategy is determined according to the size relationship and the task sequence number.
3. The object scheduling method according to claim 2, characterized in that: Determining the scheduling strategy according to the size relationship and the task sequence number includes: Determine whether the current date is less than the first scheduling end date according to the size relationship; If the current date is less than the first scheduling end date, determining whether the first scheduled task is the first scheduled task of the target scheduling object according to the task sequence number; If it is determined according to the task sequence number that the first scheduling task is the first scheduling task of the target scheduling object, the scheduling strategy is determined to be a polling allocation mode.
4. The object scheduling method according to claim 3, characterized in that: Determining the scheduling strategy according to the size relationship and the task sequence number also includes: If it is determined according to the task sequence number that the first scheduling task is not the first scheduling task of the target scheduling object, the scheduling strategy is determined to be a pre-nearby allocation mode.
5. The object scheduling method according to claim 3, characterized in that: Determining the scheduling strategy according to the size relationship and the task sequence number includes: If the current date is greater than or equal to the first scheduling end date, determining whether the first scheduled task is the first scheduled task of the target scheduling object according to the task sequence number; If it is determined according to the task sequence number that the first scheduling task is not the first scheduling task of the target scheduling object, the scheduling strategy is determined to be an inheritance assignment mode.
6. The object scheduling method according to claim 5, characterized in that: Determining the scheduling strategy according to the size relationship and the task sequence number includes: If it is determined according to the task sequence number that the first scheduling task is the first scheduling task of the target scheduling object, the scheduling strategy is determined to be a nearest allocation mode.
7. The object scheduling method according to claim 1, characterized in that: Determining a first scheduling execution object according to the scheduling strategy includes: If the scheduling strategy is a round-robin allocation mode, determining the candidate object at the head of the candidate object queue as the first scheduling execution object; Alternatively, if the scheduling strategy is a pre-nearby allocation mode, the second scheduling address information of the second scheduling task being executed and the second scheduling end date of the target scheduling object scheduled by the second scheduling task are obtained, and the first scheduling execution object is determined according to the second scheduling address information, the second scheduling end date and the first scheduling task address information; Alternatively, if the scheduling strategy is an inherited assignment mode, the second scheduling execution object of the previous first scheduling task is determined as the first scheduling execution object; Alternatively, if the scheduling strategy is the nearest allocation mode, the scheduling start position is determined according to the first scheduling task address information, and the third scheduling execution object that is closest to the scheduling start position and is in an idle state is determined as the first scheduling execution object.
8. The object scheduling method according to claim 7, characterized in that: Determining the first scheduling execution object according to the second scheduling address information, the second scheduling termination date and the first scheduling task address information includes: Determine, in the second scheduling task, a third scheduling task whose current date is less than the first scheduling end date and whose scheduling destination is the scheduling start position of the first scheduling task; Determine a fourth scheduling task in the third scheduling task that has the shortest time to reach the scheduling destination and a time to reach the scheduling destination that is less than a preset threshold; The third scheduling execution object corresponding to the fourth scheduling task is determined as the first scheduling execution object.
9. The object scheduling method according to claim 7, characterized in that: Determining the candidate object at the head of the candidate object queue as the first scheduling execution object includes: If the first scheduling task is an off-site task, determining the off-site object queue as the candidate object queue, and determining the candidate object at the head of the off-site object queue as the first scheduling execution object; Alternatively, if the first scheduling task is an in-field task, the in-field object queue is determined as the candidate object queue, and the candidate object at the head of the in-field object queue is determined as the first scheduling execution object.
10. An object scheduling device, characterized in that: include: An acquisition module, used to acquire first scheduling task address information of a first scheduling task to be processed and a first scheduling expiration date of a target scheduling object scheduled by the first scheduling task; A first determining module, configured to determine a scheduling strategy for scheduling a target object according to the first scheduling task address information and the first scheduling expiration date; A second determination module, used to determine the first scheduling execution object according to the scheduling strategy; The allocation module is used to allocate the first scheduling task to the first scheduling execution object so that the first scheduling execution object schedules the target scheduling object.
11. An electronic device, characterized in that: It includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus; Memory, used to store computer programs; A processor, for implementing the object scheduling method according to any one of claims 1 to 9 when executing a program stored in a memory.
12. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a program of the object scheduling method, and when the program of the object scheduling method is executed by a processor, the steps of the object scheduling method described in any one of claims 1 to 9 are implemented.