Method, device, electronic device and storage medium for determining driving path
The pyramid evolution algorithm is used to optimize the vehicle path problem layered and optimize the problem of low accuracy and slow convergence speed in the existing algorithm, and achieve high precision and fast convergence effects.
Patent Information
- Application Number
- CN202111494738.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-07
- Publication Date
- 2025-09-05
- Estimated Expiration
- 2041-12-07
AI Technical Summary
When solving vehicle path problems, existing intelligent optimization algorithms fail to consider competition and cooperation between populations and competition and cooperation between individuals at the same time, resulting in low solution accuracy and slow convergence speed.
The pyramid evolution algorithm is used to form an initial population set through random encoding, and the individual information subset is layered according to optimization parameters and fitness, and the path information is optimized using optimization operators at different levels to finally determine the driving path.
It realizes that when solving vehicle path problems, competition and cooperation between populations and individuals are considered at the same time, which improves the solution accuracy and speeds up the convergence speed.
Smart Images

Figure CN114154735B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of computer technology, and more particularly, to a method, apparatus, single device, storage medium, and program product for determining a driving path. Background Art
[0002] Currently, intelligent optimization algorithms used to solve vehicle routing problems include genetic algorithms, particle swarm optimization algorithms, simulated annealing algorithms, and ant colony algorithms. However, these algorithms only consider competition and collaboration between individuals during the optimization process, failing to consider competition and collaboration between populations. This results in low solution accuracy and slow convergence. The division of labor and transfer promotion mechanism of the pyramid evolutionary algorithm can account for competition and collaboration between populations, but ignores the competition and collaboration between individuals, also resulting in low solution accuracy and slow convergence. Summary of the Invention
[0003] In view of the above problems, the present disclosure provides a method, device, electronic device, storage medium and program product for determining a driving path, which can simultaneously consider the competition and cooperation between populations and the competition and cooperation between individuals when solving the vehicle path problem, thereby achieving high solution accuracy and fast convergence speed.
[0004] According to one aspect of the present disclosure, a method for determining a driving path is provided, comprising: obtaining user information, randomly encoding the user information to form an initial population set, the initial population set including multiple individual information subsets, each individual information subset including multiple user current information and corresponding path information; for each individual information subset, calculating the fitness of the individual information subset based on the user current information and the corresponding path information to obtain multiple fitnesses; stratifying the multiple individual information subsets according to optimization parameters and fitnesses; optimizing the corresponding path information in the individual information subsets according to the levels of the multiple individual information subsets to obtain optimized corresponding path information; and determining a driving path based on the optimized corresponding path information.
[0005] According to an embodiment of the present disclosure, the method further includes: setting optimization parameters, wherein the optimization parameters include a layering ratio, a transfer ratio, and an iteration number.
[0006] According to an embodiment of the present disclosure, randomly encoding the user information to form an initial population set includes: setting at least one constraint function according to predetermined driving conditions; and obtaining multiple individual information subsets that meet the constraint function based on the constraint function and the user information.
[0007] According to an embodiment of the present disclosure, for each individual information subset, the fitness of the individual information subset is calculated based on the user current information and the corresponding path information, and multiple fitnesses are obtained, including: decoding the user current information to obtain first user information, the first user information including the user identifier and the user location coordinates; setting a fitness function based on the driving path optimization goal; calculating the fitness of each individual information subset based on each first user information in each individual information subset and the fitness function, and obtaining multiple fitnesses.
[0008] According to an embodiment of the present disclosure, stratifying the multiple individual information subsets according to optimization parameters and fitness includes: sorting the multiple fitnesses according to a sorting function; dividing the sorted fitnesses into multiple layers according to the stratification ratio; and dividing the multiple individual information subsets corresponding to the fitnesses into multiple layers according to the stratified fitnesses.
[0009] According to an embodiment of the present disclosure, the multiple layers include, from bottom to top, an exploration layer, a first delivery layer, a second delivery layer, and an exploitation layer, the exploration layer includes the individual information subset at a first hierarchical ratio, the first delivery layer includes the individual information subset at a second hierarchical ratio, the second delivery layer includes the individual information subset at a third hierarchical ratio, and the exploitation layer includes the individual information subset at a fourth hierarchical ratio.
[0010] According to an embodiment of the present disclosure, corresponding path information in a plurality of individual information subsets is optimized according to the levels at which the plurality of individual information subsets are located, and the optimized corresponding path information includes: optimizing the individual information subsets at each level according to the optimization strategies determined for the plurality of levels respectively, to obtain a plurality of optimized individual information subsets; calculating the fitness of the plurality of optimized individual information subsets according to the fitness function; calculating the transmission probability of the optimized individual information subsets according to the fitness, the transmission probability being used to represent the probability of the optimized individual information subset being transmitted to the upper level; sorting the transmission probabilities; and transmitting the plurality of optimized individual information subsets of a plurality of layers across levels according to the sorted transmission probabilities and transmission ratios, to obtain optimized corresponding path information.
[0011] According to an embodiment of the present disclosure, the optimization strategy includes at least one of the following: a first optimization strategy, including adopting a first optimization operator for the exploration layer and the first transmission layer, and adopting a second optimization operator for the second transmission layer and the mining layer, the optimization amplitude of the first optimization operator on the corresponding path information during the optimization process is greater than the optimization amplitude of the second optimization operator on the corresponding path information during the optimization process; a second optimization strategy, including, for the corresponding path information in multiple individual information subsets in the second transmission layer and the mining layer that have executed the first optimization strategy, using the corresponding path information in the individual information subset corresponding to the first fitness to accelerate the corresponding path information in the excellent individual information subset, and using the insertion strategy to optimize the corresponding path information in the inferior individual information subset, the first fitness including the fitness ranked first after sorting.
[0012] According to an embodiment of the present disclosure, accelerating the corresponding path information in the excellent individual information subset using the corresponding path information in the individual information subset corresponding to the first fitness includes: the second transmission layer uses the corresponding path information in the individual information subset corresponding to the contemporary first fitness to perform an acceleration operation, and the mining layer uses the corresponding path information in the individual information subset corresponding to the global first fitness to perform an acceleration operation, wherein the acceleration operation includes: using the corresponding path information in the individual information subset corresponding to the first fitness, and using an optimization operator to optimize the corresponding path information to be optimized.
[0013] According to an embodiment of the present disclosure, optimizing the corresponding path information in the eliminated individual information subset using an insertion strategy includes: removing at least one element within the corresponding path information in the first optimized individual information subset that has been eliminated, to obtain the corresponding path information in the first individual information subset; inserting each removed element into different positions within the corresponding path information in the first individual information subset; calculating the fitness corresponding to the corresponding path information in the first individual information subset after insertion into different positions based on the fitness function; determining the insertion position corresponding to the first fitness as the insertion position of the element; and continuing until all the removed elements are inserted, to obtain the corresponding path information in the optimized individual information subset.
[0014] According to an embodiment of the present disclosure, determining the driving path based on the optimized corresponding path information includes: in response to determining that the end condition is met, determining that the corresponding path information in the sum of the individual information subset corresponding to the first fitness is the driving path, and the end condition includes determining that the current number of iterations is equal to the number of iterations.
[0015] Another aspect of the present disclosure provides a device for determining a driving path, comprising: an acquisition module for acquiring user information; an encoding module for randomly encoding the user information to form an initial population set, the initial population set including multiple individual information subsets, each individual information subset including multiple user current information and corresponding path information; a calculation module for calculating the fitness of each individual information subset based on the user current information and the corresponding path information to obtain multiple fitnesses; a stratification module for stratifying the multiple individual information subsets according to optimization parameters and fitnesses; an optimization module for optimizing the corresponding path information in the individual information subsets according to the levels of the multiple individual information subsets to obtain optimized corresponding path information; and a determination module for determining the driving path based on the optimized corresponding path information.
[0016] Another aspect of the present disclosure provides an electronic device, comprising: one or more processors; and a memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors execute the above-mentioned method for determining a driving path.
[0017] Another aspect of the present disclosure further provides a computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, causes the processor to execute the above-mentioned method for determining a driving path.
[0018] Another aspect of the present disclosure further provides a computer program product, including a computer program, which implements the above-mentioned method for determining a driving path when executed by a processor. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] The above contents and other objects, features and advantages of the present disclosure will become more apparent through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, in which:
[0020] Figure 1 A diagram schematically illustrates an application scenario of a method, apparatus, electronic device, storage medium, and program product for determining a driving path according to an embodiment of the present disclosure;
[0021] Figure 2 A flowchart of a driving path method according to an embodiment of the present disclosure is schematically shown;
[0022] Figure 3 Schematically shows a schematic diagram of a layered method adopted according to an embodiment of the present disclosure;
[0023] Figure 4 Schematically shows a flow chart of a driving path method according to another embodiment of the present disclosure;
[0024] Figure 5 Schematically shows a schematic diagram of an acceleration operation adopted according to an embodiment of the present disclosure;
[0025] Figure 6 Schematically shows a schematic diagram of an insertion strategy adopted according to an embodiment of the present disclosure;
[0026] Figure 7 A schematic diagram of a structural block diagram of a device for determining a driving path according to an embodiment of the present disclosure is shown; and
[0027] Figure 8 A block diagram of an electronic device suitable for implementing the method for determining a driving path according to an embodiment of the present disclosure is schematically shown. DETAILED DESCRIPTION
[0028] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are merely exemplary and are not intended to limit the scope of the present disclosure. In the detailed description below, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is apparent that one or more embodiments may also be implemented without these specific details. In addition, in the following description, descriptions of well-known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present disclosure.
[0029] The terms used herein are only for describing specific embodiments and are not intended to limit the present disclosure. The terms "comprise," "include," etc. used herein indicate the presence of the features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.
[0030] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification and should not be interpreted in an idealized or overly rigid manner.
[0031] When expressions such as "at least one of A, B and C, etc." are used, they should generally be interpreted in accordance with the meaning of the expression commonly understood by those skilled in the art (for example, "a system having at least one of A, B and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).
[0032] An embodiment of the present disclosure provides a method for determining a driving path, which includes randomly encoding the user information to form an initial population set, the initial population set including multiple individual information subsets, each individual information subset including multiple user current information and corresponding path information; for each individual information subset, calculating the fitness of the individual information subset based on the user current information and the corresponding path information to obtain multiple fitnesses; stratifying the multiple individual information subsets according to optimization parameters and fitnesses; optimizing the corresponding path information in the individual information subsets according to the levels of the multiple individual information subsets to obtain optimized corresponding path information; and determining the driving path based on the optimized corresponding path information.
[0033] Figure 1 The following schematically illustrates an application scenario diagram for determining a driving route according to an embodiment of the present disclosure.
[0034] like Figure 1 As shown, the application scenario 100 according to this embodiment may include terminal devices 101, 102, 103, a network 104, and a server 105. The network 104 is used as a medium for providing a communication link between the terminal devices 101, 102, 103 and the server 105. The network 104 may include various connection types, such as wired or wireless communication links or optical fiber cables.
[0035] Users can use terminal devices 101, 102, and 103 to interact with server 105 via network 104 to receive or send messages, etc. Various communication client applications can be installed on terminal devices 101, 102, and 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social platform software, etc. (only as examples).
[0036] The terminal devices 101 , 102 , and 103 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, laptop computers, and desktop computers.
[0037] The server 105 may be a server that provides various services, such as a background management server (for example only) that supports websites browsed by users using the terminal devices 101, 102, and 103. The background management server may analyze and process received data such as user requests, and feed back processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal device.
[0038] It should be noted that the method for determining the driving path provided in the embodiment of the present disclosure can generally be executed by the server 105. Accordingly, the device for determining the driving path provided in the embodiment of the present disclosure can generally be set in the server 105. The method for determining the driving path provided in the embodiment of the present disclosure can also be executed by a server or server cluster that is different from the server 105 and can communicate with the terminal devices 101, 102, 103 and / or the server 105. Accordingly, the device for determining the driving path provided in the embodiment of the present disclosure can also be set in a server or server cluster that is different from the server 105 and can communicate with the terminal devices 101, 102, 103 and / or the server 105.
[0039] It should be understood that Figure 1 The number of terminal devices, networks and servers in the embodiment is merely illustrative. Any number of terminal devices, networks and servers may be provided as required.
[0040] The following will be based on Figure 1 The scene described by Figures 2 to 6 The method for determining a driving path according to the disclosed embodiment is described in detail.
[0041] Figure 2 A flowchart of a method for determining a driving path according to an embodiment of the present disclosure is schematically shown.
[0042] like Figure 2 As shown, the method for determining a driving path in this embodiment includes operations S210 to S260.
[0043] In operation S210 , user information is acquired.
[0044] According to an embodiment of the present disclosure, user information is determined based on the business type. For example, when applied to the problem of determining a driving route, the user information may include at least one of the following: the user's current location, the user's service time window, the user's cargo type, and the user's cargo weight.
[0045] In operation S220 , the user information is randomly encoded to form an initial population set, where the initial population set includes a plurality of individual information subsets, and each individual information subset includes a plurality of user current information and corresponding path information.
[0046] According to the embodiment of the present disclosure, all users are randomly coded, and after coding, each user corresponds to an integer identifier x i , x i ∈(1, 2, 3, ..., n), the user and the user information are associated with the integer identifier of the user. For the integer identifier of the user, a number of individual information subsets (X i , X i=(x1, x2, x3, ..., x n ), each individual information subset contains multiple users and corresponding path information. For example, individual information subset X i = (x1, x2, x3) means that this path includes three users (x1, x2 and x3) and the corresponding path information (x1→x2→x3). All randomly generated individual information subsets form the initial population set (X, X = (X1, X2, X3, ..., X n )). For example, in the example of 5 users, the users are randomly coded as 1, 2, 3, 4, and 5. For the 5 users, multiple individual information subsets can be randomly generated. For example, X1 = (1, 2, 3), X2 = (5, 2, 3), and X3 = (1, 4, 3), etc. All randomly generated individual information subsets form the initial population set X = (X1, X2, X3, ..., X n ).
[0047] In operation S230 , for each individual information subset, the fitness of the individual information subset is calculated according to the user's current information and the corresponding path information to obtain a plurality of fitnesses.
[0048] According to embodiments of the present disclosure, fitness is determined based on the optimization objective of the business. Fitness is an indicator that evaluates the quality of each individual information subset. For example, when solving the shortest driving route problem, distance can be selected as fitness. Based on the user's current information and corresponding route information contained in each individual information subset, the distance corresponding to each individual information subset is calculated. This distance is called the fitness of the individual information subset. The user's current information can be the user's current location.
[0049] In operation S240 , the plurality of individual information subsets are stratified according to the optimization parameters and fitness.
[0050] According to an embodiment of the present disclosure, multiple fitnesses are sorted according to a sorting function; the sorted fitnesses are divided into multiple layers according to a stratification ratio; and based on the stratified fitnesses, multiple individual information subsets corresponding to the fitnesses are divided into multiple layers.
[0051] According to the ranking function, the fitness calculated for each individual information subset is ranked, where the ranking function includes ascending and descending orders. The ranked fitness is divided into multiple layers according to the stratification ratio; then, based on the layer in which each fitness is located after stratification, the individual information subset corresponding to each fitness is also divided into that layer. The stratification ratio contains multiple different percentages, each percentage represents the ratio of the number of individual information subsets contained in each layer to the number of individual information subsets in the population set, and the sum of the multiple percentages is 1. The number of percentages contained in the stratification ratio is the number of layers into which the initial population set is divided. For example, the stratification ratio is (50%, 25%, 15%, 10%). Because it contains four percentages, the individual information subsets in the initial population set are divided into four layers, with each layer accounting for 50%, 25%, 15%, and 10% respectively.
[0052] In operation S250 , the corresponding path information in the individual information subsets is optimized according to the levels of the multiple individual information subsets to obtain optimized corresponding path information.
[0053] According to an embodiment of the present disclosure, an optimization operator is set for each layer divided from the initial population set to optimize the individual information subset contained in each layer. Based on the optimization operator set for each layer, the corresponding path information in the individual information subset contained in each layer is optimized to obtain optimized corresponding path information.
[0054] The fitness of the optimized corresponding path information is calculated and ranked. Based on the transfer ratio and the ranked fitness, multiple optimized corresponding path information are selected and transferred to the upper layer for optimization. After optimization, the optimized corresponding path information is obtained. The transfer ratio is the ratio of the number of individual information subsets in each layer that can be transferred to the upper layer to the total number of individual information subsets in that layer.
[0055] Optimization operators are methods used to find optimal solutions in business operations. Specifically, they can include inversion operators and random two-point transposition operators. Taking the driving path problem as an example, the inversion operator optimization steps include: arbitrarily selecting two elements in the corresponding path information, reversing the elements between the two selected elements (the original arrangement before optimization was in forward order), and then swapping the positions of the two selected elements to obtain the optimized corresponding path information. The random two-point transposition operator optimization steps include: arbitrarily selecting two elements in the corresponding path information, swapping the positions of the two selected elements, and obtaining the optimized corresponding path information.
[0056] In operation S260 , a driving route is determined based on the optimized corresponding route information.
[0057] According to an embodiment of the present disclosure, the fitness of the optimized corresponding path information is calculated and the calculated fitnesses are sorted. The corresponding path information corresponding to the first fitness is determined to be the driving path. The first fitness is the fitness that ranks first after sorting. For example, if the optimization goal of the driving path is to minimize the distance, and the fitnesses are sorted from smallest to largest, then the first fitness is the fitness that ranks first after all fitnesses are sorted (the smallest fitness).
[0058] Figure 3 The figure schematically shows a layering method according to an embodiment of the present disclosure.
[0059] According to another embodiment, Figure 3 As shown in the example of four layers, the individual information subsets within the initial population set are divided from bottom to top into an exploration layer 340, a first transfer layer 330, a second transfer layer 320, and an exploitation layer 310. Taking the layer ratio of (50%, 25%, 15%, 10%) as an example, the layer ratio means that the exploration layer 340 contains 50% of the individual information subsets of the initial population set, the first transfer layer 330 contains 25% of the individual information subsets of the initial population set, the second transfer layer 320 contains 15% of the individual information subsets of the initial population set; and the exploitation layer 310 contains 10% of the individual information subsets of the initial population set.
[0060] Assuming that smaller fitness values represent better paths, fitness values can be sorted from smallest to largest. For the sorted fitness values, the fitness values in the bottom 50% are divided into the exploration layer 340, and the individual information subset corresponding to the fitness values in the bottom 50% are also divided into the exploration layer 340; the fitness values in the top 25% to the top 50% are divided into the first transfer layer 330, and the individual information subset corresponding to the fitness values in the top 25% to the top 50% are also divided into the first transfer layer 330; the fitness values in the top 10% to the top 25% are divided into the second transfer layer 320, and the individual information subset corresponding to the fitness values in the top 10% to the top 25% are also divided into the second transfer layer 320; the fitness values in the top 10% are divided into the exploitation layer 310, and the individual information subset corresponding to the fitness values in the top 10% are also divided into the exploitation layer 310.
[0061] Those skilled in the art will appreciate that the above embodiments are merely examples, and the number of layers used in the specific layering method disclosed herein is not limited thereto.
[0062] According to another embodiment, the aforementioned random encoding of user information to form an initial population set may include the following operations.
[0063] At least one constraint function is set according to predetermined driving conditions; and based on the constraint function and user information, a plurality of individual information subsets satisfying the constraint function are obtained.
[0064] Driving conditions include the constraints imposed on the vehicle during driving. For example, these constraints may include the maximum distance the vehicle can travel, the maximum speed, the user's service time window requirements, and the maximum weight that can be loaded onto the vehicle. Constraint functions are set based on the driving conditions. Using these constraints, each randomly generated subset of individual information is verified to determine if it meets the driving conditions. The subsets of individual information that meet the driving conditions form the initial population.
[0065] According to another embodiment, for each individual information subset, calculating the fitness of the individual information subset according to the user's current information and the corresponding path information, and obtaining multiple fitnesses may include the following operations.
[0066] The current user information is decoded to obtain the first user information, which includes the user identifier and the user location coordinates. Based on the optimization goal of the driving path, a fitness function is set; based on each first user information in each individual information subset and the fitness function, the fitness of each individual information subset is calculated to obtain multiple fitnesses. For example, taking the driving path optimization goal as the shortest driving path as an example, the distance is selected as the fitness. The vehicle starting position is set as the coordinate origin, and the user's location coordinates are determined based on the relationship between the real-time position in each user information and the vehicle starting position, and the coordinates are associated with the integer identifier formed after the user is encoded to ensure that one user's integer identifier corresponds to one coordinate. Based on the user coordinates and the corresponding path information, a function for calculating the distance is determined, which is called a fitness function. Based on the fitness function, the fitness of each individual information subset is calculated.
[0067] By combining the pyramid evolution algorithm with the intelligent optimization algorithm to optimize the corresponding path information in the individual information subset composed of users, the problem of not being able to simultaneously consider the competition and collaboration between individuals and between populations when solving the driving path is overcome, thereby achieving high solution accuracy and fast convergence speed.
[0068] Figure 4 A flowchart for determining a driving path according to another embodiment of the present disclosure is schematically shown.
[0069] like Figure 4 As shown, the method for determining a driving path in this embodiment includes operations S410 to S480.
[0070] In operation S410 , optimization parameters are set, including a layering ratio, a transfer ratio, and an iteration number.
[0071] According to an embodiment of the present disclosure, before determining the driving path, optimization parameters are set, which may include the size of the initial population set, the stratification ratio, the transfer ratio, the maximum vehicle load, the vehicle speed, and the number of iterations.
[0072] In operation S420 , user information is randomly encoded to form an initial population set, where the initial population set includes multiple individual information subsets, and each individual information subset includes multiple user current information and corresponding path information.
[0073] Operation S420 can be performed by performing random coding to form an initial population set using a method similar to the method described in the above operation S220, which will not be described in detail here.
[0074] In operation S430 , for each individual information subset, the fitness of the individual information subset is calculated according to the user's current information and the corresponding path information to obtain a plurality of fitnesses.
[0075] Operation S430 may calculate the fitness of the individual information subset by a method similar to the method described in the above operation S230, which will not be described in detail here.
[0076] In operation S440 , the plurality of individual information subsets are stratified according to the optimization parameters and fitness.
[0077] Operation S440 may be performed by layering the plurality of individual information subsets using a method similar to the method described in the above operation S240, which will not be described in detail here.
[0078] In operation S450 , the individual information subsets at each level are optimized according to the optimization strategies determined for each level to obtain a plurality of optimized individual information subsets.
[0079] According to an embodiment of the present disclosure, in the four-layer example, optimization strategies are developed for the exploration layer, the first transfer layer, the second transfer layer, and the exploitation layer. Path information corresponding to the individual information subsets within these four layers is optimized based on the optimization strategies, resulting in optimized path information. The optimization strategies include at least one of a first optimization strategy and a second optimization strategy.
[0080] According to another embodiment, the first optimization strategy includes optimizing the exploration layer and the first transfer layer using a first optimization operator, and optimizing the second transfer layer and the production layer using a second optimization operator. It should be noted that when setting the first optimization strategy, the first perturbation amplitude is greater than the second perturbation amplitude. The first perturbation amplitude is the amplitude by which the first optimization operator optimizes the corresponding path information during the optimization operation, and the second perturbation amplitude is the amplitude by which the second optimization operator optimizes the corresponding path information during the optimization operation. For example, the exploration layer and the first transfer layer may be optimized using a reversal operator, while the second transfer layer and the production layer may be optimized using a random two-point transposition operator.
[0081] The second optimization strategy includes using the corresponding path information in the individual information subset corresponding to the contemporary first fitness to accelerate the corresponding path information in the second transmission layer that has already executed the first optimization strategy; using the corresponding path information in the individual information subset corresponding to the global first fitness to accelerate the corresponding path information in the mining layer that has already executed the first optimization strategy; and using the insertion strategy to optimize the corresponding path information in the individual information subset that has been eliminated. The first fitness includes the fitness that is ranked first after sorting. For example, if the optimization goal of the driving path is to shorten the distance, and the fitness is arranged from small to large, then the first fitness is the fitness that is ranked first after all fitnesses are sorted (the smallest fitness).
[0082] In operation S460 , a plurality of optimized individual information subsets of a plurality of layers are transferred across layers according to the transfer probability and the transfer ratio to obtain optimized corresponding path information.
[0083] According to an embodiment of the present disclosure, the fitness of the multiple optimized individual information subsets obtained in step S450 is calculated. Based on the calculated fitness, the transfer probability of the optimized individual information subset is calculated. The transfer probability represents the probability that the optimized individual information subset is transferred to the previous level. For example, the calculation formula for the transfer probability is the quotient of a first value and a second value, where the first value is the fitness corresponding to the current individual information subset, and the second value is the sum of the fitness of the level in which the current individual information subset is located. Based on this transfer probability calculation formula, the transfer probability of the multiple optimized individual information subsets is obtained.
[0084] The multiple calculated transfer probabilities are sorted. Based on the sorted transfer probabilities and transfer ratios, multiple individual information subsets from multiple layers are transferred across layers to obtain optimized corresponding path information. For example, in the four-layer example, the transfer ratios are (50%, 20%, 10%). This transfer ratio indicates that 50% of the individual information subsets in the exploration layer will be selected and transferred to the first transfer layer. These selected 50% of the individual information subsets are ranked in the top 50% of the transfer probability ranking. 20% of the individual information subsets in the first transfer layer will be selected and transferred to the second transfer layer. These selected 20% of the individual information subsets are ranked in the top 50% of the transfer probability ranking. 10% of the individual information subsets in the second transfer layer will be selected and transferred to the exploitation layer. 100% of the individual information subsets in the second transfer layer will be selected and transferred to the exploitation layer. According to the hierarchical optimization strategy, the individual information subsets in the new layer formed after the cross-layer transfer are further optimized to obtain optimized corresponding path information.
[0085] In operation S470 , it is determined whether an end condition is satisfied.
[0086] If the end condition is not met, return to operation S430.
[0087] If the end condition is met, operation S480 is executed to determine the driving path according to the optimized corresponding path information.
[0088] According to an embodiment of the present disclosure, the termination condition may be at least one of the following: the current number of iterations is equal to the number of iterations set in the optimization parameters, and the optimization result converges at this time. For example, taking the current number of iterations being equal to the number of iterations set in the optimization parameters as an example, where the number of iterations set in the optimization parameters is 500, if the number of iterations currently executed is less than 500, the process returns to step S430 to continue the iterative process. If the number of iterations currently executed is 500, the process proceeds to step S480.
[0089] When the termination condition is met, the path information corresponding to the sum of the individual information subsets corresponding to the first fitness is determined as the driving route. The first fitness is the fitness that ranks first after sorting. For example, if the driving route optimization goal is to minimize the distance, and the fitness is sorted from smallest to largest, the first fitness is the fitness that ranks first after all fitnesses are sorted (the smallest fitness).
[0090] Figure 5 The figure schematically shows an acceleration operation diagram adopted according to an embodiment of the present disclosure.
[0091] According to another embodiment, Figure 5As shown, 510 represents the corresponding path information in the individual information subset to be optimized, and 520 represents the corresponding path information in the individual information subset corresponding to the first fitness. For simplicity, path information is used below to represent the corresponding path information in the individual information subset. For example, the starting position of the optimization is the position of element 1 in the path information 510 to be optimized, that is, the position of element 2 in the optimized path information corresponding to the first fitness. The ending position of the optimization is the position of element 3 in the path information 510 to be optimized, that is, the position of element 1 in the path information corresponding to the first fitness.
[0092] The optimization operation starts from the starting position, and the starting position element of the path information to be optimized is exchanged with the starting position element of the path information corresponding to the first fitness. For example, element 1 of the path information 510 to be optimized is exchanged with element 2 of the optimized path information 520 corresponding to the first fitness. After the element exchange, the path information to be optimized becomes (2, 2, 3, 4, 5), and the path information corresponding to the first fitness becomes (5, 1, 1, 4, 3). Determine the element in the path information that is the same as the replaced element, and replace the element with the element used for the exchange of the path information. For example, the original element 2 in the path information 510 to be optimized is changed to element 1. After the element change, the path information 510 to be optimized becomes the first optimized path information 530 (1, 2, 3, 4, 5), and the path information 520 corresponding to the first fitness becomes the path information 540 (5, 1, 2, 4, 3) corresponding to the first optimized first fitness.
[0093] The same operation as the above operation on the starting element is used to optimize the remaining elements in the path information to be optimized 510. After optimization, the first optimized path information 530 becomes the second optimized path information 550 (1, 3, 2, 4, 5), and the path information 540 corresponding to the first fitness of the first optimization becomes the path information 560 corresponding to the first fitness of the second optimization (5, 1, 3, 4, 2). Similarly, after further optimization, the second optimized path information 550 becomes the optimized path information 570 (1, 3, 2, 4, 5).
[0094] Those skilled in the art will appreciate that the above embodiments are merely examples, and the specific acceleration paths disclosed herein are not limited thereto.
[0095] Figure 6 The figure schematically shows an insertion strategy adopted according to an embodiment of the present disclosure.
[0096] According to another embodiment, the insertion strategy includes: removing at least one element within the corresponding path information in the first optimized individual information subset that has been eliminated, and obtaining the corresponding path information in the first individual information subset; for each removed element, inserting it into different positions within the corresponding path information in the first individual information subset; calculating the fitness corresponding to the corresponding path information in the first individual information subset after insertion into different positions based on the fitness function; determining the insertion position corresponding to the first fitness as the insertion position of the element; and continuing until all removed elements are inserted, and obtaining the corresponding path information in the optimized individual information subset.
[0097] like Figure 6 As shown, 610 represents the eliminated path information. After removing element 5 and element 6 from the path information 610, the path information 610 becomes path information 620 (3, 2, 1).
[0098] First, for element 5, insert element 5 into different positions in path information 620 (3, 2, 1). That is, insert element 5 before and after each virtual box position in path information 630, and calculate the fitness of the path information formed after element 5 is inserted into each position. That is, each virtual box position inserted into path information 630 will form a new path information, and the fitness of all new path information formed is calculated. If the calculated fitness is the first fitness when element 5 is inserted between element 3 and element 2 (such as path information 640), then it is determined that 640 represents the first optimized path information. Similarly, according to the above operation, insert element 6 into the first optimized path information 640 to obtain the optimized path information 650 (3, 5, 2, 6, 1).
[0099] Those skilled in the art will appreciate that the above embodiments are merely examples, and the specific path of the insertion strategy used in the present disclosure is not limited thereto.
[0100] Based on the above-mentioned method for determining a driving path, the present disclosure also provides a device for determining a driving path. Figure 7 The device is described in detail.
[0101] Figure 7 The structural block diagram of the device for determining a driving path according to an embodiment of the present disclosure is schematically shown.
[0102] like Figure 7 As shown, the apparatus 700 for determining an execution path of this embodiment includes an acquisition module 710 , an encoding module 720 , a calculation module 730 , a layering module 740 , an optimization module 750 and a determination module 760 .
[0103] The acquisition module 710 is used to acquire user information. In one embodiment, the acquisition module 710 can be used to perform the operation S210 described above, which will not be described in detail here.
[0104] According to an embodiment of the present disclosure, determining the driving route 700 further includes configuring an optimization parameter module, where the optimization parameters include a layering ratio, a transfer ratio, and an iteration number.
[0105] The encoding module 720 is used to randomly encode the user information to form an initial population set. The initial population set includes multiple individual information subsets, each of which includes multiple user current information and corresponding path information. In one embodiment, the encoding module 720 can be used to perform the operation S220 described above, which will not be repeated here.
[0106] According to an embodiment of the present disclosure, the current driving path encoding module 720 is further used to: set at least one constraint function according to predetermined driving conditions; and obtain multiple individual information subsets that meet the constraint function based on the constraint function and user information.
[0107] The calculation module 730 is used to calculate the fitness of each individual information subset based on the user's current information and the corresponding path information to obtain multiple fitnesses. In one embodiment, the calculation module 730 can be used to perform the operation S230 described above, which will not be repeated here.
[0108] According to an embodiment of the present disclosure, the current driving path calculation module 730 is also used to: decode the current user information to obtain first user information, the first user information including the user identifier and the user location coordinates; set a fitness function based on the driving path optimization goal; calculate the fitness of each individual information subset based on each first user information in each individual information subset and the fitness function to obtain multiple fitnesses.
[0109] The stratification module 740 is used to stratify the plurality of individual information subsets according to the optimization parameters and fitness. In one embodiment, the stratification module 740 can be used to perform the operation S240 described above, which will not be described in detail here.
[0110] According to an embodiment of the present disclosure, the current driving path layering module 740 is also used to: sort multiple fitnesses according to a sorting function; divide the sorted fitnesses into multiple layers according to the layering ratio; and divide multiple individual information subsets corresponding to the fitnesses into multiple layers according to the layered fitnesses.
[0111] The optimization module 750 is used to optimize the corresponding path information in the individual information subsets according to the levels of the multiple individual information subsets to obtain optimized corresponding path information. In one embodiment, the optimization module 750 can be used to perform the operation S250 described above, which will not be repeated here.
[0112] According to an embodiment of the present disclosure, the current driving path optimization module 750 is also used to: optimize the individual information subsets at each level according to the optimization strategies determined for the multiple levels respectively, to obtain multiple optimized individual information subsets; calculate the fitness of the multiple optimized individual information subsets according to the fitness function; calculate the transmission probability of the optimized individual information subsets according to the fitness, and the transmission probability is used to represent the probability of the optimized individual information subset being transmitted to the upper level; sort the transmission probabilities; and transmit multiple optimized individual information subsets of multiple layers across levels according to the sorted transmission probabilities and transmission ratios to obtain optimized corresponding path information.
[0113] The determination module 760 is used to determine the driving path according to the corresponding path information. In one embodiment, the determination module 760 can be used to perform the operation S260 described above, which will not be repeated here.
[0114] According to an embodiment of the present disclosure, the current driving path determination module 760 is also used to: in response to determining that the end condition is met, determine that the corresponding path information in the sum of the individual information subsets corresponding to the first fitness is the driving path, and the end condition includes determining that the current number of iterations is equal to the number of iterations.
[0115] According to an embodiment of the present disclosure, any multiple modules among the acquisition module 710, the encoding module 720, the calculation module 730, the layering module 740, the optimization module 750 and the determination module 760 can be combined into one module for implementation, or any one of the modules can be split into multiple modules. Alternatively, at least part of the functions of one or more of these modules can be combined with at least part of the functions of other modules and implemented in one module. According to an embodiment of the present disclosure, at least one of the acquisition module 710, the encoding module 720, the calculation module 730, the layering module 740, the optimization module 750 and the determination module 760 can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application specific integrated circuit (ASIC), or can be implemented by hardware or firmware such as any other reasonable way of integrating or packaging the circuit, or implemented in any one of the three implementation modes of software, hardware and firmware or in an appropriate combination of any of them. Alternatively, at least one of the acquisition module 710, encoding module 720, calculation module 730, layering module 740, optimization module 750 and determination module 760 can be at least partially implemented as a computer program module, which can perform corresponding functions when executed.
[0116] Figure 8 A block diagram of an electronic device suitable for implementing the method for determining a driving path according to an embodiment of the present disclosure is schematically shown.
[0117] like Figure 8 As shown, the electronic device 800 according to an embodiment of the present disclosure includes a processor 801, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 802 or a program loaded from a storage part 808 into a random access memory (RAM) 803. The processor 801 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or a related chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 801 may also include an onboard memory for caching purposes. The processor 801 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.
[0118] Various programs and data required for the operation of the electronic device 800 are stored in the RAM 803. The processor 801, ROM 802, and RAM 803 are connected to each other via a bus 804. The processor 801 executes the various operations of the method flow according to the embodiment of the present disclosure by executing the programs in the ROM 802 and / or RAM 803. It should be noted that the programs may also be stored in one or more memories other than the ROM 802 and RAM 803. The processor 801 may also execute the various operations of the method flow according to the embodiment of the present disclosure by executing the programs stored in the one or more memories.
[0119] According to an embodiment of the present disclosure, the electronic device 800 may further include an input / output (I / O) interface 805, which is also connected to the bus 804. The electronic device 800 may further include one or more of the following components connected to the I / O interface 805: an input portion 806 including a keyboard, a mouse, etc.; an output portion 807 including devices such as a cathode ray tube (CRT), a liquid crystal display (LCD), and a speaker; a storage portion 808 including a hard disk; and a communication portion 809 including a network interface card such as a LAN card or a modem. The communication portion 809 performs communication processing via a network such as the Internet. A drive 810 is also connected to the I / O interface 805 as needed. A removable medium 811, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed in the drive 810 as needed, so that a computer program read therefrom can be installed into the storage portion 808 as needed.
[0120] The present disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments, or may exist independently and not be incorporated into the device / apparatus / system. The computer-readable storage medium carries one or more programs, and when executed, implements the method according to the embodiments of the present disclosure.
[0121] According to an embodiment of the present disclosure, a computer-readable storage medium may be a non-volatile computer-readable storage medium, for example, it may include but is not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, apparatus, or device. For example, according to an embodiment of the present disclosure, a computer-readable storage medium may include the ROM 802 and / or RAM 803 described above and / or one or more memories other than ROM 802 and RAM 803.
[0122] The embodiments of the present disclosure also include a computer program product, which includes a computer program containing program code for executing the method shown in the flowchart. When the computer program product is executed in a computer system, the program code is used to cause the computer system to implement the item recommendation method provided by the embodiments of the present disclosure.
[0123] The computer program executes the above functions defined in the system / device of the embodiment of the present disclosure when the computer program is executed by the processor 801. According to the embodiment of the present disclosure, the system, device, module, unit, etc. described above can be implemented by a computer program module.
[0124] In one embodiment, the computer program may be stored on a tangible storage medium such as an optical storage device or a magnetic storage device. In another embodiment, the computer program may be transmitted and distributed in the form of a signal on a network medium, downloaded and installed via the communication portion 809, and / or installed from a removable medium 811. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to wireless, wired, or any suitable combination thereof.
[0125] In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 809, and / or installed from a removable medium 811. When the computer program is executed by the processor 801, the above-described functions defined in the system of the embodiment of the present disclosure are performed. According to the embodiment of the present disclosure, the systems, devices, means, modules, units, etc. described above can be implemented by computer program modules.
[0126] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiment of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computer programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages include, but are not limited to, languages such as Java, C++, python, "C" or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on a remote computing device, or entirely on a remote computing device or server. In cases involving a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect via the Internet).
[0127] The flowcharts and block diagrams in the accompanying drawings illustrate the possible implementation architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flowchart or block diagram can represent a module, program segment, or a part of code, and the above-mentioned module, program segment, or a part of code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of boxes in the block diagram or flowchart, can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0128] Those skilled in the art will appreciate that the features described in the various embodiments and / or claims of this disclosure may be combined and / or coupled in various ways, even if such combinations and / or couplings are not explicitly described in this disclosure. In particular, the features described in the various embodiments and / or claims of this disclosure may be combined and / or coupled in various ways without departing from the spirit and teachings of this disclosure. All such combinations and / or couplings are intended to fall within the scope of this disclosure.
[0129] The embodiments of the present disclosure are described above. However, these embodiments are for illustrative purposes only and are not intended to limit the scope of the present disclosure. Although each embodiment has been described separately above, this does not mean that the measures in each embodiment cannot be used in combination to advantage. The scope of the present disclosure is defined by the appended claims and their equivalents. Without departing from the scope of the present disclosure, those skilled in the art may make various substitutions and modifications, which should all fall within the scope of the present disclosure.
Claims
1. A method for determining a driving path, comprising: Get user information; Randomly encode the users to form an initial population set, where the initial population set includes multiple individual information subsets, and each individual information subset includes multiple users' current information and corresponding path information; For each individual information subset, calculating the fitness of the individual information subset according to the user's current information and the corresponding path information to obtain multiple fitnesses; stratifying the plurality of individual information subsets according to the optimization parameters and fitness; Optimizing corresponding path information in the individual information subsets according to the levels of the individual information subsets to obtain optimized corresponding path information; as well as Determining a driving path according to the optimized corresponding path information; The step of optimizing the corresponding path information in the individual information subsets according to the levels of the individual information subsets to obtain the optimized corresponding path information includes: According to optimization strategies determined for multiple levels, the individual information subsets at each level are optimized to obtain multiple optimized individual information subsets. The optimization strategies include: A first optimization strategy includes applying a first optimization operator to the exploration layer and the first transfer layer, and applying a second optimization operator to the second transfer layer and the mining layer, wherein the first optimization operator optimizes the corresponding path information more than the second optimization operator optimizes the corresponding path information during the optimization process, the first optimization operator includes a reversal operator, and the second optimization operator includes a random two-point transposition operator; The second optimization strategy includes accelerating the second transmission layer that has been subjected to the first optimization strategy using corresponding path information in the individual information subset corresponding to the contemporary first fitness, accelerating the mining layer that has been subjected to the first optimization strategy using corresponding path information in the individual information subset corresponding to the global first fitness, and optimizing the corresponding path information in the inferior elimination individual information subset using the insertion strategy, wherein the first fitness is the fitness that ranks first after sorting; wherein the acceleration operation includes optimizing the corresponding path information to be optimized using an optimization operator using the corresponding path information in the individual information subset corresponding to the first fitness; Calculating the fitness of the optimized plurality of individual information subsets according to a fitness function; Calculating, according to the fitness, a transfer probability of the optimized individual information subset, wherein the transfer probability is used to represent a probability of the optimized individual information subset being transferred to an upper level; sorting the delivery probabilities; According to the sorted transmission probabilities and transmission ratios, the optimized individual information subsets of the multiple layers are transmitted across the layers to obtain optimized corresponding path information.
2. The method according to claim 1, further comprising: Optimization parameters are set, including layering ratio, transfer ratio, and number of iterations.
3. The method according to claim 1, wherein The randomly encoding the users to form an initial population set includes: Setting at least one constraint function according to predetermined driving conditions; Based on the constraint function and the user information, a plurality of individual information subsets satisfying the constraint function are obtained.
4. The method according to claim 1, wherein For each individual information subset, the fitness of the individual information subset is calculated according to the user's current information and the corresponding path information, and the obtained multiple fitnesses include: Decoding the current user information to obtain first user information, where the first user information includes a user identifier and user location coordinates; Based on the driving path optimization goal, set the fitness function; The fitness of each individual information subset is calculated based on each first user information in each individual information subset and a fitness function to obtain multiple fitnesses.
5. The method according to claim 2, wherein: The stratification of the plurality of individual information subsets according to the optimization parameters and fitness comprises: sorting the multiple fitnesses according to a sorting function; Dividing the sorted fitness into multiple layers according to the stratification ratio; According to the stratified fitness, the multiple individual information subsets corresponding to the fitness are divided into multiple layers.
6. The method according to claim 5, wherein: The multiple layers include, from bottom to top, an exploration layer, a first delivery layer, a second delivery layer, and an exploitation layer, the exploration layer including the individual information subset in a first hierarchical ratio, the first delivery layer including the individual information subset in a second hierarchical ratio, the second delivery layer including the individual information subset in a third hierarchical ratio, and the exploitation layer including the individual information subset in a fourth hierarchical ratio.
7. The method according to claim 1, wherein the optimizing the corresponding path information in the inferior eliminated individual information subset by using the insertion strategy comprises: Removing at least one element in the corresponding path information in the optimized individual information subset that has been eliminated, to obtain the corresponding path information in the first individual information subset; For each removed element, insert it into a different position in the corresponding path information in the first individual information subset; According to the fitness function, respectively calculating the fitness of the corresponding path information in the first body information subset after being inserted into different positions; Determining an insertion position corresponding to the first fitness as the insertion position of the element; Until all the removed elements are inserted, the corresponding path information in the optimized individual information subset is obtained.
8. The method according to claim 2, wherein determining the driving route according to the optimized corresponding path information comprises: In response to determining that the end condition is met, the corresponding path information in the sum of the individual information subsets corresponding to the first fitness is determined to be the driving path, and the end condition includes determining that the current iteration number is equal to the iteration number.
9. A device for determining a driving path, comprising: Acquisition module, used to obtain user information; An encoding module, configured to randomly encode the users to form an initial population set, wherein the initial population set includes a plurality of individual information subsets, each of which includes current information of a plurality of users and corresponding path information; a calculation module, configured to calculate, for each individual information subset, the fitness of the individual information subset according to the user's current information and the corresponding path information, to obtain a plurality of fitnesses; A stratification module, configured to stratify the plurality of individual information subsets according to optimization parameters and fitness; an optimization module, configured to optimize corresponding path information in the individual information subsets according to the levels of the individual information subsets to obtain optimized corresponding path information; as well as a determination module, configured to determine a driving path according to the optimized corresponding path information; The step of optimizing the corresponding path information in the individual information subsets according to the levels of the individual information subsets to obtain the optimized corresponding path information includes: According to optimization strategies determined for multiple levels, the individual information subsets at each level are optimized to obtain multiple optimized individual information subsets. The optimization strategies include: A first optimization strategy includes applying a first optimization operator to the exploration layer and the first transfer layer, and applying a second optimization operator to the second transfer layer and the mining layer, wherein the first optimization operator optimizes the corresponding path information more than the second optimization operator optimizes the corresponding path information during the optimization process, the first optimization operator includes a reversal operator, and the second optimization operator includes a random two-point transposition operator; The second optimization strategy includes accelerating the second transmission layer that has been subjected to the first optimization strategy using corresponding path information in the individual information subset corresponding to the contemporary first fitness, accelerating the mining layer that has been subjected to the first optimization strategy using corresponding path information in the individual information subset corresponding to the global first fitness, and optimizing the corresponding path information in the inferior elimination individual information subset using the insertion strategy, wherein the first fitness is the fitness that ranks first after sorting; wherein the acceleration operation includes optimizing the corresponding path information to be optimized using an optimization operator using the corresponding path information in the individual information subset corresponding to the first fitness; Calculating the fitness of the optimized plurality of individual information subsets according to a fitness function; Calculating, according to the fitness, a transfer probability of the optimized individual information subset, wherein the transfer probability is used to represent a probability of the optimized individual information subset being transferred to an upper level; sorting the delivery probabilities; According to the sorted transmission probabilities and transmission ratios, the optimized individual information subsets of the multiple layers are transmitted across the layers to obtain optimized corresponding path information.
10. An electronic device comprising: one or more processors; a storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors are enabled to execute the method according to any one of claims 1 to 8.
11. A computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, causes the processor to perform the method according to any one of claims 1 to 8.
12. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the method according to any one of claims 1 to 8 is implemented.