A computer task processing method and related device

CN116341838BActive Publication Date: 2026-10-27HUAWEI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310206708.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-02-23
Publication Date
2026-10-27
Estimated Expiration
2043-02-23

AI Technical Summary

Technical Problem

[0004]由于冲突的类型较多,求解器的开发人员会按照往常的经验为混合整数规划方程选定某几种冲突以进行冲突分析,但是,混合整数规划方程的规模复杂且庞大,开发人员在选定冲突时往往考虑的因素较为单一,致使其选定的这些冲突不是最合适的冲突,会导致冲突分析的效果较差,且冲突分析所花费的时间较长,进而导致求解器无法提供优质的求解服务

Benefits of technology

[0037]本申请实施例中,在获取用于描述待处理的任务的获取混合整数规划方程后,可先将混合整数规划方程输入到求解器中。接收混合整数规划方程后,求解器可获取混合整数规划方程的特征信息。然后,求解器可通过神经网络模型对混合整数规划方程的特征信息进行处理,以从多个冲突中,选定与混合整数规划方程相关联的目标冲突。随后,求解器在混合整数规划方程的求解过程中,若确定出现了目标冲突,求解器可基于目标冲突的处理结果对混合整数规划方程继续进行求解,并将最终得到的求解结果作为任务的处理结果。前述过程中,求解器可基于混合整数规划方程的自身特征进行一系列的处理,从而确定混合整数规划方程的求解过程中冲突分析效果最好的目标冲突,那么,一旦求解过程中出现了目标冲突,求解器可直接调用目标冲突对应的冲突分析算法对目标冲突进行分析处理,从而得到目标冲突的处理结果,并利用目标冲突的处理结果来进行后续的求解过程,直至得到混合整数规划方程的解。由此可见,求解器在自动选定目标冲突时,考虑了与混合整数方程自身相关的各种特征,所考虑的因素较为全面,故选择得到的目标冲突通常为最合适的冲突,这样可在混合整数方程的求解过程中优化冲突分析的效果,且可减少冲突分析所需花费的时间,故求解器可提供较为优质的求解服务。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116341838B_ABST
    Figure CN116341838B_ABST
Patent Text Reader

Abstract

The application discloses a computer task processing method and a related device thereof. In the process of solving equations, the effect of conflict analysis can be optimized, and the time spent in conflict analysis can be reduced, thereby providing high-quality solving services. The method of the application comprises the following steps: after obtaining a mixed integer programming equation used for describing a task to be processed, the mixed integer programming equation is input into a solver. After receiving the mixed integer programming equation, the solver processes characteristic information of the mixed integer programming equation through a neural network model, so as to select a target conflict associated with the mixed integer programming equation from multiple conflicts. Subsequently, if the target conflict occurs in the solving process of the mixed integer programming equation, the solver continues to solve the mixed integer programming equation based on a processing result of the target conflict, and finally obtains a solving result as a processing result of the task.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a computer task processing method and related equipment. Background Technology

[0002] Many tasks in various fields can be addressed using mixed-integer programming. Based on the requirements of these tasks, corresponding mathematical models can be abstracted and simplified into mixed-integer programming equations. Solving these equations yields the results of these tasks.

[0003] When solving mixed-integer programming equations using solvers provided by relevant technologies, conflicts are often encountered. Therefore, solvers typically use pre-built conflict analysis algorithms to analyze and process these conflicts, obtaining conflict resolution results. In this way, the solver can use the conflict resolution results to continue solving the mixed-integer programming equations, thereby obtaining the solution to the mixed-integer programming equations.

[0004] Because there are many types of conflicts, solver developers often select certain types of conflicts for mixed integer programming equations based on past experience. However, mixed integer programming equations are complex and large in scale, and developers often consider only a few factors when selecting conflicts. This results in the selection of conflicts that are not the most suitable, leading to poor conflict analysis results and long conflict analysis time. Consequently, the solver cannot provide high-quality solution services. Summary of the Invention

[0005] This application provides a computer task processing method and related equipment, which can optimize the effect of conflict analysis and reduce the time required for conflict analysis during the equation solving process, thereby providing a higher quality equation solving service.

[0006] A first aspect of this application provides a computer task processing method, the method comprising:

[0007] When a task needs to be processed, a mixed-integer programming equation can be obtained to describe the task to be processed.

[0008] After obtaining the mixed-integer programming equation, it can be input into the solver. Upon receiving the equation, the solver can extract features to obtain its characteristic information. After obtaining this feature information, the solver can process it using a neural network model to determine the target conflict associated with the mixed-integer programming equation from multiple conflicts.

[0009] After identifying the target conflict, the solver can then solve the mixed-integer programming equation. During the solution process, if a conflict arises, the solver determines whether it is the target conflict. If so, the solver invokes the corresponding conflict analysis algorithm to analyze and process the target conflict applied to the mixed-integer programming equation, thus obtaining the result of the target conflict resolution. Based on the result of the target conflict resolution, the solver continues to solve the mixed-integer programming equation, and the solution to the mixed-integer programming equation serves as the task's processing result. If it is not the target conflict, the solver does not perform any conflict analysis and continues to solve the mixed-integer programming equation, and the solution to the mixed-integer programming equation serves as the task's processing result.

[0010] As can be seen from the above method, after obtaining the mixed-integer programming equation to describe the task to be processed, the mixed-integer programming equation can be input into the solver. Upon receiving the mixed-integer programming equation, the solver can obtain its feature information. Then, the solver can process the feature information of the mixed-integer programming equation through a neural network model to select the target conflict associated with the mixed-integer programming equation from multiple conflicts. Subsequently, if a target conflict is determined to have occurred during the solution process of the mixed-integer programming equation, the solver can continue to solve the mixed-integer programming equation based on the processing result of the target conflict, and use the final solution result as the task processing result. In the aforementioned process, the solver can perform a series of processing based on the characteristics of the mixed-integer programming equation itself to determine the target conflict with the best conflict analysis effect during the solution process. Therefore, once a target conflict occurs during the solution process, the solver can directly call the conflict analysis algorithm corresponding to the target conflict to analyze and process the target conflict, thereby obtaining the processing result of the target conflict, and using the processing result of the target conflict to perform subsequent solution processes until the solution of the mixed-integer programming equation is obtained. It is evident that when automatically selecting the target conflict, the solver considers various characteristics related to the mixed integer equation itself, taking into account a comprehensive range of factors. Therefore, the selected target conflict is usually the most suitable one. This can optimize the effect of conflict analysis in the process of solving mixed integer equations and reduce the time required for conflict analysis. Thus, the solver can provide a high-quality solution service.

[0011] In one possible implementation, the characteristic information of the mixed-integer programming equation includes at least one of the following: the type of variables in the mixed-integer programming equation, the number of variables in the mixed-integer programming equation, or the constraints that the variables in the mixed-integer programming equation need to satisfy. In the aforementioned implementation, after obtaining the mixed-integer programming equation, the solver can determine the type of each variable in the variable matrix contained in the mixed-integer programming equation and perform statistics on all variables to determine the number of variables. Next, the solver can also determine all the constraints that each variable needs to satisfy in the constraint matrix contained in the mixed-integer programming equation. Then, the solver can use the obtained variable types, variable numbers, and constraints to be satisfied by the variables to constitute the characteristic information of the mixed-integer programming equation.

[0012] In one possible implementation, processing the feature information of the mixed-integer programming equation to determine the target conflict associated with the mixed-integer programming equation from multiple conflicts includes: calculating the time difference corresponding to the multiple conflicts based on the feature information of the mixed-integer programming equation; the time difference being the difference between the time required to solve the mixed-integer programming equation using the processing results of multiple conflicts and the time required to solve the mixed-integer programming equation without using the processing results of any conflict; the time difference serving as the matching degree between the multiple conflicts and the mixed-integer programming equation; and identifying the conflicts with a matching degree greater than or equal to a preset threshold as the target conflict associated with the mixed-integer programming equation. In the aforementioned implementation, after obtaining the feature information of the mixed-integer programming equation, the solver can calculate the time difference corresponding to the multiple conflicts through a neural network model. For any one of the multiple conflicts, the time difference corresponding to that conflict is the difference between the time required to solve the mixed-integer programming equation using the processing results of that conflict and the time required to solve the mixed-integer programming equation without using the processing results of any conflict. The time differences corresponding to multiple conflicts can be used as the matching degree between the conflicts and the mixed-integer programming equation. It should be noted that for any given conflict, the higher the matching degree, the better the analysis and handling of that conflict during the solution process. After obtaining the matching degrees between the multiple conflicts and the mixed-integer programming equation, the solver can identify the conflicts with matching degrees greater than or equal to a preset threshold as the target conflicts.

[0013] In one possible implementation, the range of values ​​for the variables in the mixed-integer programming equation includes both the target range and the remaining ranges. The result of target conflict handling indicates that a target conflict will occur when solving the mixed-integer programming equation under the condition that the variables are within the target range, and the target range includes the target value. If a target conflict occurs during the solution of the mixed-integer programming equation, the mixed-integer programming equation is continued to be solved based on the result of target conflict handling. The solution obtained is used as the task processing result. This includes: if a target conflict occurs when solving the mixed-integer programming equation under the condition that the variables are within the target range, then the mixed-integer programming equation is continued to be solved under the condition that the variables are within the remaining ranges, and the solution result of the mixed-integer programming equation is used as the task processing result. In the aforementioned implementation, the entire solution process for the mixed-integer programming equation typically involves multiple iterations. In one iteration, the solver sets each variable to its corresponding target value and solves the mixed-integer programming equation accordingly. If a target conflict arises, the solver can call the corresponding conflict analysis algorithm to analyze and process the conflict. It can then determine that setting each variable within its target value range (where the target value of each variable is within its target value range) will result in a target conflict when solving the mixed-integer programming equation. The solver then uses this information as the result of the target conflict resolution. After obtaining the result, the solver only sets each variable within its remaining value range (for any variable in the mixed-integer programming equation, the target value range and the remaining value ranges constitute the entire value range of that variable), and continues to solve the mixed-integer programming equation based on this. The final solution can then be used as the task's processing result.

[0014] In one possible implementation, the method further includes: presolving the mixed-integer programming equation to obtain a presolved mixed-integer programming equation; obtaining feature information of the presolved mixed-integer programming equation; processing the feature information of the mixed-integer programming equation to determine a target conflict associated with the mixed-integer programming equation from multiple conflicts, including: processing the feature information of the presolved mixed-integer programming equation to determine a target conflict associated with the presolved mixed-integer programming equation from multiple conflicts; if a target conflict occurs during the solution of the mixed-integer programming equation, continuing to solve the mixed-integer programming equation based on the result of the target conflict processing, and using the solution result of the mixed-integer programming equation as the task processing result, including: if a target conflict occurs during the solution of the presolved mixed-integer programming equation, continuing to solve the presolved mixed-integer programming equation based on the result of the target conflict processing, and using the solution result of the presolved mixed-integer programming equation as the task processing result. In the aforementioned implementation, after obtaining the mixed-integer programming equation, it can be input into the solver. Upon receiving the mixed-integer programming equation, the solver preprocesses it to obtain a preprocessed equation. It's important to note that the preprocessed equation's variable matrix contains fewer variables than the original equation's, and its constraint matrix contains fewer constraints than the original equation's. Next, the solver extracts features from the preprocessed equation, obtaining its characteristic information. Then, the solver uses a neural network model to process this feature information, identifying the target conflict associated with the preprocessed equation from among multiple conflicts. Finally, the solver solves the preprocessed equation. During the solution of the preprocessed mixed-integer programming equation, if a conflict occurs, the solver can determine whether the conflict is the target conflict. If so, the solver can call the conflict analysis algorithm corresponding to the target conflict to analyze and process the target conflict applied to the preprocessed mixed-integer programming equation, thereby obtaining the processing result of the target conflict. The processing result of the target conflict is then returned to the solution module. The solver can then continue to solve the preprocessed mixed-integer programming equation based on the processing result of the target conflict, and the obtained solution can be used as the processing result of the task.

[0015] In one possible implementation, the feature information of mixed-integer programming equations can be obtained through a trained neural network model or pre-defined heuristic rules.

[0016] In one possible implementation, several conflicts include: domain propagation conflict, linear programming infeasibility conflict, and linear programming out-of-bounds conflict, etc.

[0017] In one possible implementation, the task to be processed is any of the following: a production plan to be solved, a vehicle adoption plan to be solved, a power consumption scheduling plan to be solved, and an address selection plan to be solved, etc.

[0018] A second aspect of this application provides a computer task processing apparatus, comprising: a first acquisition module for acquiring a mixed-integer programming equation, the mixed-integer programming equation describing a task to be processed; a determination module for processing feature information of the mixed-integer programming equation using a neural network model to determine a target conflict associated with the mixed-integer programming equation from multiple conflicts; a second acquisition module for acquiring the processing result of the target conflict; and a solution module for solving the mixed-integer programming equation, wherein if a target conflict occurs during the solution process, the mixed-integer programming equation is further solved based on the processing result of the target conflict, and the solution result of the mixed-integer programming equation is used as the task processing result.

[0019] As can be seen from the above device, after acquiring the mixed-integer programming equation used to describe the task to be processed, the mixed-integer programming equation can be input into the solver. After receiving the mixed-integer programming equation, the solver can obtain the feature information of the mixed-integer programming equation. Then, the solver can process the feature information of the mixed-integer programming equation through a neural network model to select the target conflict associated with the mixed-integer programming equation from multiple conflicts. Subsequently, if the solver determines that a target conflict has occurred during the solution process of the mixed-integer programming equation, the solver can continue to solve the mixed-integer programming equation based on the processing result of the target conflict, and use the final solution result as the task processing result. In the aforementioned process, the solver can perform a series of processing based on the characteristics of the mixed-integer programming equation itself, thereby determining the target conflict with the best conflict analysis effect in the solution process of the mixed-integer programming equation. Therefore, once a target conflict occurs during the solution process, the solver can directly call the conflict analysis algorithm corresponding to the target conflict to analyze and process the target conflict, thereby obtaining the processing result of the target conflict, and using the processing result of the target conflict to perform the subsequent solution process until the solution of the mixed-integer programming equation is obtained. It is evident that when automatically selecting the target conflict, the solver considers various characteristics related to the mixed integer equation itself, taking into account a comprehensive range of factors. Therefore, the selected target conflict is usually the most suitable one. This can optimize the effect of conflict analysis in the process of solving mixed integer equations and reduce the time required for conflict analysis. Thus, the solver can provide a high-quality solution service.

[0020] In one possible implementation, the characteristic information of the mixed-integer programming equation includes at least one of the following: the type of the variables in the mixed-integer programming equation, the number of variables in the mixed-integer programming equation, or the constraints that the variables in the mixed-integer programming equation need to satisfy.

[0021] In one possible implementation, a determining module is used to: calculate the feature information of the mixed-integer programming equation to obtain the time difference corresponding to multiple conflicts, the time difference being the difference between the time required to solve the mixed-integer programming equation using the processing results of multiple conflicts and the time required to solve the mixed-integer programming equation without using the processing results of any conflict, the time difference serving as the matching degree between multiple conflicts and the mixed-integer programming equation; among the multiple conflicts, the conflicts with a matching degree greater than or equal to a preset threshold are determined as target conflicts associated with the mixed-integer programming equation.

[0022] In one possible implementation, the range of values ​​for the variables in the mixed-integer programming equation includes the target range and the remaining ranges. The result of target conflict handling indicates that a target conflict will occur when solving the mixed-integer programming equation under the condition that the variables are within the target range, and the target range includes the target value. The solution module is used to continue solving the mixed-integer programming equation if a target conflict occurs when solving the mixed-integer programming equation under the condition that the variables are within the remaining ranges, and obtain the solution result of the mixed-integer programming equation as the task processing result.

[0023] In one possible implementation, the device further includes: a preprocessing module for preprocessing the mixed-integer programming equation to obtain a preprocessed mixed-integer programming equation; a third acquisition module for acquiring feature information of the preprocessed mixed-integer programming equation; a determination module for processing the feature information of the preprocessed mixed-integer programming equation to determine a target conflict associated with the preprocessed mixed-integer programming equation from multiple conflicts; and a solution module for continuing to solve the preprocessed mixed-integer programming equation based on the processing result of the target conflict if a target conflict occurs during the solution process of the preprocessed mixed-integer programming equation, and obtaining the solution result of the preprocessed mixed-integer programming equation as the processing result of the task.

[0024] In one possible implementation, feature information is obtained through a trained neural network model or pre-defined heuristic rules.

[0025] In one possible implementation, several conflicts include: domain propagation conflict, linear programming infeasibility conflict, and linear programming out-of-bounds conflict.

[0026] In one possible implementation, the task is any of the following: a production plan to be solved, a vehicle adoption plan to be solved, a power consumption scheduling plan to be solved, or an address selection plan to be solved.

[0027] A third aspect of this application provides a computer task processing apparatus, comprising: a processor, a memory, a bus, and an input / output device. The processor is connected to the memory and the input / output device, and the bus is connected to the processor, the memory, and the input / output device respectively. The input / output device is used to acquire a mixed-integer programming equation, which describes a task to be processed. The processor is used to: acquire the mixed-integer programming equation, which describes the task to be processed; process the feature information of the mixed-integer programming equation using a neural network model to determine a target conflict associated with the mixed-integer programming equation from multiple conflicts; acquire the processing result of the target conflict; solve the mixed-integer programming equation, and if a target conflict occurs during the solution process, continue to solve the mixed-integer programming equation based on the processing result of the target conflict, and obtain the solution result of the mixed-integer programming equation as the task processing result.

[0028] In one possible implementation, the characteristic information of the mixed-integer programming equation includes at least one of the following: the type of the variables in the mixed-integer programming equation, the number of variables in the mixed-integer programming equation, or the constraints that the variables in the mixed-integer programming equation need to satisfy.

[0029] In one possible implementation, the processor is configured to: calculate the feature information of the mixed-integer programming equation to obtain the time difference corresponding to multiple conflicts, the time difference being the difference between the time required to solve the mixed-integer programming equation using the processing results of multiple conflicts and the time required to solve the mixed-integer programming equation without using the processing results of any conflict, the time difference serving as the matching degree between the multiple conflicts and the mixed-integer programming equation; among the multiple conflicts, the conflicts with a matching degree greater than or equal to a preset threshold are identified as target conflicts associated with the mixed-integer programming equation.

[0030] In one possible implementation, the range of values ​​for the variables in the mixed-integer programming equation includes the target range and the remaining ranges. The result of target conflict handling is used to indicate that a target conflict will occur when solving the mixed-integer programming equation under the condition that the variables are within the target range. The target range includes the target value. The processor is used to continue solving the mixed-integer programming equation under the condition that a target conflict occurs when solving the mixed-integer programming equation under the condition that the variables are within the remaining ranges if a target conflict occurs. The solution result of the mixed-integer programming equation is then used as the task processing result.

[0031] In one possible implementation, the processor is further configured to preprocess the mixed-integer programming equation to obtain a preprocessed mixed-integer programming equation; the processor is further configured to acquire feature information of the preprocessed mixed-integer programming equation; the processor is configured to process the feature information of the preprocessed mixed-integer programming equation to determine the target conflict associated with the preprocessed mixed-integer programming equation from multiple conflicts; and the processor is configured to continue solving the preprocessed mixed-integer programming equation based on the processing result of the target conflict if a target conflict occurs during the solution process of the preprocessed mixed-integer programming equation, and obtain the solution result of the preprocessed mixed-integer programming equation as the task processing result.

[0032] In one possible implementation, feature information is obtained through a trained neural network model or pre-defined heuristic rules.

[0033] In one possible implementation, several conflicts include: domain propagation conflict, linear programming infeasibility conflict, and linear programming out-of-bounds conflict.

[0034] In one possible implementation, the task is any of the following: a production plan to be solved, a vehicle adoption plan to be solved, a power consumption scheduling plan to be solved, or an address selection plan to be solved.

[0035] A fourth aspect of this application provides a computer storage medium storing a computer program that, when executed by a computer, causes the computer to perform the method as described in the first aspect or any possible implementation of the first aspect.

[0036] A fifth aspect of this application provides a computer program product storing instructions that, when executed by a computer, cause the computer to perform the method described in the first aspect or any possible implementation of the first aspect.

[0037] In this embodiment, after obtaining the mixed-integer programming equation describing the task to be processed, the mixed-integer programming equation can be input into the solver. Upon receiving the mixed-integer programming equation, the solver can obtain its feature information. Then, the solver can process the feature information of the mixed-integer programming equation through a neural network model to select the target conflict associated with the mixed-integer programming equation from multiple conflicts. Subsequently, if a target conflict is determined to have occurred during the solution process of the mixed-integer programming equation, the solver can continue to solve the mixed-integer programming equation based on the processing result of the target conflict, and use the final solution result as the task processing result. In the aforementioned process, the solver can perform a series of processes based on the characteristics of the mixed-integer programming equation itself to determine the target conflict with the best conflict analysis effect during the solution process. Therefore, once a target conflict occurs during the solution process, the solver can directly call the conflict analysis algorithm corresponding to the target conflict to analyze and process the target conflict, thereby obtaining the processing result of the target conflict, and using the processing result of the target conflict to perform subsequent solution processes until the solution to the mixed-integer programming equation is obtained. It is evident that when automatically selecting the target conflict, the solver considers various characteristics related to the mixed integer equation itself, taking into account a comprehensive range of factors. Therefore, the selected target conflict is usually the most suitable one. This can optimize the effect of conflict analysis in the process of solving mixed integer equations and reduce the time required for conflict analysis. Thus, the solver can provide a high-quality solution service. Attached Figure Description

[0038] Figure 1 A schematic diagram of the structure of a computer task processing system provided in an embodiment of this application;

[0039] Figure 2 Another schematic diagram of the computer task processing system provided in the embodiments of this application;

[0040] Figure 3 An exemplary structural schematic diagram of the terminal device 300 is shown;

[0041] Figure 4 A schematic diagram of the solver provided in the embodiments of this application;

[0042] Figure 5 A flowchart illustrating a computer task processing method provided in an embodiment of this application;

[0043] Figure 6 Another schematic diagram of the solver provided in the embodiments of this application;

[0044] Figure 7 Another schematic flowchart of the computer task processing method provided in the embodiments of this application;

[0045] Figure 8 A schematic diagram illustrating an application example of the computer task processing method provided in this application embodiment;

[0046] Figure 9 This is a schematic diagram of a computer task processing device provided in an embodiment of this application. Detailed Implementation

[0047] This application provides a computer task processing method and related equipment, which can optimize the effect of conflict analysis and reduce the time required for conflict analysis during the equation solving process, thereby providing a higher quality equation solving service.

[0048] The terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such terms are interchangeable where appropriate; this is merely a way of distinguishing objects with the same attributes in the embodiments of this application. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion, so that a process, method, system, product, or apparatus that comprises a series of elements is not necessarily limited to those elements, but may include other elements not explicitly listed or inherent to those processes, methods, products, or apparatuses.

[0049] Many tasks in various fields can be handled using mixed-integer programming. Based on the requirements these tasks must satisfy, a corresponding mathematical model can be abstracted, which can then be simplified into a mixed-integer programming equation. Solving this equation yields the results of these tasks. For example, consider a task to be obtaining a factory's production plan. This plan must not only maximize factory demand and minimize total factory costs, but also satisfy hard and soft constraints specified in the actual business scenario. The mathematical model abstracted from these requirements simplifies to a mixed-integer programming equation. Solving this equation yields the factory's production plan.

[0050] When solving mixed-integer programming equations using solvers provided by relevant technologies, several conflicts often arise. These include domain propagation conflicts (where changes in the domain of variables in a mixed-integer programming equation render the variable values ​​unacceptable due to constraints), linear programming (LP) infeasibility conflicts (where a solution satisfying all constraints cannot be obtained for a mixed-integer programming equation), and LP bounds violations (where a better solution has been found, but subsequent solutions are of lower quality). Therefore, solvers typically utilize pre-built conflict analysis algorithms to analyze and resolve these conflicts, obtaining conflict resolution results. The solver can then use these conflict resolution results to continue solving the mixed-integer programming equation, ultimately obtaining a solution.

[0051] Because there are many types of conflicts, solver developers often select certain types of conflicts for mixed integer programming equations based on past experience. However, mixed integer programming equations are complex and large in scale, and developers often consider only a few factors when selecting conflicts. This results in the selection of conflicts that are not the most suitable, leading to poor conflict analysis results and long conflict analysis time. Consequently, the solver cannot provide high-quality solution services.

[0052] To address the aforementioned problems, this application provides a computer task processing method (which can also be considered as providing a new solver). This method improves upon related solvers, enabling the solution of mixed-integer programming equations (including linear and nonlinear programming equations, etc.) used to describe tasks in different domains. The obtained solutions can be used as the task processing results. The method provided in this application can be applied to various scenarios, which will be described below:

[0053] In the first application scenario, the task to be processed is the production plan of a factory in the supply chain. This problem is a typical large-scale, multi-objective, sparsely constrained, and multi-variable allocation problem. The input to the problem is customer order demand and existing processing resources (raw materials, capacity, etc.). The output is the processing and production plan (processing volume, transportation volume, delivery volume, etc.) arranged according to order demand. The expected output is to minimize processing costs and processing time, and maximize order fulfillment rate (i.e., delivering customer demand on time and in the required quantity), while satisfying all processing constraints. Therefore, a mixed-integer programming equation can be constructed. This equation can contain the mathematical relationship between the variable matrix and the constraint matrix. The variable matrix contains all the variables in the production plan to be solved, and the constraint matrix contains the material constraints, productivity constraints, time constraints, or transportation constraints that each variable needs to satisfy. Material constraints may include the upper limit of materials that can be used during production and the material ratio, etc. Productivity constraints may include the upper limit of the number of production workers required and the upper limit of their work efficiency, etc. Time constraints may include the product delivery date, etc. Transportation constraints may include the upper limit of transportation costs required during production and the upper limit of the number of vehicles required during production, etc. In this way, the production plan of the factory can be obtained by solving the equation using a solver.

[0054] In the second application scenario, let's assume the task to be processed is a vehicle adoption plan in the logistics field, also known as a vehicle routing problem. This problem involves a given number of customers, each with varying demands for goods. A distribution center provides goods to these customers, and a fleet of vehicles is responsible for distributing the goods. The goal is to organize appropriate routes to satisfy customer demands while minimizing constraints such as shortest distance, lowest cost, and least time. A mixed-integer programming equation can be constructed, containing the mathematical relationships between a variable matrix and a constraint matrix. The variable matrix contains all the variables in the vehicle adoption plan, where different variables represent the quantity of different types of vehicles (here, a specific type of vehicle refers to vehicles traveling along a certain route). The constraint matrix contains one or more of the following constraints that each variable must satisfy: capacity constraints, product constraints, time constraints, and road condition constraints. Capacity constraints include the maximum capacity of vehicles during transport; product constraints include the types of products that can be transported; time constraints include the arrival order of different types of vehicles; and road condition constraints include the road conditions that different types of vehicles can travel on. In this way, the vehicle adoption plan can be obtained by solving the equation using a solver.

[0055] In the third application scenario, the task to be processed is an address selection plan in the cloud technology field, namely the central location problem. In practical applications, enterprises need to consider competition when making location decisions. Generally, users need to consider a discrete network where two service providers (leader and follower) successively open a certain number of facilities to compete for market share. A mixed-integer programming equation can be constructed, which includes the mathematical relationship between a variable matrix and a constraint matrix. The variable matrix contains the variables in the address selection plan to be solved. Different variables represent the addresses (e.g., latitude and longitude) of different objects (e.g., enterprises, factories, etc.). The constraint matrix contains one or more of the following constraints that each variable needs to satisfy: distribution constraints, traffic environment constraints, and rule constraints. Distribution constraints include the current distribution of different objects, the predicted future distribution of different objects, the business volume growth rate of objects, and the regional distribution of interactions between objects, etc. Traffic environment constraints include transportation conditions, delivery conditions, and land use conditions when objects interact, etc. Rule constraints include the regulations that objects must comply with when interacting, etc. By solving this equation using a solver, the address selection plan can be obtained.

[0056] In the fourth application scenario, the task to be processed is the power consumption dispatching plan in the power sector, which is the power grid dispatching problem. The power grid dispatching problem mainly includes two stages: In the first stage, the economic dispatching problem of a non-convex power system is transformed into a mixed-integer programming equation through linearization and mixed-integer encoding techniques. Then, an optimization software package is used to solve the mixed-integer programming equation to obtain a satisfactory feasible solution. In the second stage, based on the feasible solution obtained in the first stage, the output range of the generating units is compressed, and the mixed-integer programming equation is solved again to obtain the final economic dispatching scheme for the power system. Therefore, power grid dispatching is a multi-stage mathematical model. A mixed-integer programming equation can be constructed, which can contain the mathematical relationship between the variable matrix and the constraint matrix. The variable matrix contains all the variables in the power consumption dispatching plan to be solved, with different variables representing the power consumption in different regions. The constraint matrix contains one or more of the quantity constraints and price constraints that each variable needs to satisfy. Quantity constraints include the upper limit of power consumption in each region, and price constraints include the upper limit of the total price when consuming electricity in each region. In this way, the power consumption dispatching plan can be obtained by solving the equation using a solver.

[0057] Furthermore, the method provided in this application embodiment can also be applied in many other scenarios, which will not be elaborated here. The above is a detailed description of the application scenarios of the method provided in this application embodiment. The following will describe the hardware device used to implement the method. Figure 1This is a schematic diagram of a computer task processing system provided in an embodiment of this application. The computer task processing system includes user equipment and data processing equipment. The user equipment includes smart terminals such as mobile phones, personal computers, or information processing centers. The user equipment is the initiator of data sequence processing; as the initiator of data sequence processing requests, requests are typically initiated by the user through the user equipment.

[0058] The aforementioned data processing equipment can be devices or servers with data processing capabilities, such as cloud servers, network servers, application servers, and management servers. The data processing equipment receives task processing requests from smart terminals through an interactive interface, and then abstracts the task into a hybrid data programming equation through a storage device for storing data and a processor for data processing, performing task processing such as equation preprocessing and solving. The storage device in the data processing equipment can be a general term, including local storage and a database storing historical data. The database can be located on the data processing equipment or on other network servers.

[0059] exist Figure 1 In the computer task processing system shown, the user equipment can receive user instructions. For example, the user equipment can obtain a task input / selected by the user and then send a request to the data processing device (usually containing various parameters of the task, such as the variables of the task and the various constraints that the variables need to satisfy, etc.). This causes the data processing device to execute a task processing application for the task obtained by the user equipment, thereby obtaining the processing result for the task. For example, the user equipment can obtain a task input by the user and its related parameters, and then send a task processing request to the data processing device. This causes the data processing device to abstract the task into a mixed integer equation, preprocess the mixed integer equation, and then solve the preprocessed mixed integer equation to obtain the corresponding solution, which can be used as the processing result of the task.

[0060] exist Figure 1 In this context, the data processing device can execute the computer task processing method of the embodiments of this application.

[0061] Figure 2 This is another schematic diagram of the computer task processing system provided in the embodiments of this application. Figure 2 In this context, the user equipment (UE) directly functions as a data processing device. This UE can directly acquire input from the user and process it directly through its own hardware. The specific process is similar to... Figure 1 Similar to the description above, it will not be repeated here.

[0062] exist Figure 2In the computer task processing system shown, the user equipment can receive instructions from the user. For example, the user equipment can obtain a task selected by the user and then execute a task processing application for the task itself. That is, the task is abstracted into a mixed integer equation, the mixed integer equation is preprocessed, and the preprocessed mixed integer equation is solved to obtain the corresponding solution, which can be used as the processing result of the task.

[0063] exist Figure 2 In this context, the user equipment itself can execute the computer task processing method of the embodiments of this application.

[0064] Furthermore, for Figure 1 and Figure 2 The user equipment mentioned typically refers to the terminal device used by the user, such as a mobile phone, laptop, or personal computer. To facilitate understanding of the user's terminal device, the following section will combine... Figure 3 Further introduction to the terminal equipment ( Figure 3 An exemplary structural diagram of the terminal device 300 is shown. Figure 3 As shown, the terminal device 300 includes: an application processor 301, a microcontroller unit (MCU) 303, a memory 305, a modem 307, a radio frequency (RF) module 309, a Wireless-Fidelity (Wi-Fi) module 311, a Bluetooth module 313, a sensor 314, a positioning module 350, and input / output (I / O) devices 335, etc. These components can communicate via one or more communication buses or signal lines. Those skilled in the art will understand that... Figure 1 The hardware structure shown does not constitute a limitation on the terminal device. The terminal device 300 may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0065] The following is combined Figure 3 A detailed introduction to each component of the terminal device 300:

[0066] The application processor 301 is the control center of the terminal device 300, connecting various components of the terminal device 300 via various interfaces and buses. In some embodiments, the processor 301 may include one or more processing units.

[0067] The memory 305 stores computer programs, such as Figure 3The diagram shows the operating system 361 and application program 363. The application processor 301 is configured to execute computer programs stored in memory 305, thereby implementing the functions defined by those computer programs. For example, the application processor 301 executes the operating system 361 to implement various functions of the operating system on the terminal device 300. Memory 305 also stores other data besides the computer programs, such as data generated during the operation of the operating system 361 and application program 363. Memory 305 is a non-volatile storage medium, generally including main memory and secondary storage. Main memory includes, but is not limited to, Random Access Memory (RAM), Read-Only Memory (ROM), or cache. Secondary storage includes, but is not limited to, flash memory, hard disk, optical disk, universal serial bus (USB) disk, etc. Computer programs are usually stored on secondary storage, and the processor loads the program from secondary storage into main memory before executing it.

[0068] The memory 305 can be independent and connected to the application processor 301 via a bus; the memory 305 can also be integrated with the application processor 301 into a chip subsystem.

[0069] MCU 303 is a coprocessor used to acquire and process data from sensor 314. MCU 303 has lower processing power and power consumption than application processor 301, but features "always on," allowing it to continuously collect and process sensor data while application processor 301 is in sleep mode, ensuring normal sensor operation with extremely low power consumption. In one embodiment, MCU 303 can be a sensor hub chip. Sensor 314 may include a light sensor and a motion sensor. Specifically, the light sensor may include an ambient light sensor and a proximity sensor. The ambient light sensor can adjust the brightness of display 351 according to the ambient light level, and the proximity sensor can turn off the display power when the terminal device 300 is moved to the ear. As a type of motion sensor, an accelerometer sensor can detect the magnitude of acceleration in various directions (generally three axes), and can detect the magnitude and direction of gravity when stationary. Sensor 314 may also include other sensors such as a gyroscope, barometer, hygrometer, thermometer, and infrared sensor, which will not be described in detail here. The MCU 303 and sensor 314 can be integrated onto the same chip or are separate components connected via a bus.

[0070] Modem 307 and RF module 309 constitute the communication subsystem of terminal device 300, used to implement the main functions of wireless communication standard protocols such as 3GPP and ETSI. Modem 307 is used for encoding / decoding, signal modulation / demodulation, and equalization. RF module 309 is used for receiving and transmitting wireless signals, and includes, but is not limited to, an antenna, at least one amplifier, a coupler, and a duplexer. RF module 309 works with Modem 307 to implement wireless communication functions. Modem 307 can be a standalone chip or integrated with other chips or circuits to form a system-on-a-chip (SoC) or integrated circuit. These chips or integrated circuits can be applied to all terminal devices that implement wireless communication functions, including: mobile phones, computers, laptops, tablets, routers, wearable devices, automobiles, and home appliances.

[0071] The terminal device 300 can also use a Wi-Fi module 311, a Bluetooth module 313, etc., for wireless communication. The Wi-Fi module 311 provides the terminal device 300 with network access conforming to Wi-Fi related standard protocols. The terminal device 300 can access a Wi-Fi access point through the Wi-Fi module 311 and thus access the Internet. In some other embodiments, the Wi-Fi module 311 can also act as a Wi-Fi wireless access point, providing Wi-Fi network access to other terminal devices. The Bluetooth module 313 enables short-range communication between the terminal device 300 and other terminal devices (such as mobile phones, smartwatches, etc.). In the embodiments of this application, the Wi-Fi module 311 can be an integrated circuit or a Wi-Fi chip, and the Bluetooth module 313 can be an integrated circuit or a Bluetooth chip.

[0072] The positioning module 350 is used to determine the geographical location of the terminal device 300. It is understood that the positioning module 350 can specifically be a receiver for a global positioning system (GPS), such as the BeiDou Navigation Satellite System or the Russian GLONASS.

[0073] The Wi-Fi module 311, Bluetooth module 313, and positioning module 350 can each be a separate chip or integrated circuit, or they can be integrated together. For example, in one embodiment, the Wi-Fi module 311, Bluetooth module 313, and positioning module 350 can be integrated onto the same chip. In another embodiment, the Wi-Fi module 311, Bluetooth module 313, positioning module 350, and MCU 303 can also be integrated into the same chip.

[0074] Input / output devices 335 include, but are not limited to: display 351, touch screen 353, and audio circuitry 355, etc.

[0075] The touchscreen 353 can collect touch events from the user of the terminal device 300 on or near it (such as user actions on or near the touchscreen 353 using a finger, stylus, or any suitable object), and send the collected touch events to other devices (such as the application processor 301). User actions near the touchscreen 353 can be called hover touch; through hover touch, the user can select, move, or drag targets (such as icons) without directly touching the touchscreen 353. Furthermore, the touchscreen 353 can be implemented using various types of touchscreens, including resistive, capacitive, infrared, and surface acoustic wave.

[0076] A display (also called a screen) 351 is used to display information input by the user or information shown to the user. The display can be configured using a liquid crystal display (LCD), an organic light-emitting diode (OLED), or other similar methods. A touchscreen 353 can be placed over the display 351. When the touchscreen 353 detects a touch event, it transmits the information to the application processor 301 to determine the type of touch event. Subsequently, the application processor 301 provides corresponding visual output on the display 351 based on the type of touch event. Although... Figure 3 In this embodiment, the touchscreen 353 and the display 351 are two separate components for implementing the input and output functions of the terminal device 300. However, in some embodiments, the touchscreen 353 and the display 351 can be integrated to achieve the input and output functions of the mobile phone 300. Furthermore, the touchscreen 353 and the display 351 can be configured as a full-screen panel on the front of the terminal device 300 to achieve a borderless structure.

[0077] Audio circuit 355, speaker 336, and microphone 317 provide an audio interface between the user and terminal device 300. Audio circuit 355 converts received audio data into electrical signals and transmits them to speaker 313, where speaker 313 converts them into sound signals for output. On the other hand, microphone 314 converts collected sound signals into electrical signals, which are received by audio circuit 355, converted into audio data, and then transmitted to, for example, another terminal device via modem 307 and radio frequency module 309, or output to memory 305 for further processing.

[0078] In addition, the terminal device 300 may also have fingerprint recognition functionality. For example, a fingerprint acquisition device may be configured on the back of the terminal device 300 (e.g., below the rear camera) or on the front of the terminal device 300 (e.g., below the touchscreen 353). Alternatively, the fingerprint acquisition device may be integrated into the touchscreen 353 to implement fingerprint recognition functionality; that is, the fingerprint acquisition device can be integrated with the touchscreen 353 to achieve the fingerprint recognition function of the terminal device 300. In this case, the fingerprint acquisition device is configured within the touchscreen 353, and may be part of the touchscreen 353 or configured in other ways. The main component of the fingerprint acquisition device in this embodiment is a fingerprint sensor, which can employ any type of sensing technology, including but not limited to optical, capacitive, piezoelectric, or ultrasonic sensing technologies.

[0079] Furthermore, the operating system 361 running on the terminal device 300 can provide... This application does not impose any restrictions on other operating systems, including those used in the embodiments of the present application.

[0080] With Taking the terminal device 300 of the operating system as an example, such as Figure 3 As shown, the terminal device 300 can be logically divided into a hardware layer, an operating system 361, and an application layer. The hardware layer includes hardware resources such as the hardware processor 301, microcontroller unit 305, modem 307, Wi-Fi module 311, sensor 314, and positioning module 350, as described above. The application layer includes one or more applications, such as application 363, which can be any type of application, such as a social networking application, e-commerce application, or browser. The operating system 361, acting as software middleware between the hardware and application layers, is a computer program that manages and controls hardware and software resources.

[0081] In one embodiment, the operating system 361 includes a kernel, a hardware abstraction layer (HAL), libraries and runtime, and a framework. The kernel provides low-level system components and services, such as power management, memory management, thread management, and hardware drivers. Hardware drivers include Wi-Fi drivers, sensor drivers, and positioning module drivers. The hardware abstraction layer encapsulates the kernel drivers, providing interfaces to the framework and shielding them from low-level implementation details. The hardware abstraction layer 25 runs in user space, while the kernel drivers run in kernel space.

[0082] Libraries and runtimes, also known as runtime libraries, provide the necessary library files and execution environment for executable programs at runtime. In one embodiment, libraries and runtimes include the Android Runtime (ART), libraries, and scene package runtimes. ART is a virtual machine or virtual machine instance capable of converting application bytecode into machine code. Libraries are program libraries that provide support for executable programs at runtime, including browser engines (such as WebKit), script execution engines (such as JavaScript engines), and graphics processing engines. The scene package runtime is the runtime environment for scene packages, mainly including the page execution environment and the script execution environment. The page execution environment parses page code in HTML, CSS, and other formats by calling corresponding libraries, while the script execution environment parses and executes code or executable files implemented in scripting languages ​​such as JavaScript by calling corresponding function libraries.

[0083] The framework provides various basic public components and services for applications in the application layer, such as window management and location management. In one embodiment, the framework may include geofencing services, policy services, notification managers, and so on.

[0084] The functions of each component of the operating system 361 described above can be implemented by the application processor 301 executing the program stored in the memory 305.

[0085] It should be noted that the embodiments of this application can be implemented based on a novel solver, which can be deployed in the aforementioned data processing equipment or user equipment (terminal equipment). Since the solver provided in the embodiments of this application has multiple structures, the first type of solver will be illustratively described below. Figure 4 A schematic diagram of the solver provided in the embodiments of this application is shown below. Figure 4 As shown, the solver includes: a feature extraction module, a conflict selection module, a conflict analysis module, and a solution module.

[0086] Specifically, after obtaining the mixed-integer programming equation described by the user for the task to be processed, the equation can be input into the solver. The solver's feature extraction module can extract features from the mixed-integer programming equation to obtain its feature information, and then send this feature information to the conflict selection module. The conflict selection module can process the feature information of the mixed-integer programming equation to determine the target conflicts that may occur during the solution process. Then, during the solution process, if a target conflict occurs, the solver can obtain the conflict resolution result from the conflict analysis module and continue solving the mixed-integer programming equation based on the conflict resolution result until the final solution, i.e., the task completion result, is obtained.

[0087] To further understand Figure 4 The solver's workflow is shown below, in conjunction with... Figure 5 This workflow will be described in more detail. Figure 5 A flowchart illustrating a computer task processing method provided in an embodiment of this application is shown below. Figure 5 As shown, the method includes:

[0088] 501. Obtain the mixed-integer programming equation, which is used to describe the task to be processed.

[0089] In this embodiment, when a task needs to be processed, a mixed-integer programming equation describing the task can be obtained. It should be noted that the mixed-integer programming equation may contain the mathematical relationship between the variable matrix and the constraint matrix. The variable matrix in the mixed-integer programming equation contains all the variables in the task to be processed, and the constraint matrix contains all the constraints that each variable needs to satisfy.

[0090] For example, suppose the task to be processed is to obtain the production plan (or production scheduling plan) of a certain factory. The production plan to be generated for the factory not only needs to meet the objectives of maximizing the factory's demand and minimizing the factory's total cost, but also needs to meet the hard and soft constraints specified in the actual business scenario. Then, the mathematical model abstracted from the production plan to be generated for the factory and the requirements to be met by the production plan can be simplified into the corresponding mixed integer programming equation, which is shown in formula (1):

[0091] minc r x

[0092] Ax = b

[0093] x≥0 (1)

[0094] In the above formula, x is the variable matrix of the mixed integer programming equation (i.e., the production plan to be solved for the aforementioned factory), which is an m-row, 1-column matrix (this variable matrix contains all the variables in the production plan to be solved for the factory; for example, this variable matrix contains 10 variables, which are the amount of raw materials that the factory needs to produce each day for 10 days, etc., and these 10 variables can be either integers or non-integers); A is the constraint matrix of the mixed integer programming equation (this constraint matrix contains all the constraints that each variable in the production plan to be solved for the factory needs to satisfy, such as material constraints, productivity constraints, time constraints, and traffic constraints, etc.), which is an h-row, m-column matrix. Each row in the constraint matrix A can be regarded as a constraint that the production plan to be solved for the factory needs to satisfy; c is the matrix corresponding to the number of elements in the variables, which is also an m-row, 1-column matrix; b is the matrix corresponding to the number of constraints, which is an h-row, 1-column matrix. Here, h and m are both integers greater than or equal to 1.

[0095] It should be understood that tasks in different domains can be described using mixed-integer programming equations. For example, production planning in the supply chain domain, vehicle adoption planning in the logistics domain, address selection planning in the cloud technology domain, and electricity consumption scheduling planning in the power domain can all be described using mixed-integer programming equations. Different mixed-integer programming equations used to describe tasks in different domains often have different variables and different constraint matrices.

[0096] 502. The feature information of the mixed integer programming equation is processed by a neural network model to determine the target conflict associated with the mixed integer programming equation from multiple conflicts.

[0097] After obtaining the mixed-integer programming equation, it can be input into the solver. Upon receiving the equation, the solver's feature extraction module extracts features from it, obtaining its characteristic information, which is then sent to the solver's conflict selection module. The conflict selection module processes this information to identify the target conflict associated with the equation from among multiple conflicts and notifies the solver of this target conflict.

[0098] Specifically, the feature extraction module can obtain feature information of mixed-integer programming equations in the following ways:

[0099] After obtaining the mixed-integer programming equation, the feature extraction module can determine the type of each variable in the variable matrix contained in the mixed-integer programming equation and perform statistics on all variables to determine the number of variables. Next, the feature extraction module can also determine all the constraints that each variable needs to satisfy in the constraint matrix contained in the mixed-integer programming equation. Then, the feature extraction module can construct the feature information of the mixed-integer programming equation (also known as the feature vector of the mixed-integer programming equation) by using the obtained variable types, number of variables, and constraints that the variables need to satisfy.

[0100] As in the example above, for the mixed integer programming equation shown in formula (1), its variable matrix is ​​x = (x1, x2, ..., x...). m ) T The constraint matrix is ​​A. In the variable matrix x, the types of variables x1, x2, ..., x... can be determined. m The type of x1, x2, ..., x is determined, and the variables x1, x2, ..., x are identified. m The quantity m here can be of any of the following types: 0 / 1 type (meaning a variable is 0 or 1), integer type (meaning a variable is an integer), and continuous value type (meaning a variable can be either an integer or a non-integer). In the constraint matrix A, variables x1, x2, ..., x... can also be determined. m The various constraints that need to be satisfied. Thus, based on variables x1, x2, ..., x... m Types and variables x1, x2, ..., x m The quantity and variables x1, x2, ..., x m The constraints that the quantity needs to satisfy can be used to construct the characteristic information y of the mixed integer programming equation.

[0101] More specifically, the conflict selection module can determine the target conflict in the following ways:

[0102] (1) After obtaining the characteristic information of the mixed-integer programming equation, the conflict selection module can calculate the time difference corresponding to multiple conflicts. For any one of the multiple conflicts, the time difference corresponding to the conflict is the difference between the time required to solve the mixed-integer programming equation using the processing result of the conflict and the time required to solve the mixed-integer programming equation without using the processing result of any conflict. The same applies to other conflicts, which will not be elaborated here. Then, the time difference corresponding to multiple conflicts can be used as the matching degree between multiple conflicts and the mixed-integer programming equation. These multiple conflicts may include domain propagation conflicts, linear programming infeasibility conflicts, linear programming boundary crossing conflicts, and other conflicts, etc.

[0103] It should be noted that for any one of the multiple conflicts, the degree of matching between the conflict and the mixed integer programming equation (also known as the degree of recommendation of the conflict in the mixed integer programming equation) is as follows: the greater the degree of matching between the conflict and the mixed integer programming equation, the better the effect of analyzing and handling the conflict in the solution process of the mixed integer programming equation; conversely, the smaller the degree of matching between the conflict and the mixed integer programming equation, the worse the effect of analyzing and handling the conflict in the solution process of the mixed integer programming equation.

[0104] Continuing with the example above, after obtaining the feature information y of the mixed integer programming equation, we can calculate the matching degree w(y,i) between the i-th conflict that may occur during the solution process and the mixed integer programming equation, where i = 1, ..., n, and n is an integer greater than or equal to 1. In this way, we can obtain the matching degrees w(y,1), w(y,2), ..., w(y,n) between n conflicts and the mixed integer programming equation.

[0105] (2) After obtaining the matching degree between multiple conflicts and mixed integer programming equations, the conflict selection module can identify the conflict with a matching degree greater than or equal to a preset threshold (the size of the threshold can be set according to actual needs, and there is no restriction here) as the target conflict associated with the mixed integer programming equation.

[0106] Continuing with the example above, after obtaining the matching degrees w(y,1), w(y,2), ..., w(y,n) between the n conflicts and the mixed integer programming equation, for the matching degree w(y,i), if the matching degree w(y,i) is greater than or equal to the preset matching degree threshold w`, then the matching degree w(y,i) is mapped to a(w(y,i)) = 1, indicating that the i-th conflict can be selected. If the matching degree w(y,i) is less than the preset matching degree threshold w`, then the matching degree w(y,i) is mapped to a(w(y,i)) = 0, indicating that the i-th conflict cannot be selected. In this way, after obtaining a(w(y,1)), a(w(y,2)), ..., a(w(y,n)), all conflicts where a = 1 can be selected as the target conflicts.

[0107] It should be understood that in this embodiment, the feature extraction module and the conflict selection module can be constructed based on either a trained neural network model or a preset (heuristic) rule, and no restriction is imposed here.

[0108] 503. Obtain the results of target conflict resolution.

[0109] 504. Solve the mixed integer programming equation. If a goal conflict occurs during the solution process, continue to solve the mixed integer programming equation based on the result of the goal conflict resolution. The solution result of the mixed integer programming equation is used as the task processing result.

[0110] After obtaining the mixed-integer programming equation, the solution module can further solve it. During the solution process, if a conflict arises, the solution module can determine if it is the target conflict. If so, it notifies the conflict analysis module of the target conflict information, allowing the conflict analysis module to invoke the corresponding conflict analysis algorithm to analyze and process the target conflict applied to the mixed-integer programming equation. The module then returns the result of the target conflict processing to the solution module, which can then continue solving the mixed-integer programming equation based on the result. The resulting solution can be used as the task's processing result. If the conflict is not the target conflict, the solution module does not perform any conflict analysis and continues solving the mixed-integer programming equation. The resulting solution (i.e., the solution to the mixed-integer programming equation) can be used as the task's processing result.

[0111] Specifically, the solution module can solve mixed-integer programming equations in the following ways:

[0112] (1) The entire solution process for mixed integer programming equations typically involves multiple iterations. In each iteration, a value is assigned to each variable in the mixed integer programming equation, and this value is substituted into the equation for calculation. This process determines whether the assigned values ​​are solutions to the mixed integer programming equation. Suppose that in a certain iteration, the solution module sets each variable to its corresponding target value and solves the mixed integer programming equation accordingly. If a target conflict occurs, the solution module can notify the conflict analysis module to analyze and process the conflict. After the conflict analysis module calls the conflict analysis algorithm corresponding to the target conflict to analyze and process the conflict, it can determine that setting each variable within its corresponding target value range (where the target value of each variable is within its target value range) and solving the mixed integer programming equation accordingly will result in a target conflict. The conflict analysis module then returns this information as the result of the target conflict processing to the solution module.

[0113] (2) After obtaining the result of the target conflict resolution, the solution module simply sets each variable within its corresponding range of other values ​​and continues to solve the mixed integer programming equation based on this. The final solution can be used as the result of the task. It should be noted that for any variable in the mixed integer programming equation, the target value range of the variable and the range of other values ​​of the variable constitute the entire value range (domain) of the variable. The same applies to the other variables, which will not be elaborated here.

[0114] Continuing with the example above, let the range of variable x1 be (1, 5), the range of variable x2 be (1, 5), ..., the range of variable x... m The value range of is (1, 5). In a certain iteration of the mixed integer equation, the variable x1 is set to 1.1, the variable x2 is set to 1.2, ..., the variable x m Setting the value to 1.9 resulted in a target conflict when solving mixed-integer equations. After analyzing and addressing the target conflict, it was found that when variable x1 was set at (1,2), variable x2 at (1,3), ..., variable x... m Setting the variable x1 in (1, 4) will lead to a target conflict when solving mixed integer equations. Therefore, the variable x1 can be set in (2, 5), or the variable x2 in (3, 5), ..., or the variable x... m Set in (4, 5), and based on this, continue to solve the mixed integer equation to obtain the final solution.

[0115] It should be understood that in this embodiment, the example provided illustrates how the solving module obtains the target conflict processing result from the conflict analysis module after determining that a target conflict has occurred during the equation solving process. In practical applications, the solving module can also notify the conflict analysis module to analyze and process the target conflict before solving the equation, and return the target conflict processing result to the solving module. In this case, if a target conflict occurs during the solving process, the solving module can directly use the target conflict processing result to continue solving the equation.

[0116] The above is a detailed description of the solver with the first structure. The solver with the second structure will be introduced below. Figure 6 Another schematic diagram of the solver provided in the embodiments of this application is shown below. Figure 6 As shown, the solver includes: a feature extraction module, a conflict selection module, a conflict analysis module, a pre-processing module, and a solution module.

[0117] Specifically, after obtaining the mixed-integer programming equation described by the user for the task to be processed, the equation can be input into the solver. The solver's preprocessing module can preprocess the mixed-integer programming equation to obtain a preprocessed mixed-integer programming equation. The feature extraction module can extract features from the preprocessed mixed-integer programming equation to obtain its feature information, and then send this feature information to the conflict selection module. The conflict selection module can process the feature information of the preprocessed mixed-integer programming equation to determine the target conflicts that may occur during the solution process. Then, during the solution process, if a target conflict occurs, the solution module can obtain the conflict resolution result from the conflict analysis module and continue solving the preprocessed mixed-integer programming equation based on the conflict resolution result until the final solution, i.e., the task processing result, is obtained.

[0118] To further understand Figure 6 The solver's workflow is shown below, in conjunction with... Figure 6 This workflow will be described in more detail. Figure 7 Another schematic flowchart of the computer task processing method provided in the embodiments of this application is shown below. Figure 7 As shown, the method includes:

[0119] 701. Obtain the mixed-integer programming equation, which is used to describe the task to be processed.

[0120] In this embodiment, when a task needs to be processed, a mixed-integer programming equation describing the task can be obtained. It should be noted that the mixed-integer programming equation may contain the mathematical relationship between the variable matrix and the constraint matrix. The variable matrix in the mixed-integer programming equation contains all the variables in the task to be processed, and the constraint matrix contains all the constraints that each variable needs to satisfy.

[0121] It should be understood that the task to be processed can be any of the following: a production plan to be solved, a vehicle adoption plan to be solved, a power consumption scheduling plan to be solved, or an address selection plan to be solved.

[0122] 702. Preprocess the mixed integer programming equations to obtain the preprocessed mixed integer programming equations.

[0123] 703. Obtain the feature information of the preprocessed mixed integer programming equation.

[0124] 704. The feature information of the preprocessed mixed integer programming equation is processed by a neural network model to determine the target conflict associated with the preprocessed mixed integer programming equation from multiple conflicts.

[0125] After obtaining the mixed-integer programming equation, it can be input into the solver. Upon receiving the equation, the solver's preprocessing module preprocesses it to obtain a preprocessed equation, which is then sent to the feature extraction module and the solver module. It should be noted that the size of the variable matrix in the preprocessed equation is smaller than that in the original equation (the number of variables in the preprocessed equation's variable matrix is ​​less than the number of variables in the original equation's variable matrix), and the size of the constraint matrix in the preprocessed equation is also smaller than that in the original equation (the number of constraints in the preprocessed equation's constraint matrix is ​​less than the number of constraints in the original equation's constraint matrix).

[0126] Upon receiving the preprocessed mixed-integer programming equation, the feature extraction module extracts features from it to obtain its characteristic information. This characteristic information is then sent to the conflict selection module of the solver. After receiving this feature information, the conflict selection module processes it to identify the target conflict associated with the preprocessed equation from among multiple conflicts and notifies the solver of this target conflict.

[0127] Specifically, the feature extraction module can obtain the feature information of the processed mixed-integer programming equation in the following ways:

[0128] After obtaining the preprocessed mixed-integer programming equation, the feature extraction module can determine the type of each variable in the variable matrix contained in the preprocessed mixed-integer programming equation and perform statistics on all variables to determine the number of variables. Next, the feature extraction module can also determine all constraints that each variable needs to satisfy in the constraint matrix contained in the preprocessed mixed-integer programming equation. Then, the feature extraction module can construct the feature information of the preprocessed mixed-integer programming equation from the obtained variable types, variable numbers, and constraints that the variables need to satisfy.

[0129] More specifically, the conflict selection module can determine the target conflict in the following ways:

[0130] (1) After obtaining the feature information of the preprocessed mixed-integer programming equation, the conflict selection module can calculate the feature information of the preprocessed mixed-integer programming equation to obtain the time difference corresponding to multiple conflicts. For any one of the multiple conflicts, the time difference corresponding to the conflict is the difference between the time required to solve the preprocessed mixed-integer programming equation using the processing result of the conflict and the time required to solve the preprocessed mixed-integer programming equation without using the processing result of any conflict. The same applies to other conflicts, which will not be elaborated here. Then, the time difference corresponding to multiple conflicts can be used as the matching degree between multiple conflicts and the preprocessed mixed-integer programming equation. These multiple conflicts may include domain propagation conflicts, linear programming infeasibility conflicts, linear programming boundary crossing conflicts, and other conflicts, etc.

[0131] (2) After obtaining the matching degree between multiple conflicts and the preprocessed mixed integer programming equation, the conflict selection module can identify the conflict with a matching degree greater than or equal to a preset threshold as the target conflict associated with the preprocessed mixed integer programming equation.

[0132] It should be understood that in this embodiment, the feature extraction module and the conflict selection module can be constructed based on either a trained neural network model or a preset (heuristic) rule, and no restriction is imposed here.

[0133] 705. Obtain the results of target conflict resolution.

[0134] 706. Solve the preprocessed mixed integer programming equation. If a goal conflict occurs during the solution process, continue to solve the preprocessed mixed integer programming equation based on the goal conflict resolution result. The solution result of the preprocessed mixed integer programming equation is used as the task processing result.

[0135] After obtaining the preprocessed mixed-integer programming equation, the solution module can further solve it. During the solution process, if a conflict arises, the solution module can determine if it is the target conflict. If so, the solution module can notify the conflict analysis module of the target conflict information, allowing the conflict analysis module to invoke the corresponding conflict analysis algorithm to analyze and process the target conflict applied to the preprocessed mixed-integer programming equation, thus obtaining the target conflict processing result. This result is then returned to the solution module, which can then continue solving the preprocessed mixed-integer programming equation based on the target conflict processing result. The resulting solution can be used as the task processing result. If not, the solution module does not perform any conflict analysis and continues solving the preprocessed mixed-integer programming equation. The resulting solution (i.e., the solution result of the preprocessed mixed-integer programming equation) can be used as the task processing result.

[0136] Specifically, the solution module can solve the preprocessed mixed-integer programming equations in the following ways:

[0137] (1) The entire solution process of the preprocessed mixed integer programming equation is usually iterated in multiple rounds. In each round of iteration, a certain value is assigned to each variable of the preprocessed mixed integer programming equation, and it is substituted into the preprocessed mixed integer programming equation for calculation, thereby determining whether the assigned values ​​of each variable are solutions to the preprocessed mixed integer programming equation. Suppose that in a certain round of iteration, the solution module sets each variable to the corresponding target value and solves the preprocessed mixed integer programming equation based on this. At this time, a target conflict occurs, and the solution module can notify the conflict analysis module to analyze and process the target conflict. After the conflict analysis module calls the conflict analysis algorithm corresponding to the target conflict to analyze and process the target conflict, it can determine that when each variable is set within the corresponding target value range (the target value of each variable is within the target value range of each variable), a target conflict will occur when the preprocessed mixed integer programming equation is solved based on this. Then, the conflict analysis module returns this information as the result of the target conflict processing to the solution module.

[0138] (2) After obtaining the result of the target conflict resolution, the solution module simply sets each variable within its corresponding range of other values ​​and continues to solve the preprocessed mixed-integer programming equation based on this. The final solution can be used as the result of the task. It should be noted that for any variable in the preprocessed mixed-integer programming equation, the target value range of the variable and the range of other values ​​of the variable constitute the entire value range (domain) of the variable. The same applies to the other variables, which will not be elaborated here.

[0139] It should be understood that in this embodiment, the example provided illustrates how the solving module obtains the target conflict processing result from the conflict analysis module after determining that a target conflict has occurred during the equation solving process. In practical applications, the solving module can also notify the conflict analysis module to analyze and process the target conflict before solving the equation, and return the target conflict processing result to the solving module. In this case, if a target conflict occurs during the solving process, the solving module can directly use the target conflict processing result to continue solving the equation.

[0140] To further understand the computer task processing method provided in the embodiments of this application, a specific application example is described below. For example... Figure 8 As shown ( Figure 8 (This is a schematic diagram illustrating an application example of the computer task processing method provided in the embodiments of this application), the application includes:

[0141] Training phase:

[0142] 1.1: Input the problem to be solved (i.e., the mixed integer programming equation to be solved) into the solver (which includes a preprocessing module, a solving module, and a conflict analysis module);

[0143] 1.2: Use a solver to solve the problem and determine the solution time;

[0144] 1.3: Construct a training dataset using the problem to be solved as the training data and the solution time of the problem as the label of the training data;

[0145] 1.4: Obtain the feature extraction module and the conflict selection module to be trained. These two models can be either the neural network model to be trained or the rules to be trained.

[0146] 1.5: Use the training dataset to train the two models to be trained, and obtain the trained feature extraction module and the trained conflict selection module.

[0147] 1.6: The trained feature extraction module and the trained conflict selection module are added to the solver to form a new type of solver (i.e., the aforementioned...). Figure 4 or Figure 6 (The solver shown).

[0148] Application phase:

[0149] 2.1: Inputting a mathematical programming problem into a new type of solver;

[0150] 2.2: In the new solver, the preprocessing module first preprocesses the problem and then inputs the preprocessed problem into the feature extraction module;

[0151] 2.3: The feature extraction module obtains the feature information of the preprocessed problem and provides it to the conflict selection module;

[0152] 2.4: The conflict selection module processes the feature information to determine the target conflicts that may occur during the solution process of the problem.

[0153] 2.5: The solver module solves the preprocessed problem. When a conflict occurs, it determines whether the conflict is the target conflict. If it is, it executes step 2.6; otherwise, it executes step 2.7.

[0154] 2.6: The solution module calls the conflict analysis module to analyze the target conflict, obtain the result of the target conflict processing, and use the processing result to continue to solve the problem until the final solution is obtained.

[0155] 2.7: The solver module continues to solve the problem until the final solution is obtained.

[0156] In this embodiment, after obtaining the mixed-integer programming equation describing the task to be processed, the mixed-integer programming equation can be input into the solver. Upon receiving the mixed-integer programming equation, the solver can obtain its feature information. Then, the solver can process the feature information of the mixed-integer programming equation through a neural network model to select the target conflict associated with the mixed-integer programming equation from multiple conflicts. Subsequently, if a target conflict is determined to have occurred during the solution process of the mixed-integer programming equation, the solver can continue to solve the mixed-integer programming equation based on the processing result of the target conflict, and use the final solution result as the task processing result. In the aforementioned process, the solver can perform a series of processes based on the characteristics of the mixed-integer programming equation itself to determine the target conflict with the best conflict analysis effect during the solution process. Therefore, once a target conflict occurs during the solution process, the solver can directly call the conflict analysis algorithm corresponding to the target conflict to analyze and process the target conflict, thereby obtaining the processing result of the target conflict, and using the processing result of the target conflict to perform subsequent solution processes until the solution to the mixed-integer programming equation is obtained. It is evident that when automatically selecting the target conflict, the solver considers various characteristics related to the mixed integer equation itself, taking into account a comprehensive range of factors. Therefore, the selected target conflict is usually the most suitable one. This can optimize the effect of conflict analysis in the process of solving mixed integer equations and reduce the time required for conflict analysis. Thus, the solver can provide a high-quality solution service.

[0157] The above is a detailed description of the computer task processing method provided in the embodiments of this application. The following will introduce the computer task processing apparatus provided in the embodiments of this application. Figure 9A schematic diagram of the computer task processing device provided in the embodiments of this application is shown below. Figure 9 As shown, the device includes:

[0158] The first acquisition module 901 is used to acquire mixed integer programming equations, which are used to describe the task to be processed.

[0159] The determination module 902 is used to process the feature information of the mixed integer programming equation through a neural network model in order to determine the target conflict associated with the mixed integer programming equation from multiple conflicts.

[0160] The second acquisition module 903 is used to acquire the processing results of the target conflict;

[0161] The solver module 904 is used to solve mixed integer programming equations. If a goal conflict occurs during the solution process of the mixed integer programming equations, the solution process continues based on the goal conflict resolution result, and the solution result of the mixed integer programming equations is used as the task processing result.

[0162] In this embodiment, after obtaining the mixed-integer programming equation describing the task to be processed, the mixed-integer programming equation can be input into the solver. Upon receiving the mixed-integer programming equation, the solver can obtain its feature information. Then, the solver can process the feature information of the mixed-integer programming equation through a neural network model to select the target conflict associated with the mixed-integer programming equation from multiple conflicts. Subsequently, if a target conflict is determined to have occurred during the solution process of the mixed-integer programming equation, the solver can continue to solve the mixed-integer programming equation based on the processing result of the target conflict, and use the final solution result as the task processing result. In the aforementioned process, the solver can perform a series of processes based on the characteristics of the mixed-integer programming equation itself to determine the target conflict with the best conflict analysis effect during the solution process. Therefore, once a target conflict occurs during the solution process, the solver can directly call the conflict analysis algorithm corresponding to the target conflict to analyze and process the target conflict, thereby obtaining the processing result of the target conflict, and using the processing result of the target conflict to perform subsequent solution processes until the solution to the mixed-integer programming equation is obtained. It is evident that when automatically selecting the target conflict, the solver considers various characteristics related to the mixed integer equation itself, taking into account a comprehensive range of factors. Therefore, the selected target conflict is usually the most suitable one. This can optimize the effect of conflict analysis in the process of solving mixed integer equations and reduce the time required for conflict analysis. Thus, the solver can provide a high-quality solution service.

[0163] In one possible implementation, the characteristic information of the mixed-integer programming equation includes at least one of the following: the type of the variables in the mixed-integer programming equation, the number of variables in the mixed-integer programming equation, or the constraints that the variables in the mixed-integer programming equation need to satisfy.

[0164] In one possible implementation, a determining module is configured to: calculate the feature information of the mixed-integer programming equation to obtain the time difference corresponding to multiple conflicts, wherein the time difference is the difference between the time required to solve the mixed-integer programming equation using the processing results of the multiple conflicts and the time required to solve the mixed-integer programming equation without using the processing results of any conflicts, and the time difference serves as the matching degree between the multiple conflicts and the mixed-integer programming equation; among the multiple conflicts, the conflicts with a matching degree greater than or equal to a preset threshold are determined as target conflicts associated with the mixed-integer programming equation.

[0165] In one possible implementation, the range of values ​​for the variables in the mixed-integer programming equation includes the target range and the remaining ranges. The result of target conflict handling indicates that a target conflict will occur when solving the mixed-integer programming equation under the condition that the variables are within the target range, and the target range includes the target value. The solution module is used to continue solving the mixed-integer programming equation if a target conflict occurs when solving the mixed-integer programming equation under the condition that the variables are within the remaining ranges, and obtain the solution result of the mixed-integer programming equation as the task processing result.

[0166] In one possible implementation, the device further includes: a preprocessing module for preprocessing the mixed-integer programming equation to obtain a preprocessed mixed-integer programming equation; a third acquisition module for acquiring feature information of the preprocessed mixed-integer programming equation; a determination module for processing the feature information of the preprocessed mixed-integer programming equation to determine the target conflict associated with the preprocessed mixed-integer programming equation from multiple conflicts; and a solution module for continuing to solve the preprocessed mixed-integer programming equation based on the processing result of the target conflict if a target conflict occurs during the solution process of the preprocessed mixed-integer programming equation, and obtaining the solution result of the preprocessed mixed-integer programming equation as the processing result of the task.

[0167] In one possible implementation, feature information is obtained through a trained neural network model or pre-defined heuristic rules.

[0168] In one possible implementation, several conflicts include: domain propagation conflict, linear programming infeasibility conflict, and linear programming out-of-bounds conflict.

[0169] In one possible implementation, the task is any of the following: a production plan to be solved, a vehicle adoption plan to be solved, a power consumption scheduling plan to be solved, or an address selection plan to be solved.

[0170] It should be noted that the information interaction and execution process between the modules / units of the above-mentioned device are based on the same concept as the method embodiment of this application, and the resulting technical effects are the same as those of the method embodiment of this application. For details, please refer to the description in the method embodiment shown above in the embodiment of this application, and it will not be repeated here.

[0171] This application also relates to a computer storage medium storing a program for signal processing, which, when run on a computer, causes the computer to perform actions such as... Figure 5 or Figure 7 The steps in the illustrated embodiment.

[0172] This application also relates to a computer program product that stores instructions that, when executed by a computer, cause the computer to perform actions such as... Figure 5 or Figure 7 The steps in the illustrated embodiment.

[0173] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0174] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection between apparatuses or units through some interfaces, and may be electrical, mechanical, or other forms.

[0175] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0176] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0177] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

Claims

1. A computer task processing method, characterized in that, The method includes: Obtain a mixed-integer programming equation, which is used to describe the task to be processed. The task is any one of the following: a production plan to be solved, a vehicle adoption plan to be solved, a power consumption scheduling plan to be solved, or an address selection plan to be solved. The feature information of the mixed integer programming equation is processed by a neural network model to determine the target conflict associated with the mixed integer programming equation from multiple conflicts. Obtain the processing result of the target conflict; The mixed integer programming equation is solved. If the target conflict occurs during the solution process, the mixed integer programming equation is solved again based on the result of the target conflict handling. The solution result of the mixed integer programming equation is used as the processing result of the task. The process of processing the feature information of the mixed-integer programming equation to determine the target conflict associated with the mixed-integer programming equation from multiple conflicts includes: The feature information of the mixed integer programming equation is calculated to obtain the time difference corresponding to multiple conflicts. The time difference is the difference between the time required to solve the mixed integer programming equation using the processing results of the multiple conflicts and the time required to solve the mixed integer programming equation without using the processing results of any conflicts. The time difference is used as the matching degree between the multiple conflicts and the mixed integer programming equation. Among the multiple conflicts, those with a matching degree greater than or equal to a preset threshold are identified as target conflicts associated with the mixed integer programming equation.

2. The method according to claim 1, characterized in that, The characteristic information of the mixed integer programming equation includes at least one of the following: the type of the variables in the mixed integer programming equation, the number of variables in the mixed integer programming equation, or the constraints that the variables in the mixed integer programming equation need to satisfy.

3. The method according to claim 1 or 2, characterized in that, The range of values ​​for the variables in the mixed integer programming equation includes the target range and the remaining ranges. The result of the target conflict handling is used to indicate that when solving the mixed integer programming equation, the target conflict will occur under the condition that the variables are within the target range. The target range includes the target value. If a target conflict occurs during the solution of the mixed integer programming equation, the solution to the mixed integer programming equation continues based on the result of handling the target conflict, and the solution result of the mixed integer programming equation is used as the processing result of the task, including: If a target conflict occurs when solving the mixed-integer programming equation under the condition that the variable is within the target value range, then the mixed-integer programming equation is solved again under the condition that the variable is within the range of the remaining values, and the solution result of the mixed-integer programming equation is used as the processing result of the task.

4. The method according to claim 1 or 2, characterized in that, The method further includes: The mixed integer programming equation is pre-solved to obtain the pre-solved mixed integer programming equation; Obtain the feature information of the preprocessed mixed integer programming equation; The process of processing the feature information of the mixed-integer programming equation to determine the target conflict associated with the mixed-integer programming equation from multiple conflicts includes: The feature information of the preprocessed mixed-integer programming equation is processed to determine the target conflict associated with the preprocessed mixed-integer programming equation from multiple conflicts. If a target conflict occurs during the solution of the mixed integer programming equation, the solution to the mixed integer programming equation continues based on the result of handling the target conflict, and the solution result of the mixed integer programming equation is used as the processing result of the task, including: If the target conflict occurs during the solution of the preprocessed mixed integer programming equation, the solution of the preprocessed mixed integer programming equation is continued based on the result of the target conflict resolution, and the solution result of the preprocessed mixed integer programming equation is used as the processing result of the task.

5. The method according to claim 1 or 2, characterized in that, The feature information is obtained through a trained neural network model or pre-set heuristic rules.

6. The method according to claim 1 or 2, characterized in that, The multiple conflicts include: domain propagation conflict, linear programming infeasibility conflict, and linear programming boundary crossing conflict.

7. A computer task processing device, characterized in that, The device includes: The first acquisition module is used to acquire a mixed integer programming equation, which describes a task to be processed. The task is any one of the following: a production plan to be solved, a vehicle adoption plan to be solved, a power consumption scheduling plan to be solved, or an address selection plan to be solved. The determination module is used to process the feature information of the mixed integer programming equation through a neural network model in order to determine the target conflict associated with the mixed integer programming equation from multiple conflicts; The second acquisition module is used to acquire the processing result of the target conflict; The solution module is used to solve the mixed integer programming equation. If the target conflict occurs during the solution process of the mixed integer programming equation, the mixed integer programming equation is continued to be solved based on the handling result of the target conflict, and the solution result of the mixed integer programming equation is used as the processing result of the task. The determining module is used for: The feature information of the mixed integer programming equation is calculated to obtain the time difference corresponding to multiple conflicts. The time difference is the difference between the time required to solve the mixed integer programming equation using the processing results of the multiple conflicts and the time required to solve the mixed integer programming equation without using the processing results of any conflicts. The time difference is used as the matching degree between the multiple conflicts and the mixed integer programming equation. Among the multiple conflicts, those with a matching degree greater than or equal to a preset threshold are identified as target conflicts associated with the mixed integer programming equation.

8. The apparatus according to claim 7, characterized in that, The characteristic information of the mixed integer programming equation includes at least one of the following: the type of the variables in the mixed integer programming equation, the number of variables in the mixed integer programming equation, or the constraints that the variables in the mixed integer programming equation need to satisfy.

9. The apparatus according to claim 7 or 8, characterized in that, The range of values ​​for the variables in the mixed integer programming equation includes the target range and the remaining ranges. The result of the target conflict handling is used to indicate that when solving the mixed integer programming equation, the target conflict will occur under the condition that the variables are within the target range. The target range includes the target value. The solution module is configured to, if a target conflict occurs when solving the mixed integer programming equation under the condition that the variable is within the range of the remaining values, continue to solve the mixed integer programming equation under the condition that the variable is within the range of the target values, and obtain the solution result of the mixed integer programming equation as the processing result of the task.

10. The apparatus according to claim 7 or 8, characterized in that, The device further includes: The preprocessing module is used to preprocess the mixed integer programming equation to obtain the preprocessed mixed integer programming equation. The third acquisition module is used to acquire the feature information of the preprocessed mixed integer programming equation; The determining module is used to process the feature information of the preprocessed mixed integer programming equation to determine the target conflict associated with the preprocessed mixed integer programming equation from multiple conflicts. The solution module is used to continue solving the preprocessed mixed integer programming equation if the target conflict occurs during the solution process of the preprocessed mixed integer programming equation, based on the handling result of the target conflict, and obtain the solution result of the preprocessed mixed integer programming equation as the processing result of the task.

11. The apparatus according to claim 7 or 8, characterized in that, The feature information is obtained through a trained neural network model or pre-set heuristic rules.

12. The apparatus according to claim 7 or 8, characterized in that, The multiple conflicts include: domain propagation conflict, linear programming infeasibility conflict, and linear programming boundary crossing conflict.

13. A computer task processing device, characterized in that, include: The system includes a processor, a memory, a bus, and input / output devices, wherein the processor is connected to the memory and the input / output devices, and the bus is connected to the processor, the memory, and the input / output devices respectively. The input / output device is used to acquire mixed integer programming equations, which are used to describe the task to be processed. The task is any one of the following: a production plan to be solved, a vehicle adoption plan to be solved, a power consumption scheduling plan to be solved, or an address selection plan to be solved. The processor is used for: Based on the characteristic information of the mixed integer programming equation, the target conflict is determined from multiple conflicts that may occur during the solution process of the mixed integer programming equation; Obtain the processing result of the target conflict; If the objective conflict occurs during the solution of the mixed integer programming equation, the mixed integer programming equation is solved again based on the result of the objective conflict handling, and the solution obtained is used as the result of the task. The processor is used for: The feature information of the mixed integer programming equation is calculated to obtain the time difference corresponding to multiple conflicts. The time difference is the difference between the time required to solve the mixed integer programming equation using the processing results of the multiple conflicts and the time required to solve the mixed integer programming equation without using the processing results of any conflicts. The time difference is used as the matching degree between the multiple conflicts and the mixed integer programming equation. Among the multiple conflicts, those with a matching degree greater than or equal to a preset threshold are identified as target conflicts associated with the mixed integer programming equation.

14. A computer storage medium, characterized in that, The computer storage medium stores a computer program that, when executed by the computer, causes the computer to perform the method described in any one of claims 1 to 6.

15. A computer program product, characterized in that, The computer program product stores instructions that, when executed by a computer, cause the computer to perform the method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Multi-sequential mixed integer programming problem processing method and device

    CN106503827A

  • Concurrent conflict processing method and device and computer storage medium

    CN112783616A