Optimization device

The incorporation of an attractor mechanism in PSO addresses the instability and variability of conventional PSO, providing more stable and accurate solutions in high-dimensional combinatorial optimization problems.

WO2025248792A1PCT designated stage Publication Date: 2025-12-04NT T INC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/028174
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-05-29
Filing Date
2024-08-07
Publication Date
2025-12-04

AI Technical Summary

Technical Problem

Conventional particle swarm optimization (PSO) is prone to local minima and varies significantly with initial values, especially in high-dimensional search spaces, leading to instability and increased calculation requirements.

Method used

The introduction of an attractor mechanism in PSO, determined probabilistically from previously searched positions and objective function values, to stabilize the search and reduce variability, enhancing the accuracy and stability of the best solution.

Benefits of technology

Improved PSO achieves more stable and accurate best solutions, particularly in high-dimensional problems, with reduced sensitivity to initial values and lower calculation variance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024028174_04122025_PF_FP_ABST
    Figure JP2024028174_04122025_PF_FP_ABST
Patent Text Reader

Abstract

An optimization device according to one aspect of the present disclosure is for determining the best solution of an optimization problem on the basis of particle swarm optimization, and comprises: a setting unit that sets, for each particle, an attractor that represents a target position in a search space for the best solution, by using the position of each particle until the current iteration in the particle swarm optimization and an objective function value at the position; and a speed update unit that updates the speed of each particle in the particle swarm optimization by using the attractor set for each particle.
Need to check novelty before this filing date? Find Prior Art

Description

Optimization Device

[0001] The present disclosure relates to an optimization device.

[0002] A combinatorial optimization problem is a problem of finding a combination that maximizes or minimizes a certain objective function value. However, many combinatorial optimization problems involve a huge number of combinations, making it difficult to search for objective function values ​​for all combinations. In response to this, a method called particle swarm optimization (PSO) is known as a method that can efficiently search for combinations that will solve combinatorial optimization problems (Non-Patent Document 1).

[0003] J. Kennedy and R. Eberhart, "Particle swarm optimization," in Proc. Int. Conf. Neural Netw. (ICNN), vol. 4, pp.1942-1948, 1995.

[0004] However, conventional particle swarm optimization has problems such as being prone to local minima and the best solution varying depending on the initial values ​​of the particles. These problems become more pronounced as the search space becomes higher-dimensional.

[0005] The present disclosure has been made in consideration of the above points, and aims to provide a technology that can stably obtain a highly accurate best solution.

[0006] An optimization device according to one aspect of the present disclosure is an optimization device that finds a best solution to an optimization problem based on particle swarm optimization, and includes: a setting unit that sets, for each particle, an attractor that represents a target position within a search space for the best solution, using the position of each particle up to a current iteration in the particle swarm optimization and an objective function value at the position; and a velocity update unit that updates the velocity of each particle in the particle swarm optimization, using the attractor set for each particle.

[0007] A technique is provided that can stably obtain a highly accurate best solution.

[0008] FIG. 1 is a diagram illustrating an example of input / output information of a particle swarm optimization device according to an embodiment. FIG. 2 is a diagram illustrating an example of a hardware configuration of a particle swarm optimization device according to an embodiment. FIG. 3 is a diagram illustrating an example of a performance evaluation for a benchmark function. FIG. 4 is a diagram illustrating an example of a performance evaluation for a benchmark function. FIG. 5 is a diagram illustrating an example of a performance evaluation for a benchmark function. FIG. 6 is a diagram illustrating an example of input / output information of a particle swarm optimization device according to an embodiment.

[0009] Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.

[0010] <Conventional Methods and Issues> Particle swarm optimization (Non-Patent Document 1) is known as a conventional method that can efficiently solve combinatorial optimization problems. A combinatorial optimization problem is a problem of finding a combination that maximizes or minimizes a certain objective function value. Many real-world problems belong to the combinatorial optimization problem category, and specific examples include a problem of finding a combination of setting values ​​that maximizes network performance for a group of parameters of devices that make up a network, and a problem of finding the shortest route to a destination from among multiple routes.

[0011] Particle swarm optimization is a technique in which multiple particles move through a search space (also called a "solution space") to search for the best position as a solution. In particle swarm optimization, the position of each particle is updated to aim for a position called the global best and a position called the private best, thereby searching for a position that is likely to maximize or minimize the objective function value for the entire particle swarm. The global best is the position at which the largest or smallest objective function value is obtained among all particles. The private best is the position at which the largest or smallest objective function value is obtained among all the positions to which each particle has moved so far.

[0012] Particle swarm optimization allows for efficient search due to the small amount of calculation required to update the position of each particle. However, it has the drawbacks of being prone to local solutions and of the best solution varying depending on the initial values ​​of the particles. These drawbacks become more pronounced as the search space becomes higher-dimensional. When the variance in the best solution is large, optimization must be performed for various initial values ​​to obtain a better best solution, which increases the amount of calculation. For this reason, it is particularly important to suppress the variance, especially for problems that require a large amount of calculation for the objective function value.

[0013] Therefore, the following describes a particle swarm optimization device 10 that can stably obtain a highly accurate best solution using particle swarm optimization with an additional element called an attractor (hereinafter referred to as improved particle swarm optimization). An attractor is a new target position (a position within the search space) separate from the global best and private best. As described below, the value of the attractor is determined by a probabilistic / statistical method using all previously searched positions and the objective function values ​​at those positions. This makes it easier for the improved particle swarm optimization to escape from a local solution, obtain a more accurate best solution, and reduce the variability of the best solution relative to the initial values ​​of the particle swarm, thereby improving the stability of the best solution.

[0014] <Input / Output Information of Particle Swarm Optimization Device 10> An example of input / output information of the particle swarm optimization device 10 according to this embodiment will be described with reference to Fig. 1. Fig. 1 is a diagram showing an example of input / output information of the particle swarm optimization device 10 according to this embodiment.

[0015] As shown in FIG. 1 , a particle swarm optimization device 10 according to this embodiment receives input information and outputs output information. Here, the input information includes, for example, an objective function to be optimized, input variables for the objective function, and a search space for the input variables. Furthermore, the output information includes, for example, a best solution representing the values ​​of the input variables that maximize or minimize the objective function value, and the objective function value at that time. Each position in the search space is represented by an input variable value.

[0016] Specific examples of input variables, search spaces, and objective functions include the following:

[0017] ・Specific example 1 Input variable: tilt angle of the antenna installed in the base station that makes up the cellular network Search space: range in which the tilt angle can be changed Objective function: function that takes the tilt angle as input and outputs the throughput In this case, the tilt angle that results in the maximum throughput among the searched angles is the best solution, and the throughput at that time is obtained as the objective function value corresponding to the best solution.

[0018] ・Specific example 2 Input variable: Routes that exist between two devices on a network Search space: Whether each route is used or not Objective function: A function that takes a route as input and outputs the total delay time for that route In this case, the route with the smallest total delay time among the routes searched is the best solution, and the total delay time at that time is obtained as the objective function value corresponding to the best solution.

[0019] <Hardware Configuration Example of Particle Swarm Optimization Device 10> An example of the hardware configuration of the particle swarm optimization device 10 according to this embodiment will be described with reference to Fig. 2. Fig. 2 is a diagram showing an example of the hardware configuration of the particle swarm optimization device 10 according to this embodiment.

[0020] 2, the particle swarm optimization device 10 according to this embodiment includes an input device 101, a display device 102, an external I / F 103, a communication I / F 104, a random access memory (RAM) 105, a read only memory (ROM) 106, an auxiliary storage device 107, and a processor 108. Each of these pieces of hardware is connected to each other via a bus 109 so as to be able to communicate with each other.

[0021] The input device 101 is, for example, a keyboard, a mouse, a touch panel, a physical button, etc. The display device 102 is, for example, a display, a display panel, etc. Note that the particle swarm optimization device 10 does not necessarily have to include at least one of the input device 101 and the display device 102, for example.

[0022] The external I / F 103 is an interface with an external device such as a recording medium 103a. Examples of the recording medium 103a include a CD (Compact Disc), a DVD (Digital Versatile Disk), an SD memory card (Secure Digital memory card), and a USB (Universal Serial Bus) memory card.

[0023] The communication I / F 104 is an interface for connecting to a communication network. The RAM 105 is a volatile semiconductor memory (storage device) that temporarily stores programs and data. The ROM 106 is a non-volatile semiconductor memory (storage device) that can store programs and data even when the power is turned off. The auxiliary storage device 107 is a non-volatile storage device such as a hard disk drive (HDD), a solid state drive (SSD), or a flash memory. The processor 108 is a variety of arithmetic devices such as a central processing unit (CPU) or a graphic processing unit (GPU).

[0024] 2 is an example, and the hardware configuration of the particle swarm optimization device 10 is not limited to this. For example, the particle swarm optimization device 10 may have multiple auxiliary storage devices 107 or multiple processors 108, may not have some of the hardware shown in the figure, or may have various hardware other than the hardware shown in the figure.

[0025] <Example of Functional Configuration of Particle Swarm Optimization Device 10> An example of the functional configuration of the particle swarm optimization device 10 according to this embodiment will be described with reference to Fig. 3. Fig. 3 is a diagram showing an example of the functional configuration of the particle swarm optimization device 10 according to this embodiment.

[0026] As shown in FIG. 3 , the particle swarm optimization device 10 according to this embodiment includes an input unit 201, an initialization unit 202, an attractor setting unit 203, a velocity update unit 204, a position update unit 205, a solution update unit 206, a termination condition determination unit 207, and an output unit 208. These units are implemented, for example, by a process in which one or more programs installed in the particle swarm optimization device 10 are executed by the processor 108 or the like. The particle swarm optimization device 10 according to this embodiment also includes a storage unit 209. The storage unit 209 is implemented, for example, by a storage area of ​​the auxiliary storage device 107 or the like. However, the storage unit 209 may also be implemented, for example, by a storage area of ​​a storage device (e.g., a storage device provided in a database server) or the like communicatively connected to the particle swarm optimization device 10.

[0027] The input unit 201 receives input information. The initialization unit 202 initializes the position and velocity of each particle in the search space. The attractor setting unit 203 sets an attractor for each particle in the search space. The velocity update unit 204 updates the velocity of each particle in the search space using the attractor set by the attractor setting unit 203. The position update unit 205 updates the position of each particle in the search space using the velocity updated by the velocity update unit 204. The solution update unit 206 calculates an objective function value from the input variable values ​​represented by the position of each particle updated by the position update unit 205, and updates a global best (the best solution to date) and the objective function value corresponding to the global best. The termination condition determination unit 207 determines whether a termination condition representing a condition for terminating the search for the best solution is satisfied. If the termination condition determination unit 207 determines that the termination condition is satisfied, the output unit 208 outputs output information to a predetermined output destination.

[0028] The storage unit 209 stores search data (to be described later), the velocity of each particle, the attractor of each particle, the global best, the objective function value corresponding to the global best, parameters (parameters s, ε, etc. (to be described later)), etc. Note that the storage unit 209 may also store various other information (e.g., the private best of each particle, etc.).

[0029] <Example of Operation of Particle Swarm Optimization Device 10> <Preparation> The total number of particles is N, and each particle is assigned a particle number i∈{1, ..., N}. In the following, a particle with particle number i will also be referred to as "particle i."

[0030] In improved particle swarm optimization, the search for the optimal solution (i.e., setting the attractor, updating the position and velocity of each particle, and updating the best solution) is repeatedly executed until the termination condition is satisfied, and each repetition is called an "iteration." The t-th iteration is referred to as "iteration t." An iteration may also be called a "step," etc.

[0031] The input variable value represented by the position of particle i at iteration t is x i (t), its input variable value x i The objective function value when (t) is input to the objective function is y i Let (t) be the velocity of particle i at iteration t. i (t), the attractor is a i (t), Private Vest x i p Furthermore, the global best at iteration t is defined as x g Let (t).

[0032] For simplicity, the position of particle i and the input variable value x i (t), for example, position x i (t), etc. In the following, as an example, a multidimensional discrete space is assumed as the search space for input variables. However, this is just an example, and the search space is not limited to a discrete space.

[0033] <<Search Data>> Search data is data that associates the particle number of a particle in each iteration up to the current iteration with the position of that particle and the objective function value of that particle. As an example, search data when the current iteration is t will be described with reference to Fig. 4. Fig. 4 is a diagram showing an example of search data.

[0034] As shown in FIG. 4, the search data in iteration t is (x 1 (1), y 1 (1)) ~ (x N (t), y N That is, the search data in iteration t is data consisting of the position and objective function value of each particle i from iteration 1 to iteration t.

[0035] <Particle Swarm Optimization Process> An example of the particle swarm optimization process according to this embodiment will be described with reference to Fig. 5. Fig. 5 is a flowchart showing an example of the particle swarm optimization process according to this embodiment.

[0036] The input unit 201 receives given input information (step S101).

[0037] The initialization unit 202 initializes the position and velocity of each particle in the search space (step S102). For example, the initialization unit 202 initializes the position x i (1) is randomly set from the search space. Similarly, the initialization unit 202 sets the velocity v of particle i for i=1, . . . , N. i (1) is set randomly from a predetermined range. For example, the initialization unit 202 sets the velocity v of particle i for i=1, . . . , N. i (1) may be set to 0.

[0038] The processing of steps S103 to S106 in a certain iteration t will be described below.

[0039] The attractor setting unit 203 sets an attractor a for each particle i in the search space. i (t) are set (step S103). i The method for setting (t) will be described with reference to Fig. 6. Fig. 6 is a diagram showing an example of a method for setting an attractor.

[0040] As shown in FIG. 6, the attractor setting unit 203 sets an attractor a for each particle i according to the following steps 1 to 4.i (t) are set, respectively. For simplicity, the following description will be given mainly on the case where the search space is two-dimensional and the possible values ​​of each dimension of the input variables are 0, 1, 2, and 3. However, this is just one example, and the following steps 1 to 4 can also be applied to cases where the search space is three or more dimensions or where each dimension can take any discrete value.

[0041] Step 1: The attractor setting unit 203 extracts the positions of particles whose objective function values ​​are in the top s percentile using the search data stored in the storage unit 209. That is, the ... For example, the attractor setting unit 203 extracts the positions of particles whose objective function values ​​are in the top s percentile using the search data stored in the storage unit 209. i (j) |i=1,...,N j=1,...,t}, the objective function values ​​included in the top s percentile are identified, and the positions of the particles corresponding to the identified objective function values ​​are extracted. As an example, the positions extracted in step 1 are denoted by x (1) , x (2) , x (3) , x (4) ∈{x i (j)|i=1, . . . , N j=1, . . . , t}.

[0042] The parameter s is one of the parameters that controls the diversity of the search; the smaller the value of s, the more likely the attractor setting values ​​are to be biased toward certain input variable values, and the larger the value of s, the more likely it is that a variety of input variable values ​​will be set as attractors.

[0043] Step 2: The attractor setting unit 203 uses the positions of the particles extracted in step 1 above to calculate the occurrence rate of the values ​​that can be taken in each dimension.

[0044] For example, as shown in FIG. (1) = (0, 0), x (2) = (0, 1), x (3) = (1, 0), x (4) = (2, 0). In this case, the first dimension contains "0" because (1) and x (3) Therefore, the occurrence rate is calculated as (1+1+0+0) / 4=2 / 4. Similarly, the occurrence rate of "1" in the first dimension is x(3) Therefore, the occurrence rate is calculated as (0+0+1+0) / 4=1 / 4. Similarly, the occurrence rate of "2" in the first dimension is x (4) Therefore, its occurrence rate is calculated as (0+0+0+1) / 4=1 / 4. Similarly, since there is no occurrence of "3" in the first dimension, its occurrence rate is calculated as (0+0+0+0) / 4=0 / 4. The same calculation can be made for the second dimension.

[0045] Step 3: The attractor setting unit 203 calculates the selection probability using the occurrence rate calculated in step 2 and the parameter ε. Specifically, for each dimension, the attractor setting unit 203 calculates the selection probability by multiplying the occurrence rate that is not 0 by (1-ε), and calculates the selection probability as ε / M for the occurrence rate that is 0. Here, M is the number of values ​​whose occurrence rate is 0 in that dimension.

[0046] The parameter ε, like the parameter s, is one of the parameters that controls the diversity of the search, and represents the probability of selecting a value that has appeared 0 times. Setting the value of ε to a value greater than 0 prevents early convergence to a local solution, enabling continuous search.

[0047] Step 4: The attractor setting unit 203 uses the selection probability calculated in step 4 above to set an attractor a for each particle i. i The attractor setting unit 203 sets an attractor a for each particle i by, for example, sampling elements of the attractor from a multinomial distribution based on the selection probability calculated in step 4 for each dimension. i (t) is set. Specifically, a i The one-dimensional value of (t) is a i1 (t), the two-dimensional value is a i2 (t), the probability of selecting "0" in one dimension is p 10 (t), the probability of selecting "1" in one dimension is p 11 (t), the probability of selecting "2" in one dimension is p 12 (t), the probability of selecting "3" in one dimension is p 13 Similarly, the probability of selecting "0" in two dimensions is p 20(t), the probability of selecting "1" in two dimensions is p 21 (t), the probability of selecting "2" in two dimensions is p 22 (t), the probability of selecting "3" in two dimensions is p 23 At this time, the attractor setting unit 203 sets p 10 (t), p 11 (t), p 12 (t), p 13 A value is sampled from {0, 1, 2, 3} according to the multinomial distribution determined by (t), and the value is a i1 Similarly, the attractor setting unit 203 sets p 20 (t), p 21 (t), p 22 (t), p 23 A value is sampled from {0, 1, 2, 3} according to the multinomial distribution determined by (t), and the value is a i2 Let (t).

[0048] The velocity update unit 204 updates the velocity of each particle using the attractor set in step S103 (step S104). Specifically, the velocity update unit 204 updates the velocity of each particle i for i=1, ..., N using the following equation (1):

[0049] v i (t+1) = wv i (t) + c 1 r 1 (a i (t)-x i (t)) + c 2 r 2 (x g (t)-x i (t)) (1) where v i (t+1) is the velocity of particle i at the next iteration t+1. 1 , c 2 is a coefficient whose value is set in advance. 1 , r 2 is a uniform random number. The above equation (1) is a form in which the private best of conventional particle swarm optimization is changed to an attractor.

[0050] In addition to the above formula (1), for example, a term related to an attractor may be added to the velocity update formula of conventional particle swarm optimization. Specifically, the velocity update unit 204 may update the velocity of each particle i for i=1, ..., N using the following formula (2):

[0051] v i (t+1) = wv i (t) + c 1 r 1 (x i p (t)-x i (t)) + c 2 r 2 (x g (t)-x i (t)) + c 3 r 3 (a i (t)-x i (t)) (2) where c 3 is a coefficient whose value is set in advance. 3 is a uniform random number.

[0052] Whether to use the above formula (1) or (2) can be selected appropriately depending on the combinatorial optimization problem. For example, formula (1) can be used when priority is given to the quality of the best solution, and formula (2) can be used when speed of convergence is also taken into consideration.

[0053] The position update unit 205 updates the position of each particle using the velocity updated in step S104 (step S105). Specifically, the position update unit 205 updates the position of each particle using the velocity updated in step S104 (step S105). Specifically, for example, for i=1, . . . , N, i (t+1)=x i (t) + v i Update the position of each particle i by (t+1), where x i (t+1) is the position of particle i in the next iteration t+1.

[0054] The solution update unit 206 calculates the objective function value corresponding to the position of each particle using the position updated in step S105, and updates the global best and the corresponding objective function value (step S106). Specifically, when considering a combinatorial optimization problem in which the objective function is f and the objective function is to be minimized, the solution update unit 206 calculates the global best and the corresponding objective function value for i=1,...,N. i (t+1) = f(x i (t+1)) and then calculate y for all i. i (t+1) = f(x i (t+1))≧f(x g (t)), the solution update unit 206 g (t+1)=x g (t), f(x g (t+1))=f(x g On the other hand, for some j ∈ {1, ..., N}, y j (t+1) = f(x j (t+1))<f(x g (t)), the solution update unit 206 g (t+1)=x j (t+1), f(x g (t+1))=f(x j (t+1)).

[0055] When the above formula (2) is used, the solution update unit 206 calculates the private best x i p That is, the solution update unit 206 also updates y i (t+1) = f(x i (t+1))≧f(x i p (t)) then x i p (t+1)=x i p (t), otherwise x i p (t+1)=x i Update it to (t+1).

[0056] The termination condition determination unit 207 determines whether a predetermined termination condition is satisfied (step S107), such as when the iteration t exceeds a predetermined threshold T, or when the objective function value corresponding to the global best is equal to or greater than (or less than) a predetermined threshold.

[0057] If it is determined in step S107 that the termination condition is not satisfied, the iteration t is updated to t+1, and the process returns to step S103. On the other hand, if it is determined in step S107 that the termination condition is satisfied, the output unit 208 outputs output information to a predetermined output destination, with the global best in the current iteration as the best solution and the objective function corresponding to the global best as the objective function value corresponding to the best solution (step S108). The output destination is not limited to a specific output destination and can be any output destination, such as a storage area such as the auxiliary storage device 107, the display device 102 such as a display, or another device or apparatus connected in a communicable manner.

[0058] <Performance Evaluation> To evaluate the performance of the improved particle swarm optimization, simulations were performed using commonly used benchmark functions. The benchmark functions used were the Sphere Function, Rosenbrock Function, Rastrigin Function, Ackley Function, and Griewank Function. The minimum value of all benchmark functions was 0, and in the simulations, these benchmark functions were compared and evaluated with conventional particle swarm optimization from three perspectives (best solution, stability, and scalability to high-dimensional space).

[0059] Three types of input variables were used: 3-dimensional, 30-dimensional, and 300-dimensional. The initial values ​​were changed to evaluate stability, and 10 simulations were performed for each. The values ​​that each dimension can take in the search space were integers between -30 and 30, the number of particles was set to N=30, and the termination condition was set to iteration t exceeding T=1000. Furthermore, each parameter was set to w=0.5, c 1 = 0.8, c 2= 0.8, s = 20, and ε = 0.05.

[0060] At this time, the performance evaluation when using the Sphere Function is shown in FIG. 7, the performance evaluation when using the Rosenbrock Function is shown in FIG. 8, the performance evaluation when using the Rastrigin Function is shown in FIG. 9, the performance evaluation when using the Ackley Function is shown in FIG. 10, and the performance evaluation when using the Griewank Function is shown in FIG. 11. In FIGS. 7 to 11, the vertical axis of each graph represents the best solution, and the horizontal axis represents the iterations. Furthermore, PSO represents conventional particle swarm optimization, and proposed represents improved particle swarm optimization. Furthermore, the lines and their widths in each graph represent the average value and standard deviation of 10 experiments.

[0061] As shown in Figures 7 to 11, for each benchmark function, the improved particle swarm optimization yields a smaller best solution than the conventional particle swarm optimization, regardless of whether the number of dimensions of the input variables is 3, 30, or 300. Furthermore, the smaller standard deviation variation indicates improved stability. Furthermore, the improved best solution and stability even for 300-dimensional input variables indicate superior scalability to high-dimensional spaces compared to the conventional particle swarm optimization.

[0062] From the above, it can be seen that, compared to conventional particle swarm optimization, improved particle swarm optimization can obtain better best solutions for high-dimensional combinatorial optimization problems, and can improve the stability of the best solutions against fluctuations in the initial values.

[0063] As an example, a case will be described in which the particle swarm optimization device 10 according to this embodiment is applied to optimizing the tilt angle of an antenna mounted on a base station that constitutes a cellular network. The problem of optimizing the tilt angle of an antenna mounted on a base station that constitutes a cellular network is also called "tilt angle optimization."

[0064] Input / output information of the particle swarm optimization device 10 according to this embodiment will be described with reference to Fig. 12. Fig. 12 is a diagram showing input / output information of the particle swarm optimization device 10 according to one embodiment.

[0065] 12 , the particle swarm optimization device 10 according to this embodiment receives as input information an objective function to be optimized, cell information, and mesh information, and outputs as output information a tilt angle that maximizes or minimizes the objective function value and the objective function value corresponding to the tilt angle. The cell information includes, for example, coordinates (latitude, longitude), antenna height, transmission power, frequency, azimuth angle, mechanical tilt angle, electrical tilt angle, settable range of the electrical tilt angle, throughput model, number of accommodated users, etc. Furthermore, the mesh information includes, for example, center coordinates (latitude, longitude), mesh type, number of users within the mesh, etc.

[0066] The cell information refers to information on all cells used for tilt angle optimization. The cell information of which cells is to be used for tilt angle optimization may be directly specified by, for example, an operator who operates and manages the cellular network, or may be indirectly specified by, for example, obtaining information on cells existing in an area specified by the operator. The throughput model included in the cell information refers to a model for estimating the throughput of each cell. The throughput model is used, for example, when throughput is used to calculate an objective function value. The number of users accommodated by each cell is used as an input to the throughput model, for example.

[0067] The mesh information is information about a mesh for which communication quality is desired to be improved by optimizing the tilt angle. Like cell information, the mesh information may be directly specified by an operator, or may be indirectly specified by, for example, obtaining meshes included in the coverage area of ​​a cell specified by the operator. The mesh type included in the mesh information is an item that specifies the length of one side of a mesh. For example, a 1 / 8 mesh with a side length of 125 m or a 1 / 32 mesh with a side length of 31.25 m may be specified. The number of users in a mesh refers to the number of users present in that mesh. The number of users in a mesh may be calculated, for example, by obtaining the coverage area of ​​a cell and the number of users accommodated in that cell, and then apportioning the number of accommodated users by the number of meshes included in the coverage area of ​​the cell.

[0068] The objective function to be optimized may be freely set based on the operational policy of the cellular network, etc. For example, if the objective is to improve throughput, the average value of the throughput of each cell may be set as the objective function, and if the objective is to improve interference or coverage holes within an area, the objective function may be the percentage of meshes where the received power is equal to or greater than a threshold, or the percentage of meshes where the SINR (Signal to Interference plus Noise Ratio), which is an index representing interference, is equal to or greater than a threshold. Furthermore, if the objective is to improve throughput while taking interference and coverage holes into consideration, an objective function including these three indexes may be set.

[0069] The tilt angle output as output information may be the value of the electrical tilt angle actually applied to the antenna, or may be the difference from the electrical tilt angle set before tilt angle optimization.

[0070] When performing the particle swarm optimization process shown in Fig. 5, the value of the electrical tilt angle actually applied to the antenna or the difference from the electrical tilt angle set before tilt angle optimization is used as the particle position. For example, if there are three cells used for tilt angle optimization, the position x of particle i is i is x = (x i1 , x i2 , x i3) where x i1 , x i2 , x i3 is the tilt angle of each of the three cells (or the difference from the electrical tilt angle set in each of the three cells before tilt angle optimization). The search space is the settable range of the electrical tilt angle in each cell, or the range of possible differences from the electrical tilt angle set in each cell before tilt angle optimization. Generally, when the number of cells is N, c , where K is the number of tilt angles that can be set, the size of the particle search space is N of K. c The size of the search space increases exponentially with the number of cells used in tilt angle optimization.

[0071] <Summary> As described above, the particle swarm optimization device 10 according to this embodiment sets a value called an attractor for each particle using search data consisting of previously searched positions and the objective function values ​​at those positions, and sets these attractors as one of the target positions of the particle in addition to the global best, etc. This makes it possible to obtain a better best solution for high-dimensional combinatorial optimization problems and improve the stability of the best solution against fluctuations in the initial values, compared to when conventional particle swarm optimization is used.

[0072] The present invention is not limited to the above-described specifically disclosed embodiments, and various modifications, changes, and combinations with known technologies are possible without departing from the scope of the claims.

[0073] This application is based on PCT / JP2024 / 19780 filed on May 29, 2024, the entire contents of which are incorporated herein by reference.

[0074] 10 Particle swarm optimization device 101 Input device 102 Display device 103 External I / F 103a Recording medium 104 Communication I / F 105 RAM 106 ROM 107 Auxiliary storage device 108 Processor 109 Bus 201 Input unit 202 Initialization unit 203 Attractor setting unit 204 Speed ​​update unit 205 Position update unit 206 Solution update unit 207 End condition determination unit 208 Output unit 209 Storage unit

Claims

1. An optimization device that finds a best solution to an optimization problem based on particle swarm optimization, comprising: a setting unit that sets, for each particle, an attractor that represents a target position within a search space for the best solution, using the position of each particle up to a current iteration in the particle swarm optimization and an objective function value at that position; and a velocity update unit that updates the velocity of each particle in the particle swarm optimization, using the attractor set for each particle.

2. The optimization device according to claim 1, wherein the velocity update unit updates the velocity of each particle using an update formula obtained by adding a term related to the attractor to the velocity update formula used in the particle swarm optimization.

3. The optimization device according to claim 1, wherein the velocity update unit updates the velocity of each particle using an update equation in which a term related to the attractor is added instead of a term related to a private best included in the velocity update equation used in the particle swarm optimization.

4. The optimization device according to any one of claims 1 to 3, wherein the setting unit extracts positions corresponding to the objective function values ​​in the top s percentiles (where s is a predetermined value) from the positions of each particle up to the current iteration, and sets as the attractor a value sampled from a multinomial distribution based on the selection probability of the values ​​of each dimension included in the extracted positions.

Citation Information

Patent Citations

  • Metabolite optimization method based on binary quantum particle swarm optimization algorithm and flux equilibrium analysis hybrid algorithm

    CN116705142A

  • Distribution network optimization operation method and device based on smart switch

    CN117613902A

  • Training data generation program, training data generation method, and information processing apparatus

    JP2023183079A