A three-dimensional wire harness routing method, system, and medium

By segmenting the cross-section in three-dimensional space and optimizing the three-dimensional wire harness routing using a simulated annealing algorithm, the problem of lacking global optimization in existing technologies is solved, and a highly accurate and reliable three-dimensional wire harness routing design is achieved.

CN121766258BActive Publication Date: 2026-07-03BEIJING RUIDA TIANRUN TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIJING RUIDA TIANRUN TECHNOLOGY CO LTD
Filing Date
2025-12-22
Publication Date
2026-07-03

AI Technical Summary

Technical Problem

Existing technologies lack global optimization capabilities in 3D wire harness routing, resulting in insufficient accuracy of routing schemes and an inability to effectively meet complex and interrelated global constraints.

Method used

The three-dimensional space is divided into multiple sections along the preset main wiring direction, and the optimal wiring solution is generated by simulated annealing algorithm. The initial channel group is generated by combining random algorithm, and the preset energy function is used for iterative optimization to ensure wire isolation and path optimization.

Benefits of technology

It achieves globally optimized 3D wiring harness routing results, improves the accuracy and reliability of wiring, ensures electrical safety isolation, shortens wire paths, and improves the first-time success rate and manufacturability of the design.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121766258B_ABST
    Figure CN121766258B_ABST
Patent Text Reader

Abstract

A three-dimensional wire harness wiring method, system and medium relate to the field of wire harness layout. The method comprises: obtaining a three-dimensional space region to be wired, device coordinate information and device connection relationship; dividing the three-dimensional space region into multiple cross sections along a preset main wiring direction to obtain a cross section set, and determining a starting cross section of the cross section set; determining a plurality of wires passing through the starting cross section based on the device coordinate information and the device connection relationship to obtain a target wire set of the starting cross section; generating an initial channel group of the starting cross section by a first random algorithm based on the wire information of the target wire set; determining a target wiring solution of the starting cross section by a simulated annealing algorithm based on the initial channel group; determining a target wiring solution of a target cross section in sequence according to the preset main wiring direction based on the target wiring solution of the starting cross section; and determining a wire harness wiring result of the three-dimensional space region based on the target wiring solution corresponding to each cross section. The application can improve the accuracy of three-dimensional wire harness wiring.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of wire harness layout, and more particularly to a three-dimensional wire harness routing method, system, and medium. Background Technology

[0002] In the design and manufacture of modern complex equipment such as aircraft, automobiles, high-speed trains, and ships, wire harnesses, as neural networks connecting various electrical devices and transmitting energy and signals, directly affect the overall performance, reliability, and safety of the equipment due to the rationality of their three-dimensional wiring design. Traditional three-dimensional wire harness wiring processes heavily rely on the personal experience of design engineers, manually drawing wire harness paths in three-dimensional computer-aided design (CAD) software. This purely experience-based approach is highly susceptible to subjective judgment errors or oversights, leading to flaws in the wiring scheme and making it difficult to guarantee the accuracy of the final wiring plan.

[0003] In existing technologies, designers no longer need to draw complete paths. Instead, they define critical path points or guide lines in 3D space, and the routing algorithm built into the CAD system automatically generates smooth paths connecting these points. During path generation, the system checks and applies some preset basic rules in real time and locally. By automatically performing local rule checks by the computer, some tedious manual verification work is replaced, which reduces obvious design errors caused by human mistakes to a certain extent and provides technical support for improving wiring accuracy.

[0004] However, the aforementioned rule-based semi-automated routing method is essentially a local optimization strategy and cannot fundamentally guarantee the global accuracy of the entire routing scheme. When planning the path of a bundle of wires, it treats other wires that have already been laid as fixed static obstacles. It only finds a locally optimal path for the current goal and lacks the ability to comprehensively consider and dynamically adjust the entire routing system. It is often just a feasible solution based on the routing sequence and is insufficient in terms of the accuracy of three-dimensional wire bundle routing in meeting complex and interrelated global constraints. Summary of the Invention

[0005] This application provides a three-dimensional wire harness routing method, system, and medium to solve the technical problem of how to improve the accuracy of three-dimensional wire harness routing.

[0006] In a first aspect, embodiments of this application provide a three-dimensional wire harness routing method, including:

[0007] Obtain the three-dimensional spatial region to be wired, device coordinate information, and device connection relationships;

[0008] The three-dimensional spatial region is divided into multiple sections along the preset main wiring direction to obtain a set of sections, and the starting section of the set of sections is determined.

[0009] Based on the device coordinate information and the device connection relationship, multiple conductors passing through the starting section are determined to obtain the target conductor set of the starting section;

[0010] Based on the conductor information of the target conductor set, an initial channel group for the starting cross-section is generated by a first random algorithm. The conductor information includes the conductor category of the target conductor set, the conductor isolation code of different conductor categories, and the conductor cross-sectional area.

[0011] Based on the initial channel group, the target routing solution of the initial cross-section is determined by the simulated annealing algorithm;

[0012] Based on the target routing solution of the starting section, the target routing solution of the target section is determined according to the preset main routing direction order, wherein the target section is any section in the section set other than the starting section;

[0013] Based on the target wiring solution corresponding to each of the cross sections, the wiring result of the three-dimensional spatial region is determined.

[0014] Optionally, generating the initial channel group of the starting cross-section based on the conductor information of the target conductor set using a first random algorithm includes: using the number of types of conductor isolation codes as the number of channels in the initial channel group based on the conductor information, and determining the channel isolation code for each channel based on the conductor isolation codes; for each channel, randomly generating initial center point coordinates in the two-dimensional area to be routed corresponding to the starting cross-section using the first random algorithm; and associating multiple conductors with the same conductor isolation code and channel isolation code with the initial center point coordinates to generate the initial channel group.

[0015] Optionally, the simulated annealing algorithm includes a preset number of iterative simulations. The step of determining the target routing solution for the initial cross-section based on the initial channel group using the simulated annealing algorithm includes: in each iterative simulation, perturbing the initial channel group using a second random algorithm to generate a neighboring channel group for the initial cross-section; calculating the initial energy solution and neighboring energy solutions for the initial cross-section based on a preset energy function, the initial channel group, and the neighboring channel groups; determining the target energy solution for the initial cross-section based on the initial energy solution and the neighboring energy solutions, and using the target energy solution as the new initial energy solution, and using the target channel group corresponding to the target energy solution as the new initial channel group; when the preset number of iterative simulations is completed, using the target channel group corresponding to the target energy solution as the target routing solution for the initial cross-section.

[0016] Optionally, the step of calculating the initial energy solution and neighbor energy solution of the starting section based on the preset energy function, the initial channel group, and the neighbor channel group includes: extracting a first number of wires in each channel of the initial channel group that do not satisfy the preset constraint condition, and a second number of wires in each channel of the neighbor channel group that do not satisfy the preset constraint condition; using the product of the first number and a preset first weight as the initial constraint energy, and using the product of the second number and the preset first weight as the neighbor constraint energy; obtaining the device coordinate information corresponding to the target device based on the device connection relationship, wherein the target device is any device connected through the starting section; and based on the device coordinate information corresponding to the target device... The system uses the coordinate information of the initial channel group and the coordinate information of the neighboring channel group to calculate the first distance between each channel of the initial channel group and the corresponding target device, and the second distance between each channel of the neighboring channel group and the corresponding target device. The product of the first distance and a preset second weight is used as the initial device distance energy, and the product of the second distance and the preset second weight is used as the neighboring device distance energy, where the preset first weight is greater than the preset second weight. The sum of the initial constraint energy and the initial device distance energy is used as the initial energy solution of the starting section, and the sum of the neighbor constraint energy and the neighboring device distance energy is used as the neighboring energy solution of the starting section.

[0017] Optionally, when calculating the initial energy solution and neighbor energy solution of the target cross section, the method further includes: obtaining the target wiring solution of the previous cross section of the target cross section according to the order of the preset main wiring direction, as the reference wiring solution of the target cross section; based on the reference wiring solution, extracting the third number of target wires in the initial channel group of the target cross section and the fourth number of target wires in the neighbor channel group of the target cross section, wherein the target wires are wires with wiring positions different from those in the reference wiring solution; using the product of the third number and a preset third weight as the initial position difference energy of the target cross section, and using the product of the fourth number and the preset third weight as the neighbor position difference energy of the target cross section, wherein the preset third weight is less than the preset first weight and greater than the preset second weight; using the sum of the initial constraint energy, the initial device distance energy, and the initial position difference energy of the target cross section as the initial energy solution of the target cross section, and using the sum of the neighbor constraint energy, the neighbor device distance energy, and the neighbor position difference energy of the target cross section as the neighbor energy solution of the target cross section.

[0018] Optionally, determining the target energy solution of the initial cross-section based on the initial energy solution and the neighboring energy solutions includes: when the initial constraint energy is greater than the neighboring constraint energy, determining the neighboring energy solution as the target energy solution; when the initial constraint energy is equal to the neighboring constraint energy, taking the lower value of the initial energy solution and the neighboring energy solution as the target energy solution; when the initial constraint energy is less than the neighboring constraint energy, calculating the probability of accepting a suboptimal solution, and determining the target energy solution based on the probability of accepting a suboptimal solution, wherein the probability of accepting a suboptimal solution is determined as follows: the probability of accepting a suboptimal solution = exp[(initial energy solution - neighboring energy solution) / (100 * 0.995)] i ], where i is the number of the current iteration simulation.

[0019] Optionally, determining the target routing solution for the target cross-section based on the target routing solution of the starting cross-section according to the order of the preset main routing directions includes: obtaining the target routing solution of the previous cross-section of the target cross-section as the initial routing solution of the target cross-section according to the order of the preset main routing directions; if the target conductor set of the target cross-section is consistent with the target conductor set of the previous cross-section, then the initial routing solution is used as the target routing solution; if the target conductor set of the target cross-section is inconsistent with the target conductor set of the previous cross-section, then the target routing solution of the target cross-section is determined by the simulated annealing algorithm based on the target conductor set of the target cross-section.

[0020] Optionally, the wiring harness routing result includes multiple wiring channels. After determining the wiring harness routing result of the three-dimensional spatial region based on the target wiring solution corresponding to each cross-section, the method further includes: for each wiring channel of the wiring harness routing result, calculating the sum of the cross-sectional areas of all the conductors in the wiring channel, and using the product of the sum of the cross-sectional areas of the conductors and a preset empirical constant as the channel cross-sectional area of ​​the wiring channel; calculating the arithmetic square root of the ratio of the channel cross-sectional area to π to obtain the channel radius of the wiring channel; if the channel radius is greater than a preset radius threshold, then dividing the wiring channel into multiple wiring sub-channels so that the channel radius of the wiring sub-channels is less than or equal to the preset radius threshold.

[0021] In a second aspect, embodiments of this application provide a three-dimensional wiring harness system, the three-dimensional wiring harness system comprising: one or more processors and a memory; the memory is coupled to the one or more processors, the memory is used to store computer program code, the computer program code including computer instructions, and the one or more processors call the computer instructions to cause the three-dimensional wiring harness system to perform the method as described in the first aspect and any possible implementation thereof.

[0022] Thirdly, embodiments of this application provide a computer-readable storage medium including instructions that, when executed on a three-dimensional wiring harness system, cause the three-dimensional wiring harness system to perform the method described in the first aspect and any possible implementation thereof.

[0023] In summary, one or more technical solutions provided in this application have at least the following technical effects or advantages:

[0024] By employing a technical solution that sequentially divides the three-dimensional space into multiple sections along a preset main wiring direction and uses a simulated annealing algorithm to determine the optimal wiring solution from the starting section to the subsequent target section, automated and sequential planning of wire harness paths in complex three-dimensional space is achieved. This decomposes the global and highly complex three-dimensional path planning problem into a series of relatively simple optimization problems on discrete two-dimensional sections, thereby significantly reducing computational complexity and ensuring the feasibility and efficiency of the algorithm when dealing with large-scale and complex connection relationships. Ultimately, it generates globally optimized three-dimensional wire harness wiring results, improving the accuracy of three-dimensional wire harness wiring.

[0025] By employing a first random algorithm to generate initial channel groups that conform to the wire isolation code, and combining this with a preset energy function, iterative optimization is performed using a simulated annealing algorithm (including accepting inferior solutions to escape local optima). This achieves intelligent optimization of channel positions and wire allocation while meeting hard isolation rules, improving the rationality and reliability of the wiring scheme and ensuring electrical safety isolation requirements. At the same time, by comprehensively optimizing device distances, the wire path is effectively shortened, achieving the engineering goal of reducing wire harness weight. Furthermore, by utilizing the algorithm's global search capability, the design results are prevented from getting trapped in local optima, ensuring the quality of the solution.

[0026] By introducing a benchmark routing solution based on the optimal solution of the previous section when determining the routing solution for subsequent target sections, and calculating the position difference energy as one of the optimization objectives, a technical solution is achieved to realize the smooth transition and correlation constraints of routing solutions between adjacent sections. This ensures the continuity and natural smoothness of the final generated three-dimensional wire harness path in physical space, effectively avoids drastic changes in channel position, and makes the routing results more in line with the requirements of actual engineering manufacturing and installation. At the same time, using the optimization results of the previous section as the initial solution accelerates the convergence speed of subsequent sections and further improves the overall computational efficiency.

[0027] By dynamically calculating the channel radius based on the total cross-sectional area of ​​the conductors after generating the wiring results, and automatically splitting the over-limit channels, the diameter of the wiring path is optimized. This ensures that the calculated three-dimensional path has a real physical capacity, and its diameter matches the total number of internal conductors. This avoids the problem of the design results being out of touch with physical reality, thereby reducing rework design iterations caused by insufficient path space and improving the first-time success rate and manufacturability of the design scheme. Attached Figure Description

[0028] Figure 1 This is a flowchart illustrating the three-dimensional wire harness routing method provided in an embodiment of this application;

[0029] Figure 2 This is a schematic diagram of the process for calculating the energy solution provided in an embodiment of this application;

[0030] Figure 3 This is a schematic diagram of a three-dimensional wire harness wiring system provided in an embodiment of this application.

[0031] Explanation of reference numerals in the attached figures: 601, Central Processing Unit; 602, Read-Only Memory; 603, Random Access Memory; 604, Bus; 605, Input / Output Interface; 606, Input Section; 607, Output Section; 608, Storage Section; 609, Communication Section; 610, Driver; 611, Removable Media. Detailed Implementation

[0032] To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings. The described embodiments should not be regarded as limitations on this application. All other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0033] In the description of the embodiments of this application, words such as "illustrative," "for example," or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "illustrative," "for example," or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design solutions. Rather, the use of words such as "illustrative," "for example," or "for example" is intended to present the relevant concepts in a specific manner.

[0034] In the description of the embodiments of this application, the terms "first, second, third, and fourth" are used only to distinguish similar objects and do not represent a specific order of objects. It is understood that "first, second, third, and fourth" can be interchanged in a specific order or sequence where permitted, so that the embodiments of this application described herein can be implemented in an order other than that illustrated or described herein.

[0035] In the embodiments of this application, the terms "module" or "unit" refer to a computer program or part of a computer program that has a predetermined function and works with other related parts to achieve a predetermined goal, and can be implemented wholly or partially using software, hardware (such as processing circuitry or memory), or a combination thereof. Similarly, a processor (or multiple processors or memory) can be used to implement one or more modules or units. Furthermore, each module or unit can be part of an overall module or unit that includes the functionality of that module or unit. The terms "comprising," "including," "having," and variations thereof all mean "including but not limited to," unless otherwise specifically emphasized.

[0036] In the implementation of this application, the collection and processing of relevant data should strictly comply with the requirements of relevant national laws and regulations, obtain the informed consent or separate consent of the personal information subject, and carry out subsequent data use and processing within the scope of laws and regulations and the authorization of the personal information subject.

[0037] Unless otherwise defined, all technical and scientific terms used in the embodiments of this application have the same meaning as commonly understood by one of ordinary skill in the art. The terminology used in the embodiments of this application is for the purpose of describing the embodiments of this application only and is not intended to limit this application.

[0038] In related technologies, by defining critical path points or guide lines in three-dimensional space, and then automatically generating smooth paths connecting these points by the routing algorithm built into the CAD system, there is a lack of ability to comprehensively consider and dynamically adjust the entire cabling system. As a result, the accuracy of three-dimensional wire harness cabling in meeting complex and interrelated global constraints is insufficient. In order to address the above problems, this application provides a three-dimensional wire harness cabling method, system and medium, which effectively improves the accuracy of three-dimensional wire harness cabling.

[0039] Figure 1 This is a flowchart illustrating the three-dimensional wire harness routing method provided in the embodiments of this application.

[0040] This invention discloses a three-dimensional wire harness routing method, such as... Figure 1 As shown, the steps include the following.

[0041] S101. Obtain the three-dimensional spatial area to be wired, device coordinate information, and device connection relationships.

[0042] Specifically, the process involves reading and parsing three-dimensional geometric data defining the physical boundaries of the cabling from external systems or user input. This data is typically provided in the form of surfaces defined by mathematical equations or boundaries of three-dimensional CAD models, clearly defining the spatial range within which the harness paths are allowed to exist. This ensures that all subsequent calculations are performed within this constraint. The process also involves acquiring the spatial positioning data of all relevant electrical or electronic components, i.e., their precise three-dimensional coordinates in a predefined world coordinate system or model coordinate system. These components are the starting and ending points of the harness connections. Finally, the process involves collecting relationship data describing the electrical interconnection logic between these devices. This data, in the form of a list or network topology, clearly records which two devices and which ports require which type of wire for connection. After acquiring these three types of core data, a complete and structured input foundation is provided for subsequent cross-section segmentation, wire allocation, and path optimization algorithms.

[0043] In this context, the three-dimensional space region to be wired represents a defined, continuous three-dimensional volume where wire harness paths are permitted to be arranged. It is typically described using boundary representation or constructed solid geometry to confine the wiring search space within the effective physical installation space, avoiding interference with structural components or other systems. Device coordinate information refers to the stored position data of specific connection points (such as connector ports) on each electrical device (e.g., sensors, actuators, controllers) in three-dimensional space, usually represented in (X, Y, Z) coordinates. It serves as the geometric basis for calculating wire lengths and path directions. Device connection relationships represent the electrical connectivity requirements between the processed device ports. They exist as a data structure of connection tables or network diagrams, clearly defining the direction of current or signal flow and providing the logical basis for determining which devices require wiring and how many wires are needed.

[0044] For example, in a specific automotive wiring harness design scenario (such as an engineering design workstation), the inner surfaces of the A-pillar, B-pillar, and chassis longitudinal and transverse beams are first extracted from the 3D digital model of the entire vehicle. The space enclosed by these curved surfaces is defined as the 3D spatial region to be wired. Subsequently, the system reads the installation locations of devices such as the engine control unit (ECU), radar, and cameras from the same model and accurately obtains the 3D coordinates of their terminals as device coordinate information. At the same time, a connection table containing multiple device connection relationships is imported from the company's electrical schematic system. One record is ECU (port A1) – left front headlight (port H1), wire specification: 0.75mm². This is one device connection relationship. These three pieces of information together constitute the input of the wiring algorithm.

[0045] S102. Divide the three-dimensional spatial region into multiple sections along the preset main wiring direction to obtain a set of sections, and determine the starting section of the set of sections.

[0046] Specifically, based on the overall geometric layout of the equipment, a primary wiring harness extension orientation is determined, and this direction is defined as the preset main wiring direction. Using this direction as the normal, a series of parallel and equally spaced virtual reference planes are generated. These planes, like blades, sequentially cut the three-dimensional spatial region to be wired at fixed intervals or according to the equipment coordinate information, thereby discretizing it into multiple continuous, infinitely thin two-dimensional slices, i.e., cross sections. No specific restrictions are imposed here. The ordered combination of all these cross sections constitutes the cross section set. A calculation starting point needs to be defined in this set, i.e., the starting cross section needs to be determined. This can be done by identifying the minimum value of the equipment coordinates along the main wiring direction, or by setting the first cross section corresponding to the end where wiring begins first (such as the nose or cockpit) as the starting cross section. This establishes a clear starting point for the subsequent sequential iterative calculation process from the starting cross section to the target cross section.

[0047] The preset main routing direction refers to a reference coordinate axis direction (such as the X-axis) pre-defined based on the macroscopic configuration of the equipment (such as the fuselage axis of an aircraft or the longitudinal beam direction of a car body). This provides a unified and consistent reference for the discretization of the entire three-dimensional space, ensuring that all cross-sections have the same orientation. Multiple cross-sections refer to a series of parallel computational planes generated along the preset main routing direction with fixed step sizes or based on equipment coordinate information. The two-dimensional intersection regions formed by the intersection of these planes with the three-dimensional spatial region are cross-sections, used to decompose the continuous three-dimensional path planning problem into a sequential decision problem on a discrete two-dimensional plane. The cross-section set represents the ordered set of all the above cross-sections, recording the spatial position (such as the X-coordinate) of each cross-section and its contained geometric and electrical information. It serves as the object carrier for subsequent algorithms to traverse and process all cross-sections sequentially. The starting cross-section refers to the first cross-section in the cross-section set that needs to be used for routing calculations. It is usually the cross-section with the smallest or largest coordinate value along the main routing direction, serving as the entry point and initial condition for the entire sequential routing calculation.

[0048] S103. Based on the equipment coordinate information and the equipment connection relationship, determine multiple conductors passing through the starting section to obtain the target conductor set of the starting section.

[0049] Specifically, all device connection relationships are traversed. For each connection relationship, the coordinate values ​​of the two devices associated with the relationship are extracted in the preset main cabling direction. By comparing these two coordinate values ​​with the coordinate values ​​of the starting section in the preset main cabling direction, a logical judgment is made: if the starting section is located within the coordinate range of the two devices in that direction, it means that the wire connecting the two devices must pass through the starting section in the physical path. All wires that meet this condition are selected and gathered together to form a target wire set specific to the starting section. This set clarifies all objects that need to be channeled and optimized in the section.

[0050] In this context, a conductor represents a logical electrical connection unit, defined by device connection relationships, and possesses specific physical attributes (such as cross-sectional area and isolation code). It is the fundamental object allocated and planned in a cabling system. The target conductor set refers to the collection of all conductors selected for the current starting cross-section, which require channel planning and layout within this cross-section. It defines the scale and constraints of the cabling problem for this cross-section.

[0051] S104. Based on the conductor information of the target conductor set, an initial channel group of the starting cross section is generated through a first random algorithm. The conductor information includes the conductor category of the target conductor set, the conductor isolation code of different conductor categories, and the conductor cross-sectional area.

[0052] Specifically, the entire target wire set is treated as the processing object, and detailed information of each wire is read. This information forms the basis of the layout, including the wire category for identification and grouping (such as power lines, signal lines, ground lines, etc.), the wire isolation code that determines the safe distance between wires or prohibits adjacent rules, and the wire cross-sectional area of ​​the physical space occupied by each wire in the cross section. The first random algorithm is then started. The core of this algorithm is to assign a position to each wire in the available channels (or positions) of the initial cross section (which can be understood as a two-dimensional plane or port). The allocation process is not completely random, but follows strict constraint checks: whenever a wire is tried to be placed in a channel, it is determined whether there is physical space interference (i.e., whether it will overlap with other placed wires) based on its wire cross-sectional area, and it is checked whether its category and the type of wire in the adjacent channel meet the isolation requirements based on the wire isolation code. If the currently randomly selected position does not meet any constraint, the algorithm will reselect a position to try until a valid position is found. By repeating this random and constraint-checked placement process for all wires in the target wire set, a complete data structure, namely the initial channel group, is finally generated. This initial channel group details the correspondence between each channel and the conductor it contains on the initial cross-section. It is a feasible, but unoptimized, conductor layout scheme that meets all basic physical and electrical isolation requirements.

[0053] The conductor information refers to the basic data set used to guide channel initialization and conductor allocation. It defines the functional grouping, safety isolation requirements, and physical dimensions of the conductors, and serves as the basis for generating initial channel groups that meet engineering constraints. Conductor category represents an identifier that classifies conductors according to their function, voltage level, or signal type, used to determine the basic number of logical channels to be created, ensuring that different categories of conductors are initially physically separated. The conductor isolation code is a code used to define the minimum safe distance requirements between conductors or between conductors and other objects. It is directly passed to the channel, becoming the channel isolation code, used to ensure that the initial channel group meets the most basic electrical safety isolation constraints. The conductor cross-sectional area represents the cross-sectional area of ​​the conductor and is the basis for calculating the total cross-sectional area of ​​the conductor bundle within the same channel, and thus estimating the minimum theoretical radius of the channel, ensuring the physical feasibility of the initial channel. The first random algorithm refers to a method that can randomly assign an initial position in space to each channel within the two-dimensional wiring area corresponding to the initial cross-section, ensuring that the simulated annealing algorithm can begin exploring from a broad search space. The initial channel group refers to the set of initial configurations generated for the starting section, which contains all channels. Each channel configuration includes its isolation code, position coordinates, and the list of assigned wires, serving as the starting point for iterative optimization of the simulated annealing algorithm.

[0054] For example, assume the initial target conductor set contains three types of conductors: Type A (power conductors, isolation code P, cross-sectional area 2.5 mm²), Type B (signal conductors, isolation code S, cross-sectional area 0.5 mm²), and Type C (signal conductors, isolation code S, cross-sectional area 0.5 mm²). First, create channels: one for Type A (channel 1, isolation code P), and one for both Type B and Type C (channel 2, isolation code S). Next, the system randomly generates two coordinate points within a two-dimensional region using a first random algorithm, serving as the centers of channel 1 and channel 2, respectively. Then, all Type A conductors are assigned to channel 1, and all Type B and Type C conductors are assigned to channel 2. Finally, the diameter of channel 1 is calculated based on the sum of the cross-sectional areas of all Type A conductors within it, and the diameter of channel 2 is calculated based on the sum of the cross-sectional areas of all Type B and Type C conductors. The resulting configuration containing two channels constitutes the initial channel group.

[0055] Based on the above embodiments, as an optional embodiment, for Figure 1 The step S104 shown can be implemented through steps S201-S203, which will be explained in detail below.

[0056] S201. Based on the conductor information, the number of types of conductor isolation codes is used as the number of channels in the initial channel group, and based on the conductor isolation codes, the channel isolation code for each channel is determined.

[0057] Specifically, the input conductor information will be comprehensively scanned and analyzed, with a particular focus on the key attribute of the defined conductor isolation code. The conductor isolation code is a classification and identification of conductors based on their voltage level, signal type, or other anti-interference requirements. Then, all conductor isolation codes appearing in the entire target conductor set are summarized, and through deduplication, the exact number of all different conductor isolation code types is accurately counted. This number, i.e., the total number of categories of different isolation requirements, is directly adopted and set as the number of channels to be included in the initial channel group. For example, if the conductors are divided into three categories of isolation codes: high voltage, low voltage signal, and ground wire, then the initial channel group will be created to contain three channels. Finally, each newly created channel will be assigned a specific attribute, namely the channel isolation code, based on the previously identified different conductor isolation codes. Usually, a one-to-one correspondence is used, assigning each unique conductor isolation code to a channel as its inherent channel isolation code. The total number of channels is determined by the type of isolation code, and each channel has a preset specific isolation attribute, laying the foundation for subsequently classifying conductors with the same isolation code into the corresponding channels.

[0058] The number of conductor isolation code types represents the total number of unique conductor isolation codes in the target conductor set, directly determining the number of initial channels. The number of channels in the initial channel group refers to the total number of channels created at the initial moment, directly determined by the number of conductor isolation code types. This reflects the basic principle of channel allocation by isolation code, aiming to achieve physical isolation between different types of conductors in the initial stage. The channel isolation code represents the isolation requirement identifier assigned to each channel, directly inherited from the conductor isolation code corresponding to the conductor category planned to be placed in that channel. It is used to ensure that different channels meet the corresponding minimum safe distance constraints in subsequent spatial layout optimization.

[0059] S202. For each channel, the initial center point coordinates are randomly generated in the two-dimensional area to be wired corresponding to the starting section using the first random algorithm.

[0060] Specifically, the two-dimensional region to be wired corresponding to the starting cross-section is obtained. This region is a two-dimensional planar graphic formed by the intersection of the three-dimensional spatial region and the starting cross-section. For each channel, the first random algorithm is called to generate a two-dimensional coordinate point (Y, Z) uniformly within the boundary of the two-dimensional region using a random number generator. This newly generated coordinate point is assigned to the channel as its initial center point coordinate. This process is applied independently and randomly to each channel. Therefore, the spatial distribution of the channels in the initial state is random and unbiased, which provides a broad and neutral search starting point for subsequent optimization algorithms.

[0061] The two-dimensional region to be routed refers to the set of all possible locations where the center point of the harness channel is allowed to exist on the plane of the initial cross-section. It is usually defined by the projection of the geometric boundary of the three-dimensional model onto this cross-section, and is used to constrain the range of channel position generation to ensure its physical feasibility. The initial center point coordinates refer to an initial position reference point assigned to each channel on the two-dimensional plane, usually represented by (Y, Z) coordinate pairs. This point is the geometric reference for subsequent calculation of channel spacing, position perturbation, and energy assessment.

[0062] For example, suppose we consider the wing root section of an aircraft. The two-dimensional area to be wired is an approximately crescent-shaped region enclosed by the wing skin and inner frame. Initial positions need to be generated for three channels. A first random algorithm (such as using rejection sampling) is called to define a bounding rectangle for the crescent-shaped region. Then, points are randomly generated within this rectangle. If a random point falls outside the crescent-shaped region, it is rejected and regenerated. If it falls within the region, it is accepted. In this way, the algorithm independently generates three coordinate points for each of the three channels, all located inside the crescent-shaped region but with randomly distributed positions, as their respective initial center point coordinates.

[0063] S203. Associate multiple conductors with the same conductor isolation code and channel isolation code with the initial center point coordinates to generate an initial channel group.

[0064] Specifically, the system iterates through each wire in the target wire set, reads its own wire isolation code, and compares this code with the channel isolation codes of each existing channel. When a channel with a completely matching code is found, the system adds the wire to the member list of that channel, thus logically binding the wire to its corresponding channel. This process is repeated for all wires to ensure that each wire is assigned to one and only one channel that meets its isolation requirements. After all wires have been assigned, each channel contains its isolation code, spatial coordinates, and the list of wires it has been assigned. This set of channels containing all the complete information is defined as the initial channel group, which constitutes an initial solution that satisfies the basic isolation rules and has a specific spatial layout, and can be directly processed by the optimization algorithm.

[0065] S105. Based on the initial channel group, determine the target routing solution of the initial cross section through simulated annealing algorithm.

[0066] Specifically, the initial channel group is used as the input and starting point for the optimization algorithm. Although this initial channel group satisfies basic physical and electrical isolation constraints, there is usually significant room for improvement in wiring quality (such as the bending radius, length, and electromagnetic compatibility of subsequent harnesses). Next, the simulated annealing algorithm is initiated. This algorithm finds the global optimum by simulating the cooling process during physical annealing. A quantitative evaluation function is first set to calculate the merits or energy values ​​of any conductor layout (i.e., a wiring solution). This function comprehensively considers multiple optimization objectives, such as evaluating the impact of the current layout on the total length of the subsequent harness, the estimated electromagnetic interference level, whether it facilitates conductor bending and installation, and the balance of weight distribution. The lower the evaluation value of a layout, the higher its quality. Under a relatively high initial temperature parameter (unitless), the algorithm begins iteratively. In each iteration, a small, random perturbation is applied to the current wiring solution (initially the initial channel group), thereby generating a new wiring solution. This perturbation... The algorithm typically involves randomly swapping the positions of wires in two channels or moving one wire to another allowed channel. It then calculates the evaluation value of this new wiring solution. If the evaluation value of the new solution is lower than the current solution (i.e., the new solution is better), it is unconditionally accepted and becomes the current solution for the next iteration. If the evaluation value of the new solution is higher than the current solution (i.e., the new solution is worse), the algorithm does not immediately discard it. Instead, it decides whether to accept it based on a probability related to the difference between the current temperature and the evaluation value. At higher temperatures, the probability of accepting a worse solution is also higher, enabling the algorithm to escape local optima and explore a wider solution space. As the temperature gradually decreases, the probability of accepting a worse solution drops sharply, making the algorithm more inclined to perform a fine-grained search near high-quality solutions. The temperature is gradually reduced according to a preset cooling strategy (cooling table), and the iterative optimization and decision-making process is repeated. The algorithm terminates when the temperature drops close to zero, or when the quality of the solution does not significantly improve after multiple iterations, or when the preset maximum number of iterations is reached. No specific restrictions are imposed here.

[0067] Simulated annealing is a heuristic stochastic optimization algorithm that simulates the solid annealing process in the physical world. It searches for the global or near-optimal solution to the objective function by controlling the temperature parameter to decrease slowly from high to low and by accepting inferior solutions with probability. The target routing solution for the initial cross-section refers to the optimal channel group configuration calculated for the initial cross-section. It includes the final center point coordinates of each channel, the channel isolation code, and a list of all conductors assigned to it, serving as the basis for subsequent cross-section routing calculations.

[0068] Through the above embodiments, by leveraging the global optimization capabilities of the simulated annealing algorithm, a deep search and iterative improvement can be performed on an initial random layout that only satisfies basic rules. This allows the algorithm to automatically find a routing scheme that is optimal or near-optimal in terms of comprehensive performance indicators (such as total bundle length and path smoothness) while satisfying complex engineering constraints (such as isolation and distance). This overcomes the limitations of traditional manual design or simple algorithms that struggle to escape local optima, and significantly improves the automation level and result quality of routing design.

[0069] Based on the above embodiments, as an optional embodiment, the simulated annealing algorithm includes a preset number of iterative simulations, targeting... Figure 1 The step S105 shown can be implemented through steps S301-S304, which will be explained in detail below.

[0070] S301. In each iteration of the simulation, the initial channel group is perturbed by the second random algorithm to generate the neighbor channel group of the starting section.

[0071] Specifically, at the beginning of each iteration, a current routing scheme, namely the current channel group (in the first iteration, the current channel group is the initial channel group), is held. The second random algorithm is called, which makes a small, random change to the current channel group according to a predefined strategy (such as channel position perturbation or wire reassignment). This change is called perturbation. For example, it may randomly select a channel and randomly generate a new coordinate within a small range near its current center point coordinates, or randomly select a wire, remove it from its current channel, and reassign it to another channel that meets its isolation code requirements. After completing such a perturbation operation, all other properties of the current channel group remain unchanged, thus deriving a new channel group that is structurally similar to the current channel group but has subtle differences. This newly generated channel group is defined as the neighbor channel group of this iteration, which represents a neighboring point in the search space.

[0072] The second randomization algorithm is a randomization procedure specifically designed to generate new candidate solutions during simulated annealing. Based on a preset perturbation type and its probability distribution (such as selecting a location perturbation or wire allocation perturbation with a certain probability), it applies specific random transformations to the current solution. While the first randomization algorithm generates an initial, valid but unoptimized channel layout, the second randomization algorithm generates new, potentially better or worse, neighbor candidate solutions during simulated annealing. Its perturbation methods can be more diverse and typically involve minor adjustments near the current solution. A perturbation is a small, random modification to the current solution state and is the fundamental means by which simulated annealing generates new solutions and achieves global search. A neighbor channel group refers to the new channel group configuration obtained after a perturbation operation. It is a neighbor to the channel group before the perturbation in the search space and represents the candidate solutions to be evaluated in the current iteration of the algorithm.

[0073] For example, suppose the current channel group (current solution) contains three channels: Channel A (coordinates (100, 200), assigned wires 1 and 2), Channel B (coordinates (150, 300), assigned wire 3), and Channel C (coordinates (200, 150), assigned wires 4 and 5). In one iteration, the second random algorithm randomly decides to perform a channel position perturbation and selects Channel B. Within a range of ±10 units around the original coordinates (150, 300) of Channel B, a new coordinate (145, 295) is randomly generated to replace the original coordinates. Thus, a new channel group is generated: Channels A and C remain unchanged, the coordinates of Channel B are updated to (145, 295), and the wire assignments remain the same. This new channel group is the neighbor channel group for this iteration. In another iteration, the algorithm might randomly decide to perform a wire redistribution perturbation, randomly selecting wire 4, removing it from Channel C, and assigning it to Channel A, which is compatible with its isolation code, thereby generating a neighbor channel group with different wire assignments.

[0074] S302. Based on the preset energy function, the initial channel group, and the neighbor channel group, calculate the initial energy solution and the neighbor energy solution of the starting section.

[0075] Specifically, a predefined energy function is invoked. This function is a mathematical model whose input is all attributes of a channel group (including channel coordinates, wire allocation list, etc.), and its output is a scalar value representing the overall cost of the cabling scheme, i.e., the energy solution. The lower the energy, the better the scheme. In a single iteration, the initial channel group representing the current state (i.e., the current optimal channel group in this iteration cycle) and the neighbor channel group representing the new exploration point are input into this energy function. All the calculation logic defined within the function is executed, such as checking the number of violations of isolation rules, calculating the total distance between channels and devices, etc., and the various costs are weighted and summed to finally obtain two specific values: one is the initial energy solution, representing the cost of the currently known scheme; the other is the neighbor energy solution, representing the cost of the scheme generated by the new disturbance. The difference between these two energy values ​​directly determines whether the algorithm will switch to a new solution in this iteration.

[0076] The preset energy function represents a mathematical model or function program implemented to comprehensively evaluate the quality of cabling schemes, transforming complex engineering constraints and objectives (such as spacing and length) into a single calculable cost value. The initial energy solution refers to the scalar result calculated by substituting the initial channel group into the preset energy function, quantifying the quality of the current solution. The neighbor energy solution refers to the scalar result calculated by substituting the neighbor channel groups into the same preset energy function, quantifying the quality of the newly generated neighbor solutions.

[0077] Figure 2 This is a schematic diagram of the process for calculating the energy solution provided in an embodiment of this application.

[0078] Based on the above embodiments, as an optional embodiment, see [link to embodiment]. Figure 2 Regarding step S302, it can be done through Figure 2 The steps S302a-S302f are implemented, and will be explained in detail below.

[0079] S302a. Extract the first number of wires in each channel of the initial channel group that do not meet the preset constraint conditions, and the second number of wires in each channel of the neighboring channel group that do not meet the preset constraint conditions.

[0080] Specifically, each channel within the system is traversed, and all wires within that channel undergo compliance checks. These checks target pre-defined constraints, which typically include, but are not limited to, verifying whether a wire has been assigned to a channel identified by a channel isolation code that is completely consistent with its own wire isolation code. Any wire whose channel isolation code does not match its own isolation code is considered to have failed to meet the pre-defined constraints. After scanning the entire channel group, the total number of non-compliant wires in all channels is counted. For the initial channel group, this result is recorded as the first number; for neighboring channel groups, this result is recorded as the second number. These two numbers directly reflect the performance of the corresponding cabling scheme in terms of basic isolation rule compliance; the fewer the numbers, the higher the quality of the scheme in terms of constraints.

[0081] The preset constraints refer to a set of basic rules that the cabling scheme must adhere to, defined in advance. The primary constraint typically requires that wires be placed in channels with the same isolation code. The first quantity refers to the total number of wires in the initial channel group that violate the preset constraints. The second quantity refers to the total number of wires in neighboring channel groups that violate the preset constraints.

[0082] S302b: The product of the first quantity and the preset first weight is used as the initial constraint energy, and the product of the second quantity and the preset first weight is used as the neighbor constraint energy.

[0083] Specifically, a pre-set, relatively large first weight is invoked, and the product of this weight with a first quantity and the product of this weight with a second quantity are calculated respectively. The result of the former product is defined as the initial constraint energy, and the result of the latter product is defined as the neighbor constraint energy. This calculation process means that every time the core constraint condition is violated, a significant cost (i.e., the pre-set first weight) will be added to the total energy, thus clearly indicating the degree of infeasibility of the solution in numerical terms.

[0084] Here, the preset first weight refers to a pre-assigned, relatively large positive number (e.g., 100 or 1000) used to amplify the cost of constraint violation in the energy function, ensuring that this penalty term dominates the total energy, thereby guiding the algorithm to prioritize satisfying these hard constraints. The initial constraint energy is the value obtained by multiplying the first quantity by the preset first weight, representing the penalty cost incurred by the initial channel group for violating constraints. The neighbor constraint energy is the value obtained by multiplying the second quantity by the preset first weight, representing the penalty cost incurred by the neighbor channel group for violating constraints.

[0085] Through the above embodiments, by assigning a very high weight to constraint violations and using it as the primary penalty when calculating energy, the cost of generating infeasible solutions is greatly increased. This forces the simulated annealing algorithm to focus its optimization efforts on finding feasible solution regions that satisfy all hard constraints during the search process, thereby effectively narrowing the search space to a reasonable range, significantly improving optimization efficiency, and ensuring the correctness of the final output solution in terms of basic principles.

[0086] S302c: Based on the device connection relationship, obtain the device coordinate information corresponding to the target device. The target device is any device connected through the starting section.

[0087] Specifically, based on the determined set of target conductors for the starting cross-section, each conductor in this set corresponds to a device connection. These connections are traversed, and unique device identifiers for all devices passing through the cross-section are extracted. These devices are defined as target devices. Using these device identifiers as query keys in the stored global device database, the three-dimensional spatial location data corresponding to each target device, i.e., device coordinate information, is retrieved. This process ensures that in subsequent energy calculations, only devices with a direct electrical connection to the current cross-section are considered. This gives the distance energy calculation clear physical meaning and specificity, avoiding interference from irrelevant devices in the optimization objective.

[0088] The target device refers to the set of all devices connected to the conductors in the target conductor set of the starting section; that is, those devices that have at least one conductor passing through the current section, and are a key factor affecting the channel layout of that section. Device coordinate information refers to the precise position data of a specific connection point (such as a terminal block) on the target device in three-dimensional space, usually represented in (X, Y, Z) coordinate form, and is the geometric basis for calculating spatial distances.

[0089] S302d: Based on the device coordinate information corresponding to the target device, the coordinate information of the initial channel group, and the coordinate information of the neighboring channel groups, calculate the first distance between each channel of the initial channel group and the corresponding target device, and the second distance between each channel of the neighboring channel group and the corresponding target device.

[0090] Specifically, the calculations for each channel should be clearly defined, specifying which target devices each channel needs to be connected to. A channel should be calculated with all devices connected to the wires assigned to it. The following operations are performed on the initial channel group and neighboring channel groups: For each channel in the channel group, based on its internal list of assigned wires, identify all unique target devices connected to these wires, and then read the device coordinates of these target devices, as well as the center point coordinates of the channel itself. For each pair (channel, target device), calculate the straight-line distance between them using a three-dimensional spatial distance formula (such as the Euclidean distance formula). For a channel, the total distance cost is the sum of its distances to all associated devices (e.g., summation or averaging, without specific restrictions). The sum of the results obtained from the above calculations for all channels in the initial channel group is the first distance; the sum of the results obtained from the same calculations for neighboring channel groups is the second distance.

[0091] The initial channel group's coordinate information refers to the two-dimensional coordinates (Y, Z) of the center point of each channel in the baseline solution's channel group on the current cross-section. Combined with the cross-section's X-coordinate, this forms a three-dimensional spatial point. The neighboring channel group's coordinate information refers to the two-dimensional coordinates of the center point of each channel in the newly generated candidate solution's channel group on the current cross-section. The first distance is a comprehensive distance metric calculated for the initial channel group, typically the sum or average of the distances between all channels and their corresponding target devices. The second distance is a comprehensive distance metric calculated for the neighboring channel group, also the sum or average of the distances between all channels and their corresponding target devices.

[0092] S302e: The product of the first distance and the preset second weight is used as the initial device distance energy, and the product of the second distance and the preset second weight is used as the neighbor device distance energy.

[0093] Specifically, a pre-defined second weight, typically much smaller than the first weight, is invoked. This weight reflects the relative importance of the path shortening optimization objective within the overall objective. The first distance is multiplied by the pre-defined second weight, and the result is defined as the initial device distance energy. Similarly, the second distance is multiplied by the pre-defined second weight, and the result is defined as the neighbor device distance energy. After this weighting process, the original distance data is scaled to an order of magnitude that matches the constraint energy components.

[0094] In this context, the preset first weight is significantly larger than the preset second weight. The preset second weight is a pre-assigned, relatively small positive number (e.g., 1 or 0.1) used to set the scaling ratio of the distance cost term in the energy function, balancing its magnitude relationship with the constraint violation penalty term (which typically has a high weight). The initial device distance energy is the value obtained by multiplying the first distance by the preset second weight, representing the path length cost of the initial channel group due to the channel layout. The neighbor device distance energy is the value obtained by multiplying the second distance by the preset second weight, representing the path length cost of the neighbor channel group due to the channel layout.

[0095] S302f: The sum of the initial constraint energy and the initial device distance energy is used as the initial energy solution of the starting section, and the sum of the neighbor constraint energy and the neighbor device distance energy is used as the neighbor energy solution of the starting section.

[0096] Specifically, the initial constraint energy, representing the compliance cost of the current solution (initial channel group), is algebraically added to the initial device distance energy, representing its economic cost. The sum is defined as the initial energy solution of the starting section. Similarly, the neighbor constraint energy, representing the compliance cost of the new solution (neighbor channel group), is algebraically added to the neighbor device distance energy, representing its economic cost. The sum is defined as the neighbor energy solution of the starting section. These two energy solutions are the final basis for the acceptability judgment of the simulated annealing algorithm in the current iteration, comprehensively reflecting the overall performance of the corresponding routing scheme in both satisfying hard rules and pursuing performance optimization.

[0097] Through the above embodiments, the simulated annealing algorithm can drive the entire search process based on a clear and comparable scalar value (total energy solution), ensuring that the algorithm can intelligently balance satisfying hard constraints first and optimizing soft objectives second, systematically guiding the search direction, and finally stably converging to a high-quality routing scheme that achieves the best balance between rule compliance and economy.

[0098] Based on the above embodiments, as an optional embodiment, when calculating the initial energy solution and neighboring energy solutions of the target cross section, it further includes... Figure 2 The steps S302g-S302j are implemented, and the details are explained below.

[0099] S302g: According to the preset main routing direction, obtain the target routing solution of the previous cross section of the target cross section, and use it as the reference routing solution of the target cross section.

[0100] Specifically, when processing any target section (i.e., non-starting section) in the section set, the direct predecessor section of the target section is determined first based on the spatial positional relationship of all sections in the preset main routing direction (such as the size of the X coordinate). The data structure storing the optimization results is accessed, and the optimal routing scheme, i.e. its target routing solution, which has been calculated and determined by the simulated annealing algorithm for the previous section is read. This target routing solution contains the final center point coordinates of all channels on the previous section, the channel isolation code, and the conductor assignment list. This complete channel group configuration is extracted and set as the reference routing solution of the target section to be processed, as the initial state or important reference for this round of optimization calculation.

[0101] The preset main routing direction order represents the fixed spatial sequence followed by the set of processed sections, such as from the section with the smallest X-coordinate to the section with the largest X-coordinate. This order determines the computational dependencies between sections. The target section refers to the section currently undergoing routing calculation, which is any section in the section set except the starting section. The previous section refers to the section that is immediately adjacent to the target section and has already been calculated in the preset main routing direction order. The reference routing solution refers to the initial channel group configuration set for the target section, which is directly inherited from the target routing solution of the previous section, serving as the starting point and reference for the current section optimization.

[0102] Through the above embodiments, by using the optimal solution of the previous section as the calculation benchmark for the next section, a strong correlation is established in the serialized routing process. This can effectively guide the three-dimensional wiring path generated by the algorithm to be natural and smooth in physical space, rather than abruptly changing or twisting. At the same time, since the next section inherits a large amount of optimization information from the previous section, the computational search space is significantly reduced, and the convergence speed of the entire system is accelerated.

[0103] S302h: Based on the reference routing solution, extract the third number of target conductors in the initial channel group of the target cross section and the fourth number of target conductors in the neighboring channel group of the target cross section. The target conductors are conductors with different routing positions than those in the reference routing solution.

[0104] Specifically, after the algorithm perturbs the target cross-section to generate neighbor channel groups, the system needs to evaluate the changes of these two channel groups relative to the reference routing solution. It iterates through each wire in the reference routing solution, recording the center point coordinates of the channel it is assigned to. It then checks the same wire in both the initial channel group and the neighbor channel group of the target cross-section. For each wire, the system compares the center point coordinates of its channel in these two channel groups with those in the reference routing solution. If the coordinates are different, it means that the wire has changed its spatial position relative to the reference solution in the current scheme, and this wire is marked as a target wire. Finally, the total number of such target wires in the initial channel group is counted to obtain the third quantity, and the total number of such target wires in the neighbor channel groups is counted to obtain the fourth quantity. These two quantities directly reflect the degree of abrupt change in the routing scheme between adjacent cross-sections.

[0105] The initial channel group of the target cross section refers to the channel group configuration adopted by the target cross section at the beginning of the current iteration cycle, which is usually directly inherited or finely adjusted from the reference routing solution. The neighboring channel group of the target cross section refers to the new channel group configuration generated after perturbing the initial channel group of the target cross section. A target conductor refers to a conductor whose center point coordinates in the current channel group (initial or neighboring) of the target cross section are different from the center point coordinates of its corresponding channel in the reference routing solution. The third quantity refers to the total number of target conductors in the initial channel group of the target cross section. The fourth quantity refers to the total number of target conductors in the neighboring channel groups of the target cross section.

[0106] S302i, the product of the third quantity and the preset third weight is used as the initial position difference energy of the target section, and the product of the fourth quantity and the preset third weight is used as the neighbor position difference energy of the target section.

[0107] Specifically, a pre-set third weight is invoked, which reflects the relative importance of the optimization objective of maintaining wiring continuity in the overall objective. The pre-set third weight is less than the pre-set first weight and greater than the pre-set second weight. The third quantity is multiplied by the pre-set third weight, and the result is defined as the initial position difference energy of the target section. Similarly, the fourth quantity is multiplied by the pre-set third weight, and the result is defined as the neighbor position difference energy of the target section.

[0108] The preset third weight is a pre-assigned positive number used to set the scaling ratio of the location difference cost item in the energy function, balancing its influence on other energy items (such as constraint energy and device distance energy) in the total energy. The initial location difference energy of the target cross-section is the value obtained by multiplying the third quantity by the preset third weight, representing the smoothing cost of the initial channel group due to changes in wiring position relative to the previous cross-section. The neighboring location difference energy of the target cross-section is the value obtained by multiplying the fourth quantity by the preset third weight, representing the smoothing cost of the neighboring channel group due to changes in wiring position relative to the previous cross-section.

[0109] Through the above embodiments, by introducing the position difference energy term, the abstract wiring smoothness requirement is transformed into a minimization objective that can be directly handled by the optimization algorithm, which significantly improves the engineering practicality and robustness of the design results.

[0110] S302j, take the sum of the initial constraint energy, initial device distance energy and initial position difference energy of the target section as the initial energy solution of the target section, and take the sum of the neighbor constraint energy, neighbor device distance energy and neighbor position difference energy of the target section as the neighbor energy solution of the target section.

[0111] Specifically, the three energy components representing the costs of the current solution (the initial channel group of the target cross-section) in terms of compliance, economy, and continuity are algebraically added together, and the sum is defined as the initial energy solution of the target cross-section. Similarly, the three corresponding energy components representing the new solution (the neighbor channel group of the target cross-section) are algebraically added together, and the sum is defined as the neighbor energy solution of the target cross-section. These two comprehensive energy solutions are the final basis for the acceptability judgment of the simulated annealing algorithm when iteratively optimizing the target cross-section. They comprehensively reflect the overall performance of the routing scheme for that cross-section in terms of rule compliance, path economy, and cross-section continuity.

[0112] The initial constraint energy of the target cross-section represents the penalty cost incurred by the initial channel group of the target cross-section due to violation of preset constraints. The initial device distance energy of the target cross-section represents the conductor path length cost caused by the channel layout of the initial channel group of the target cross-section. The neighbor constraint energy of the target cross-section represents the penalty cost incurred by the neighbor channel group of the target cross-section due to violation of preset constraints. The neighbor device distance energy of the target cross-section represents the conductor path length cost caused by the channel layout of the neighbor channel group of the target cross-section. The initial energy solution of the target cross-section is a single value obtained by adding the initial constraint energy, initial device distance energy, and initial position difference energy of the target cross-section, and is a quantitative evaluation of the overall merits of the initial channel group cabling scheme for that cross-section. The neighbor energy solution of the target cross-section is a single value obtained by adding the neighbor constraint energy, neighbor device distance energy, and neighbor position difference energy of the target cross-section, and is a quantitative evaluation of the overall merits of the neighbor channel group cabling scheme for that cross-section.

[0113] The above embodiments effectively ensure the final integration of three-dimensional wiring harness paths from all cross-sections, which not only meets basic electrical safety rules and lightweight goals, but also has good physical smoothness and engineering feasibility, significantly improving the overall quality and maturity of automated cabling design.

[0114] S303. Based on the initial energy solution and the neighboring energy solutions, determine the target energy solution of the starting section, and use the target energy solution as the new initial energy solution, and use the target channel group corresponding to the target energy solution as the new initial channel group.

[0115] Specifically, in the decision-making phase, the initial energy solution calculated in the previous step is compared and judged with the neighbor energy solutions to determine the target energy solution for this iteration. The decision logic follows the Metropolis criterion of the simulated annealing algorithm: if the neighbor energy solution is less than the initial energy solution (i.e., the routing scheme represented by the neighbor channel group is of better quality), then the new scheme will be accepted without question. In this case, the neighbor energy solution is directly determined as the target energy solution for this round, and its corresponding neighbor channel group is determined as the target channel group. If a neighboring energy solution is greater than or equal to the initial energy solution (i.e., the new solution is neither better nor worse), the system does not immediately reject it. Instead, it decides whether to accept it based on a preset probability formula (usually related to the energy difference and the temperature parameter of the current algorithm). In the early stages of the algorithm, when the temperature is high, the probability of accepting a worse solution is relatively high, giving the algorithm the ability to escape local optima. As the temperature decreases, the probability of accepting a worse solution gradually decreases. If the system decides to accept based on the probability calculation, then this worse neighboring energy solution will still be identified as the target energy solution. Conversely, if the system decides not to accept, the status quo is maintained, and the initial energy solution is identified as the target energy solution. During the update phase, the value of the newly determined target energy solution is directly assigned to the variable representing the initial energy solution. This means that regardless of whether the current iteration accepts a new solution or maintains the old one, the energy value of the selected solution will become the initial energy solution used as a comparison benchmark at the start of the next iteration. In sync with the energy update, the channel group layout corresponding to the target energy solution (i.e., the target channel group) will be designated as the new initial channel group. The next iteration will perturb this new layout to generate new neighbor channel groups. Ultimately, the current solution of the previous iteration cycle has been replaced by the new current solution, and the system state has moved forward one step, making full preparations for the next iteration to find a better solution.

[0116] Here, the target energy solution of the initial cross-section refers to the energy value finally selected in this iteration after the above decision-making process (it may be the initial value or a neighboring value). The new initial energy solution refers to the energy value prepared for the next iteration as a comparison benchmark, which is updated to the selected target energy solution after this iteration. The target channel group corresponding to the target energy solution refers to the specific channel group configuration (routing scheme) that generates the target energy solution. The new initial channel group refers to the channel group configuration prepared for the next iteration as the starting point for optimization, which is updated to the target channel group corresponding to the target energy solution after this iteration.

[0117] Based on the above embodiments, as an optional embodiment, the step of determining the target energy solution of the starting section based on the initial energy solution and the neighboring energy solutions in step S303 can be implemented through steps S303a-S303c, which will be explained in detail below.

[0118] S303a. When the initial constraint energy is greater than the neighbor constraint energy, the neighbor energy solution is determined as the target energy solution.

[0119] Specifically, the constraint energy components of the two solutions are compared, namely the initial constraint energy and the neighbor constraint energy. When the initial constraint energy is greater than the neighbor constraint energy, it means that the newly generated neighbor channel group performs better than the current initial channel group in terms of satisfying the core design rules (such as isolation requirements). As long as this condition is met, regardless of which solution has a higher total energy (initial energy solution and neighbor energy solution) or the energy of device distance or location difference, a decision will be made immediately: the neighbor energy solution will be determined as the target energy solution for this iteration.

[0120] S303b: When the initial constraint energy is equal to the neighbor constraint energy, the solution with the lower value between the initial energy solution and the neighbor energy solution is taken as the target energy solution.

[0121] Specifically, when comparing the initial constraint energy and the neighbor constraint energy, if the two values ​​are found to be equal, it means that the current initial channel group and the newly generated neighbor channel group are exactly the same in terms of the severity of violating the preset hard constraints (such as isolation rules) (for example, neither has violated them at all, or they have violated them the same number of times). In this case, the criterion for determining which solution is better changes from a single constraint energy to examining its comprehensive performance, that is, the total energy solution. The initial energy solution and the neighbor energy solution are directly compared. This total energy solution is a weighted sum of constraint energy, device distance energy, and (for the target cross-section) position difference energy, reflecting the overall cost of the cabling scheme. A simple numerical comparison is performed, and the energy solution with the lower value (whether it is the initial one or the neighbor one) is determined as the target energy solution for this iteration.

[0122] Through the above embodiments, by introducing this decision rule, under the premise of ensuring that hard constraints are equally satisfied, the optimization process can continuously and greedily pursue the improvement of overall performance.

[0123] S303c. When the initial constraint energy is less than the neighbor constraint energy, calculate the probability of accepting a suboptimal solution, and determine the target energy solution based on the probability of accepting a suboptimal solution. The probability of accepting a suboptimal solution is determined as follows: Probability of accepting a suboptimal solution = exp[(Initial energy solution - Neighbor energy solution) / (100 * 0.995)]. i ], where i is the number of the current iteration simulation.

[0124] Specifically, when comparing the initial constraint energy and the neighbor constraint energy, if the initial constraint energy is found to be less than the neighbor constraint energy, it means that the newly generated neighbor channel group is worse at satisfying the core constraints than the current initial channel group. Normally, such a solution that shows a decline in key metrics would be directly rejected. However, to give the algorithm the ability to explore globally, the system will not immediately reject the solution, but will calculate a probability of accepting the inferior solution. This probability is given by the formula P = exp[(E...]. current -E neighbor ) / T] is calculated, where E curren and E neighbor These are the initial energy solution and the neighboring energy solutions, respectively, and T is the current temperature. In this scheme, temperature T is defined as 100 * 0.995. i , where i is the current iteration number. Since (E curren tE neighbor Since the initial constraint energy is smaller, the initial energy solution is usually also smaller. Therefore, the result of the exponential function, exp[negative], is a probability value between 0 and 1. A random number between [0, 1) will be generated. If this random number is less than the calculated probability P, the neighbor energy solution will be accepted as the target energy solution; otherwise, the initial energy solution will be retained as the target energy solution.

[0125] Where, the probability of accepting a suboptimal solution = exp[(initial energy solution - neighboring energy solutions) / (100 * 0.995)] i ] is the formula for calculating probability, exp is the exponential function, (initial energy solution - neighboring energy solutions) is usually a negative value, 100 is the initial temperature, 0.995 is the cooling coefficient, and i is the number of iterations.

[0126] For example, suppose in the 50th iteration (i=50): initial constraint energy = 0, initial energy solution = 400. Neighbor constraint energy = 100 (meaning there is 1 violation), neighbor energy solution = 550. Since initial constraint energy (0) < neighbor constraint energy (100), this step is triggered. Calculate the current temperature: T = 100 * (0.995) 50 ) ≈ 100 * 0.778 = 77.8. Calculate the acceptance probability: P = exp[(400-550) / 77.8] = exp[-150 / 77.8] = exp[-1.928] ≈ 0.145. Generate a random number, for example, 0.08. Since 0.08 < 0.145, the system decides to accept this inferior neighbor solution (energy solution = 550) as the target energy solution for this iteration. This gives the algorithm the opportunity to jump out of the current high-quality region and explore the unknown region, possibly eventually finding another global optimum with the same constraint energy of 0 but a lower total energy.

[0127] S304. When the preset number of iterative simulations is completed, the target channel group corresponding to the target energy solution is taken as the target wiring solution of the starting section.

[0128] Specifically, in each iteration, the system updates the current target energy solution and its corresponding target channel group based on energy comparison and acceptance criteria. When the number of completed iterations reaches the preset maximum, the optimization loop for that initial cross-section is immediately terminated. The currently held target energy solution is the energy value that is ultimately retained throughout the iteration history and considered the best solution found so far. The specific configuration of the target channel group corresponding to this final target energy solution—including the final center point coordinates of all channels, channel isolation codes, and the final wire assignment list—is extracted and formally determined as the target routing solution for the initial cross-section. This target routing solution represents the (approximate) optimal routing scheme found by the algorithm for the initial cross-section, and it will serve as the benchmark for subsequent cross-section calculations.

[0129] Among these, completing the preset number of iterative simulations means that the algorithm has executed the pre-set maximum number of iterations, which is an important condition for stopping the search. The target channel group refers to the specific channel layout and wire allocation scheme that generates the final target energy solution. The target routing solution for the starting section refers to the final routing scheme calculated and output for the starting section, serving as the basis and input for routing calculations of all subsequent sections.

[0130] For example, assume the preset number of iterations is 10,000. Starting from the initial channel group, 10,000 iterations are performed. After the 10,000th iteration, the system currently records a target energy solution of 250. This value is calculated from a specific channel group configuration (e.g., channel A at (105, 205), channel B at (155, 290), and its precise wire assignment). Since the preset number of iterations has been reached, the algorithm stops. This channel group configuration (i.e., the final target channel group) is then output and named the target routing solution for the initial cross-section. This solution will be stored and used for the calculation of the next cross-section.

[0131] S106. Based on the target routing solution of the starting section, determine the target routing solution of the target section according to the preset main routing direction sequence. The target section is any section in the section set except the starting section.

[0132] Specifically, after successfully obtaining the target routing solution for the starting section, the system does not immediately process all remaining sections. Instead, it strictly follows the spatial order defined by the preset main routing direction (e.g., from the section with the smallest X-coordinate to the section with the largest X-coordinate), processing each remaining target section in the section set one by one. For each target section, the system obtains the target routing solution of its preceding section (i.e., the section immediately adjacent to it in the sequence that has already been calculated) and uses this as the initial state or an important reference (i.e., the baseline routing solution) for the current target section's optimization calculation. Then, for this target section, the system performs an optimization process similar to that of the starting section (which may include simplification or reuse logic), ultimately calculating the target routing solution for that target section. This process, like dominoes, starts from the starting section and proceeds sequentially for optimization until all sections have been calculated.

[0133] The target routing solution for the target cross section refers to the final channel group configuration calculated for the target cross section currently being processed, and is the output result of the routing calculation for that cross section.

[0134] The above embodiments reduce the computational complexity of the problem and ensure the continuity of the results. This not only makes the algorithm feasible and efficient, but also ensures that the final generated three-dimensional wire harness path is smooth, natural and physically realizable, perfectly meeting the strict requirements of complex equipment for wire harness layout.

[0135] Based on the above embodiments, as an optional embodiment, for Figure 1 Step S106 shown can be implemented through steps S401-S403, which will be explained in detail below.

[0136] S401. Following the preset main wiring direction, obtain the target wiring solution of the previous cross section of the target cross section as the initial wiring solution of the target cross section.

[0137] Specifically, based on the coordinates of all cross-sections in the preset main routing direction, the direct predecessor of the target cross-section in the spatial sequence is determined, i.e., the previous cross-section. The data structure storing the optimization results is accessed, and the optimal routing scheme that has been finally determined for the previous cross-section—that is, its target routing solution—is read. This solution contains the final center point coordinates of all channels on the previous cross-section, the channel isolation code, and the precise conductor assignment list. This complete and optimized channel group configuration is directly copied or mapped and set as the initial routing solution for the target cross-section to be processed. This means that the optimization calculation of the target cross-section does not start from a random state, but from an adjacent, optimized, and physically coherent state.

[0138] The initial routing solution of the target section refers to the initial channel group configuration set for the current target section, which is completely inherited from the final optimization result of the previous section.

[0139] S402. If the target wire set of the target section is the same as the target wire set of the previous section, then the initial wiring solution is taken as the target wiring solution.

[0140] Specifically, the system compares the target wire set of the target cross-section with that of the previous cross-section to determine if they are identical. The target wire set refers to the set of all wires that need to pass through this cross-section, determined by the device connection relationships and device coordinates. If the two sets are completely identical, it means that no new wires are added or removed in the three-dimensional space from the previous cross-section to the target cross-section, and all wires continue to pass continuously. In this case, it is considered that directly extending the optimized channel layout (i.e., the initial routing solution) of the previous cross-section to the current target cross-section is an optimal or near-optimal choice. Therefore, the system will skip the iterative optimization process of this target cross-section and directly determine its initial routing solution as the final target routing solution for this cross-section.

[0141] For example, suppose in aircraft wiring, the section between section N (the previous section) and section N+1 (the target section) does not connect any new equipment, nor do any equipment wires terminate in this section. Therefore, the wires passing through sections N and N+1 are exactly the same set. When processing section N+1, a comparison confirms that the target wire sets of the two sections are consistent. Therefore, the system directly sets the initial wiring solution inherited from section N (i.e., the optimized layout of section N) as the target wiring solution for section N+1. This means that between sections N and N+1, the routing and channel allocation of the wiring harness will remain completely consistent, forming a stable channel segment.

[0142] S403. If the target wire set of the target section is inconsistent with the target wire set of the previous section, the target wiring solution of the target section is determined by the simulated annealing algorithm based on the target wire set of the target section.

[0143] Specifically, when the target conductor set of the target cross-section is inconsistent with that of the previous cross-section, it indicates that new conductors have been added or existing conductors have been removed within this interval. The allocation and layout of channels may need adjustment. In this case, the routing scheme of the previous cross-section will not be used; instead, a complete or adapted simulated annealing optimization process will be initiated. This process uses the initial routing solution inherited from the previous cross-section as the starting point for optimization, but the optimization objective and constraints are defined based on the target conductor set of the current target cross-section. The algorithm will re-allocate channels, re-perturb positions, and re-evaluate energy for this new conductor set, ultimately searching for the optimal or near-optimal channel group configuration suitable for the current cross-section's connection relationships—that is, the target routing solution for the target cross-section.

[0144] For example, suppose in aircraft wiring, a new device is installed after section N (the previous section), and a new wire extends from this device and needs to pass through section N+1 (the target section). At this point, the target wire set at section N+1 has one more (or a set of) new wires than at section N. Determining the inconsistency, optimization is initiated: it takes the optimized layout of section N as the initial state, but incorporates the new wire, reallocates all wires (including the new wire) to suitable channels using simulated annealing, optimizes channel positions, and ultimately generates a target wiring solution for section N+1 that effectively accommodates both the existing and new wires.

[0145] S107. Based on the target wiring solution corresponding to each cross section, determine the wiring result of the three-dimensional spatial region.

[0146] Specifically, following the preset main wiring direction, the target wiring solution for each cross-section is read sequentially, and the center point coordinates of each channel on that cross-section are extracted. For each independent channel (uniquely identified by a channel isolation code), its corresponding center point coordinates on all cross-sections are connected sequentially. This process generates a continuous three-dimensional spatial curve for each channel, which represents the center path of that channel. The set of these center paths constitutes the wiring result of the three-dimensional spatial region, clearly describing the physical path that each cable bundle should follow in three-dimensional space.

[0147] Among them, the wiring harness routing result refers to the final output product, which is a data model containing multiple three-dimensional spatial curves (channel center lines), which fully defines the routing and topology of the wiring harness in three-dimensional space.

[0148] Through the above embodiments, a global, physically feasible three-dimensional wiring harness solution has been successfully constructed, which not only meets the engineering constraints and optimization goals of each local section, but more importantly, ensures the continuity and smoothness of the entire wiring path in three-dimensional space.

[0149] Based on the above embodiments, as an optional embodiment, the wire harness routing result includes multiple routing channels. Figure 1 Following step S107, steps S501-S503 are also included, which will be explained in detail below.

[0150] S501. For each wiring channel of the wiring harness, calculate the sum of the cross-sectional areas of all conductors in the wiring channel, and multiply the sum of the cross-sectional areas of the conductors by a preset empirical constant as the channel cross-sectional area of ​​the wiring channel.

[0151] Specifically, for each wiring channel, based on its identifier, the conductor allocation records in all cross-sectional target wiring solutions are traced back to obtain a list of all conductors allocated to that channel. The cross-sectional area parameter of each conductor in the list is read, and these cross-sectional areas are summed to obtain the sum of all conductor cross-sectional areas. However, after the conductor bundle is actually wrapped with insulation and bundled, its total cross-sectional area will be greater than the simple arithmetic sum of the cross-sectional areas of all internal conductors. To account for this engineering reality, a preset empirical constant (usually greater than 1, such as 1.3) is introduced. This constant reflects a combination of factors such as the fill rate, stranding rate, and insulation thickness of the wire bundle. The sum of the calculated conductor cross-sectional areas is multiplied by this preset empirical constant, and the result is defined as the channel cross-sectional area of ​​the wiring channel.

[0152] In this context, a cabling channel refers to the object represented by the center path of each independent channel in the final 3D cabling model. The sum of conductor cross-sectional areas refers to the cumulative value of the cross-sectional areas of all conductors within the channel, serving as the theoretical basis for calculating the physical channel dimensions. The preset empirical constant is an amplification factor pre-set based on wire harness manufacturing processes, standards, and practical experience, used to convert the theoretical conductor area into the actual wire harness cross-sectional area. The channel cross-sectional area refers to the final physical cross-sectional area calculated for each channel, taking into account practical engineering considerations.

[0153] S502. Calculate the square root of the ratio of the channel cross-sectional area to π to obtain the channel radius of the wiring channel.

[0154] Specifically, dividing the channel cross-sectional area by the mathematical constant π yields a result that geometrically represents the square of the radius of the circular cross-section. The square root of this intermediate result is then taken. The resulting square root value is the theoretical radius of the circular cross-section, which the system defines as the channel radius of the wiring channel. This radius serves as the direct basis for subsequent judgments regarding whether the channel diameter exceeds limits and for 3D visualization rendering.

[0155] The arithmetic square root of the ratio is calculated by first performing a division operation (channel cross-sectional area / π), and then taking the square root of the quotient. The channel radius refers to the theoretical radius value calculated at the end, assuming the channel cross-section is circular.

[0156] S503. If the channel radius is greater than the preset radius threshold, the wiring channel is divided into multiple wiring sub-channels so that the channel radius of the wiring sub-channel is less than or equal to the preset radius threshold.

[0157] Specifically, after calculating the radius of a cabling channel, it is immediately compared with a predefined preset radius threshold. This threshold represents the maximum physical radius of a single wire harness allowed based on bending radius, installation space, or manufacturing capabilities. If the calculated radius is greater than this threshold, the channel is deemed unacceptable, and a channel splitting process is initiated. The system logically divides the cabling channel into two (or more) new, finer cabling sub-channels. During splitting, the wires in the original channel are redistributed to these sub-channels according to certain rules (such as average distribution or grouping by wire attributes). For each newly generated sub-channel, the total cross-sectional area of ​​its internal wires is recalculated, multiplied by a preset empirical constant to obtain the new channel cross-sectional area, and then divided by π and the square root is used to calculate the radius of the divided channel. This splitting and recalculation process is repeated cyclically, forming an iteration. After each iteration, the system checks whether the radius of the new path meets the requirements. The iteration loop terminates only when the radii of all cabling sub-channels are less than or equal to the preset radius threshold, thus ensuring that each physical path generated is within the allowable size range.

[0158] Among them, a wiring sub-channel refers to a channel entity with a smaller physical size that is newly created through the division operation, which takes on part of the conductor accommodation function of the original single channel.

[0159] For example, assume a preset radius threshold of 5mm. A calculated channel radius of 6.5mm is found, exceeding the threshold. The system splits it into two new channels, roughly distributing the original channel's wires evenly between them. Subsequently, the radius of new channel 1 is calculated to be 3.8mm, and the radius of new channel 2 is calculated to be 4.1mm. Since both are less than 5mm, the iteration stops. If the radius of a new channel after splitting is 5.2mm, the system needs to continue splitting this still-exceeding-the-limit channel again until all channel radii meet the threshold.

[0160] The above embodiments fundamentally prevent problems such as excessively thick wire harnesses, inability to install, or manufacturing difficulties caused by design oversights, significantly improving the first-time success rate and engineering practicality of design results, and are an important guarantee for realizing the concept of design as correct.

[0161] The three-dimensional wire harness wiring system in the embodiments of this invention is described below from the perspective of hardware processing. Please refer to [link / reference]. Figure 3 , Figure 3 This is a schematic diagram of a three-dimensional wire harness wiring system provided in an embodiment of this application.

[0162] It should be noted that, Figure 3 The structure of the three-dimensional wire harness wiring system shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of the present invention.

[0163] like Figure 3 As shown, the three-dimensional wiring harness system includes a central processing unit 601, which can perform various appropriate actions and processes based on a program stored in a read-only memory 602 or a program loaded from a storage section 608 into a random access memory 603, such as performing the methods described in the above embodiments. The random access memory 603 also stores various programs and data required for system operation. The central processing unit 601, read-only memory 602, and random access memory 603 are interconnected via a bus 604. An input / output interface 605 is also connected to the bus 604.

[0164] The following components are connected to the input / output interface 605: an input section 606 including audio input devices, push-button switches, etc.; an output section 607 including a liquid crystal display (LCD) and audio output devices, indicator lights, etc.; a storage section 608 including a hard disk, etc.; and a communication section 609 including a network interface card such as a LAN (Local Area Network) card, modem, etc. The communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to the input / output interface 605 as needed. A removable medium 611, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 610 as needed so that computer programs read from it can be installed into the storage section 608 as needed.

[0165] In particular, according to embodiments of the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of the present invention include a computer program product comprising a computer program carried on a computer-readable medium, the computer program including a computer program for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 609, and / or installed from removable medium 611. When the computer program is executed by central processing unit 601, it performs the various functions defined in the present invention. It should be noted that specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), flash memory, optical fiber, portable compact disc read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0166] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. Each block in a flowchart or block diagram may represent a module, program segment, or portion of code, which contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those shown in the drawings.

[0167] Specifically, the three-dimensional wire harness routing system of this embodiment includes a processor and a memory. The memory stores a computer program, and when the computer program is executed by the processor, it implements the three-dimensional wire harness routing method provided in the above embodiment.

[0168] In another aspect, the present invention also provides a computer-readable storage medium, which may be included in the three-dimensional wiring harness system described in the above embodiments; or it may exist independently and not assembled into the three-dimensional wiring harness system. The storage medium carries one or more computer programs that, when executed by a processor of the three-dimensional wiring harness system, cause the three-dimensional wiring harness system to implement the three-dimensional wiring harness method provided in the above embodiments.

[0169] The above description is merely an exemplary embodiment of this disclosure and should not be construed as limiting the scope of this disclosure. Any equivalent changes and modifications made in accordance with the teachings of this disclosure shall still fall within the scope of this disclosure. Those skilled in the art will readily conceive of other embodiments of this disclosure upon considering the specification and the disclosure of practical truth. This application is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not described in this disclosure. The specification and embodiments are considered exemplary only, and the scope and spirit of this disclosure are defined by the claims.

Claims

1. A three-dimensional wire harness routing method characterized by, include: Obtain the three-dimensional spatial region to be wired, device coordinate information, and device connection relationships; The three-dimensional spatial region is divided into multiple sections along the preset main wiring direction to obtain a set of sections, and the starting section of the set of sections is determined. Based on the device coordinate information and the device connection relationship, multiple conductors passing through the starting section are determined to obtain the target conductor set of the starting section; Based on the conductor information of the target conductor set, an initial channel group for the starting cross-section is generated by a first random algorithm. The conductor information includes the conductor category of the target conductor set, the conductor isolation code of different conductor categories, and the conductor cross-sectional area. Based on the initial channel group, the target routing solution of the initial cross-section is determined by a simulated annealing algorithm, wherein the simulated annealing algorithm includes a preset number of iterative simulations; Based on the target routing solution of the starting section, the target routing solution of the target section is determined according to the preset main routing direction order, wherein the target section is any section in the section set other than the starting section; Based on the target wiring solution corresponding to each of the cross sections, the wiring result of the three-dimensional spatial region is determined; For each wiring channel of the wiring harness, the sum of the cross-sectional areas of all the conductors in the wiring channel is calculated, and the product of the sum of the cross-sectional areas of the conductors and a preset empirical constant is taken as the channel cross-sectional area of ​​the wiring channel. The arithmetic square root of the ratio of the channel cross-sectional area to π is used to obtain the channel radius of the wiring channel; If the channel radius is greater than a preset radius threshold, the wiring channel is divided into multiple wiring sub-channels so that the channel radius of the wiring sub-channel is less than or equal to the preset radius threshold. The step of determining the target routing solution of the initial cross-section based on the initial channel group using a simulated annealing algorithm includes: In each of the aforementioned iterative simulations, the initial channel group is perturbed using a second random algorithm to generate the neighboring channel group of the initial cross-section; Based on the preset energy function, the initial channel group, and the neighbor channel group, calculate the initial energy solution and the neighbor energy solution of the starting section; Based on the initial energy solution and the neighboring energy solutions, the target energy solution of the starting section is determined, and the target energy solution is used as the new initial energy solution, and the target channel group corresponding to the target energy solution is used as the new initial channel group; When the preset number of iterations of simulation are completed, the target channel group corresponding to the target energy solution is taken as the target wiring solution of the starting section.

2. The method of claim 1, wherein, The initial channel group for the starting cross-section is generated based on the conductor information of the target conductor set using a first random algorithm, including: Based on the conductor information, the number of types of conductor isolation codes is used as the number of channels in the initial channel group, and based on the conductor isolation codes, the channel isolation code for each channel is determined; For each of the channels, the initial center point coordinates are randomly generated in the two-dimensional region to be wired corresponding to the starting section using the first random algorithm. The initial channel group is generated by associating multiple conductors with the same conductor isolation code and channel isolation code with the initial center point coordinates.

3. The method of claim 1, wherein, The calculation of the initial energy solution and neighbor energy solutions of the starting section based on the preset energy function, the initial channel group, and the neighbor channel group includes: Extract a first number of wires in each channel of the initial channel group that do not meet the preset constraint conditions, and a second number of wires in each channel of the neighboring channel group that do not meet the preset constraint conditions; The product of the first quantity and the preset first weight is used as the initial constraint energy, and the product of the second quantity and the preset first weight is used as the neighbor constraint energy. Based on the device connection relationship, obtain the device coordinate information corresponding to the target device, wherein the target device is any device connected through the starting cross section; Based on the device coordinate information corresponding to the target device, the coordinate information of the initial channel group, and the coordinate information of the neighboring channel group, calculate the first distance between each channel of the initial channel group and the corresponding target device, and the second distance between each channel of the neighboring channel group and the corresponding target device; The product of the first distance and the preset second weight is used as the initial device distance energy, and the product of the second distance and the preset second weight is used as the neighbor device distance energy, wherein the preset first weight is greater than the preset second weight; The sum of the initial constraint energy and the initial device distance energy is used as the initial energy solution of the starting section, and the sum of the neighbor constraint energy and the neighbor device distance energy is used as the neighbor energy solution of the starting section.

4. The method of claim 3, wherein, When calculating the initial energy solution and neighboring energy solutions of the target cross section, the method further includes: According to the preset main wiring direction, obtain the target wiring solution of the previous cross section of the target cross section, and use it as the reference wiring solution of the target cross section; Based on the reference wiring solution, the third number of target wires in the initial channel group of the target cross section and the fourth number of target wires in the neighboring channel group of the target cross section are extracted, wherein the target wires are wires with different wiring positions than those in the reference wiring solution. The product of the third quantity and the preset third weight is used as the initial position difference energy of the target section, and the product of the fourth quantity and the preset third weight is used as the neighbor position difference energy of the target section. The preset third weight is less than the preset first weight and greater than the preset second weight. The sum of the initial constraint energy, initial device distance energy, and initial position difference energy of the target cross section is taken as the initial energy solution of the target cross section, and the sum of the neighbor constraint energy, neighbor device distance energy, and neighbor position difference energy of the target cross section is taken as the neighbor energy solution of the target cross section.

5. The method of claim 3, wherein, The step of determining the target energy solution of the initial cross section based on the initial energy solution and the neighboring energy solutions includes: When the initial constraint energy is greater than the neighbor constraint energy, the neighbor energy solution is determined to be the target energy solution; When the initial constraint energy is equal to the neighbor constraint energy, the solution with the lower value between the initial energy solution and the neighbor energy solution is taken as the target energy solution. When the initial constraint energy is less than the neighbor constraint energy, the probability of accepting a suboptimal solution is calculated, and the target energy solution is determined based on the probability of accepting a suboptimal solution. The probability of accepting a suboptimal solution is determined as follows: The probability of accepting a suboptimal solution is calculated as follows: exp[(initial energy solution - neighboring energy solutions) / (100 * 0.995)]. i ], where i is the number of the current iteration simulation.

6. The method according to claim 1, characterized in that, The determination of the target routing solution for the target cross-section based on the initial cross-section, according to the order of the preset main routing directions, includes: According to the preset main wiring direction, the target wiring solution of the previous cross section of the target cross section is obtained as the initial wiring solution of the target cross section; If the target wire set of the target cross section is the same as the target wire set of the previous cross section, then the initial wiring solution is taken as the target wiring solution; If the target wire set of the target cross section is inconsistent with the target wire set of the previous cross section, then the target wiring solution of the target cross section is determined by the simulated annealing algorithm based on the target wire set of the target cross section.

7. A three-dimensional wire harness routing system, characterized by, The three-dimensional wiring harness system includes: one or more processors and a memory; the memory is coupled to the one or more processors, the memory is used to store computer program code, the computer program code including computer instructions, and the one or more processors call the computer instructions to cause the three-dimensional wiring harness system to perform the method as described in any one of claims 1-6.

8. A computer-readable storage medium comprising instructions, characterized in that, When the instructions are executed on a three-dimensional wiring harness system, the three-dimensional wiring harness system performs the method as described in any one of claims 1-6.

Citation Information

Patent Citations

  • Method for realizing automatic layout of multi-branch cable assembly of mechanical and electrical product based on multi-objective optimization

    CN111274757A

  • Lane selection method and device based on simulated annealing algorithm, and storage medium

    CN118758326A