Complex constraint-considered multi-chip mounter CT optimization method and system, and storage medium

By optimizing the resource allocation of the pick-and-place machine using a mixed integer programming model, the CT balance problem under complex constraints of multiple pick-and-place machines was solved, resulting in higher production efficiency and stability.

CN120974780AActive Publication Date: 2025-11-18HEFEI ANXIN PRECISION TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202511493939.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-10-20
Publication Date
2025-11-18
Estimated Expiration
2045-10-20

AI Technical Summary

Technical Problem

Existing pick-and-place machines suffer from poor CT balancing accuracy and weak engineering adaptability when handling complex constraints, resulting in low production efficiency.

Method used

By adopting a mixed integer programming model, combining equipment configuration, component characteristics and production rules, and through unit splitting generation, adaptability scoring and multi-round iterative optimization, the global optimal resource configuration of multiple chip mounters is achieved.

Benefits of technology

It improves the balancing effect of multi-machine CT, reduces the impact of equipment configuration differences and component placement complexity, and enhances production efficiency and solution stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120974780A_ABST
    Figure CN120974780A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of chip mounter mounting optimization, in particular to a multi-chip mounter CT (Computed Tomography) optimization method and system considering complex constraints and a storage medium, and the method comprises the following steps: dividing elements and mounting points thereof into independent split units according to the attribute that whether the elements are allowed to be distributed by multiple machines or not, each split unit corresponding to one element; an element machine scoring matrix is generated, each row represents one split unit, each column represents one machine, and the data of the corresponding row and column represents the adaptation degree score of the split unit distributed to the corresponding machine; and creating a target function minf = x1f1 + x2f2 + x3f3 considering all constraints based on the mixed integer programming model. According to the scheme, equipment configuration and substrate characteristics are comprehensively considered, various constraint conditions are systematically analyzed to ensure the practical feasibility of the allocation scheme, equipment configuration parameters, element characteristics and production rules are fused through a mixed integer programming framework, and quantitative expression and solution of the constraint conditions are achieved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of patch machine mounting optimization, in particular to a multi-patch machine CT optimization method and system considering complex constraints, and a storage medium. BACKGROUND

[0002] SMT (Surface Mount Technology) production line is the core process platform for realizing miniaturization and high-density assembly of modern electronic products, usually including solder paste printer, patch machine, reflow soldering furnace and AOI detection equipment, and following the process flow of "printing-mounting-welding-detection" to complete the automatic assembly of electronic components. The level of this technology directly determines the assembly accuracy, production efficiency and reliability of electronic products, and is widely used in high-end manufacturing fields such as consumer electronics, automotive electronics, aerospace, etc.

[0003] As the core equipment of SMT production line, patch machine drives the mounting head to pick up surface mount components (SMD) from the feeder (such as tape, tray or tray) by means of multi-axis motion system, and then identifies and corrects the component posture and Mark point of PCB board through visual positioning system (including flying camera and fixed camera), finally mounts the components to the preset pad position with high precision. The technical difficulty lies in meeting the requirements of high speed and high precision at the same time, and being able to adapt to the diversified mounting needs of 01005 ultra-miniature components to large BGA, QFP and other special-shaped components.

[0004] Because patch machine needs to perform a series of complex actions such as component picking, identification, positioning and mounting, its single machine capacity often becomes the bottleneck of the production line. In order to improve the overall efficiency, the mainstream production line usually configures multiple patch machines (usually 2 to 4) to work in parallel, and realizes distributed processing of mounting tasks through substrate splitting. The current common task allocation schemes mainly fall into three categories: one is the rule allocation method based on manual experience, that is, engineers formulate fixed splitting rules (such as grouping by package size) according to equipment models and component types; the second is simple load balancing, which preliminarily balances the load by allocating the number of components or estimated mounting time equally; the third is heuristic allocation, which iteratively filters the better allocation scheme by means of specific rules and random processes. Manual allocation method has the problems of strong subjectivity and poor engineering adaptability. Load balancing method is easy to lead to imbalance of production line cycle time (CT) because it does not fully consider the differences in equipment configuration (such as feeder type, nozzle configuration), component mounting complexity (such as precision components requiring special mounting head) and dynamic changes in production process (such as equipment failure, material shortage). Heuristic can handle certain complex constraints, but usually has low calculation efficiency and relies on random processes, leading to instability and poor repeatability of solutions. Therefore, the existing technology has certain defects in complex constraint handling, CT balancing accuracy and engineering adaptability, and a solution is needed that can solve the above problems at the same time. SUMMARY

[0005] In order to solve the problems in the prior art, the application provides a multi-paster CT optimization method and system considering complex constraints and a storage medium, which can construct an intelligent substrate splitting system fusing multi-dimensional constraints, and realize global optimization of SMT production line resource configuration through a method combining mathematical modeling and dynamic balance.

[0006] In order to achieve the above-mentioned purpose, the first aspect of the application provides a multi-paster CT optimization method considering complex constraints, characterized in that the method comprises the following steps: According to the attribute of whether the component allows multi-machine allocation, the components and their mounting points are divided into independent splitting units, and each splitting unit corresponds to a component; An element machine score matrix is generated, each row representing a splitting unit and each column representing a machine, and the data corresponding to the row and column representing the adaptation score of the splitting unit allocated to the corresponding machine; Based on a mixed integer programming model, a target function min f =x1 f 1+x2 f 2+x3 f 3 is created considering all constraints, wherein the sub-target f 1: , the sub-target f 2: , and the sub-target f 3: , height k represents the height of the component k, score ij represents the adaptation score of the splitting unit i allocated to the machine j, p ij represents whether the splitting unit i is allocated to the machine j, q jk represents whether the machine j exists for the component k, x j represents the number of mounting points of the machine j, y j represents the sum of the slot positions required to be occupied by the feeder of all components allocated to the machine j, z i represents the number of the machine to which the splitting unit i is finally allocated, and goalLoad j represents the expected load of the machine j.

[0007] The second aspect of the application provides a multi-paster CT optimization method considering complex constraints, characterized in that the method comprises the following steps: S1, according to the attribute of whether the component allows multi-machine distribution, the component and its mounting point are divided into independent split units, each split unit corresponds to a component; S2, a component machine score matrix is generated, each row represents a split unit, each column represents a machine, and the data corresponding to the row and column represents the fitness score of the split unit assigned to the corresponding machine; S3, obtain the CPU information of the computer, generate a reasonable number of computing tasks according to the number of CPU threads, and all computing tasks run in parallel on independent threads, and each computing task generates a set of initial machine production capacity indexes according to the index of the corresponding task; S4, each independent task creates a target function min f =x1 f 1+x2 f 2+x3 f 3 based on the mixed integer programming model considering all constraints; f 1: , sub-target f 2: , sub-target f 3: , height k represents the height of component k, score ij represents the fitness score of split unit i assigned to machine j, p ij represents whether split unit i is assigned to machine j, q jk represents whether machine j exists component k, x j represents the number of mounting points of machine j, y j represents the sum of the number of slots occupied by the feeder of all components assigned to machine j, z i represents the number of the machine to which split unit i is finally assigned; S5, after the model is established, the model is solved to obtain a specific distribution scheme, and according to the distribution scheme, a split substrate is generated, and each substrate is optimized using a single machine optimization algorithm to obtain the theoretical production CT of each substrate on the respective machine; S6, based on the theoretical CT of the substrate and the load capacity of the machine, the production capacity of each machine is re-evaluated, and the expected load capacity of each machine is recalculated in combination with the preset expected production time ratio of each machine; S7, based on the latest evaluation results and the target, return to step S4 to update the model and re-run, and repeat steps S5 to S7 until the termination condition is reached.

[0008] The third aspect of the present application provides a multi-paster CT optimization system considering complex constraints, comprising: A splitting unit generation module configured to divide components and their mounting points into independent splitting units according to the attribute of whether the component allows multi-machine allocation, each splitting unit corresponding to a component; An adaptation score configuration module configured to generate a component-machine score matrix, each row representing a splitting unit and each column representing a machine, and the data corresponding to the row and column representing the adaptation score of the splitting unit allocated to the corresponding machine; A target function creation module configured to create a target function min f =x1 f 1+x2 f 2+x3 f 3 considering all constraints based on a mixed integer programming model, wherein the sub-target f 1: , the sub-target f 2: , and the sub-target f 3: , height k represents the height of the component k, score ij represents the adaptation score of the splitting unit i allocated to the machine j, p ij represents whether the splitting unit i is allocated to the machine j, q jk represents whether the component k exists in the machine j, x j represents the number of mounting points of the machine j, y j represents the sum of the slot positions required to be occupied by the feeders of all components allocated to the machine j, z i represents the number of the machine to which the splitting unit i is finally allocated, and goalLoad j represents the expected load of the machine j.

[0009] The fourth aspect of the present application provides a machine readable storage medium, which stores instructions for causing a machine to perform the steps of the above-mentioned multi-paster CT optimization method considering complex constraints.

[0010] The fifth aspect of the present application provides a processor for running a program, wherein the program is used to execute the above-mentioned multi-paster CT optimization method considering complex constraints when the program is run.

[0011] By the technical scheme, the device configuration and the substrate characteristics are comprehensively considered, various constraint conditions are analyzed to ensure the actual feasibility of the distribution scheme, the device configuration parameters (such as feeder type / quantity, nozzle configuration, etc.), component characteristics (such as package size, identification method, etc.) and production rules (such as manually customized distribution constraints, etc.) are fused through a mixed integer programming framework, the constraint conditions are quantitatively expressed and solved, the problems that the traditional method relies on manual experience or simple average distribution and does not consider the device configuration difference and component mounting complexity, resulting in poor CT balancing effect of the multi-machine and seriously restricting the production efficiency of the production line are avoided.

[0012] Other features and advantages of the embodiments of the present application will be described in detail in the following specific embodiments. BRIEF DESCRIPTION OF DRAWINGS

[0013] The accompanying drawings are included to provide a further understanding of the embodiments of the present application, and constitute a part of the specification, and are used to explain the embodiments of the present application together with the following specific embodiments, but do not constitute a limitation of the embodiments of the present application. In the drawings: Figure 1 is a multi-CT optimization process schematic diagram considering complex constraints of the embodiments of the present application. DETAILED DESCRIPTION

[0014] The specific embodiments of the embodiments of the present application will be described in detail below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are only used to illustrate and explain the embodiments of the present application, and do not limit the embodiments of the present application.

[0015] The first aspect of the embodiments of the present application provides a method for initial distribution of a paster nozzle, a multi-CT optimization method considering complex constraints, comprising the following steps: S1, according to the attribute of whether the component is allowed to be distributed by multiple machines, the component and its mounting point are divided into independent split units, and each split unit corresponds to a component; First, all the configuration parameters of the paster machines in the production line are traversed, and the key configuration attributes of the machines are calculated, including but not limited to: machine type (high-speed machine, general-purpose machine, etc.), feeding mode (tape feeder, automatic tray, etc.), camera configuration (flight camera, bottom mirror camera, etc.), nozzle exchange station configuration (whether there is an exchange station, the type and quantity of nozzles in the exchange station, etc.).

[0016] Then, all the component data are continuously traversed, and the key distribution attributes of each component are calculated, including: the feeding mode of the component, the identification camera type, the size, whether multiple machines are allowed to distribute, and the manually set distribution machine constraints.

[0017] Based on the sorted machine attributes and component attributes, the component allocation related constraints are calculated, and the union of machines to which the components can finally be allocated is determined. Then, according to whether the components are allowed to be allocated to multiple machines, the components and their mounting points are divided into independent split units, which will be the direct operation objects in the subsequent splitting process. One type of component can have multiple split units, but each split unit corresponds to only one type of component. In this way, the conditions required for the execution of the splitting method are prepared.

[0018] S2, generating a component-machine score matrix, each row representing a split unit and each column representing a machine, and the data corresponding to the row and column representing the fitness score of the split unit allocated to the corresponding machine; The fitness score is mainly calculated based on the characteristics of each type of machine and component. For example, high-speed machines are designed to achieve high-speed mounting, so components with small size, large batch, and fast mounting speed are more suitable for mounting on this machine type; general-purpose machines are designed to achieve mounting of more types of components, so components with large size, special type, and slow mounting speed are more suitable for mounting on general-purpose machines.

[0019] S3, based on the mixed integer programming model, create a target function min f =x1 f 1+x2 f 2+x3 f 3, where the sub-target f 1: , sub-target f 2: , sub-target f 3: , height k represents the height of component k, score ij represents the fitness score of split unit i allocated to machine j, p ij represents whether split unit i is allocated to machine j, q jk represents whether machine j exists component k, x j represents the number of mounting points of machine j, y j represents the sum of the slot positions occupied by the feeders of all components allocated to machine j, z i represents the number of machines to which split unit i is finally allocated.

[0020] Further, in step S3, a mixed integer programming model is established for multi-machine allocation of mounting load based on dynamically evaluated machine production capacity in a complex constraint scenario, including the following steps: S31, creating decision variables Creating binary decision variables p ij Indicates whether to assign split unit i to machine j, I represents the number of split units, and J represents the total number of machines. Since the hard constraint calculation of elements and machines has been completed in step S1, the value of the decision variable can be limited when initializing the decision variable, and this part of the hard constraint can be processed in advance.

[0021] .

[0022] S32, creating auxiliary variables In order to facilitate the subsequent modeling process, a series of auxiliary variables are created.

[0023] Auxiliary variable 1: binary variable q jk Indicates whether machine j has element k

[0024] Where K represents the total number of element types.

[0025] Whether a machine has a certain type of element depends on whether the corresponding split unit is assigned, and the value of the variable is constrained by the following formula.

[0026]

[0027] Where i k Indicates that the element type corresponding to the split unit is k.

[0028] Auxiliary variable 2: one-dimensional integer variable x j Indicates the final load quantity (mounting point quantity) of machine j , where c ount i Indicates the load quantity of split unit i.

[0029] Auxiliary variable 3: one-dimensional integer variable y j Indicates the sum of the slot positions occupied by the feeders of all elements assigned to machine j: .

[0030] Where width k Indicates the number of slot positions occupied by the feeder corresponding to element k.

[0031] Auxiliary variable 4: one-dimensional integer variable z irepresents the number of the machine to which the split unit i is finally assigned .

[0032] S33, create constraints Constraint 1, all split units should be assigned .

[0033] The formula means that for any one split unit, it will always and only be assigned to a certain machine.

[0034] Constraint 2, the assignment order of split units cannot violate the mounting order constraint The mounting order constraint between split units has been calculated in the nozzle interference checking step, assuming that split unit a must be completed before split unit b is mounted, since the machine number is incremented according to the order of the machine in the production line, the number of the machine where a is located needs to be less than or equal to the number of the machine where b is located, with the help of auxiliary variables, the constraint can be expressed as follows: z a ≤ z b .

[0035] Constraint 3, the final feeder slot number of each machine cannot exceed the number of slots that the machine can provide y j ≤ slotCount j Wherein slotCount j represents the number of slots that machine j can provide.

[0036] Constraint 4, alternative components need to be assigned to the same machine Since the chip mounter usually supports the function of alternative components, that is, several feeders supply the same kind of components, when the trays of some feeders are used up, the machine can continue to suck components from the alternative component feeders of the machine, avoiding frequent downtime for material replacement. Assuming that split units a, b, and c are alternative components to each other, the constraint can be expressed as follows: z a == z b == z c , == is a computer language, which means equal.

[0037] S34, create objective function The objective function is composed of three sub-targets, according to the order of magnitude and importance of the sub-targets, different weights are given, and the overall objective is to minimize the objective function: min f =100f 1+ f 2- f 3.

[0038] Objective function 1: Each machine reaches the expected load amount The algorithm adjusts the expected load amount for each machine by dynamically evaluating the production capacity of each machine. Objective function 1 is the main goal of the model allocation, with the highest weight, which minimizes the absolute value of the difference between the actual load amount and the expected load amount to make the actual load amount reach or approach the expected load amount: .

[0039] Linearize the absolute value term of the above formula: .

[0040] Objective function 2: High-height components are preferentially placed on the back machine for mounting If higher components are mounted first, it will affect the safety height of all subsequent mounting points, that is, the Z-axis needs to be lifted higher during mounting to avoid interference with the mounted components, which will affect the production efficiency of the machine. In addition, mounting on the front machine requires a longer board transfer distance and more jolting, combined with the high center of gravity of high components, which is more prone to tipping. In summary, high components should be preferentially placed on the back machine for mounting, which is beneficial to production efficiency and quality.

[0041] .

[0042] wherein height k h k represents the height of component k, f2 j h j represents the highest height of components allocated to machine j, f2 h j represents the sum of the highest component heights allocated to each machine, combined with objective function 3 and the overall minimization goal, high-height components can be preferentially placed on the back machine for mounting.

[0043] Objective function 3: Each type of component is allocated to the most suitable machine for mounting that type of component Different machines may be able to mount certain components, but there may be differences in efficiency and accuracy. The component machine score matrix has been generated before, and objective function 3 is constructed using this matrix, which can allocate each type of component to the most suitable machine for mounting that type of component.

[0044] , wherein score ijThe split unit i assigns to the machine j the fitness score.

[0045] The SMT production line is usually composed of multiple types of chip mounters, and different devices have differentiated configurations and functional characteristics; at the same time, the production line needs to process diversified substrates, and the types and layouts of components and devices thereof are significantly different. Based on the above characteristics, when the complete substrate is split and mounted on multiple devices, multiple constraint conditions are faced, for example: if the device is not equipped with an automatic tray, the components that need to use the automatic tray cannot be matched; if the device is not configured with a bottom mirror camera, the components that rely on the bottom mirror camera for identification cannot be matched. Therefore, the technical scheme of the present application comprehensively considers the device configuration and the substrate characteristics, analyzes various constraint conditions to ensure the actual feasibility of the allocation scheme, and through the mixed integer programming framework, integrates the device configuration parameters (such as the type / number of feeders, nozzle configuration, etc.), component characteristics (such as package size, identification method, etc.) and production rules (such as manual custom allocation constraints, etc.), realizes the quantitative expression and solution of the constraint conditions. Avoid the problem that the traditional method relies on manual experience or simple average allocation, and does not consider the device configuration difference and component mounting complexity, resulting in poor CT balancing effect of multiple machines, which seriously restricts the production efficiency of the production line.

[0046] In another embodiment of the present application, the designed split method is a composite optimization algorithm based on a multi-task parallel framework, taking a mixed integer programming constraint solution model as the core, and taking dynamic evaluation of multi-machine production capacity as the adjustment strategy. Specifically, the following processes are further included before step S3: (1) Obtain the CPU information of the computer, generate a proper number of calculation tasks according to the number of CPU threads, and all calculation tasks run in parallel on independent threads.

[0047] (2) Each calculation task generates a group of initial machine production capacity indexes according to the index of the task. Since the index of the calculation task is incremental, the generated initial machine production capacity indexes are also step-changed. For example, there are two machines on the production line, and the calculation task 1 initializes the production capacity ratio of the two machines to 0.8:1, the calculation task 2 initializes to 1:1, and the calculation task 3 initializes to 1.2:1. In this way, multiple calculation tasks are combined to cover the common machine production capacity ratio interval, providing a solid foundation for the algorithm to find the optimal allocation scheme.

[0048] On the basis of ensuring the feasibility of the allocation result, a more optimal allocation effect is needed to minimize the total consumption time of multiple chip mounters. The total consumption time of multiple chip mounters depends on the CT (cycle time) of the longest machine, which requires the CT of multiple machines to be balanced to avoid the situation that some equipment is idle while some equipment is running at high load due to uneven load distribution. The technical scheme of the present application develops a dynamic balancing algorithm: based on the dynamic evaluation strategy of the production capacity of multiple machines, the CT deviation of multiple machines is controlled within 5%, and the maximum single machine load is reduced to less than 1.1 times of the theoretical optimal value. In some cases, it can support the user's demand for customizing the CT ratio.

[0049] In another embodiment of the present application, after step S3 is completed, the following steps are further included: S4, after the model is established, the model is solved to obtain a specific allocation scheme. According to the allocation scheme, the split substrates are generated, and each substrate is optimized using a single machine optimization algorithm to obtain the theoretical production CT of each substrate on each machine. Based on the theoretical CT of the substrate and the load capacity of the machine, the production capacity of each machine is re-evaluated. The higher the production capacity, the more mounting points the machine can complete in the same time. Production capacity = load capacity ÷ theoretical CT.

[0050] S5, based on the re-evaluated machine production capacity and the expected production time ratio of each machine set by the user, the expected load capacity of each machine is recalculated. Based on the latest evaluation results and the target, return to step S3 to update the model and re-run, and repeat steps S4 to S5, to achieve multiple iterations, continuously optimize the allocation result in the iteration process, and finally exit the loop when the CT reaches the expected allocation ratio, the algorithm reaches the set iteration number or the algorithm reaches the set execution time, and output the optimal allocation scheme.

[0051] S6, generate the substrate: based on the optimal allocation scheme solved by the algorithm, generate the split and optimized substrate for each machine. Then release the memory, threads and other resources applied during the algorithm execution process, and complete the execution of the entire algorithm.

[0052] Considering the complex and variable actual production scene, it may be necessary to manually control the allocable machines of some components or implement multi-machine allocation of the same component. The conventional automatic allocation function cannot meet the above-mentioned needs, so it is necessary to enhance the flexibility and adjustability of the algorithm, and support the configuration function of the custom component allocation strategy based on the automatic allocation function. The technical scheme of the present application constructs a custom allocation mechanism: supports three types of custom strategy configuration—component-device binding rule (such as dedicated component specified device), component multi-machine allocation (same component multi-device redundant mounting) and custom CT balance degree (control multi-machine CT ratio) to adapt to individual needs.

[0053] In the embodiment of the present application, before step S1 is performed, the following process is further included: (1) Data preparation work needs to be completed before the algorithm runs, including collecting the configuration parameters of all devices on the production line, all substrate data to be split (if re-splitting is required, the same-named substrates allocated to each device must be merged first), and manually set optimization parameters, etc.

[0054] (2) Then perform the substrate priori inspection, the purpose is to identify whether the substrate has fatal errors that cannot be solved by optimization. Once such errors are found, the algorithm will directly report an error and terminate running, avoiding invalid calculation. For example, if neither of the two high-speed machines configured on the production line is equipped with a bottom mirror camera, and there is a large-size component in the to-be-optimized substrate that must be identified using a bottom mirror camera, the priori inspection will determine it as a fatal error.

[0055] (3) After completing the priori inspection, the substrate data is merged. Since the substrate is split, the same-named substrates will be generated on multiple devices, and each will be responsible for mounting part of the components. Before re-allocating, the mounting data of these same-named substrates needs to be merged to restore the complete substrate data.

[0056] (4) Next, perform the suction nozzle interference inspection. When the distance between two mounting points is too small and there is a height difference, if the higher component is mounted first and then the lower component is mounted, it may cause interference between the suction nozzle and the already mounted component, causing mounting deviation, component damage, or device error, etc. Therefore, the algorithm needs to detect all possible interference mounting points in the merged substrate data and extract the mounting order constraints accordingly. According to user settings, the mounting order constraints are divided into two categories: one is point-level constraint, which only limits the mounting order between specific points with interference risk; the other is component-level constraint, which requires more stringent, specifying that all mounting points of a certain type of component must be completed before the mounting points of other types of components.

[0057] In summary, the technical scheme of the present application has the following beneficial effects: independent of heuristic algorithms, solving efficiency and speed surpass traditional algorithms; accurate model, no random process, ensuring consistent results each time, with repeatability; sufficient consideration of constraint conditions, capable of directly determining whether there is a feasible solution; multiple target functions, capable of controlling target weight to adjust solving tendency; using mathematical modeling to express constraints and targets as formulas, thorough analysis, clear logic, strong scalability; the algorithm framework of the present application, including algorithm acceleration method, constraint solving method, optimization iteration method, etc., has strong scalability, and can continue to add or modify constraint conditions and target functions, and improve the algorithm according to requirements.

[0058] In another embodiment of the present application, as shown in Figure 1 a multi-paster CT optimization method considering complex constraints includes the following steps: S1, according to the attribute of whether the component allows multi-machine distribution, the component and its mounting point are divided into independent split units, each split unit corresponds to a component; S2, a component machine score matrix is generated, each row represents a split unit, each column represents a machine, and the data corresponding to the row and column represents the fitness score of the split unit assigned to the corresponding machine; S3, obtain the CPU information of the computer, generate a reasonable number of computing tasks according to the number of CPU threads, and all computing tasks run in parallel on independent threads, and each computing task generates a set of initial machine production capacity indexes according to the index of the corresponding task; S4, each independent task creates a target function min f =x1 f 1+x2 f 2+x3 f 3 based on the mixed integer programming model considering all constraints; f 1: , sub-target f 2: , sub-target f 3: , height k represents the height of component k, score ij represents the fitness score of split unit i assigned to machine j, p ij represents whether split unit i is assigned to machine j, q jk represents whether component k exists in machine j, x j represents the number of mounting points of machine j, y j represents the sum of the slot positions required by the feeders of all components assigned to machine j, z i represents the number of the machine to which split unit i is finally assigned; S5, after the model is established, the model is solved to obtain a specific distribution scheme, and based on the distribution scheme, a split substrate is generated, and each substrate is optimized using a single machine optimization algorithm to obtain the theoretical production CT of each substrate on the respective machine; S6, based on the theoretical CT of the substrate and the load capacity of the machine, the production capacity of each machine is re-evaluated, and the expected load capacity of each machine is recalculated in combination with the preset expected production time ratio of each machine; S7, based on the latest evaluation results and the target, return to step S4 to update the model and re-run, and repeat steps S5 to S7 until the termination condition is reached.

[0059] Based on the same inventive concept, the second aspect of the embodiment of the present application provides a multi-paster CT optimization system considering complex constraints, comprising: The splitting unit generation module is configured to divide the components and their mounting points into independent splitting units according to the attribute of whether the components are allowed to be assigned by multiple machines, and each splitting unit corresponds to one component; The fitness score configuration module is configured to generate a component-machine score matrix, each row representing a splitting unit and each column representing a machine, and the data corresponding to the row and column representing the fitness score of the splitting unit assigned to the corresponding machine; The objective function creation module is configured to create an objective function min f =x1 f 1+x2 f 2+x3 f 3 considering all constraints based on a mixed integer programming model, wherein the sub-objective f 1: , the sub-objective f 2: , and the sub-objective f 3: , height k represents the height of the component k, score ij represents the fitness score of the splitting unit i assigned to the machine j, p ij represents whether the splitting unit i is assigned to the machine j, q jk represents whether the machine j exists for the component k, x j represents the number of mounting points of the machine j, y j represents the sum of the slot positions required to be occupied by the feeders of all components assigned to the machine j, z i represents the number of the machine to which the splitting unit i is finally assigned.

[0060] The third aspect of the embodiment of the present application provides a machine-readable storage medium, and the machine-readable storage medium stores instructions for causing a machine to execute the steps of the above-mentioned multi-paster CT optimization method considering complex constraints.

[0061] The fourth aspect of the embodiment of the present application provides a processor for running a program, wherein the program is used to execute the above-mentioned multi-paster CT optimization method considering complex constraints when the program is run.

[0062] It should be noted that the present application is designed based on a mixed integer programming model, and in addition, a rule method based on expert experience, a heuristic or other solution can also be used.

[0063] It should also be noted that the terms "comprising", "including", or any other variant thereof are intended to cover a non-exclusive inclusion, such that processes, methods, articles, or apparatuses that comprise a list of elements are not limited to those elements, but can also include other elements not expressly listed or inherent to such processes, methods, articles, or apparatuses.

[0064] The above only is the embodiment of the present application, and is not used to limit the present application. The present application can have various changes and changes for those skilled in the art. Any modification, equivalent replacement, improvement, etc. within the spirit and principle of the present application shall be included in the scope of claims of the present application.

Claims

1. An optimization method for multi-patch CT scanners considering complex constraints, characterized in that, Includes the following steps: Based on whether a component can be assigned to multiple machines, the component and its mounting points are divided into independent split units, with each split unit corresponding to one type of component. Generate a component machine rating matrix, where each row represents a splitting unit and each column represents a machine. The data in the corresponding row and column represent the fit rating of the splitting unit assigned to the corresponding machine. Create an objective function min that considers all constraints based on a mixed-integer programming model. f =x1 f 1+x2 f 2+x3 f 3, of which, sub-objectives f 1: Sub-target f 2: Sub-target f 3: , height k Indicates the height of component k. score ij This represents the fitness score of split unit i assigned to machine j. p ij This indicates whether to allocate the split unit i to machine j. q jk This indicates whether machine j contains component k. x j This indicates the number of mounting points for machine j. y j This represents the sum of the number of slots required by the feeders of all components assigned to machine j. z i Indicates the machine number to which split unit i is ultimately assigned, goalLoad j This represents the expected load on machine j.

2. The method according to claim 1, characterized in that, All of the constraints include: All split units should be assigned, according to the formula: ; The allocation order of split units cannot violate the placement order constraint, and the formula is: z a ≤ z b This indicates that split unit a must be mounted in front of split unit b. z a , z b Representing the split units respectively a、b The final machine number assigned; The final number of slots occupied by the feeder on each machine cannot exceed the number of slots that the machine can provide, as shown in the formula: y j ≤ slotCount j , slotCount j This indicates the number of slots that machine j can provide; replacement components need to be assigned to the same machine, as shown in the formula: z a == z b == z c ; z c Represents split unit c The final machine number assigned.

3. The method according to claim 1, characterized in that, After creating the objective function, the allocation scheme is obtained by solving it. Based on the allocation scheme, the split substrates are generated. The single-machine optimization algorithm is used to optimize each substrate to obtain the theoretical production CT of each substrate on its respective machine.

4. The method according to claim 3, characterized in that, The method further includes: Based on the theoretical production capacity of CT scanners and the machine's load, the machine's production capacity is reassessed: Production capacity = Load ÷ Theoretical CT scanners; Based on a reassessment of the machine's production capacity and the pre-defined expected production time ratio for each machine, the expected load of each machine is recalculated. Based on the latest assessed expected load and objectives, the objective function created using the mixed-integer programming model, which considers all constraints, is re-executed iteratively until the exit condition is met.

5. The method according to claim 1, characterized in that, Before executing the creation of the objective function considering all constraints based on the mixed-integer programming model, the method further includes: Obtain computer CPU information, generate an appropriate number of computing tasks based on the number of CPU threads, and run all computing tasks in parallel on independent threads; Each computing task generates an initial set of machine productivity indices based on the task's index. These initial machine productivity indices vary in a stepwise manner, allowing multiple computing tasks to be combined to cover common machine productivity ratio ranges.

6. The method according to any one of claims 1-5, characterized in that, Before dividing the component and its mounting points into independent split units based on whether the component allows multi-machine allocation, the method further includes the following steps: Prepare data, including the configuration parameters of all machines on the production line, all substrates to be disassembled, and manually set optimization parameters; Inspect the substrate to determine if there are any fatal errors. After the substrate is split, the data of all substrates with the same name are merged to restore the complete original substrate data. After merging the substrate data, nozzle interference is checked at all mounting points, all possible interference situations are calculated, and mounting sequence constraints are recorded. Based on the key configuration attributes of the machines and the key allocation attributes of each component, calculate the relevant constraints for component allocation and determine the set of machines to which the components can be allocated.

7. The method according to claim 6, characterized in that, The mounting sequence constraints include: mounting sequence considering interference points and component-level mounting sequence constraints.

8. An optimization method for multi-patch CT considering complex constraints, characterized in that, Includes the following steps: S1. Based on whether the component can be assigned to multiple machines, divide the component and its mounting point into independent split units, with each split unit corresponding to one type of component. S2. Generate a component machine rating matrix. Each row represents a splitting unit and each column represents a machine. The data in the corresponding row and column represent the fit rating of the splitting unit to the corresponding machine. S3. Obtain computer CPU information, generate an appropriate number of computing tasks based on the number of CPU threads, and run all computing tasks in parallel on independent threads. Each computing task generates an initial set of machine productivity indexes based on the index of the corresponding task. S4. Each independent task creates an objective function min that considers all constraints based on a mixed-integer programming model. f =x1 f 1+x2 f 2+x3 f 3, of which, sub-objectives f 1: Sub-target f 2: Sub-target f 3: , height k Indicates the height of component k. score ij This represents the fitness score of split unit i assigned to machine j. p ij This indicates whether to allocate the split unit i to machine j. q jk This indicates whether machine j contains component k. x j This indicates the number of mounting points for machine j. y j This represents the sum of the number of slots required by the feeders of all components assigned to machine j. z i This indicates the machine number to which splitting unit i is ultimately assigned; S5. After the model is established, the model is solved to obtain the specific allocation scheme. According to the allocation scheme, the split substrates are generated. The single-machine optimization algorithm is used to optimize each substrate to obtain the theoretical production CT of each substrate on its respective machine. S6. Based on the theoretical CT of the substrate and the load of the machine, re-evaluate the production capacity of each machine, and recalculate the expected load of each machine in combination with the preset expected production time ratio of each machine. S7. Based on the latest evaluation results and objectives, return to step S4 to update the model and rerun it. Repeat steps S5 to S7 in this way to achieve multiple rounds of iteration until the termination condition is met.

9. A multi-patch CT optimization system considering complex constraints, characterized in that, include: The split unit generation module is configured to divide components and their mounting points into independent split units based on whether the component allows multi-machine allocation, with each split unit corresponding to one type of component; The adaptation score configuration module is configured to generate a component machine score matrix, where each row represents a split unit, each column represents a machine, and the data in the corresponding row and column represents the adaptation score assigned to the corresponding machine for that split unit. The objective function creation module is configured to create an objective function min that considers all constraints based on a mixed-integer programming model. f =x1 f 1+x2 f 2+x3 f 3, of which, sub-objectives f 1: Sub-target f 2: Sub-target f 3: , height k Indicates the height of component k. score ij This represents the fitness score of split unit i assigned to machine j. p ij This indicates whether to allocate the split unit i to machine j. q jk This indicates whether machine j contains component k. x j This indicates the number of mounting points for machine j. y j This represents the sum of the number of slots required by the feeders of all components assigned to machine j. z i Indicates the machine number to which split unit i is ultimately assigned, goalLoad j This represents the expected load on machine j.

10. A machine-readable storage medium storing instructions for causing a machine to perform the steps of the multi-patch CT optimization method considering complex constraints as described in any one of claims 1-8 of this application.

11. A processor, characterized in that, Used to run a program, wherein the program is run to execute: the multi-patch CT optimization method considering complex constraints as described in any one of claims 1-8.

Citation Information

Patent Citations

  • Feeder arrangement optimization method and system considering complex constraints, and storage medium

    CN118647197A

  • Method, device and system for evaluating virtual avatar in virtual reality rehabilitation scene

    CN118919017A

  • Beamforming channel smoothing

    US20170170885A1

  • Adaptive learning intelligent scheduling unified computing framework and system for industrial personalized customized production

    WO2022099596A1