Method and apparatus for multi-objective optimization method based on goal programming and objective space processing, and computer device

WO2026044593A9PCT designated stage Publication Date: 2026-09-24SIEMENS AG +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/115533
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-08-29
Publication Date
2026-09-24

Smart Images

  • Figure CN2024115533_24092026_PF_FP_ABST
    Figure CN2024115533_24092026_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed in the present application are a method and apparatus for multi-objective optimization based on goal programming and objective space processing, a computer device, and a storage medium. Specifically, disclosed in the present application is a multi-objective optimization method based on goal programming and objective space processing, the method comprising: establishing a multi-dimensional objective space according to a plurality of objectives, wherein the boundaries of the objective space are determined by the maximum and minimum values of the plurality of objectives; segmenting the multi-dimensional objective space into a plurality of sub-objective spaces; and solving for a plurality of target values for the plurality of sub-objective spaces to obtain an optimal solution set of the corresponding plurality of objectives. By means of the described method, the Pareto front of the plurality of target values can be accurately and directly obtained, thereby supporting various optimization scenarios.
Need to check novelty before this filing date? Find Prior Art

Description

Methods, apparatus, and computer equipment for multi-objective optimization based on goal programming and goal space processing. Technical Field

[0001] This application relates to the field of optimization, and more specifically, to a method, apparatus, computer device, and storage medium for multi-objective optimization based on goal planning and goal space processing. Background Technology

[0002] In various decision-making scenarios, it is often necessary to weigh the optimization of multiple objectives.

[0003] For example, in operational optimization such as production planning, cost and service level are two typically conflicting key performance indicators (KPIs). In control optimization (such as auxiliary equipment group control), demand satisfaction, energy efficiency, and operational stability must be balanced. In product design optimization, technical, cost, and environmental performance must be considered simultaneously. In process optimization in discrete or process industries, quality, cost, and efficiency standards must be considered when adjusting process parameters.

[0004] In many cases, decision-making even requires collaboration among multiple entities. For example, in supply chain management, the purpose of Sales & Operations Planning (S&OP) is to find a point of consensus among multiple functional departments such as sales, planning, production, procurement, and finance, each of which has its own key performance indicators.

[0005] With the development of operations research (OR) algorithms, such as mathematical programming solvers, heuristics, and meta-heuristics, many single-objective decision problems can now be optimized, even with a huge number of decision variables and complex constraints. However, most (if not all) decision scenarios are inherently multi-objective, and current algorithms have limited ability to handle multi-objective problems; a gap still exists between the two.

[0006] This gap often leads to so-called usability problems between technology and business. No matter how optimized, if the solution provided by the algorithm does not conform to or reflect the user's expectations of the relationship between multiple objectives, the user will not consider the algorithm interpretable, reliable, or acceptable.

[0007] Summary of the Invention

[0008] This summary section is provided to introduce some selected concepts in a simplified form, which will be further described in the detailed description section below. This summary section is not intended to identify any key or essential features of the claimed subject matter, nor is it intended to help determine the scope of the claimed subject matter.

[0009] Based on this, this application discloses a multi-objective optimization method based on an objective space, which includes:

[0010] A multi-dimensional target space is established based on multiple target values, wherein the boundary of the target space is determined by the maximum and minimum values ​​of the targets;

[0011] The multi-dimensional target space is divided into multiple sub-target spaces;

[0012] The optimal solution set for each of the multiple sub-objective spaces is obtained by solving multiple objectives.

[0013] The Pareto front for multiple objectives can be obtained accurately and directly through the above methods, thus supporting various optimization scenarios.

[0014] Furthermore, the step of dividing the multi-dimensional target space into multiple sub-target spaces includes: dividing the multi-dimensional target space into multiple sub-target spaces based on the upper and lower boundary values ​​of the multiple targets.

[0015] Using the above method, the target space can be divided into multiple smaller sub-target spaces according to the requirements, and target programming can be used to transform the target space into a single-target solution.

[0016] Furthermore, the step of solving for multiple objectives in the multiple sub-objective spaces includes: traversing the target space in ascending order of the distances from the sub-objective spaces to the pseudo-origin.

[0017] Using the above method, we can start the solution from the pseudo-origin and quickly find the optimal solution.

[0018] Furthermore, the step of solving for multiple targets in the multiple sub-target spaces includes: receiving a reference point and traversing the target space according to the ray from the reference point.

[0019] Using the methods described above, the system can iterate through the data based on user experience or external recommendations, and thus quickly find the optimal solution.

[0020] Furthermore, the step of dividing the multi-dimensional target space into multiple sub-target spaces includes: adjusting the upper and lower boundary values ​​of the multiple targets based on the center point of the sub-target spaces as reference points.

[0021] By the above manner, the upper boundary and the lower boundary can be adjusted according to the center position, so as to define the size of the sub-target space, thereby facilitating finding the optimal solution.

[0022] Further, the solving of the multiple targets for the multiple sub-target spaces comprises solving the multiple targets for the sub-target spaces according to the time limit, the distance limit and the hot start mechanism.

[0023] By the above manner, the solving strategy can be adjusted according to the actual demand, thereby facilitating quickly finding the optimal solution.

[0024] In addition, the application discloses a multiple target optimization device based on target planning and target space processing, which comprises:

[0025] A space establishing module is configured to establish a multi-dimensional target space according to multiple targets, wherein the boundary of the target space is determined by the extreme value of the multiple targets.

[0026] A space dividing module is configured to divide the multi-dimensional target space into multiple sub-target spaces.

[0027] A space solving module is configured to solve the multiple targets for the multiple sub-target spaces, and obtain an optimal solution set of the corresponding multiple targets.

[0028] The application further provides a computer device comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the above method when executing the computer program.

[0029] The application further provides a computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the above method.

[0030] The application further provides a computer program product, which is tangibly stored on a computer readable medium and comprises computer executable instructions, which, when executed, cause at least one processor to perform the above method. BRIEF DESCRIPTION OF DRAWINGS

[0031] The implementations of the present disclosure are described in the form of examples rather than limitation in the accompanying drawings, and similar reference numerals in the drawings represent the same or similar components.

[0032] FIG. 1 is a schematic diagram of the flow of a method for multiple target optimization based on target planning and target space processing according to an embodiment of the application.

[0033] FIG. 2 is a schematic diagram of a device for multiple target optimization based on target planning and target space processing according to an embodiment of the application.

[0034] FIG. 3 is a schematic diagram of a computer device for multi-objective optimization based on goal programming and goal space processing, according to an embodiment of the present application.

[0035] FIG. 4 is a schematic diagram of a goal space for multi-objective optimization based on goal programming and goal space processing, according to an embodiment of the present application.

[0036] FIG. 5 is a schematic diagram of a solution for multi-objective optimization based on goal programming and goal space processing, according to an embodiment of the present application.

[0037] FIG. 6 is a schematic diagram of a solution for multi-objective optimization based on goal programming and goal space processing, according to an embodiment of the present application.

[0038] FIG. 7 is a schematic diagram of a solution for multi-objective optimization based on goal programming and goal space processing, according to an embodiment of the present application.

[0039] Wherein, the reference signs are as follows: S101-S103 Step 200: Device 201: Module 202: Module 203: Module 204: Module 300: Computer device 302: Processor 304: Memory DETAILED DESCRIPTION

[0040] In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present application. It can be appreciated, however, that the present application can be practiced in other embodiments that do not include all the specific features described. In other instances, well-known structures and techniques have not been shown in detail in order to avoid obscuring aspects of the present application.

[0041] Reference throughout this specification to "an implementation", "one implementation", "an example implementation", "some implementations", "various implementations", or the like, indicates that a described implementation can include a particular feature, structure, or characteristic, but every implementation can not necessarily include the particular feature, structure, or characteristic. Moreover, some implementations can have some, all, or none of the features described for other implementations.

[0042] Generally, a multi-objective optimization problem can be expressed as follows:

[0043] s.t.

[0044] where x is a multi-dimensional vector of decision variables, f(x) is m constraints to be obeyed, and z(x) is n objective functions to be optimized. When n = 1, the multi-objective optimization problem is simplified to a single-objective problem.

[0045] Currently, there are several ways to handle multi-objectives in OR optimization algorithms.

[0046] The most common approach is to normalize multiple objectives of different dimensions so that a single-objective optimization algorithm (solver, heuristic, etc.) can be used based on a surrogate objective. There are two ways to do this.

[0047] (1) Weighted sum: The surrogate single objective is written as min:∑ j∈{1,…,n} ω j ·z j (x), where ω j is the weight of the jth objective.

[0048] (2) Hierarchical: The objectives are ordered according to their importance, and then any two solutions are compared. For example, if the priorities are z1>z1>z3, and two solutions x1,x2 have z1(x1) = z1(x2), z2(x1) < z2(x2), z3(x1) > z3(x2), then x1 is better than x2. This is actually an extreme simplification of the weighted sum, e.g., setting ω1>>ω2>>ω3 can reflect the preference in the above example.

[0049] From a technical point of view, this normalization approach is very straightforward. For example, in advanced planning and scheduling (APS) software, such as Preactor, users can adjust the weights of multiple objectives; in solvers like Cplex, users can specify the hierarchical preference among multiple objectives. However, since the original multiple objectives are simplified into a single surrogate objective, the usability of the resulting solution is limited.

[0050] (1) The impact of weights on the solution is indirect. By setting the weight values, users cannot predict or control the performance of the solution in different objective directions. In the worst case, even if the weight combinations are enumerated, the user can still get the same undesirable solution.

[0051] (2) For the same reason, the algorithm cannot refer to the user's expectations of the objective values (if any, regardless of feasibility or not, regardless of experience or guess, regardless of first-eye intuition or interactive process) to improve the user's experience.

[0052] Another approach is evolutionary multi-objective optimization (EMO), which is a population-based mete-heuristics, such as NSGA-II, NSGA-III, R-NSGA-III, etc. The search-evaluate iteration mechanism of evolutionary algorithms can be naturally used to construct the Pareto front, which is composed of non-dominated solutions distributed within the multi-objective space or around the reference direction. However, it still has limitations.

[0053] (1) As a heuristic algorithm, EMO cannot guarantee the optimality of the solutions it produces, even evaluate. In other words, the constructed Pareto front may be far from the true front, or the multiple Pareto solutions found are easily dominated by a single solution found by the solver.

[0054] (2) Unlike solvers, the return on investment (the ratio of solution quality to solution operation) of EMO will decrease significantly as the size and complexity of the problem increase. In order to achieve an acceptable balance between effectiveness and efficiency, various hyperparameters often need to be adjusted, and a customized encoding-decoding scheme needs to be designed.

[0055] (3) In terms of multi-objective, the forward logic of the first search then evaluate mechanism, and the encoding-decoding scheme that may need to be customized, the influence on the solution is still indirect. Similar to the normalization method, this will limit the diversity and intensity of the Pareto solution, especially for combinatorial optimization where the solution space is usually discrete and has hyperplanes.

[0056] The present application proposes a multi-objective optimization method based on goal programming and target space processing. The present application makes full use of the advantages of current solvers in single-objective optimization, while ensuring the diversity and intensity of Pareto solutions.

[0057] Based on this, the present application discloses a multi-objective optimization method based on goal programming and target space processing, which comprises:

[0058] S101, according to the multi-objective, a multi-dimensional target space is established, wherein the boundary of the target space is determined by the extreme value of the multi-objective.

[0059] In some embodiments, the effective target space (Effective objective space) is determined first. Specifically as follows:

[0060] First, calibrate the n-dimensional objective space, i.e., determine the minimum and maximum range of each objective j Wherein, the And Denote the extreme values of the multi-objective. The specific method is as follows:

[0061] (1) For each objective k∈{1,...,n}, solve its single-objective optimization problem.

[0062] [SO k ]min:z k (x)

[0063] s.t.

[0064] Given the obtained solution x k , its evaluation value on each objective j is z j (x k )

[0065] (2) For each objective j, According to the above extreme values of the multi-objective, further construct a multi-dimensional objective space. In some embodiments, the multi-dimensional objective space can be referred to as a hypercube. The hypercube Is the boundary of the effective objective space. It is easy to prove that any solution outside the hypercube cannot be on the Pareto front, because it will be dominated by some x k On the surface of the hypercube.

[0066] S102, partition the multi-dimensional objective space into multiple sub-objective spaces.

[0067] Further, wherein the partitioning the multi-dimensional objective space into multiple sub-objective spaces comprises: partitioning the multi-dimensional objective space into multiple sub-objective spaces according to the upper and lower boundary values of the objective values.

[0068] In the above manner, multiple small-sized sub-objective spaces can be partitioned according to requirements, and in the sub-objective spaces, objective programming can be used to convert to single-objective solving.

[0069] Specifically, it is necessary to determine the diversification search. The specific method is as follows:

[0070] On the basis of the above hypercube, space slicing and goal programming are applied to construct the Pareto frontier and perform diversification search. The specific process is as follows:

[0071] (1) By dividing the effective range of each target direction into slots, which can be uniform or non-uniform, the hypercube is cut into a grid, which can be called a sub-target space. Each grid g can be written as:

[0072] in, Indicates the lower boundary value. This represents the upper boundary value.

[0073] S103, solve for the multi-objective values ​​in the multiple sub-objective spaces to obtain the optimal solution set of the corresponding multi-objective values.

[0074] Furthermore, for each grid g, a modified single-objective optimization problem is solved.

[0075] [MSO g min:∑ j∈{1,…,n} z j (x)

[0076] st

[0077] The weighted sum of multiple objectives (each objective has a weight of 1) finds the optimal z-value within the grid range (i.e., the last constraint). j The solution x is the value g Of course, MSO g It may also be unfeasible.

[0078] Specifically, the grid is enumerated, and the solutions to the MSO problems are collected. In this embodiment, not every MSO needs to be solved; that is, some grids can be skipped quickly, thanks to the direct influence of goal programming on the solution.

[0079] The above method can accurately and directly obtain the optimal solution set for multiple objective values, which facilitates the rapid construction of the Pareto front.

[0080] Furthermore, the step of solving for the multi-objective value for the multiple sub-objective spaces includes: traversing the target space in ascending order of the distance from the sub-objective space to the pseudo-origin.

[0081] Specifically, it can be:

[0082] a. The mesh is aligned to the pseudo-origin of the hypercube. The grids are traversed in ascending order of their distance to the pseudo-original point of the hyper-cube, ).

[0083] b. The collected MSO solutions S MSO Initially, the pseudo-original point of the hyper-cube is set as the starting point. The MSO solution of each grid is updated after being solved.

[0084] c. For each grid g, if there exists a solution dominating grid g among the previously solved grids, i.e. The MSO solution of grid g can be skipped. g

[0085] In this way, the optimal solution can be quickly found by starting from the vicinity of the pseudo-original point.

[0086] Further, the solving of the multi-objective values for the plurality of sub-target spaces comprises solving the multi-objective values for the sub-target spaces according to a time limit, a distance limit, and a warm start mechanism. Specifically, the following steps are included:

[0087] a. When solving the MSO with a solver, an early termination condition such as a time limit or a distance limit can be set. Although the solution quality is sacrificed for the sake of solving speed, the optimality can still be measured. In addition, a warm start mechanism can be used, i.e. the solutions of nearby grids can help to quickly start the solving of the current grid.

[0088] b. Since the MSO of the grid is relatively independent, multi-processing can also be applied to promote parallel computing. The grids can be pre-grouped or dynamically load balanced.

[0089] In this way, the solving strategy can be adjusted according to actual needs, and the optimal solution can be quickly found.

[0090] Further, the solving of the multi-objective values for the plurality of sub-target spaces comprises receiving a reference point and traversing the target space according to the rays of the reference point.

[0091] Specifically, it can include intensification search. Specifically, the following steps are included:

[0092] ​When the user provides some reference points in the objective space, for example, through subjective judgment or through analysis of the Pareto front, the diversification search can be further extended to a reinforcement search, i.e., to dig around the reference direction of the possible Pareto solution. The specific process is as follows.

[0093] (1) For the reference point , its corresponding reference direction is the ray from p o to p r , which reflects the user's implicit preference for different objectives. The point along the reference direction can be written as p λ = λp r + (1-λ)p o , λ≥0

[0094] (2) Under appropriate accuracy, the feasible point closest to p o along the reference direction can be found.

[0095] a. Iteration with a certain step size, increment λ to reach the point , construct a grid around p λ , i.e.

[0096] Then try to solve the corresponding MSO λ .

[0097] [MSO λ ]min:∑ j∈{1,…,n} z j (x)

[0098] s.t.

[0099] b. Once the MSO λ is solved, the iteration stops. For the obtained solution x t , its point in the objective space is p t = (z1(x t ), …, z n (x t )). p t can be approximated as the intersection of the reference direction and the Pareto front.

[0100] In this way, according to the user's experience or external recommendation, traversal can be performed, and the optimal solution can be quickly found.

[0101] Further, the partitioning of the multi-dimensional objective space into a plurality of sub-objective spaces comprises: adjusting the upper and lower boundary values of the objective values according to the center point of the sub-objective space as the reference point.

[0102] For example, construct a grid with p λ as the center, and the upper and lower boundaries of each dimension as the upper and lower boundaries of the grid.t a local hypercube centered at the reference point,

[0103] and apply the aforementioned diversification search within this local hypercube. The resulting Pareto frontier is a local frontier around the reference direction. The local hypercube can then be expanded step by step, and the above steps repeated until the resulting Pareto solutions are satisfactory. In some embodiments, Figure 6 illustrates the above process with n set to 2 for clarity.

[0104] In some embodiments, the Pareto frontier can be readily constructed from the MSO solutions collected from the grid. The Pareto solution diversity can be achieved, for example, by divide and conquer over the entire effective objective space. The granularity of the grid that partitions the hypercube can adjust the search precision, while the objective programming of each grid can ensure the direct control of the solution performance in different objective directions.

[0105] In this way, the upper and lower bounds can be adjusted according to the center position and other factors to define the size of the sub-objective space, thereby facilitating the search for the optimal solution.

[0106] In some embodiments, Figure 4 illustrates an example of a hypercube that is sliced into grids for a MSO to be solved, with n set to 3 for clarity. Note that the hypercube and each grid do not necessarily need to be a square, nor do the segments partitioned on each axis need to be uniform.

[0107] In some embodiments, Figure 5 illustrates a Pareto frontier obtained using the above method. The multi-objective optimization problem to be solved is an S&OP based on experience serving a Chinese automobile manufacturer. The three most important key performance indicators of the enterprise are demand satisfaction rate, production cost, and procurement workload. The multi-objectives are demand satisfaction rate, production cost, and procurement workload, respectively.

[0108] After calibrating the objective space, the resulting hypercube is sliced into 1000 (10*10*10) grids, of which only 98 MSOs need to be solved, and the other 902 MSOs are quickly skipped. Of the 98 solutions, 45 are non-dominated solutions, and the remaining 53 are dominated solutions. The 45 Pareto solutions help users make trade-offs and decisions, not only because they provide enough choices, but also because they are widely distributed throughout the objective space, even though the objective space is sparse and irregular.

[0109] In contrast, this application attempted a normalization method. Unsurprisingly, due to the indirect effect of the weights on the solution, after enumerating 1000 combinations of (ω1,ω2,ω3) values, only 5 Pareto solutions were obtained, and they were all very close to each other. Furthermore, there was no opportunity to quickly skip over any solutions.

[0110] As for EMO, since S&OP has over 900 decision variables, it's impossible to directly use EMO to solve the problem. Note that in practice, combinatorial optimization problems can have over 10,000 decision variables. That is, the optimal solution consists of parameters with over 10,000 dimensions.

[0111] In some embodiments, Figure 7 illustrates a portion of the Pareto front of the aforementioned S&OP. In Figure 7, the global Pareto solution, reference point, and local Pareto solutions are labeled with a cross, a triangle, and a dot, respectively. Different reference points correspond to different local Pareto solutions. Indeed, the local Pareto solutions all lie on the global Pareto front and are located around the reference direction. In Figure 7, for a single reference point where z1 is near 82000, z2 is near 0, and z3 is near 0, only one local Pareto solution can be found because the discrete Pareto front along this reference direction is relatively sparse. In this case, the application can progressively expand the local hypercube to find more Pareto solutions, although these solutions will be farther from the reference direction.

[0112] In this application, the above methods are illustrated one by one by examples. The solution procedures or processes discussed can be executed using a mathematical programming solver, and relevant user configuration initialization is performed. Furthermore, the proposed methods are configurable in many aspects, including: for the effective target space, the user can directly specify... Values; for diversified searches, the granularity of spatial partitioning can be adjusted to achieve a balance between accuracy and speed; in reinforced searches, the source point of the reference direction can also be specified by the user instead of using p. o In p t The precision of the surrounding search and assessment can also be adjusted, for example, by increasing the step size of λ or σ. λ and δ j The values, the granularity of cutting the local hypercube, and the step size of expanding the local hypercube, etc.

[0113] Under the same diversified search and reinforcement search approach, various variations are possible, as shown in the two examples in Figure 6(a) and (b). Of course, the above steps can be freely combined to facilitate an interactive decision-making process.

[0114] The beneficial effects of this application include: the proposed solution effectively combines the advantages of existing solutions while overcoming their disadvantages, thereby solving the usability problem. Specifically, this includes:

[0115] Compared to normalization and EMO, users can predict and control the performance of the solution in different target directions. This results in a high degree of diversity in the obtained Pareto solutions, and the user's expected value can be fully considered by the algorithm.

[0116] Compared to EMO, using a solver ensures that the constructed Pareto front is of good quality and measurable. It also offers a higher return on investment during the algorithm design, development, and computation phases, especially for large-scale and complex combinatorial optimization problems.

[0117] The methods for detecting whether the methods described in this application are used may include the following:

[0118] (1) If the method for multi-objective optimization is based on the proposed idea, it should be clearly derived from the description / instruction of the method used.

[0119] (2) Infer from the interface specifications / user interface functions / system workflow if the implicit method is based on the proposed idea.

[0120] (3) If there are keywords such as target planning or target space processing, they are implied in the introduction / promotion information.

[0121] It should be understood that although the steps in the flowchart of Figure 1 are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some of the steps in Figure 1 may include multiple steps or multiple stages, which are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages in other steps.

[0122] Figure 2 provides a multi-objective optimization device 200 based on goal planning and goal space processing. It includes:

[0123] The space establishment module 201 is used to establish a multi-dimensional target space based on multiple targets, wherein the boundary of the target space is determined by the maximum and minimum values ​​of the targets;

[0124] The spatial segmentation module 202 is used to segment the multi-dimensional target space into multiple sub-target spaces;

[0125] The spatial solution module 203 is used to solve multiple objectives in the multiple sub-objective spaces to obtain the optimal solution set of the corresponding multiple objectives.

[0126] It should be noted that the device may contain more or fewer modules to implement the described functions. For example, at least one module in FIG2 may be further divided into a plurality of different sub-modules, each sub-module being used to perform at least a portion of the operations described herein in conjunction with the corresponding module. Furthermore, in some examples, device 200 may also include additional modules for performing other operations already described in the specification. Moreover, those skilled in the art will understand that the exemplary device 200 may be implemented using software, hardware, firmware, or any combination thereof.

[0127] Figure 3 provides a computer device. According to one embodiment, the computer device 300 may include a processor 302 that executes a computer program stored in a memory 304. When executed by the processor, the computer program implements the method described above.

[0128] Those skilled in the art will understand that the structure shown in Figure 3 is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or may combine certain components, or may have different component arrangements.

[0129] Those skilled in the art will understand that all or part of the processes in the methods described above can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments described above. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, or optical storage, etc. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc.

[0130] This application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, performs the above steps.

[0131] This application also provides a computer program product tangibly stored on a computer-readable medium and including computer-executable instructions that, when executed, cause at least one processor to perform the methods described above.

[0132] Furthermore, the computer program can be stored and run in the cloud to execute the method. Furthermore, the components of the program can be deployed on multiple devices or in the cloud; for example, corresponding steps can be deployed and run on a local computer, or run on different cloud devices, transmitting signals via communication connections, or they can also be deployed and run on a local computer. This application does not limit the described approach or method; corresponding technologies can be flexibly deployed and fully utilized to execute and complete the method using cloud computing, big data, supercomputing capabilities, and other equipment and technologies.

[0133] Some implementations of this disclosure may include an article of writing. The article of writing may include a storage medium for storing logic. Examples of storage media may include one or more types of computer-readable storage media capable of storing electronic data, including volatile or non-volatile memory, removable or non-removable memory, erasable or non-erasable memory, writable or rewritable memory, and so on. Examples of logic may include various software units, such as software components, programs, applications, computer programs, application programs, system programs, machine programs, operating system software, middleware, firmware, software modules, routines, subroutines, functions, methods, procedures, software interfaces, application programming interfaces (APIs), instruction sets, computational code, computer code, code segments, computer code segments, words, values, symbols, or any combination thereof. In some implementations, for example, the article of writing may store executable computer program instructions that, when executed by a processor, cause the processor to perform the methods and / or operations described herein. Executable computer program instructions may include any suitable type of code, such as source code, compiled code, interpreted code, executable code, static code, dynamic code, and so on. Executable computer program instructions can be implemented according to a predefined computer language, method, or syntax used to command the computer to perform specific functions. These instructions can be implemented using any suitable high-level, low-level, object-oriented, visual, compiled, and / or interpreted programming language.

[0134] The examples described above include those of the disclosed architecture. It is certainly impossible to describe every conceivable combination of components and / or methods, but those skilled in the art will understand that many other combinations and arrangements are also possible. Therefore, this novel architecture is intended to cover all such alternatives, modifications, and variations that fall within the spirit and scope of the appended claims.

Claims

1. A multi-objective optimization method based on goal programming and goal space processing, wherein, include: Based on multiple objectives, a multi-dimensional objective space is established, wherein the boundary of the objective space is determined by the maximum and minimum values ​​of the multiple objectives; The multi-dimensional target space is divided into multiple sub-target spaces; The optimal solution set for each of the multiple sub-objective spaces is obtained by solving multiple objectives.

2. The method according to claim 1, wherein, The segmentation of the multi-dimensional target space into multiple sub-target spaces includes: Based on the upper and lower boundary values ​​of the multiple targets, the multi-dimensional target space is divided into multiple sub-target spaces.

3. The method according to claim 1, wherein, The multi-objective solution for the multiple sub-objective spaces includes: The target space is traversed in ascending order of distance from the sub-target space to the pseudo-origin.

4. The method according to claim 1, wherein, The multi-objective solution for the multiple sub-objective spaces includes: Receive a reference point and traverse the target space using a ray from the reference point.

5. The method according to claim 2, wherein, The segmentation of the multi-dimensional target space into multiple sub-target spaces includes: The upper and lower boundary values ​​of the multi-target are adjusted based on the center point of the sub-target space as a reference point.

6. The method according to claim 1, wherein, The multi-objective solution for the multiple sub-objective spaces includes: Based on time constraints, distance constraints, and a warm-start mechanism, the sub-objective space is solved for multiple objectives.

7. A multi-objective optimization device based on target space, wherein, include: A space establishment module is used to establish a multi-dimensional target space based on multiple objectives, wherein the boundary of the target space is determined by the maximum and minimum values ​​of the multiple objectives; The spatial segmentation module is used to segment the multi-dimensional target space into multiple sub-target spaces; The spatial solution module is used to solve multiple objectives in the multiple sub-objective spaces to obtain the optimal solution set for the corresponding multiple objectives.

8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein... When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 6.

9. A computer-readable storage medium having a computer program stored thereon, wherein, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.

10. A computer program product tangibly stored on a computer-readable medium and comprising computer-executable instructions that, when executed, cause at least one processor to perform the method according to any one of claims 1 to 6.