Almost Linear Complexity of Solving an NP-Complete Production Scheduling Problem

The article describes an approach to solving the problem of production planning in the existing and working APS Mespace / APS system . The theoretical substantiation of the high speed of the system is shown. An approach is presented that reduces the complexity of the problem from the area of โ€‹โ€‹algorithm design to the area of โ€‹โ€‹selection of functions of a special type. This approach can potentially influence the ways of solving complex problems, including the equivalence of the classes P and NP.





Traditionally, the path from an idea to its implementation looks as if first the idea is described in the article, then the embodiment arises from it. However, in practice, it is usually the other way around and the article is only a summary of the work. Let's not deviate from reality. This article presents the results of the implementation of the planning system. The production planning problem is well known, consists of two related subtasks - compiling a list of all works (exploding) and scheduling, that is, scheduling these works for performers, and is well described, for example, in the classic work of Pinedo.





Due to its high labor intensity, usually the solution process is brought to a certain level of grouping of tasks, as is done in volumetric scheduling in SAP, however, the ultimate goal of the planning process is to obtain a list of elementary works tied to the performers - a work plan from which you can form shift- daily tasks.





The list of orders, performers (machines and workplaces) and technical processes should be considered as input data. A separate technological process describes a linear process of obtaining a part, however, all technological processes form a tree structure that describes the process of manufacturing an order. Of course, work in progress and time management in the form of calendars and many other nuances must be taken into account, without which it is impossible to build a work plan.





Typically, the planning problem is posed as an optimization problem - at least in terms of the time spent for the production of an order. However, in practice, other criteria may turn out to be important - the level of production utilization, the time spent on semi-finished products in warehouses, and many others. Therefore, it would be more correct to say that a certain function is given, calculated over the work plan, whose value needs to be optimized (for definiteness, to be minimized). It was in this setting that the planning problem in the Mespace / APS system was solved.





, NP- . . APS - . .





- . . ( , , ), . . , .





, , , , . , . . . , , . , , , .





, .





, , . . , . , , .





, . Mespace/APS , , .





- , . - . - . , . , , .





, NP- , . APS O(N *log(N)), . , , , . N ( , , ) - , O(log(N)).





, , . , .





- , , - , ..





APS, .





, APS . ( 3.5 ) (16 ). - , ( ), . ( ).





, 2 . , , 0.1 200 , 20 . 20 12 ( ).



, APS , .



.





, ( ), ( ). 103 , 23 , 3 , 3 , .





, . . , ( , , ). , .





The figure shows various display options - in the first and second on the left, points of local minimum are indicated, which gives an understanding of how the space of solutions to the problem is arranged. The global minimum is on the upper edge almost in the center, as can be seen in the central figure. The two right figures show slices of the functional values.





Conclusion

The developed planning system implements a new approach to solving optimal planning problems with complexity O (N * log (N)), and the problem of constructing an optimal plan is reduced to the problem of finding computational functions of a special type, which opens up new possibilities in solving NP-complete problems.








All Articles