Dynamic production scheduling method and device, electronic equipment and storage medium

By constructing the target task batches of biological experiment tasks and fully aligning them, and selecting the production schedule with the smallest total time-consuming, the problem of unreasonable allocation of biological experiment resources in the existing technology is solved, and more efficient resource utilization and production efficiency is achieved.

CN120373685APending Publication Date: 2025-07-25SHENZHEN HUADA YONGSHENG INTELLIGENT TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410102587.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-01-24
Publication Date
2025-07-25

AI Technical Summary

Technical Problem

The existing automated production scheduling algorithm cannot be applied to biological experimental activities, resulting in unreasonable resource allocation and inefficient efficiency in biological experimental tasks.

Method used

Construct the target task batch of biological experimental tasks and disassemble them into multiple sections. Complete arrangements are performed through preset algorithms to estimate the total time-consuming of the target arrangement results, and select the arrangement result with the smallest total time-consuming as the target production schedule to achieve dynamic production schedule.

Benefits of technology

It improves the utilization rate of experimental resources in biological experimental activities, improves production efficiency, and solves the bottleneck of resource of biological experimental equipment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120373685A_ABST
    Figure CN120373685A_ABST
Patent Text Reader

Abstract

The invention provides a dynamic production scheduling method and device, electronic equipment and a storage medium, and relates to the technical field of data processing, to-be-executed target tasks are constructed, the target tasks are different task batches corresponding to biological experiment tasks, and one task batch serves as one target task; all the target tasks are fully arranged based on a preset algorithm, all target arrangement results are obtained, and one target arrangement result is a scheme for executing all the target tasks in parallel; respectively estimating the total time consumption after the execution of each target arrangement result is completed; and determining the target arrangement result corresponding to the total consumed time with the minimum numerical value as a target production scheduling plan. Various target tasks corresponding to a biological experiment task are constructed and fully arranged to obtain various target arrangement results, and a target production scheduling plan corresponding to the biological experiment task is obtained based on total time consumption by estimating the total time consumption of execution of the various target arrangement results, so that the dynamic production scheduling method can be applied to biological experiment activities.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the technical field of data processing, and in particular, to a method and device for dynamic production scheduling, an electronic device, and a storage medium. Background Art

[0002] In order to formulate a reasonable production task plan to achieve a reasonable allocation of production resources and improve production efficiency, automated production scheduling is widely used in industrial production activities. However, the algorithms used in automated production scheduling in industrial activities are not applicable to biological experiment activities. Therefore, providing a method for dynamic production scheduling to achieve dynamic production scheduling of various experimental tasks in biological experiment activities is an urgent problem to be solved at present. Summary of the Invention

[0003] The present disclosure provides a method and device for dynamic production scheduling, an electronic device, and a storage medium. Its main purpose is to achieve dynamic production scheduling of various experimental tasks in biological experiment activities.

[0004] According to a first aspect of the present disclosure, there is provided a method for dynamic production scheduling, including:

[0005] Constructing each target task to be executed, each of the target tasks being a different task batch corresponding to a biological experiment task, one task batch being taken as one target task, and the one target task being disassembled into at least two work sections, each of the work sections being assigned to a corresponding target device for execution, and different work sections being assigned to the same or different target devices for execution;

[0006] Performing a full permutation on each of the target tasks based on a preset algorithm to obtain each target permutation result, one target permutation result being a scheme for parallel execution of each of the target tasks;

[0007] Respectively estimating the total time consumption after completion of execution of each of the target permutation results;

[0008] Determining the target permutation result corresponding to the minimum total time consumption as the target production scheduling plan.

[0009] Optionally, the respectively estimating the total time consumption after completion of execution of each of the target permutation results includes:

[0010] Performing random sampling on each of the permutation combination results for a preset number of times;

[0011] Forming a permutation combination set by all the permutation combination results obtained by sampling;

[0012] Respectively estimating the total time consumption after completion of execution of each of the permutation combination results in the permutation combination set.

[0013] Optionally, after determining the target scheduling plan corresponding to the total time consumption with the smallest value, the method includes:

[0014] Execute each of the target tasks in parallel according to the target scheduling plan;

[0015] If a second target task to be inserted is added during the execution of each of the target tasks, re-schedule the target scheduling plan based on the addition of the second target task.

[0016] Optionally, the re-scheduling the target scheduling plan based on the addition of the second target task includes:

[0017] Obtain the execution duration of executing each of the target tasks in parallel according to the target scheduling plan;

[0018] Based on the execution duration and the total time consumption after the target arrangement result obtained by the insertion of the second target task is completed, re-determine the target scheduling plan to obtain an updated target scheduling plan.

[0019] Optionally, the construction of each target task to be executed includes:

[0020] Divide a preset experimental process into the preset number of types of the working sections to obtain a working section set, and the working section set includes the preset number of types of the working sections;

[0021] Select corresponding working sections from the working section set for each of the target tasks respectively to form each of the target tasks, and each target task includes at least two working sections.

[0022] Optionally, the executing each of the target tasks in parallel according to the target scheduling plan includes:

[0023] Based on a preset working section - equipment mapping relationship, determine different types of target equipment corresponding to each working section in each of the target tasks, and the preset working section - equipment mapping relationship represents the corresponding relationship between a working section and the target equipment for executing it;

[0024] Execute each of the target tasks in parallel based on the target scheduling plan and various target equipment.

[0025] Optionally, during the process of executing each of the target tasks in parallel, the method includes:

[0026] If the target equipment used by the work section executed earlier can be used by the work section executed later, and after the work section executed earlier has finished using the target equipment, the target equipment will be allocated to the work section executed later, the work section executed earlier and the work section executed later can be work sections in the same or different target tasks.

[0027] Optionally, in the process of executing each of the target tasks in parallel, the method includes:

[0028] If the execution of the second section in a target task needs to be executed after the samples in the first section are amplified, all batches of samples amplified in the second section based on the same batch of samples in the first section are divided into a target group, and the first section and the second section are the sections included in the target task.

[0029] Optionally, after labeling all batches of samples amplified in the second section based on the same batch of samples in the first section as one target group, the method includes:

[0030] Determine the target device used to execute the second work section based on the preset work section equipment mapping relationship;

[0031] Determining the number of the target devices required to perform the second process section based on the number of the sample batches in the target group, wherein one target device is used for one batch of the samples;

[0032] The target devices corresponding to all sample batches in the target group are respectively calibrated into one device group.

[0033] According to a second aspect of the present disclosure, a device for dynamic production scheduling is provided, comprising:

[0034] A construction unit is used to construct various target tasks to be executed, each of which is a different task batch corresponding to the biological experiment task, one task batch is used as a target task, and one target task is broken down into at least two sections, each section is assigned to a corresponding target device for execution, and different sections are assigned to the same or different target devices for execution;

[0035] An arrangement unit, used for fully arranging each of the target tasks based on a preset algorithm to obtain an arrangement result of each target, wherein each of the target arrangement results is a scheme for executing each of the target tasks in parallel;

[0036] An estimation unit, used to estimate the total time required to execute each of the target arrangement results;

[0037] The first determination unit is configured to determine the target scheduling plan by taking the target arrangement result corresponding to the minimum total time consumption as the target scheduling plan.

[0038] Optionally, the estimation unit includes:

[0039] A sampling module, configured to perform random sampling of the preset number of times on each of the permutation and combination results;

[0040] A composition module, configured to compose all the permutation and combination results obtained by sampling into a permutation and combination set;

[0041] An estimation module, configured to respectively estimate the total time consumption after the execution of each of the permutation and combination results in the permutation and combination set is completed.

[0042] Optionally, the device includes:

[0043] An execution unit, configured to execute each of the target tasks in parallel according to the target scheduling plan;

[0044] An update unit, configured to, when a second target task to be inserted is added during the execution of each of the target tasks, re-schedule the target scheduling plan based on the addition of the second target task.

[0045] Optionally, the update unit includes:

[0046] An acquisition module, configured to acquire the execution duration of executing each of the target tasks in parallel according to the target scheduling plan;

[0047] A determination module, configured to re-determine the target scheduling plan based on the execution duration and the total time consumption after the execution of the target arrangement result obtained by the insertion of the second target task, so as to obtain an updated target scheduling plan.

[0048] Optionally, the construction unit includes:

[0049] A division module, configured to divide a preset experimental process into a preset number of types of work sections to obtain a work section set, where the work section set includes the preset number of types of work sections;

[0050] A selection module, configured to respectively select corresponding work sections from the work section set for each of the target tasks, so as to form each of the target tasks, and each target task includes at least two work sections.

[0051] Optionally, the execution unit includes:

[0052] A determination module, configured to determine different types of target devices corresponding to each section in each of the target tasks based on a preset section-device mapping relationship, where the preset section-device mapping relationship represents the corresponding relationship between a section and the target devices to be executed on it;

[0053] An execution module, configured to execute each of the target tasks in parallel based on the target production plan and various target devices.

[0054] Optionally, the apparatus includes:

[0055] An allocation unit, configured to, when the target device used by a section executed first can be used by a section to be executed later and after the section executed first has finished using the target device, allocate the target device to the section to be executed later, and the section executed first and the section to be executed later can be sections in the same or different target tasks.

[0056] Optionally, the apparatus includes:

[0057] A division unit, configured to, when the execution of a second section in a target task needs to be performed based on the sample amplification of a first section, divide all batches of samples amplified in the second section based on the samples of the same batch in the first section into a target group, where the first section and the second section are sections included in the target task.

[0058] Optionally, the apparatus includes:

[0059] A second determination unit, configured to determine the target devices used to execute the second section based on the preset section-device mapping relationship;

[0060] A third determination unit, configured to determine the number of target devices required to execute the second section based on the number of sample batches in the target group, where one target device is used for one batch of samples;

[0061] A calibration unit, configured to calibrate the target devices corresponding to all sample batches in the target group to a device group.

[0062] According to a third aspect of the present disclosure, there is provided an electronic device, including:

[0063] At least one processor; and

[0064] A memory communicatively connected to the at least one processor; where,

[0065] The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the method described in the foregoing first aspect.

[0066] According to a fourth aspect of the present disclosure, there is provided a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to cause the computer to execute the method described in the foregoing first aspect.

[0067] According to a fifth aspect of the present disclosure, there is provided a computer program product including a computer program, where the computer program implements the method described in the foregoing first aspect when executed by a processor.

[0068] The main technical solutions of the method, device, electronic device, and storage medium for dynamic production scheduling provided by the present disclosure include: constructing each target task to be executed, where each target task is a different task batch corresponding to a biological experiment task, one task batch is taken as one target task, and the one target task is disassembled into at least two work sections, each work section is assigned to a corresponding target device for execution, and different work sections are assigned to the same or different target devices for execution; performing a full permutation on each target task based on a preset algorithm to obtain each target permutation result, where one target permutation result is a scheme for parallel execution of each target task; respectively estimating the total time consumed when each target permutation result is executed; and determining the target permutation result corresponding to the smallest total time consumed as the target production scheduling plan. Compared with the related art, the present disclosure constructs each target task corresponding to the biological experiment task, performs a full permutation on each target task to obtain each target permutation result, estimates the total time consumed when each target permutation result is executed, and finally obtains the target production scheduling plan corresponding to the biological experiment task based on the total time consumed, so that the method for dynamic production scheduling of the present disclosure can be applied to biological experiment activities, thereby improving the utilization rate of various experimental resources in biological experiment activities.

[0069] It should be understood that the content described in this part is not intended to identify the key or important features of the embodiments of the present application, nor is it used to limit the scope of the present application. Other features of the present application will become easily understood through the following description. Description of the Drawings

[0070] The drawings are used to better understand the solution and do not constitute a limitation to the present disclosure. Among them:

[0071] Figure 1 It is a flowchart showing a method for dynamic production scheduling provided by an embodiment of the present disclosure

[0072] Figure 2A schematic diagram of the time used by parallel devices in a certain section of the protein expression experiment provided by the embodiments of the present disclosure;

[0073] Figure 3 A schematic diagram of the time used by parallel devices in another section of the protein expression experiment provided by the embodiments of the present disclosure;

[0074] Figure 4 A schematic diagram of the time used by parallel devices in another section of the protein expression experiment provided by the embodiments of the present disclosure;

[0075] Figure 5 A schematic diagram of the time used by parallel devices in another section of the protein expression experiment provided by the embodiments of the present disclosure;

[0076] Figure 6 A schematic diagram of the time used by parallel devices in another section of the protein expression experiment provided by the embodiments of the present disclosure;

[0077] Figure 7 A schematic diagram of the time used by parallel devices in another section of the protein expression experiment provided by the embodiments of the present disclosure;

[0078] Figure 8 A schematic diagram of the time used by parallel devices in another section of the protein expression experiment provided by the embodiments of the present disclosure;

[0079] Figure 9 A schematic diagram of the single-cycle predicted scheduling time provided by the embodiments of the present disclosure;

[0080] Figure 10 A schematic diagram of the single-cycle predicted scheduling time provided by the embodiments of the present disclosure;

[0081] Figure 11 A schematic diagram of the single-cycle predicted scheduling time provided by the embodiments of the present disclosure;

[0082] Figure 12 A schematic diagram of the structure of a dynamic scheduling device provided by the embodiments of the present disclosure;

[0083] Figure 13 Another schematic diagram of the structure of a dynamic scheduling device provided by the embodiments of the present disclosure;

[0084] Figure 14 A schematic block diagram of the exemplary electronic device 300 provided by the embodiments of the present disclosure. Detailed implementation manners

[0085] The exemplary embodiments of the present disclosure will be described below in conjunction with the accompanying drawings. Various details of the embodiments of the present disclosure are included to facilitate understanding, and they should be considered merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, descriptions of well-known functions and structures are omitted in the following description for clarity and conciseness.

[0086] The method, apparatus, electronic device, and storage medium for dynamic production scheduling according to the embodiments of the present disclosure will be described below with reference to the accompanying drawings.

[0087] Figure 1 The flowchart of a method for dynamic production scheduling provided by an embodiment of the present disclosure.

[0088] As Figure 1 shown, the method includes the following steps:

[0089] Step 101: Construct each target task to be executed. Each of the target tasks is a different task batch corresponding to a biological experiment task. One task batch serves as one target task, and the one target task is disassembled into at least two work sections. Each work section is assigned to a corresponding target device for execution, and different work sections are assigned to the same or different target devices for execution.

[0090] As a refinement of the above step 101, in order to implement the execution of the biological experiment task, by constructing several target tasks corresponding to the biological experiment task, that is, each of the target tasks, and by executing each of the target tasks, the execution of the biological experiment task is further realized. Among them, the target task is a different task batch corresponding to the biological experiment task. For example, when performing a protein expression experiment, it is often necessary to construct multiple batches of the protein expression experiment. The multiple batches of the protein expression experiment are the biological experiment task, and one batch of the protein expression experiment is one target task. In the foregoing example, the experiment types of each batch of target tasks are the same, but the embodiments of the present disclosure do not limit this. Therefore, the experiment types of each batch of target tasks can be different. Further, the target task is composed of various work sections involved in the biological experiment activity. Therefore, one target task can be disassembled into at least two work sections. By sequentially executing the work sections of one target task, the execution of one target task is completed. And during the execution of the work section, each type of work section corresponds to a corresponding target device for execution, and different types of work sections may use the same or different target devices for execution.

[0091] Step 102: Based on a preset algorithm, perform a full permutation of each of the target tasks to obtain various target permutation results. One target permutation result is a scheme for parallel execution of each of the target tasks.

[0092] As a refinement of the above Step 102, to obtain the permutation schemes corresponding to each of the target tasks, perform a full permutation of each of the target tasks based on a preset algorithm to obtain various target permutation results. The preset algorithm includes, but is not limited to, a machine learning algorithm. One target permutation result is a result after a full permutation of each of the target tasks, and based on one target permutation result, parallel execution of each of the target tasks is performed. That is, one target permutation result is a scheme for parallel execution of each of the target tasks.

[0093] Step 103: Estimate the total time consumed after the execution of each of the target permutation results is completed.

[0094] As a refinement of the above Step 103, to select the optimal target permutation result from each of the target permutation results, estimate the total time consumed after the execution of each of the target permutation results is completed, so as to obtain the total time consumed corresponding to each of the target permutation results respectively. By comparing the obtained total time consumptions, determine the optimal target permutation result.

[0095] Step 104: Determine the target production scheduling plan as the target permutation result corresponding to the smallest total time consumption.

[0096] As a refinement of the above Step 104, to finally determine the production scheduling plan corresponding to the biological experiment task, determine the target permutation result corresponding to the smallest total time consumption as the target production scheduling plan. That is, when the execution of the biological experiment task is completed according to the target production scheduling plan, the total time consumption is theoretically the smallest. That is, the target production scheduling plan is the optimal production scheduling plan corresponding to the biological experiment task.

[0097] The method, device, electronic device, and storage medium for dynamic production scheduling provided by the present disclosure mainly include the following technical solutions: constructing each target task to be executed, where each of the target tasks is a different task batch corresponding to a biological experiment task, one task batch is used as one target task, and the one target task is decomposed into at least two work sections, each of the work sections is assigned to a corresponding target device for execution, and different work sections are assigned to the same or different target devices for execution; performing a full permutation on each of the target tasks based on a preset algorithm to obtain each target permutation result, where one target permutation result is a scheme for parallel execution of each of the target tasks; respectively estimating the total time consumed for each of the target permutation results to be completed; and determining the target permutation result corresponding to the minimum total time consumed as the target production scheduling plan. Compared with the related art, the present disclosure constructs each of the target tasks corresponding to the biological experiment task, performs a full permutation on each of the target tasks to obtain each target permutation result, estimates the total time consumed for each of the target permutation results to be completed, and finally obtains the target production scheduling plan corresponding to the biological experiment task based on the total time consumed, so that the method for dynamic production scheduling of the present disclosure can be applied to biological experiment activities, thereby improving the utilization rate of various experimental resources in biological experiment activities.

[0098] As a refinement of the embodiment of the present disclosure, when performing the step 103 of respectively estimating the total time consumed for each of the target permutation results to be completed, the following implementation manners may also be adopted but are not limited to, for example: performing random sampling on each of the permutation and combination results for a preset number of times; forming a permutation and combination set with all the permutation and combination results obtained by sampling; and respectively estimating the total time consumed for each of the permutation and combination results in the permutation and combination set to be completed.

[0099] As a refinement of the above embodiment, in order to obtain more representative permutation and combination results, random sampling is performed on each of the permutation and combination results for a preset number of times, where the preset number can be set according to requirements, and the random sampling can be but is not limited to Monte Carlo simulated annealing sampling; then all the permutation and combination results obtained by sampling are formed into a permutation and combination set, and the total time consumed for each of the permutation and combination results in the permutation and combination set to be completed is estimated respectively.

[0100] To facilitate understanding of the above process based on Monte Carlo simulated annealing sampling, this embodiment gives an exemplary illustration. For example: representing the target task as Task p , where p is the task number, and dividing the work section according to the different processing processes of the target task in the biological experiment task as Task i , where i is the work section number. The specific method of Monte Carlo simulated annealing sampling is as follows:

[0101] For all Tasks p Perform Monte Carlo simulated annealing sampling on the combination, and calculate the loss function Loss. Accept the sampling with probability A s where probability A s is as shown in formula (1):

[0102]

[0103] Loss s and loss s-1 represent section i and i - 1 respectively. The initial value of temperature T is 0.1 and it is halved every 200 samplings. When A s is less than the uniform random number, the sampling is accepted. After 1000 rounds of the entire sampling process, select the minimum total time consumption as the optimal production scheduling plan.

[0104] Define the Loss function as the time when all Tasks p finish running, that is:

[0105] Loss = endTime(Task p-last i-last ), where p - last is the number of the last Task to start running, that is the target task, and i - last is the last section of the last target task, and:

[0106] endTime(Task i ) = startTime(Task i ) + operateTime(Task i ), where Task i is the section. The above formula means that the end time of the section is equal to the sum of the start time of the section and the running time of the section.

[0107] The optimization objective of this algorithm is Loss. Every time a new section, that is Task i starts, it is necessary to select the target device, that is Machine i,j and calculate the start time of this section, that is startTime(Task i ), and it is necessary to meet the constraint conditions for the allocation of the target device:

[0108] j c = min(endTime(Machine i,j )), i = section number, j = number of parallel devices, where j c is the current section, that is Task iThe selected Machine number is also the target device number, and the foregoing formula means that the number corresponding to the target device with the smallest value of the earliest completion time among the parallel devices is taken as j c , that is, the target device with the smallest completion time value among the parallel devices is taken as the target device used when the next process section is executed, and the target devices used in these two process sections are the same;

[0109] startTime(Task i ) = max(endTime(Machine i,jc ), endTime(Task i-1 ))), where

[0110] endTime(Machine i,jc ) refers to the minimum time value corresponding to the target device that finishes running first among the above parallel devices, and endTime(Task i-1 ) refers to the end time value of the previous process section. The maximum value of these two values is taken as the start time of the process section, that is, Task i . The unit target device is only allowed to process one task within its process section time range, that is, within the time range from the start to the end of the process section. The same type of target device can be called by different process sections, but not simultaneously.

[0111] As a refinement of the above embodiment, after determining the target scheduling plan by taking the target arrangement result corresponding to the minimum total consumption time as the target scheduling plan, the method may also adopt but is not limited to the following implementation manners. For example: execute each of the target tasks in parallel according to the target scheduling plan; if a second target task to be inserted is added during the execution of each of the target tasks, re-schedule the target scheduling plan based on the addition of the second target task.

[0112] To facilitate understanding of the process involved in the above embodiment, this embodiment gives an exemplary illustration. For example: when one or more new raw materials or new batches of the same raw material are temporarily added at a certain moment during the progress of several batches of several raw materials of the already started biological experiment task, that is, the second target task is added, and the scheduling algorithm will perform a re-scheduling plan. The scheduling algorithm is the preset algorithm to output the target scheduling plan after adding the new batch, and output the total consumption time of executing the updated target scheduling plan. The update function of the target scheduling plan is achieved by setting a delay offset for the start time of the first process section.

[0113] As a refinement of the above embodiments, when re-scheduling the target production plan by adding and re-doing the second target task, the following implementation manners may also be adopted but are not limited thereto. For example: obtaining the execution duration of each of the target tasks executed in parallel based on the target production plan; re-determining the target production plan based on the execution duration and the total time consumed after the execution of the target arrangement result obtained by the insertion of the second target task, so as to obtain an updated target production plan.

[0114] As a refinement of the embodiments of the present disclosure, when constructing each of the target tasks to be executed in step 101, the following implementation manners may also be adopted but are not limited thereto. For example: dividing a preset experimental process into a preset number of types of the work sections to obtain a work section set, where the work section set includes the preset number of types of the work sections; respectively selecting corresponding work sections from the work section set for each of the target tasks to form each of the target tasks, and each of the target tasks includes at least two work sections.

[0115] To facilitate the understanding of the execution process involved in the above embodiments, this embodiment gives an exemplary illustration. For example: cutting the biological experimental process of protein expression and purification into 18 work sections, including: transformation, resuscitation culture, coating, solid culture, picking monoclonal, first shaking culture, subculture, second shaking culture, measuring OD absorbance, adding inducer, induction culture, centrifugation, removing supernatant, lysis oscillation, centrifugation, pre-mixing enzyme activity reaction system, preparing enzyme activity reaction system, enzyme activity detection. And the 18 work sections form the work section set. When completing the protein expression experiment, corresponding work sections can be selected from the 18 work sections according to the requirements to form the target task, and by executing the target task, the protein expression experiment can be completed. The "according to the requirements" can select the work sections according to protein purification standards, purity requirements and other standards, and connect the selected work sections in a certain order to obtain the target task.

[0116] As a refinement of the above embodiments, when executing each of the target tasks in parallel according to the target production plan, the following implementation manners may also be adopted but are not limited thereto. For example: determining different types of target devices corresponding to each work section in each of the target tasks based on a preset work section - equipment mapping relationship, where the preset work section - equipment mapping relationship represents the corresponding relationship between a work section and the target device for executing it; executing each of the target tasks in parallel based on the target production plan and various target devices.

[0117] To facilitate the understanding of the execution process involved in the above embodiments, this embodiment provides an exemplary illustration. For example, after the biological experiment process of protein expression and purification is divided into 18 work sections, the following preset work section - equipment mapping relationships exist among these 18 work sections. For example, transformation corresponds to an automated pipetting device, resuscitation culture corresponds to the first incubator, coating corresponds to an automated pipetting device, solid culture corresponds to the first incubator, picking monoclonal colonies corresponds to a microorganism detection device, the first shaking culture corresponds to the second incubator, sub - culturing corresponds to an automated pipetting device, the second shaking culture corresponds to the second incubator, measuring OD absorbance corresponds to an ELISA reader, adding inducer corresponds to an automated pipetting device, induction culture corresponds to the first incubator, centrifugation corresponds to a centrifuge, removing supernatant corresponds to an automated pipetting device, lysis oscillation corresponds to an automated pipetting device, centrifugation corresponds to a centrifuge, pre - mixing the enzyme activity reaction system corresponds to an automated pipetting device, preparing the enzyme activity reaction system corresponds to an automated pipetting device, and enzyme activity detection corresponds to an ELISA reader. Based on the above mapping relationships, the corresponding target devices are selected for each work section in the protein expression experiment, and the work section is executed based on the target device. It can be seen from the above - mentioned preset work section - equipment mapping relationships that devices such as the automated pipetting device, the first incubator, and the second incubator can be used in multiple work sections. For example, the first incubator is called in the resuscitation culture, solid culture, and the first shaking culture work sections.

[0118] As a refinement of the embodiments of the present disclosure, during the parallel execution of each of the target tasks, the method may also adopt, but is not limited to, the following implementation manners. For example, if the target device used in the previously executed work section can be used by the subsequently executed work section, and after the previously executed work section has used the target device, the target device is allocated to the subsequently executed work section. The previously executed work section and the subsequently executed work section may be work sections in the same or different target tasks.

[0119] As a refinement of the embodiments of the present disclosure, during the parallel execution of each of the target tasks, the method may also adopt, but is not limited to, the following implementation manners. For example, if the execution of the second work section in a target task needs to be carried out based on the sample amplification in the first work section, then all batches of samples amplified in the second work section based on the samples of the same batch in the first work section are divided into a target group. The first work section and the second work section are work sections included in the same target task.

[0120] As a refinement of the above embodiments, after calibrating all batches of samples amplified in the second stage from the samples of the same batch in the first stage into a target group, the method may also adopt, but is not limited to, the following implementation manners. For example: determining the target device used to execute the second stage based on the preset stage equipment mapping relationship; determining the number of the target devices required to execute the second stage based on the number of sample batches in the target group, wherein one target device is used for one batch of the samples; and calibrating the target devices corresponding to all sample batches in the target group into one device group.

[0121] To facilitate understanding of the execution process involved in the above embodiments, this embodiment gives an exemplary illustration thereof. For example: Since the process from solid culture to picking monoclonal requires dividing the samples of one batch into multiple plates of an incubator, it is necessary to divide the plates occupied by the samples of the same batch into one device group, so that subsequent stages can perform a flow process on the samples in batches. Therefore, it is necessary to group the devices in some stages.

[0122] To more intuitively show the specific implementation process of the embodiments of the present disclosure, this embodiment gives an exemplary illustration when there are two proteins to be expressed. To achieve the expression of these two proteins, this embodiment selects 7 stages from the aforementioned 18 stages to form a complete protein expression experimental process, and the experimental processes for the expression of these two proteins are the same. To more clearly show the experimental processes for the expression of the aforementioned two proteins, this embodiment provides Figures 1 to 7 the experimental processes for the expression of the two proteins, where Figures 2 to 8 the order corresponds to the execution order of the 7 stages, and the number of parallel devices and the device grouping situation of the corresponding stages are illustrated in each legend. Among them, incub1_1 represents plate No. 1 of the first incubator, and incub2_1 represents plate No. 1 of the second incubator. Figures 2 to 7 The specific content included is as follows:

[0123] Figure 2 This is a schematic diagram of a protein expression experiment provided by an embodiment of the present disclosure. Figure 2 For the transformation stage, there are 4 parallel target devices, and the target devices are not grouped; Figure 3 This is another schematic diagram of a protein expression experiment provided by an embodiment of the present disclosure. Figure 3 Corresponding to the resuscitation culture stage, there are 13 parallel target devices, and the target devices are not grouped; Figure 4 This is another schematic diagram of a protein expression experiment provided by an embodiment of the present disclosure. Figure 4Corresponding to the solid culture section, there are 12 parallel target devices, with 4 target devices in a group. Among them, one plate is one target device, and 4 plates are in a device group, which includes 1 wild type, 1 positive control, and 2 variants; Figure 5 Another schematic diagram of a protein expression experiment provided by an embodiment of the present disclosure, Figure 5 Corresponding to the first shaking culture section, there are 20 parallel target devices, with 2 target devices in a group. Among them, in the shaking culture section, 2 plates are in a group, and the wild type plate and the positive control plate are removed. In the subsequent induction culture, the previous 3 groups (2 plates in each group) are combined into one group, and induced simultaneously to improve the utilization rate of the equipment; Figure 6 Another schematic diagram of a protein expression experiment provided by an embodiment of the present disclosure, Figure 6 Corresponding to the second shaking culture section, there are 18 parallel target devices, with 6 target devices in a group; Figure 7 Another schematic diagram of a protein expression experiment provided by an embodiment of the present disclosure, Figure 7 Corresponding to the induction culture section, there are 12 parallel target devices, with 6 target devices in a group; Figure 8 Another schematic diagram of a protein expression experiment provided by an embodiment of the present disclosure, Figure 8 Corresponding to the enzyme activity reaction and detection section, there are 3 parallel target devices, without grouping.

[0124] To more intuitively show the achieved effects of this embodiment, Figure 9 A schematic diagram of a single-cycle predicted scheduling time provided by an embodiment of the present disclosure, Figure 9 It shows that there are 3 batches of the first protein and 2 batches of the second protein, and their respective target task numbers are p01, p02, p03, p11, p12. The execution order of this single-round sampling task is p01, p11, p02, p03, p12, and the running end time of the last section of the last target task p12 is 73.8 hours.

[0125] To more intuitively show the achieved effects of this embodiment, Figure 10 A schematic diagram of a single-cycle predicted scheduling time provided by an embodiment of the present disclosure, Figure 10 It shows that the execution order of the 5 tasks mentioned in Figure 9 is sampled 1000 times based on the Monte Carlo simulated annealing sampling strategy, and the scheduling plan with the least time consumption, that is, the optimal one, shows that the task order is p11, p01, p02, p03, p12, and the minimum time consumption for 1000 rounds is 69.8 hours.

[0126] To more intuitively show the achieved effects of this embodiment, Figure 11 A schematic diagram of a single-cycle predicted scheduling time provided by an embodiment of the present disclosure, Figure 11The initial sampling order of the tasks shown is p01, p02, p11, p12, p03, and the above five task numbers correspond to Figure 9 the five tasks shown. At the 50th hour when the first task p01 starts, the task ep17 is temporarily added, resulting in all subsequent tasks being rescheduled from this moment on; the predicted results of each task and each work section after rescheduling show that the time when the last task ep17 finishes running is the 91.8th hour from the 0th moment. Among them, Figures 9 to 11 in the shown, machine refers to the target device, st refers to the start time, and et refers to the end time.

[0127] To sum up, the present embodiment can achieve the following effects:

[0128] 1. A scheduling plan for biological experiment tasks is realized.

[0129] 2. The equipment utilization rate and output efficiency of biological experiment tasks are improved.

[0130] 3. The bottleneck of biological experiment equipment resources is solved, dynamic scheduling is performed, and complex planning problems such as the existence of equipment loops in the task flow (i.e., the same type of equipment can be called by multiple different work sections at the same time) and equipment grouping are solved.

[0131] Corresponding to the above method for dynamic scheduling, the present disclosure also proposes a device for dynamic scheduling. Since the device embodiment of the present disclosure corresponds to the above method embodiment, for the details not disclosed in the device embodiment, reference may be made to the above method embodiment, and the present disclosure will not elaborate.

[0132] Figure 12 The following is a schematic structural diagram of a device for dynamic scheduling provided by an embodiment of the present disclosure, as Figure 12 shown, including:

[0133] A construction unit 21, configured to construct each target task to be executed, where each of the target tasks is a different task batch corresponding to a biological experiment task, one task batch is used as one target task, and the one target task is disassembled into at least two work sections, each of the work sections is assigned to a corresponding target device for execution, and different work sections are assigned to the same or different target devices for execution;

[0134] An arrangement unit 22, configured to perform a full arrangement on each of the target tasks based on a preset algorithm to obtain each target arrangement result, and one target arrangement result is a scheme for parallel execution of each of the target tasks;

[0135] An estimation unit 23, configured to respectively estimate the total time consumed when each of the target arrangement results is executed;

[0136] The first determination unit 24 is configured to determine the target scheduling plan by using the target arrangement result corresponding to the minimum total time consumption.

[0137] Figure 13 It is a schematic structural diagram of another device for dynamic scheduling provided by an embodiment of the present disclosure. As Figure 13 shown, the estimation unit 23 includes:

[0138] A sampling module 231, configured to perform random sampling on each of the arrangement combination results for a preset number of times;

[0139] A composition module 232, configured to form an arrangement combination set by using all the arrangement combination results obtained by sampling;

[0140] An estimation module 233, configured to respectively estimate the total time consumption after the execution of each of the arrangement combination results in the arrangement combination set is completed.

[0141] Further, in a possible implementation manner of this embodiment, as Figure 13 shown, the device includes:

[0142] An execution unit 25, configured to execute each of the target tasks in parallel according to the target scheduling plan;

[0143] An update unit 26, configured to, when a second target task to be inserted is added during the execution of each of the target tasks, re-schedule the target scheduling plan based on the addition of the second target task.

[0144] Further, in a possible implementation manner of this embodiment, as Figure 13 shown, the update unit 26 includes:

[0145] An acquisition module 261, configured to acquire the execution duration of executing each of the target tasks in parallel according to the target scheduling plan;

[0146] A determination module 262, configured to re-determine the target scheduling plan based on the execution duration and the total time consumption after the execution of the target arrangement result obtained by the insertion of the second target task, so as to obtain an updated target scheduling plan.

[0147] Further, in a possible implementation manner of this embodiment, as Figure 13 shown, the construction unit 21 includes:

[0148] A division module 211, configured to divide a preset experimental process into the preset number of types of work sections to obtain a work section set, where the work section set includes the preset number of types of work sections;

[0149] A selection module 212, configured to select a corresponding section from the set of sections for each of the target tasks, so as to form each of the target tasks, and each of the target tasks includes at least two sections.

[0150] Further, in a possible implementation manner of this embodiment, as Figure 13 shown, the execution unit 25 includes:

[0151] A determination module 251, configured to determine different types of target devices corresponding to each section in each of the target tasks based on a preset section-device mapping relationship, where the preset section-device mapping relationship represents the correspondence between a section and the target devices for executing the section;

[0152] An execution module 252, configured to execute each of the target tasks in parallel based on the target production plan and various target devices.

[0153] Further, in a possible implementation manner of this embodiment, as Figure 13 shown, the device includes:

[0154] An allocation unit 27, configured to allocate the target device to a section to be executed later when the target device used by the section executed first can be used by the section to be executed later and the section executed first has finished using the target device, and the section executed first and the section to be executed later can be sections in the same or different target tasks.

[0155] Further, in a possible implementation manner of this embodiment, as Figure 13 shown, the device includes:

[0156] A division unit 28, configured to divide all batches of samples amplified in the second section based on the samples of the same batch in the first section into a target group when the execution of the second section in a target task needs to be performed after the sample amplification in the first section, and the first section and the second section are sections included in the target task.

[0157] Further, in a possible implementation manner of this embodiment, as Figure 13 shown, the device includes:

[0158] A second determination unit 29, configured to determine the target device used for executing the second section based on the preset section-device mapping relationship;

[0159] A third determination unit 2101, configured to determine the number of the target devices required to execute the second process section based on the number of the sample batches in the target group, where one of the target devices is used for one batch of the samples.

[0160] A calibration unit 2102, configured to calibrate the target devices respectively corresponding to all the sample batches in the target group to a device group.

[0161] It should be noted that the foregoing explanation of the method embodiment also applies to the device in this embodiment, with the same principle, which is not limited in this embodiment.

[0162] According to an embodiment of the present disclosure, the present disclosure further provides an electronic device, a readable storage medium, and a computer program product.

[0163] Figure 14 A schematic block diagram of an exemplary electronic device 300 that can be used to implement the embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as, a laptop computer, a desktop computer, a workbench, a personal digital assistant, a server, a blade server, a mainframe computer, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as, a personal digital processor, a cellular phone, a smart phone, a wearable device, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0164] As Figure 14 shown, the device 300 includes a computing unit 301, which can execute various appropriate actions and processes according to the computer program stored in a ROM (Read-Only Memory) 302 or the computer program loaded from a storage unit 308 into a RAM (Random Access Memory) 303. In the RAM 303, various programs and data required for the operation of the device 300 can also be stored. The computing unit 301, the ROM 302, and the RAM 303 are connected to each other through a bus 304. An I / O (Input / Output) interface 305 is also connected to the bus 304.

[0165] Multiple components in device 300 are connected to I / O interface 305, including: an input unit 306, such as a keyboard, a mouse, etc.; an output unit 307, such as various types of displays, speakers, etc.; a storage unit 308, such as a disk, an optical disc, etc.; and a communication unit 309, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 309 allows device 300 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0166] The computing unit 301 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 301 include, but are not limited to, a CPU (Central Processing Unit), a GPU (Graphic Processing Units), various dedicated AI (Artificial Intelligence) computing chips, various computing units running machine learning model algorithms, a DSP (Digital Signal Processor), and any suitable processor, controller, microcontroller, etc. The computing unit 301 executes the various methods and processes described above, such as the method of dynamic scheduling. For example, in some embodiments, the method of dynamic scheduling can be implemented as a computer software program tangibly embodied in a machine-readable medium, such as the storage unit 308. In some embodiments, part or all of the computer program can be loaded and / or installed onto device 300 via the ROM 302 and / or the communication unit 309. When the computer program is loaded into the RAM 303 and executed by the computing unit 301, one or more steps of the method described above can be executed. Alternatively, in other embodiments, the computing unit 301 can be configured to execute the aforementioned method of dynamic scheduling by any other suitable means (e.g., by means of firmware).

[0167] The various embodiments of the systems and techniques described above in this specification can be implemented in digital electronic circuitry, integrated circuit systems, FPGAs (Field Programmable Gate Arrays), ASICs (Application-Specific Integrated Circuits), ASSPs (Application Specific Standard Products), SoCs (System On Chip), CPLDs (Complex Programmable Logic Devices), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include: being implemented in one or more computer programs that are executable and / or interpretable on a programmable system including at least one programmable processor, which may be a special-purpose or general-purpose programmable processor that receives data and instructions from, and transmits data and instructions to, a storage system, at least one input device, and at least one output device.

[0168] The program code for implementing the methods of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when the program codes are executed by the processor or controller, the functions / operations specified in the flowchart and / or block diagram are implemented. The program code can be executed entirely on the machine, partially on the machine, as an independent software package partially on the machine and partially on a remote machine, or entirely on a remote machine or server.

[0169] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any suitable combination of the foregoing. More specific examples of the machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer disk, a hard disk, a RAM, a ROM, an EPROM (Electrically Programmable Read-Only-Memory), or a flash memory, an optical fiber, a CD-ROM (Compact Disc Read-Only Memory), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0170] In order to provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (Cathode-Ray Tube) or an LCD (Liquid Crystal Display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, speech input, or tactile input).

[0171] The systems and techniques described herein can be implemented in a computing system including backend components (e.g., as a data server), or a computing system including middleware components (e.g., an application server), or a computing system including frontend components (e.g., a user computer having a graphical user interface or a web browser through which the user can interact with an implementation of the systems and techniques described herein), or a computing system including any combination of such backend components, middleware components, or frontend components. The components of the system can be interconnected to each other by any form or medium of digital data communication (e.g., a communication network). Examples of the communication network include: a LAN (Local Area Network), a WAN (Wide Area Network), the Internet, and a blockchain network.

[0172] A computer system may include a client and a server. The client and the server are generally far from each other and usually interact via a communication network. The client-server relationship is generated by computer programs running on respective computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or a cloud host, which is a host product in the cloud computing service system, and solves the defects of difficult management and weak business scalability existing in traditional physical hosts and VPS services ("Virtual Private Server", or simply "VPS" for short). The server may also be a server of a distributed system or a server combined with a blockchain.

[0173] It should be noted that artificial intelligence is a discipline that studies how to make a computer simulate certain thinking processes and intelligent behaviors of humans (such as learning, reasoning, thinking, planning, etc.), and there are both hardware-level technologies and software-level technologies. Artificial intelligence hardware technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, and big data processing; artificial intelligence software technologies mainly include several major directions such as computer vision technology, speech recognition technology, natural language processing technology, and machine learning / deep learning, big data processing technology, and knowledge graph technology.

[0174] It should be understood that various forms of processes shown above can be used, steps can be reordered, added, or deleted. For example, the steps recorded in the present disclosure can be executed in parallel, sequentially, or in a different order, as long as the desired results of the technical solutions disclosed in the present disclosure can be achieved, and no limitation is imposed herein.

[0175] The above specific embodiments do not constitute a limitation on the protection scope of the present disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principle of the present disclosure shall be included within the protection scope of the present disclosure.

Claims

1. A method for dynamic production scheduling, characterized in that, Including: Constructing each target task to be executed, where each of the target tasks is a different task batch corresponding to a biological experiment task, one task batch being one target task, and the one target task being disassembled into at least two work sections, each of the work sections being assigned to a corresponding target device for execution, and different ones of the work sections being assigned to the same or different target devices for execution; Performing a full permutation on each of the target tasks based on a preset algorithm to obtain each target permutation result, one target permutation result being a scheme for parallel execution of each of the target tasks; Respectively estimating the total time consumed after completion of execution of each of the target permutation results; Determining the target permutation result corresponding to the minimum total time consumed as the target production scheduling plan.

2. The method according to claim 1, wherein The respectively estimating the total time consumed after completion of execution of each of the target permutation results includes: Performing random sampling on each of the permutation combination results for a preset number of times; Forming a permutation combination set with all the permutation combination results obtained by sampling; Respectively estimating the total time consumed after completion of execution of each of the permutation combination results in the permutation combination set.

3. The method according to claim 1, characterized in that, After determining the target permutation result corresponding to the minimum total time consumed as the target production scheduling plan, the method includes: Parallelly executing each of the target tasks according to the target production scheduling plan; If a second target task to be inserted is added during the execution of each of the target tasks, re-scheduling the target production scheduling plan based on the addition of the second target task.

4. The method according to claim 3, wherein The re-scheduling the target production scheduling plan based on the addition of the second target task includes: Obtaining the execution duration of parallelly executing each of the target tasks according to the target production scheduling plan; Re-determining the target production scheduling plan based on the execution duration and the total time consumed after completion of execution of the target permutation result obtained by the insertion of the second target task to obtain an updated target production scheduling plan.

5. The method according to any one of claims 1 to 3, characterized in that The constructing each target task to be executed includes: Dividing a preset experimental process into the preset number of types of work sections to obtain a work section set, the work section set including the preset number of types of work sections; Selecting corresponding work sections from the work section set for each of the target tasks respectively to form each of the target tasks, each target task including at least two of the work sections.

6. The method according to claim 5, characterized in that The parallelly executing each of the target tasks according to the target production scheduling plan includes: Determining different types of target devices corresponding to each work section in each of the target tasks based on a preset work section - device mapping relationship, the preset work section - device mapping relationship indicating the correspondence between one work section and the target device for its execution; Parallelly executing each of the target tasks based on the target production scheduling plan and various target devices.

7. The method according to claim 6, characterized in that, During the process of parallelly executing each of the target tasks, the method includes: If the target device used in the section executed first can be used by the section executed later, and after the section executed first finishes using the target device, the target device is allocated to the section executed later, the section executed first and the section executed later can be sections in the same or different target tasks.

8. The method according to claim 6, characterized in that During the parallel execution of each target task, the method includes: If the execution of the second section in a target task needs to be performed based on the sample amplification in the first section, all batches of samples amplified in the second section based on the samples of the same batch in the first section are divided into a target group. The first section and the second section are sections included in the target task.

9. A device for dynamic production scheduling, characterized in that, It includes: A construction unit for constructing each target task to be executed. Each target task is a different task batch corresponding to a biological experiment task. One task batch is used as one target task, and the one target task is disassembled into at least two sections. Each section is allocated to the corresponding target device for execution, and different sections are allocated to the same or different target devices for execution; An arrangement unit for performing a full arrangement of each target task based on a preset algorithm to obtain each target arrangement result. One target arrangement result is a scheme for parallel execution of each target task; An estimation unit for respectively estimating the total time consumed after the execution of each target arrangement result; A first determination unit for determining the target arrangement result corresponding to the smallest total time consumed as the target production plan.

10. An electronic device, characterized in that, It includes: At least one processor; And A memory communicatively connected to the at least one processor; wherein, The memory stores instructions executable by the at least one processor. The instructions are executed by the at least one processor so that the at least one processor can execute the method according to any one of claims 1-8.