JP4993061B2 - Optimization device, optimization method, and optimization program - Google Patents

Optimization device, optimization method, and optimization program Download PDF

Info

Publication number
JP4993061B2
JP4993061B2 JP2006068196A JP2006068196A JP4993061B2 JP 4993061 B2 JP4993061 B2 JP 4993061B2 JP 2006068196 A JP2006068196 A JP 2006068196A JP 2006068196 A JP2006068196 A JP 2006068196A JP 4993061 B2 JP4993061 B2 JP 4993061B2
Authority
JP
Japan
Prior art keywords
optimization
solution
variables
dimensional
variable
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006068196A
Other languages
Japanese (ja)
Other versions
JP2006294002A (en
Inventor
洋隆 梶
一 喜多
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Motor Co Ltd
Original Assignee
Yamaha Motor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Motor Co Ltd filed Critical Yamaha Motor Co Ltd
Priority to JP2006068196A priority Critical patent/JP4993061B2/en
Publication of JP2006294002A publication Critical patent/JP2006294002A/en
Application granted granted Critical
Publication of JP4993061B2 publication Critical patent/JP4993061B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Feedback Control In General (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、最適化対象の変数を最適化する最適化装置、最適化方法および最適化プログラムに関する。   The present invention relates to an optimization device, an optimization method, and an optimization program for optimizing a variable to be optimized.

工学においては、種々の最適化問題が存在する。例えば、エンジンの制御パラメータの最適化では、エンジンの状態量の評価値が最も高くなるように制御パラメータを最適化し、最適化された制御パラメータを最適解として求める。例えば、排出ガスの特定の成分の濃度が低減されるようにエンジンにおける燃料噴射時期を最適化する。最適化問題では、最適化されるべき変数を決定変数と呼ぶ。上記の例では、制御パラメータである燃料噴射時期が決定変数であり、排出ガスの特定の成分の濃度が状態量である。   There are various optimization problems in engineering. For example, in the optimization of the engine control parameter, the control parameter is optimized so that the evaluation value of the engine state quantity is the highest, and the optimized control parameter is obtained as the optimum solution. For example, the fuel injection timing in the engine is optimized so that the concentration of a specific component of the exhaust gas is reduced. In an optimization problem, a variable to be optimized is called a decision variable. In the above example, the fuel injection timing that is the control parameter is the determining variable, and the concentration of the specific component of the exhaust gas is the state quantity.

最適化問題に遺伝的アルゴリズム(GA:Genetic Algorithm)等の進化型アルゴリズムを適用する研究が数多く行われている。   There have been many studies on applying evolutionary algorithms such as genetic algorithms (GA) to optimization problems.

遺伝的アルゴリズムは、生物の適応進化を模倣した計算手法である。この遺伝的アルゴリズムでは、解の候補を個体と呼ぶ。遺伝的アルゴリズムを用いた最適化処理では、まず、初期の個体集合を生成し、各個体について適応度関数を用いて適応度の評価を行う。適応度が良い個体を良い個体とみなす。なお、以下では最小化問題を考え、決定変数は連続値をとるとする。したがって、適応度の値が小さいほど適応度が良いとみなす。   Genetic algorithms are computational methods that mimic the adaptive evolution of organisms. In this genetic algorithm, solution candidates are called individuals. In the optimization process using the genetic algorithm, first, an initial individual set is generated, and the fitness is evaluated using the fitness function for each individual. Individuals with good fitness are considered good individuals. In the following, considering the minimization problem, it is assumed that the decision variable takes a continuous value. Therefore, the smaller the fitness value, the better the fitness.

各個体の適応度に基づいて個体集合から所定数の個体を親個体として選択する。選択された親個体を部分的に組み合わせる交叉を行うことにより子個体を生成し、子個体の適応度を評価する。評価結果に基づいて子個体を親個体と入れ換えることにより次の世代の個体集合を生成する。このようにして世代交代を繰り返すことにより最も適応度の良い個体を最適個体として求める。最適個体が最適化問題の最適解となる。すなわち、遺伝的アルゴリズムでは、交叉により複数の個体を生成および評価する多点探索を行う。   A predetermined number of individuals are selected as parent individuals from the individual set based on the fitness of each individual. A child individual is generated by performing a crossover that partially combines the selected parent individual, and the fitness of the child individual is evaluated. An individual set of the next generation is generated by replacing a child individual with a parent individual based on the evaluation result. By repeating the generation change in this way, the individual with the best fitness is obtained as the optimum individual. The optimal individual is the optimal solution for the optimization problem. That is, the genetic algorithm performs a multipoint search for generating and evaluating a plurality of individuals by crossover.

工学の分野では、決定変数の変化により評価値が周期的に変化する最適化問題がある。例えば、エンジンまたはモータのように回転機構を有する装置では、回転軸の1回転ごとに状態量が周期的に変化する。また、交通信号の広域制御では、交通信号が周期的に点滅する。さらに、画像処理におけるパターンマッチングでは、テンプレートに対して対象画像を回転させつつ両者が一致するか否かを判定する場合に、テンプレートと対象画像とのマッチング量(一致の程度)が周期的に変化する。   In the field of engineering, there is an optimization problem in which evaluation values change periodically due to changes in decision variables. For example, in an apparatus having a rotation mechanism such as an engine or a motor, the state quantity periodically changes every rotation of the rotation shaft. In the wide area control of traffic signals, the traffic signals blink periodically. Furthermore, in pattern matching in image processing, when the target image is rotated with respect to the template and it is determined whether or not they match, the matching amount (degree of matching) between the template and the target image changes periodically. To do.

また、蛋白質において共有結合で結合した二原子間の二面角は可変であり、結合が360度回転することにより元の二面角に一致する。さらに、ロボットのリンク機構が360度回転可能な場合、リンク機構は360度回転することにより元の姿勢に戻る。   In addition, the dihedral angle between two atoms bonded by a covalent bond in a protein is variable and coincides with the original dihedral angle by rotating the bond by 360 degrees. Furthermore, when the link mechanism of the robot can rotate 360 degrees, the link mechanism returns to the original posture by rotating 360 degrees.

したがって、回転機構を有する装置のタイミングの最適化、画像処理におけるパターンマッチング、蛋白質の構造の推定における二面角の最適化およびロボットのリンク機構の姿勢の最適化は、決定変数の変化により評価値が周期的に変化する最適化問題である。   Therefore, optimization of the timing of a device having a rotation mechanism, pattern matching in image processing, optimization of dihedral angle in estimation of protein structure, and optimization of posture of a robot link mechanism are evaluated values by changing the decision variables. Is an optimization problem that changes periodically.

目的関数(適応度関数)が周期的に変化する最適化問題は、次式により表すことができる。   An optimization problem in which the objective function (fitness function) changes periodically can be expressed by the following equation.

Figure 0004993061
Figure 0004993061

上式(1)において、θは実数Rに属する決定変数であり、f(θ)は周期的な目的関数(以下、周期関数と呼ぶ)であり、Nは任意の整数である。上式に示されるように、周期関数f(θ)は周期2πを有する。最適解は周期関数f(θ)の値を最小にする決定変数である。   In the above equation (1), θ is a decision variable belonging to the real number R, f (θ) is a periodic objective function (hereinafter referred to as a periodic function), and N is an arbitrary integer. As shown in the above equation, the periodic function f (θ) has a period 2π. The optimal solution is a decision variable that minimizes the value of the periodic function f (θ).

ここで、上記の遺伝的アルゴリズムを用いて周期関数f(θ)における決定変数を最適化することを考える。θmin を決定変数の最小値とし、θmax を決定変数の最大値とする。周期関数f(θ)の定義域[θmin ,θmax ]を[−∞,+∞]とした場合、全く等しい適応度を有する最適解(最適個体)が無数に存在する。そのため、交叉により多点探索を行う遺伝的アルゴリズムでは、無駄な探索を行う可能性がある。 Here, it is considered to optimize the decision variable in the periodic function f (θ) using the above genetic algorithm. Let θ min be the minimum value of the decision variable and θ max be the maximum value of the decision variable. When the domain [θ min , θ max ] of the periodic function f (θ) is [−∞, + ∞], there are an infinite number of optimal solutions (optimal individuals) having exactly the same fitness. Therefore, a genetic algorithm that performs a multipoint search by crossover may perform a useless search.

そこで、周期関数f(θ)の定義域[θmin ,θmax ]を適当な範囲に設定し、その定義域[θmin ,θmax ]内で決定変数を最適化することが考えられる。この場合、定義域[θmin ,θmax ]を2πの範囲となるように設定する。例えば、定義域[θmin ,θmax ]を[−π,π]に設定する。それにより、上式(1)は次式(2)に置き換えることができる。 Therefore, it is conceivable to set the domain [θ min , θ max ] of the periodic function f (θ) within an appropriate range and optimize the decision variable within the domain [θ min , θ max ]. In this case, the definition area [θ min , θ max ] is set to be in the range of 2π. For example, the domain [θ min , θ max ] is set to [−π, π]. Thereby, the above equation (1) can be replaced by the following equation (2).

Figure 0004993061
Figure 0004993061

上式(2)は、定義域[−π,π]で周期関数f(θ)の値が最小となる決定変数θを最適解として求めることを意味する。遺伝的アルゴリズムでは、周期関数f(θ)の値が適応度に相当する。すなわち、周期関数f(θ)の値が小さいほど適応度が良い。   The above equation (2) means that the decision variable θ that minimizes the value of the periodic function f (θ) in the domain [−π, π] is obtained as an optimal solution. In the genetic algorithm, the value of the periodic function f (θ) corresponds to the fitness. That is, the smaller the value of the periodic function f (θ), the better the fitness.

決定変数が2進コードにより表される遺伝的アルゴリズムはビットストリングGAと呼ばれ、決定変数が実数コード(浮動小数点表示)により表される遺伝的アルゴリズムは実数値GAと呼ばれる。   A genetic algorithm in which a decision variable is represented by a binary code is called a bit string GA, and a genetic algorithm in which a decision variable is represented by a real number code (floating point representation) is called a real value GA.

ビットストリングGAでは、親個体の交叉により生成された子個体の決定変数は定義域を外れることはない。これに対して、実数値GAでは、親個体の交叉により生成された子個体の決定変数が定義域を外れることがある。   In the bit string GA, the decision variable of the child individual generated by the crossing of the parent individual does not deviate from the domain of definition. On the other hand, in the real value GA, the decision variable of the child individual generated by the crossing of the parent individual may be out of the domain.

例えば、UNDX(単峰性正規分布交叉:Unimodal Normal Disribution Crossover)と呼ばれる交叉方法およびBLX−α(ブレンド交叉:Blend Crossover)と呼ばれる交叉方法では、2つの親個体間の領域の外側にも子個体が生成される。すなわち、UNDXおよびBLX−αは外挿性を有する交叉方法である。実数値GAにおいて、外挿性を有する交叉方法を用いた場合には、親個体の交叉により生成された子個体の決定変数が定義域を外れる。そのため、定義域を外れた子個体に何らかの処理を行うことが必要となる。   For example, in the crossing method called UNDX (Unimodal Normal Disribution Crossover) and the crossing method called BLX-α (Blend Crossover), a child individual is also outside the region between two parent individuals. Is generated. That is, UNDX and BLX-α are crossover methods having extrapolation. In the real value GA, when the crossover method having extrapolation is used, the decision variable of the child individual generated by the crossover of the parent individual is out of the domain. For this reason, it is necessary to perform some processing on the offspring that is out of the domain.

その一方、実数値GAでは、ビットストリングGAに比べて高い探索性能が得られるので、実数値GAを用いることが望まれる。
友部,小野,小林:GAによる蛋白質の構造決定に関する実験的考察,第25回知能システムシンポジウム講演資料,pp.43−48(1998) T. Back: Evolutionary Algorithms in Theory and Practice, Oxford (1996)
On the other hand, since the real value GA provides higher search performance than the bit string GA, it is desirable to use the real value GA.
Tomobe, Ono, Kobayashi: Experimental study on protein structure determination by GA, 25th Intelligent System Symposium presentation material, pp. 43-48 (1998) T. Back: Evolutionary Algorithms in Theory and Practice, Oxford (1996)

しかしながら、実数値GAを用いて周期関数における決定変数を最適化する場合、以下に示すように、定義域の設定範囲により問題の性質が異なることになる。   However, when the decision variable in the periodic function is optimized using the real value GA, the nature of the problem varies depending on the setting range of the domain as shown below.

図35は周期関数の定義域の設定範囲の一例を示す模式図である。図36は周期関数の定義域の設定範囲の他の例を示す模式図である。図35および図36の横軸は決定変数であり、縦軸は適応度(周期関数の値)である。なお、図35および図36において、黒丸印は個体を表している。   FIG. 35 is a schematic diagram showing an example of the setting range of the definition area of the periodic function. FIG. 36 is a schematic diagram showing another example of the setting range of the definition area of the periodic function. The horizontal axis in FIGS. 35 and 36 is a decision variable, and the vertical axis is fitness (a value of a periodic function). In FIGS. 35 and 36, black circles represent individuals.

図35および図36においては、周期関数の値が最小となる決定変数の値を最適解として探索する。   In FIGS. 35 and 36, the value of the decision variable that minimizes the value of the periodic function is searched for as the optimum solution.

図35の例では、周期関数の値が定義域[−π ,π ]の中心部で最小となる。それにより、周期関数は単峰性の形状を有し、定義域[−π,π ]の中心部で最適解が探索される。 In the example of FIG. 35, the value of the periodic function is in the domain [−π , Π ] At the center. As a result, the periodic function has a unimodal shape and the domain [−π, π ] Is searched for in the center.

一方、図36の例では、周期関数の値が定義域[−π ,π ]の一方の境界の近傍で最小となる。それにより、周期関数は二峰性の形状を有し、定義域[−π,π ]の一方の境界の近傍で最適解が探索され、定義域[−π ,π ]の他方の境界に定義域の設定に伴う局所解が現れる。 On the other hand, in the example of FIG. , Π ] Is the minimum in the vicinity of one of the boundaries. As a result, the periodic function has a bimodal shape and the domain [−π, π ] Is searched for in the vicinity of one boundary of , Π ], The local solution accompanying the domain setting appears at the other boundary.

図36のような場合、実数値GAでは、サンプリングバイアスおよび進化的停滞という2つの問題が生じる。   In the case as shown in FIG. 36, the real value GA has two problems of sampling bias and evolutionary stagnation.

図37は実数値GAの交叉による子個体の生起確率密度分布を示す模式図である。図37の横軸は決定変数であり、縦軸は子個体の生起確率密度である。図37において、P(θ)は子個体の生起確率密度分布である。定義域[−π,π]に一様に分布した親個体を用いて交叉を繰り返すと、図37に示されるように、定義域[−π,π]の中心部に子個体が生成される確率が高く、定義域[−π,π]の境界付近に子個体が生成される確率は低くなる。この現象をサンプリングバイアスと呼ぶ。   FIG. 37 is a schematic diagram showing the occurrence probability density distribution of offspring by crossing the real value GA. The horizontal axis in FIG. 37 is the decision variable, and the vertical axis is the occurrence probability density of the child individual. In FIG. 37, P (θ) is an occurrence probability density distribution of a child individual. When crossover is repeated using parent individuals uniformly distributed in the domain [−π, π], as shown in FIG. 37, a child individual is generated at the center of the domain [−π, π]. The probability is high, and the probability that a child individual is generated near the boundary of the domain [−π, π] is low. This phenomenon is called sampling bias.

したがって、定義域の設定範囲が適切でない場合には、定義域[−π,π]の境界付近に存在する最適解を発見することが困難となる。   Therefore, when the setting range of the domain is not appropriate, it is difficult to find an optimal solution existing near the boundary of the domain [−π, π].

図38は進化的停滞を説明するための模式図である。図38の横軸は決定変数であり、縦軸は適応度(周期関数の値)である。   FIG. 38 is a schematic diagram for explaining the evolutionary stagnation. The horizontal axis in FIG. 38 is the decision variable, and the vertical axis is the fitness (the value of the periodic function).

図38の例では、定義域[−π ,π ]の一方の境界の近傍に最適解が存在し、定義域[−π ,π]の他方の境界に局所解が表れる。この場合、最適解の近傍の親個体P1および局所解の近傍の親個体P2を用いて交叉を行うと、定義域[−π ,π]の中央部の適応度が悪い領域(周期関数の値が大きい領域)に子個体C1〜C7が生成される。このように、適応度が良い定義域[−π ,π]の境界近傍に子個体が生成されにくくなるため、最適解の探索が停滞し、探索効率が悪い。 In the example of FIG. 38, the domain [−π , Π ], There is an optimal solution in the vicinity of one boundary, and the domain [−π , Π], a local solution appears at the other boundary. In this case, when crossover is performed using the parent individual P1 near the optimal solution and the parent individual P2 near the local solution, the domain [−π , Π], child individuals C1 to C7 are generated in a region having poor fitness (region having a large periodic function value). Thus, the domain with good fitness [−π , Π], it is difficult for a child individual to be generated near the boundary, and the search for the optimal solution is stagnant, resulting in poor search efficiency.

上記のサンプリングバイアスを緩和するためにTsutsuiのBEM(Boundary Extension by Mirroring)に代表される境界法が提案されている。   In order to reduce the sampling bias, a boundary method represented by Tsutsui's BEM (Boundary Extension by Mirroring) has been proposed.

図39は境界法を説明するための模式図である。図39の横軸は決定変数であり、縦軸は適応度(周期関数の値)である。なお、図39において、黒丸印は個体を表している。   FIG. 39 is a schematic diagram for explaining the boundary method. The horizontal axis of FIG. 39 is a decision variable, and the vertical axis is fitness (a value of a periodic function). In FIG. 39, black circles represent individuals.

図39に示すように、境界法では、予め定められた拡張率に基づいて定義域の境界近傍の領域が定義域の境界を中心として折り返されることにより、定義域が拡張される。それにより、定義域の境界付近でのサンプリングバイアスの影響が緩和される。その結果、最適解の発見の可能性が向上する。   As shown in FIG. 39, in the boundary method, the domain in the vicinity of the domain boundary is folded around the domain boundary based on a predetermined expansion rate, so that the domain is expanded. As a result, the influence of the sampling bias near the boundary of the domain is mitigated. As a result, the possibility of finding the optimal solution is improved.

しかしながら、境界法を用いた場合でも、局所解は依然として残るため、進化的停滞の問題を解決することはできない。   However, even when the boundary method is used, the local solution still remains, so the problem of evolutionary stagnation cannot be solved.

したがって、周期関数における決定変数の最適化に実数値GAを用いる場合には、位相のつながりを考慮した交叉の工夫を施す必要がある。非特許文献1には、決定変数の定義域[−π,π]で親個体間のなす角度がπ以上となった場合には、補角領域に子個体を生成する方法が提案されている。   Therefore, when the real value GA is used to optimize the decision variable in the periodic function, it is necessary to devise crossover in consideration of the phase connection. Non-Patent Document 1 proposes a method for generating a child individual in a complementary angle region when an angle between parent individuals is equal to or larger than π in a domain of determination variable [−π, π]. .

しかしながら、非特許文献1の方法によれば、親個体に対する補角領域の判定が必要となる。また、この方法は、多数の親個体を用いた交叉へ拡張することが困難である。そのため、周期関数における決定変数の最適化の処理が煩雑となる。   However, according to the method of Non-Patent Document 1, it is necessary to determine the complementary angle region for the parent individual. In addition, this method is difficult to extend to crossover using a large number of parent individuals. Therefore, the process of optimizing the decision variable in the periodic function becomes complicated.

本発明の目的は、変数の最適化を効率的に行うことが可能な最適化装置、最適化方法および最適化プログラムを提供することである。   An object of the present invention is to provide an optimization device, an optimization method, and an optimization program capable of efficiently performing variable optimization.

(1)第1の発明に係る最適化装置は、最適化すべきN個の変数のうちm個の変数の2乗の総和が1となる拘束を有する場合に最適化対象にN個の変数を有する解候補を与え、N個の変数についての目的関数に対応する状態量を最適化対象から受ける最適化装置であって、N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合を解候補の集合として記憶する解候補記憶部と、解候補記憶部に記憶された解候補の集合から所定数の解候補を選択する解候補選択部と、解候補選択部により選択された所定数の解候補に基づいて(m−1)次元単位球面を含むN次元変数空間上に新たな解候補の集合を生成し、生成された解候補の集合を最適化対象および解候補記憶部に与える解候補生成部と、最適化対象から出力される状態量の評価値を算出する評価値演算部と、評価値演算部により算出される評価値に基づいて解候補記憶部に記憶される解候補の集合を更新する解候補集合更新部とを備え、Nは2以上の自然数であり、mはN以下の自然数である。   (1) The optimization apparatus according to the first aspect of the invention provides N variables to be optimized when there is a constraint that the sum of squares of m variables among N variables to be optimized is 1. An optimization device that gives a solution candidate having, and receives a state quantity corresponding to an objective function for N variables from an optimization target, and points on an N-dimensional variable space defined by a set of N variables A solution candidate storage unit that stores a set of variable vectors to be represented as a solution candidate set, a solution candidate selection unit that selects a predetermined number of solution candidates from the solution candidate set stored in the solution candidate storage unit, and a solution candidate selection unit A new solution candidate set is generated on the N-dimensional variable space including the (m−1) -dimensional unit sphere based on the predetermined number of solution candidates selected by the above, and the generated solution candidate set is optimized and It is output from the solution candidate generator to be given to the solution candidate storage unit and the optimization target. An evaluation value calculation unit that calculates an evaluation value of the state quantity; and a solution candidate set update unit that updates a set of solution candidates stored in the solution candidate storage unit based on the evaluation value calculated by the evaluation value calculation unit , N is a natural number of 2 or more, and m is a natural number of N or less.

その最適化装置においては、最適化すべきN個の変数のうちm個の変数の2乗の総和が1となる拘束を有する場合に最適化対象にN個の変数を有する解候補が与えられ、N個の変数についての目的関数に対応する状態量が最適化対象から出力される。解候補記憶部には、N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合が解候補の集合として記憶される。   In the optimization apparatus, when there is a constraint that the sum of the squares of m variables out of N variables to be optimized is 1, solution candidates having N variables are given as optimization targets. A state quantity corresponding to the objective function for N variables is output from the optimization target. In the solution candidate storage unit, a set of variable vectors representing points on the N-dimensional variable space defined by a set of N variables is stored as a set of solution candidates.

解候補記憶部に記憶された解候補の集合から所定数の解候補が解候補選択部により選択される。選択された所定数の解候補に基づいて(m−1)次元単位球面を含むN次元変数空間上に新たな解候補の集合が解候補生成部により生成され、生成された解候補の集合が最適化対象および解候補記憶部に与えられる。   A predetermined number of solution candidates are selected by the solution candidate selection unit from the set of solution candidates stored in the solution candidate storage unit. Based on the selected predetermined number of solution candidates, a new solution candidate set is generated in the N-dimensional variable space including the (m−1) -dimensional unit sphere, and the generated solution candidate set is generated. The optimization target and the solution candidate storage unit are given.

最適化対象から出力される状態量の評価値が評価値演算部により算出され、算出される評価値に基づいて解候補記憶部に記憶される解候補の集合が解候補集合更新部により更新される。上記の処理を繰り返すことにより最適解が得られる。   The evaluation value of the state quantity output from the optimization target is calculated by the evaluation value calculation unit, and the solution candidate set stored in the solution candidate storage unit is updated by the solution candidate set update unit based on the calculated evaluation value. The An optimal solution can be obtained by repeating the above processing.

この場合、(m−1)次元単位球面を含むN次元変数空間上に新たな解候補の集合が生成されるので、新たな解候補の生成が定義域の設定に依存しない。それにより、定義域の設定にかかわらず安定的に最適解を得ることができる。また、定義域を任意に設定することができるので、最適化処理が複雑化しない。   In this case, since a set of new solution candidates is generated on the N-dimensional variable space including the (m−1) -dimensional unit sphere, the generation of new solution candidates does not depend on the setting of the domain. Thereby, the optimum solution can be stably obtained regardless of the setting of the domain. In addition, since the definition area can be arbitrarily set, the optimization process is not complicated.

また、(m−1)次元単位球面上で連続性を保持したまま解候補の探索が可能となる。したがって、サンプリングバイアスおよび進化的停滞が生じることが防止される。   It is also possible to search for solution candidates while maintaining continuity on the (m−1) -dimensional unit sphere. Thus, sampling bias and evolutionary stagnation are prevented from occurring.

これらの結果、最適化対象における変数を効率的に最適化することができる。   As a result, it is possible to efficiently optimize variables in the optimization target.

(2)第2の発明に係る最適化装置は、最適化対象に最適化すべきN個の変数を有する解候補を与え、m個の変数に関して周期性を有する目的関数を含むN個の変数についての目的関数に対応する状態量を最適化対象から受ける最適化装置であって、N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合を解候補の集合として記憶する解候補記憶部と、解候補記憶部に記憶された解候補の集合から所定数の解候補を選択する解候補選択部と、解候補選択部により選択された所定数の解候補に基づいてm個の変数をm個の1次元単位球面上の点に対応付けることによりN次元変数空間を[(N−m)+2m]次元変数空間に拡張し、拡張された[(N−m)+2m]次元変数空間上に解候補の集合を生成し、生成された解候補の集合をN次元変数空間上の点に再び対応付けることにより新たな解候補の集合を生成し、生成された解候補の集合を最適化対象および解候補記憶部に与える解候補生成部と、最適化対象から出力される状態量の評価値を算出する評価値演算部と、評価値演算部により算出される評価値に基づいて解候補記憶部に記憶される解候補の集合を更新する解候補集合更新部とを備え、Nは1以上の自然数であり、mはN以下の自然数である。   (2) The optimization device according to the second aspect of the present invention provides a solution candidate having N variables to be optimized as an optimization target, and includes N variables including an objective function having periodicity with respect to m variables. An optimization device that receives a state quantity corresponding to an objective function of a target from an optimization target, and a set of variable vectors representing a point on an N-dimensional variable space defined by a set of N variables as a set of solution candidates Based on the solution candidate storage unit to be stored, the solution candidate selection unit that selects a predetermined number of solution candidates from the set of solution candidates stored in the solution candidate storage unit, and the predetermined number of solution candidates selected by the solution candidate selection unit Thus, by associating m variables with m points on the one-dimensional unit sphere, the N-dimensional variable space is expanded to the [(N−m) + 2m] dimensional variable space, and the expanded [(N−m) + 2m ] A set of solution candidates is generated in the dimensional variable space and generated A solution candidate generation unit that generates a new solution candidate set by re-associating the set of solution candidates with a point on the N-dimensional variable space and provides the generated solution candidate set to the optimization target and the solution candidate storage unit And an evaluation value calculation unit for calculating an evaluation value of the state quantity output from the optimization target, and a set of solution candidates stored in the solution candidate storage unit based on the evaluation value calculated by the evaluation value calculation unit And N is a natural number greater than or equal to 1, and m is a natural number less than or equal to N.

その最適化装置においては、最適化対象に最適化すべきN個の変数を有する変数を有する解候補が与えられ、m個の変数に関して周期性を有する目的関数を含むN個の変数についての目的関数に対応する状態量が最適化対象から出力される。解候補記憶部には、N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合が解候補の集合として記憶される。   In the optimization apparatus, a solution candidate having a variable having N variables to be optimized is given to an optimization target, and an objective function for N variables including an objective function having periodicity with respect to m variables. The state quantity corresponding to is output from the optimization target. In the solution candidate storage unit, a set of variable vectors representing points on the N-dimensional variable space defined by a set of N variables is stored as a set of solution candidates.

解候補記憶部に記憶された解候補の集合から所定数の解候補が解候補選択部により選択される。選択された所定数の解候補に基づいてm個の変数がm個の1次元単位球面上の点に対応付けられることによりN次元変数空間が[(N−m)+2m]次元変数空間に拡張され、拡張された[(N−m)+2m]次元変数空間上に解候補の集合が生成され、生成された解候補の集合がN次元変数空間上の点に再び対応付けられることにより新たな解候補の集合が生成され、生成された解候補の集合が最適化対象および解候補記憶部に与えられる。   A predetermined number of solution candidates are selected by the solution candidate selection unit from the set of solution candidates stored in the solution candidate storage unit. The N-dimensional variable space is expanded to the [(N−m) + 2m] -dimensional variable space by associating m variables with m points on the one-dimensional unit sphere based on the selected predetermined number of solution candidates. Then, a set of solution candidates is generated on the expanded [(N−m) + 2m] dimensional variable space, and the generated solution candidate set is again associated with a point on the N dimensional variable space, thereby creating a new one. A set of solution candidates is generated, and the generated set of solution candidates is given to the optimization target and the solution candidate storage unit.

最適化対象から出力される状態量の評価値が評価値演算部により算出され、算出される評価値に基づいて解候補記憶部に記憶される解候補の集合が解候補集合更新部により更新される。上記の処理を繰り返すことにより最適解が得られる。   The evaluation value of the state quantity output from the optimization target is calculated by the evaluation value calculation unit, and the solution candidate set stored in the solution candidate storage unit is updated by the solution candidate set update unit based on the calculated evaluation value. The An optimal solution can be obtained by repeating the above processing.

この場合、m個の変数がm個の1次元単位球面上の点に対応付けられるので、新たな解候補の生成が定義域の設定に依存しない。それにより、定義域の設定にかかわらず安定的に最適解を得ることができる。また、定義域を任意に設定することができるので、最適化処理が複雑化しない。   In this case, since m variables are associated with m points on the one-dimensional unit sphere, the generation of new solution candidates does not depend on the setting of the domain. Thereby, the optimum solution can be stably obtained regardless of the setting of the domain. In addition, since the definition area can be arbitrarily set, the optimization process is not complicated.

また、m個の1次元単位球面上で連続性を保持したまま解候補の探索が可能となる。したがって、サンプリングバイアスおよび進化的停滞が生じることが防止される。   In addition, it is possible to search for solution candidates while maintaining continuity on m one-dimensional unit spheres. Thus, sampling bias and evolutionary stagnation are prevented from occurring.

これらの結果、最適化対象における目的関数の変数を効率的に最適化することができる。 As a result, it is possible to efficiently optimize the variables of the objective function in the optimization target.

(3)m個の変数の各々をθとし、2次元平面上の点の第1および第2の座標をそれぞれxおよびyとした場合に、解候補生成部は、解候補選択部により選択された所定数の解候補の変数θを(x,y)=(cosθ,sinθ)の演算により第1および第2の座標(x,y)に置き換え、生成された各解候補の第1および第2の座標(x,y)を下記式により変数θCに変換してもよい。 (3) When each of the m variables is θ and the first and second coordinates of the point on the two-dimensional plane are x and y, respectively, the solution candidate generation unit is selected by the solution candidate selection unit The variable θ of the predetermined number of solution candidates is replaced with the first and second coordinates (x, y) by the calculation of (x, y) = (cos θ, sin θ), and the first and second coordinates of the generated solution candidates are replaced. The coordinates (x, y) of 2 may be converted into a variable θ C by the following equation.

Figure 0004993061
Figure 0004993061

上式において、sign(y)はyが正のときに+1となり、yが負のときに−1となる。   In the above equation, sign (y) becomes +1 when y is positive, and becomes -1 when y is negative.

この場合、三角関数を用いた演算により所定数の解候補のm個の変数θの各々を容易に第1および第2の座標(x,y)に置き換えることができ、逆正接関数を用いた演算により新たな解候補の第1および第2の座標(x,y)を変数θに容易に変換することができる。   In this case, each of the m variables θ of a predetermined number of solution candidates can be easily replaced with the first and second coordinates (x, y) by calculation using a trigonometric function, and an arctangent function is used. By calculation, the first and second coordinates (x, y) of the new solution candidate can be easily converted into the variable θ.

(4)解候補選択部は、目的関数の定義域を目的関数の周期に設定し、設定された定義域が2πになるように目的関数を変数軸の方向に拡大または縮小し、定義域の中心が変数軸の座標0に位置するように目的関数をシフトさせてもよい。 (4) solution candidate selecting unit sets the domain of the objective function to the period of the objective function, domain that is configured to expand or contract in the direction of the variable axis an objective function to be 2 [pi, the domain The objective function may be shifted so that the center is located at the coordinate 0 of the variable axis.

この場合、目的関数の周期が2πと異なる場合でも、目的関数の定義域を2πに変換することにより最適化対象における目的関数の変数を効率的に最適化することが可能となる。 In this case, even when the period of the objective function is different from 2π, it is possible to efficiently optimize the variable of the objective function in the optimization target by converting the domain of the objective function to 2π.

(5)最適化対象は機器の性能を評価するための評価システムを含み、変数ベクトルは評価システムのための制御用パラメータを含み、状態量は評価システムの評価により得られる機器の性能であってもよい。   (5) The optimization target includes an evaluation system for evaluating the performance of the device, the variable vector includes a control parameter for the evaluation system, and the state quantity is the performance of the device obtained by the evaluation of the evaluation system. Also good.

この場合、評価システムに制御用パラメータが与えられる。評価システムにより制御用パラメータに基づいて機器の性能が評価され、性能に対応する状態量が出力される。この最適化装置によれば、機器の性能が制御用パラメータについて周期性を有する場合に制御用パラメータを効率的に最適化することができる。   In this case, a control parameter is given to the evaluation system. The performance of the device is evaluated by the evaluation system based on the control parameters, and a state quantity corresponding to the performance is output. According to this optimization apparatus, the control parameter can be efficiently optimized when the performance of the device has periodicity with respect to the control parameter.

(6)評価システムは、制御用パラメータに基づいて機器を制御するとともに機器の動作により発生される機器の性能を状態量として出力する機器評価装置であってもよい。   (6) The evaluation system may be a device evaluation device that controls a device based on a control parameter and outputs the performance of the device generated by the operation of the device as a state quantity.

この場合、機器評価装置に制御用パラメータが与えられる。機器評価装置により制御用パラメータに基づいて機器の動作が評価されることにより機器の性能が状態量として出力される。この最適化装置によれば、機器の性能が制御用パラメータについて周期性を有する場合に制御用パラメータを効率的に最適化することができる。   In this case, control parameters are given to the device evaluation apparatus. By evaluating the operation of the device based on the control parameters by the device evaluation apparatus, the performance of the device is output as a state quantity. According to this optimization apparatus, the control parameter can be efficiently optimized when the performance of the device has periodicity with respect to the control parameter.

(7)評価システムは、制御用パラメータに基づいて機器の動作をシミュレーションすることにより機器の性能を評価し、評価された性能を状態量として出力する機器シミュレータであってもよい。   (7) The evaluation system may be a device simulator that evaluates the performance of the device by simulating the operation of the device based on the control parameter and outputs the evaluated performance as a state quantity.

この場合、機器シミュレータに制御用パラメータが与えられる。機器シミュレータにより制御用パラメータに基づいて機器の動作がシミュレーションされることにより機器の性能が状態量として出力される。この最適化装置によれば、機器の性能が制御用パラメータについて周期性を有する場合に制御用パラメータを効率的に最適化することができる。   In this case, control parameters are given to the equipment simulator. The device performance is output as a state quantity by simulating the operation of the device based on the control parameters by the device simulator. According to this optimization apparatus, the control parameter can be efficiently optimized when the performance of the device has periodicity with respect to the control parameter.

(8)機器は内燃機関であり、制御用パラメータは内燃機関のクランク回転角度に基づくパラメータであり、状態量はパラメータについて周期的に変化する内燃機関の性能であってもよい。   (8) The device may be an internal combustion engine, the control parameter may be a parameter based on a crank rotation angle of the internal combustion engine, and the state quantity may be the performance of the internal combustion engine that periodically changes with respect to the parameter.

この場合、機器評価システムに内燃機関のクランク回転角度に基づくパラメータが与えられる。機器評価システムによりパラメータに基づいて内燃機関の動作が評価されることにより内燃機関の性能が状態量として出力される。この最適化装置によれば、内燃機関の性能がクランク回転角度に基づくパラメータについて周期性を有する場合にパラメータを効率的に最適化することができる。   In this case, a parameter based on the crank rotation angle of the internal combustion engine is given to the device evaluation system. By evaluating the operation of the internal combustion engine based on the parameters by the device evaluation system, the performance of the internal combustion engine is output as a state quantity. According to this optimization apparatus, when the performance of the internal combustion engine has periodicity with respect to the parameter based on the crank rotation angle, the parameter can be efficiently optimized.

(9)内燃機関は燃料噴射装置を有し、クランク回転角度に基づくパラメータは燃料噴射装置の燃料噴射時期を含んでもよい。   (9) The internal combustion engine may have a fuel injection device, and the parameter based on the crank rotation angle may include the fuel injection timing of the fuel injection device.

この場合、機器評価システムに内燃機関の制御用パラメータとして燃料噴射装置の燃料噴射時期が与えられる。機器評価システムにより制御用パラメータに基づいて燃料噴射装置の燃料噴射時期が制御されることにより内燃機関の性能が状態量として出力される。この最適化装置によれば、内燃機関の性能が燃料噴射装置の燃料噴射時期について周期性を有する場合にパラメータを効率的に最適化することができる。   In this case, the fuel injection timing of the fuel injection device is given to the device evaluation system as a control parameter for the internal combustion engine. The performance of the internal combustion engine is output as a state quantity by controlling the fuel injection timing of the fuel injection device based on the control parameter by the device evaluation system. According to this optimization device, the parameters can be efficiently optimized when the performance of the internal combustion engine has periodicity with respect to the fuel injection timing of the fuel injection device.

(10)内燃機関は燃料噴射装置を有し、クランク回転角度に基づくパラメータは、複数の区間を含む一定期間内における燃料噴射装置による燃料噴射パターンであり、燃料噴射パターンは、燃料噴射装置による燃料噴射量の合計が一定となるような各区間の燃料噴射量からなるベクトルであり、状態量はパラメータについて周期的に変化する内燃機関の性能であってもよい。   (10) The internal combustion engine has a fuel injection device, and the parameter based on the crank rotation angle is a fuel injection pattern by the fuel injection device within a certain period including a plurality of sections, and the fuel injection pattern is a fuel injection by the fuel injection device. It is a vector composed of the fuel injection amount of each section in which the total injection amount is constant, and the state amount may be the performance of the internal combustion engine that changes periodically with respect to the parameters.

この場合、機器評価システムに内燃機関の制御用パラメータとして燃料噴射装置の燃料噴射パターンが与えられる。機器評価システムにより制御用パラメータに基づいて燃料噴射装置の燃料噴射パターンが制御されることにより内燃機関の性能が状態量として出力される。この最適化装置によれば、内燃機関の性能が燃料噴射装置の燃料噴射パターンについて周期性を有する場合にパラメータを効率的に最適化することができる。   In this case, the fuel injection pattern of the fuel injection device is given to the device evaluation system as a control parameter for the internal combustion engine. The performance of the internal combustion engine is output as a state quantity by controlling the fuel injection pattern of the fuel injection device based on the control parameter by the device evaluation system. According to this optimization device, parameters can be efficiently optimized when the performance of the internal combustion engine has periodicity with respect to the fuel injection pattern of the fuel injection device.

(11)状態量は、排出ガス中の所定の成分の濃度、燃料消費量、出力トルク、スロットル弁の開度およびクランク回転速度のうち少なくとも1つを含んでもよい。   (11) The state quantity may include at least one of a concentration of a predetermined component in the exhaust gas, fuel consumption, output torque, throttle valve opening, and crank rotation speed.

この場合、機器評価システムによりクランク回転角度に基づくパラメータに基づいて内燃機関の動作が評価されることにより排出ガス中の所定の成分の濃度、燃料消費量、出力トルク、スロットル弁の開度およびクランク回転速度のうち少なくとも1つが状態量として出力される。この最適化装置によれば、排出ガス中の所定の成分の濃度、燃料消費量、出力トルク、スロットル弁の開度およびクランク回転速度のうち少なくとも1つがクランク回転角度に基づくパラメータについて周期性を有する場合にパラメータを効率的に最適化することができる。   In this case, the device evaluation system evaluates the operation of the internal combustion engine based on the parameters based on the crank rotation angle, so that the concentration of predetermined components in the exhaust gas, fuel consumption, output torque, throttle valve opening, and crank At least one of the rotation speeds is output as a state quantity. According to this optimization device, at least one of the concentration of the predetermined component in the exhaust gas, the fuel consumption, the output torque, the opening degree of the throttle valve, and the crank rotation speed has periodicity with respect to the parameter based on the crank rotation angle. In this case, the parameters can be optimized efficiently.

(12)機器はロボットリンク機構であり、変数ベクトルはリンク機構の関節がなす角度を示すパラメータであり、状態量はパラメータについて周期的に変化するロボットリンク機構の性能であってもよい。   (12) The device may be a robot link mechanism, the variable vector may be a parameter indicating an angle formed by a joint of the link mechanism, and the state quantity may be the performance of the robot link mechanism that periodically changes with respect to the parameter.

この場合、機器評価システムにロボットリンク機構の関節がなす角度を示すパラメータが与えられる。機器評価システムによりパラメータに基づいてロボットリンク機構の動作が評価されることによりロボットリンク機構の性能が状態量として出力される。この最適化装置によれば、ロボットリンク機構の性能が関節がなす角度を示すパラメータについて周期性を有する場合にパラメータを効率的に最適化することができる。   In this case, a parameter indicating the angle formed by the joint of the robot link mechanism is given to the device evaluation system. By evaluating the operation of the robot link mechanism based on the parameters by the device evaluation system, the performance of the robot link mechanism is output as a state quantity. According to this optimization apparatus, when the performance of the robot link mechanism has periodicity with respect to the parameter indicating the angle formed by the joint, the parameter can be efficiently optimized.

(13)最適化対象は、道路に配置された複数の交通信号を含む交通システムの広域制御をシミュレーションする交通シミュレータであり、変数ベクトルは少なくとも1つ交通信号の点灯タイミングであり、状態量は道路を通過する車に関する情報を含んでもよい。   (13) The optimization target is a traffic simulator that simulates wide area control of a traffic system including a plurality of traffic signals arranged on the road, the variable vector is at least one lighting timing of the traffic signal, and the state quantity is the road It may include information about cars passing through.

この場合、交通シミュレータに少なくとも1つ交通信号の点灯タイミングが与えられる。交通シミュレータにより少なくとも1つ交通信号の点灯タイミングに基づいて交通システムの広域制御がシミュレーションされ、道路を通過する車に関する情報が出力される。この最適化装置によれば、道路を通過する車に関する情報が少なくとも1つ交通信号の点灯タイミングについて周期性を有する場合に少なくとも1つ交通信号の点灯タイミングを効率的に最適化することができる。   In this case, at least one traffic signal lighting timing is given to the traffic simulator. The traffic simulator simulates wide-area control of the traffic system based on the lighting timing of at least one traffic signal, and outputs information related to vehicles passing through the road. According to this optimizing device, at least one lighting timing of the traffic signal can be efficiently optimized when the information regarding the vehicle passing through the road has periodicity with respect to the lighting timing of the traffic signal.

(14)最適化装置は、蛋白質の構造をシミュレーションする蛋白質シミュレータであり、変数ベクトルは蛋白質の共有結合間の二面角を表す方向ベクトルであり、状態量はエネルギーに関する情報であってもよい。   (14) The optimization device may be a protein simulator that simulates a protein structure, the variable vector may be a direction vector representing a dihedral angle between covalent bonds of the protein, and the state quantity may be information on energy.

この場合、蛋白質シミュレータに蛋白質の共有結合間の二面角を表す方向ベクトルが与えられる。蛋白質シミュレータにより方向ベクトルに基づいて蛋白質の構造がシミュレーションされ、エネルギーに関する情報が出力される。この最適化装置によれば、エネルギーに関する情報が蛋白質の共有結合間の二面角を表す方向ベクトルについて周期性を有する場合に方向ベクトルを効率的に最適化することができる。   In this case, a direction vector representing the dihedral angle between the covalent bonds of the protein is given to the protein simulator. The protein simulator simulates the structure of the protein based on the direction vector and outputs information about energy. According to this optimization apparatus, the direction vector can be efficiently optimized when the information about energy has periodicity with respect to the direction vector representing the dihedral angle between the covalent bonds of the protein.

(15)最適化対象は、対象画像と参照画像とのマッチング処理を行う画像処理装置であり、変数ベクトルは参照画像に対する対象画像の方向ベクトルであり、状態量は対象画像と参照画像との誤差を示す情報であってもよい。   (15) The optimization target is an image processing device that performs a matching process between the target image and the reference image, the variable vector is a direction vector of the target image with respect to the reference image, and the state quantity is an error between the target image and the reference image. It may be information indicating.

この場合、画像処理装置に参照画像に対する対象画像の方向ベクトルが与えられる。画像処理装置により方向ベクトルに基づいて対象画像と参照画像とのマッチング処理が行われ、対象画像と参照画像との誤差を示す情報が出力される。この最適化装置によれば、対象画像と参照画像との誤差を示す情報が参照画像に対する対象画像の方向ベクトルについて周期性を有する場合に方向ベクトルを効率的に最適化することができる。   In this case, the direction vector of the target image with respect to the reference image is given to the image processing apparatus. The image processing device performs matching processing between the target image and the reference image based on the direction vector, and outputs information indicating an error between the target image and the reference image. According to this optimization apparatus, the direction vector can be efficiently optimized when the information indicating the error between the target image and the reference image has periodicity with respect to the direction vector of the target image with respect to the reference image.

(16)第3の発明に係る最適化方法は、最適化すべきN個の変数のうちm個の変数の2乗の総和が1となる拘束を有する場合に最適化対象にN個の変数を有する解候補を与え、N個の変数についての目的関数に対応する状態量を最適化対象から受ける最適化方法であって、N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合を解候補の集合として記憶部に記憶するステップと、記憶された解候補の集合から所定数の解候補を選択するステップと、選択された所定数の解候補に基づいて(m−1)次元単位球面を含むN次元変数空間上に新たな解候補の集合を生成し、生成された解候補の集合を最適化対象および記憶部に与えるステップと、最適化対象から出力される状態量の評価値を算出するステップと、算出される評価値に基づいて記憶部に記憶される解候補の集合を更新するステップとを備え、Nは2以上の自然数であり、mはN以下の自然数である。   (16) In the optimization method according to the third aspect of the invention, when there is a constraint that the sum of squares of m variables out of N variables to be optimized is 1, N variables are to be optimized. An optimization method for providing a solution candidate having a state quantity corresponding to an objective function for N variables from an optimization target, wherein a point on an N-dimensional variable space defined by a set of N variables A step of storing a set of variable vectors to be represented in the storage unit as a set of solution candidates, a step of selecting a predetermined number of solution candidates from the stored set of solution candidates, and based on the selected predetermined number of solution candidates ( m-1) generating a new set of solution candidates on the N-dimensional variable space including the dimensional unit sphere, and providing the generated set of solution candidates to the optimization target and the storage unit; and outputting from the optimization target Calculating the evaluation value of the state quantity And a step of updating the set of candidate solutions stored in the storage unit on the basis of the evaluation value, N is a natural number of 2 or more, m is a natural number equal to or less than N.

その最適化方法においては、最適化対象に最適化すべきN個の変数を有する変数を有する解候補が与えられ、m個の変数の2乗の総和が1となる拘束を有する目的関数を含むN個の変数についての目的関数に対応する状態量が最適化対象から出力される。記憶部には、N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合が解候補の集合として記憶される。   In the optimization method, a solution candidate having a variable having N variables to be optimized is given as an optimization target, and N includes an objective function having a constraint that the sum of squares of m variables is 1. A state quantity corresponding to the objective function for each variable is output from the optimization target. In the storage unit, a set of variable vectors representing points on the N-dimensional variable space defined by a set of N variables is stored as a set of solution candidates.

記憶部に記憶された解候補の集合から所定数の解候補が選択される。選択された所定数の解候補に基づいて(m−1)次元単位球面を含むN次元変数空間上に新たな解候補の集合が生成され、生成された解候補の集合が最適化対象および記憶部に与えられる。   A predetermined number of solution candidates are selected from a set of solution candidates stored in the storage unit. A new solution candidate set is generated on the N-dimensional variable space including the (m−1) -dimensional unit sphere based on the selected predetermined number of solution candidates, and the generated solution candidate set is optimized and stored. Given to the department.

最適化対象から出力される状態量の評価値が算出され、算出される評価値に基づいて記憶部に記憶される解候補の集合が更新される。上記の処理を繰り返すことにより最適解が得られる。   An evaluation value of the state quantity output from the optimization target is calculated, and a set of solution candidates stored in the storage unit is updated based on the calculated evaluation value. An optimal solution can be obtained by repeating the above processing.

この場合、(m−1)次元単位球面を含むN次元変数空間上に新たな解候補の集合が生成されるので、新たな解候補の生成が定義域の設定に依存しない。それにより、定義域の設定にかかわらず安定的に最適解を得ることができる。また、定義域を任意に設定することができるので、最適化処理が複雑化しない。   In this case, since a set of new solution candidates is generated on the N-dimensional variable space including the (m−1) -dimensional unit sphere, the generation of new solution candidates does not depend on the setting of the domain. Thereby, the optimum solution can be stably obtained regardless of the setting of the domain. In addition, since the definition area can be arbitrarily set, the optimization process is not complicated.

また、(m−1)次元単位球面上で連続性を保持したまま解候補の探索が可能となる。したがって、サンプリングバイアスおよび進化的停滞が生じることが防止される。   It is also possible to search for solution candidates while maintaining continuity on the (m−1) -dimensional unit sphere. Thus, sampling bias and evolutionary stagnation are prevented from occurring.

これらの結果、最適化対象における変数を効率的に最適化することができる。   As a result, it is possible to efficiently optimize variables in the optimization target.

(17)第4の発明に係る最適化方法は、最適化対象に最適化すべきN個の変数を有する変数を有する解候補を与え、m個の変数に関して周期性を有する目的関数を含むN個の変数についての目的関数に対応する状態量を最適化対象から受ける最適化方法であって、N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合を解候補の集合として記憶部に記憶するステップと、記憶された解候補の集合から所定数の解候補を選択するステップと、選択された所定数の解候補に基づいてm個の変数をm個の1次元単位球面上の点に対応付けることによりN次元変数空間を[(N−m)+2m]次元変数空間に拡張し、拡張された[(N−m)+2m]次元変数空間上に解候補の集合を生成し、生成された解候補の集合をN次元変数空間上の点に再び対応付けることにより新たな解候補の集合を生成し、生成された解候補の集合を最適化対象および記憶部に与えるステップと、最適化対象から出力される状態量の評価値を算出するステップと、算出される評価値に基づいて記憶部に記憶される解候補の集合を更新するステップとを備え、Nは1以上の自然数であり、mはN以下の自然数である。   (17) An optimization method according to a fourth aspect of the present invention provides a solution candidate having a variable having N variables to be optimized, and includes N objective functions having periodicity with respect to m variables. An optimization method for receiving from an optimization target a state quantity corresponding to an objective function for a variable of a variable, wherein a set of variable vectors representing a point on an N-dimensional variable space defined by a set of N variables is a solution candidate A step of storing in the storage unit as a set of m, a step of selecting a predetermined number of solution candidates from the set of stored solution candidates, and m variables based on the selected predetermined number of solution candidates. The N-dimensional variable space is expanded to a [(N−m) + 2m] -dimensional variable space by associating it with a point on the dimensional unit sphere, and a set of solution candidates on the expanded [(N−m) + 2m] -dimensional variable space And a set of generated solution candidates A new solution candidate set is generated by re-associating with a point on the dimensional variable space, the generated solution candidate set is given to the optimization target and the storage unit, and the state quantity output from the optimization target A step of calculating an evaluation value; and a step of updating a set of solution candidates stored in the storage unit based on the calculated evaluation value, wherein N is a natural number of 1 or more, and m is a natural number of N or less. is there.

その最適化方法においては、最適化対象に最適化すべきN個の変数を有する変数を有する解候補が与えられ、m個の変数に関して周期性を有する目的関数を含むN個の変数についての目的関数に対応する状態量が最適化対象から出力される。記憶部には、N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合が解候補の集合として記憶される。   In the optimization method, a solution candidate having a variable having N variables to be optimized is given to an optimization target, and an objective function for N variables including an objective function having periodicity with respect to m variables. The state quantity corresponding to is output from the optimization target. In the storage unit, a set of variable vectors representing points on the N-dimensional variable space defined by a set of N variables is stored as a set of solution candidates.

記憶部に記憶された解候補の集合から所定数の解候補が選択される。選択された所定数の解候補に基づいてm個の変数がm個の1次元単位球面上の点に対応付けられることによりN次元変数空間が[(N−m)+2m]次元変数空間に拡張され、拡張された[(N−m)+2m]次元変数空間上に解候補の集合が生成され、生成された解候補の集合がN次元変数空間上の点に再び対応付けられることにより新たな解候補の集合が生成され、生成された解候補の集合が最適化対象および記憶部に与えられる。   A predetermined number of solution candidates are selected from a set of solution candidates stored in the storage unit. The N-dimensional variable space is expanded to the [(N−m) + 2m] -dimensional variable space by associating m variables with m points on the one-dimensional unit sphere based on the selected predetermined number of solution candidates. Then, a set of solution candidates is generated on the expanded [(N−m) + 2m] dimensional variable space, and the generated solution candidate set is again associated with a point on the N dimensional variable space, thereby creating a new one. A set of solution candidates is generated, and the generated set of solution candidates is given to the optimization target and the storage unit.

最適化対象から出力される状態量の評価値が算出され、算出される評価値に基づいて記憶部に記憶される解候補の集合が更新される。上記の処理を繰り返すことにより最適解が得られる。   An evaluation value of the state quantity output from the optimization target is calculated, and a set of solution candidates stored in the storage unit is updated based on the calculated evaluation value. An optimal solution can be obtained by repeating the above processing.

この場合、m個の変数がm個の1次元単位球面上の点に対応付けられるので、新たな解候補の生成が定義域の設定に依存しない。それにより、定義域の設定にかかわらず安定的に最適解を得ることができる。また、定義域を任意に設定することができるので、最適化処理が複雑化しない。   In this case, since m variables are associated with m points on the one-dimensional unit sphere, the generation of new solution candidates does not depend on the setting of the domain. Thereby, the optimum solution can be stably obtained regardless of the setting of the domain. In addition, since the definition area can be arbitrarily set, the optimization process is not complicated.

また、m個の1次元単位球面上で連続性を保持したまま解候補の探索が可能となる。したがって、サンプリングバイアスおよび進化的停滞が生じることが防止される。   In addition, it is possible to search for solution candidates while maintaining continuity on m one-dimensional unit spheres. Thus, sampling bias and evolutionary stagnation are prevented from occurring.

これらの結果、最適化対象における目的関数の変数を効率的に最適化することができる。 As a result, it is possible to efficiently optimize the variables of the objective function in the optimization target.

(18)第5の発明に係る最適化プログラムは、最適化すべきN個の変数のうちm個の変数の2乗の総和が1となる拘束を有する場合に最適化対象にN個の変数を有する解候補を与え、N個の変数についての目的関数に対応する状態量を最適化対象から受けるコンピュータにより実行可能な最適化プログラムであって、N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合を解候補の集合として記憶部に記憶する処理と、記憶された解候補の集合から所定数の解候補を選択する処理と、選択された所定数の解候補に基づいて(m−1)次元単位球面を含むN次元変数空間上に新たな解候補の集合を生成し、生成された解候補の集合を最適化対象および記憶部に与える処理と、最適化対象から出力される状態量の評価値を算出する処理と、算出される評価値に基づいて記憶部に記憶される解候補の集合を更新する処理とをコンピュータに実行させ、Nは2以上の自然数であり、mはN以下の自然数である。   (18) The optimization program according to the fifth aspect of the present invention provides N variables as optimization targets when there is a constraint that the sum of squares of m variables out of N variables to be optimized is 1. An N-dimensional variable defined by a set of N variables, which is an optimization program that can be executed by a computer that gives a solution candidate having a state quantity corresponding to an objective function for N variables from an optimization target A process of storing a set of variable vectors representing points in space as a set of solution candidates in the storage unit, a process of selecting a predetermined number of solution candidates from the stored set of solution candidates, and a predetermined number of selected solutions A process for generating a new set of solution candidates on an N-dimensional variable space including the (m−1) -dimensional unit sphere based on the candidates, and providing the generated set of solution candidates to the optimization target and the storage unit; Of the state quantity output from the target The computer executes a process of calculating a value and a process of updating a set of solution candidates stored in the storage unit based on the calculated evaluation value, N is a natural number of 2 or more, and m is N or less It is a natural number.

その最適化プログラムにおいては、最適化対象に最適化すべきN個の変数を有する変数を有する解候補が与えられ、m個の変数の2乗の総和が1となる拘束を有する目的関数を含むN個の変数についての目的関数に対応する状態量が最適化対象から出力される。記憶部には、N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合が解候補の集合として記憶される。   In the optimization program, a solution candidate having a variable having N variables to be optimized is given as an optimization target, and an N including an objective function having a constraint that the sum of squares of m variables is 1. A state quantity corresponding to the objective function for each variable is output from the optimization target. In the storage unit, a set of variable vectors representing points on the N-dimensional variable space defined by a set of N variables is stored as a set of solution candidates.

記憶部に記憶された解候補の集合から所定数の解候補が選択される。選択された所定数の解候補に基づいて(m−1)次元単位球面を含むN次元変数空間上に新たな解候補の集合が生成され、生成された解候補の集合が最適化対象および記憶部に与えられる。   A predetermined number of solution candidates are selected from a set of solution candidates stored in the storage unit. A new solution candidate set is generated on the N-dimensional variable space including the (m−1) -dimensional unit sphere based on the selected predetermined number of solution candidates, and the generated solution candidate set is optimized and stored. Given to the department.

最適化対象から出力される状態量の評価値が算出され、算出される評価値に基づいて記憶部に記憶される解候補の集合が更新される。上記の処理を繰り返すことにより最適解が得られる。   An evaluation value of the state quantity output from the optimization target is calculated, and a set of solution candidates stored in the storage unit is updated based on the calculated evaluation value. An optimal solution can be obtained by repeating the above processing.

この場合、(m−1)次元単位球面を含むN次元変数空間上に新たな解候補の集合が生成されるので、新たな解候補の生成が定義域の設定に依存しない。それにより、定義域の設定にかかわらず安定的に最適解を得ることができる。また、定義域を任意に設定することができるので、最適化処理が複雑化しない。   In this case, since a set of new solution candidates is generated on the N-dimensional variable space including the (m−1) -dimensional unit sphere, the generation of new solution candidates does not depend on the setting of the domain. Thereby, the optimum solution can be stably obtained regardless of the setting of the domain. In addition, since the definition area can be arbitrarily set, the optimization process is not complicated.

また、m次元単位球面上で連続性を保持したまま解候補の探索が可能となる。したがって、サンプリングバイアスおよび進化的停滞が生じることが防止される。   It is also possible to search for solution candidates while maintaining continuity on the m-dimensional unit sphere. Thus, sampling bias and evolutionary stagnation are prevented from occurring.

これらの結果、最適化対象における変数を効率的に最適化することができる。   As a result, it is possible to efficiently optimize variables in the optimization target.

(19)第6の発明に係る最適化プログラムは、最適化対象に最適化すべきN個の変数を有する変数を有する解候補を与え、m個の変数に関して周期性を有する目的関数を含むN個の変数についての目的関数に対応する状態量を最適化対象から受けるコンピュータにより実行可能な最適化プログラムであって、N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合を解候補の集合として記憶部に記憶する処理と、記憶された解候補の集合から所定数の解候補を選択する処理と、選択された所定数の解候補に基づいてm個の変数をm個の1次元単位球面上の点に対応付けることによりN次元変数空間を[(N−m)+2m]次元変数空間に拡張し、拡張された[(N−m)+2m]次元変数空間上に解候補の集合を生成し、生成された解候補の集合をN次元変数空間上の点に再び対応付けることにより新たな解候補の集合を生成し、生成された解候補の集合を最適化対象および記憶部に与える処理と、最適化対象から出力される状態量の評価値を算出する処理と、算出される評価値に基づいて記憶部に記憶される解候補の集合を更新する処理とをコンピュータに実行させ、Nは1以上の自然数であり、mはN以下の自然数である。   (19) An optimization program according to a sixth aspect of the present invention provides a solution candidate having a variable having N variables to be optimized as an optimization target, and includes N objective functions having periodicity with respect to m variables. A variable vector representing a point on an N-dimensional variable space defined by a set of N variables, which is an executable program that can be executed by a computer that receives a state quantity corresponding to an objective function for a variable of Storing a set of solution candidates as a set of solution candidates in the storage unit, processing for selecting a predetermined number of solution candidates from the stored solution candidate set, and m variables based on the selected predetermined number of solution candidates Is associated with m points on the one-dimensional unit sphere to expand the N-dimensional variable space to the [(N−m) + 2m] -dimensional variable space, and on the expanded [(N−m) + 2m] -dimensional variable space Set of solution candidates Processing for generating a new solution candidate set by re-associating the generated solution candidate set with a point on the N-dimensional variable space, and providing the generated solution candidate set to the optimization target and storage unit And a process for calculating an evaluation value of the state quantity output from the optimization target and a process for updating a set of solution candidates stored in the storage unit based on the calculated evaluation value, and N Is a natural number of 1 or more, and m is a natural number of N or less.

その最適化プログラムにおいては、最適化対象に最適化すべきN個の変数を有する変数を有する解候補が与えられ、m個の変数に関して周期性を有する目的関数を含むN個の変数についての目的関数に対応する状態量が最適化対象から出力される。記憶部には、N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合が解候補の集合として記憶される。   In the optimization program, a solution candidate having a variable having N variables to be optimized is given as an optimization target, and an objective function for N variables including an objective function having periodicity with respect to m variables. The state quantity corresponding to is output from the optimization target. In the storage unit, a set of variable vectors representing points on the N-dimensional variable space defined by a set of N variables is stored as a set of solution candidates.

記憶部に記憶された解候補の集合から所定数の解候補が選択される。選択された所定数の解候補に基づいてm個の変数がm個の1次元単位球面上の点に対応付けられることによりN次元変数空間が[(N−m)+2m]次元変数空間に拡張され、拡張された[(N−m)+2m]次元変数空間上に解候補の集合が生成され、生成された解候補の集合がN次元変数空間上の点に再び対応付けられることにより新たな解候補の集合が生成され、生成された解候補の集合が最適化対象および記憶部に与えられる。   A predetermined number of solution candidates are selected from a set of solution candidates stored in the storage unit. The N-dimensional variable space is expanded to the [(N−m) + 2m] -dimensional variable space by associating m variables with m points on the one-dimensional unit sphere based on the selected predetermined number of solution candidates. Then, a set of solution candidates is generated on the expanded [(N−m) + 2m] dimensional variable space, and the generated solution candidate set is again associated with a point on the N dimensional variable space, thereby creating a new one. A set of solution candidates is generated, and the generated set of solution candidates is given to the optimization target and the storage unit.

最適化対象から出力される状態量の評価値が算出され、算出される評価値に基づいて記憶部に記憶される解候補の集合が更新される。上記の処理を繰り返すことにより最適解が得られる。   An evaluation value of the state quantity output from the optimization target is calculated, and a set of solution candidates stored in the storage unit is updated based on the calculated evaluation value. An optimal solution can be obtained by repeating the above processing.

この場合、m個の変数がm個の1次元単位球面上の点に対応付けられるので、新たな解候補の生成が定義域の設定に依存しない。それにより、定義域の設定にかかわらず安定的に最適解を得ることができる。また、定義域を任意に設定することができるので、最適化処理が複雑化しない。   In this case, since m variables are associated with m points on the one-dimensional unit sphere, the generation of new solution candidates does not depend on the setting of the domain. Thereby, the optimum solution can be stably obtained regardless of the setting of the domain. In addition, since the definition area can be arbitrarily set, the optimization process is not complicated.

また、m個の1次元単位球面上で連続性を保持したまま解候補の探索が可能となる。したがって、サンプリングバイアスおよび進化的停滞が生じることが防止される。   In addition, it is possible to search for solution candidates while maintaining continuity on m one-dimensional unit spheres. Thus, sampling bias and evolutionary stagnation are prevented from occurring.

これらの結果、最適化対象における目的関数の変数を効率的に最適化することができる。 As a result, it is possible to efficiently optimize the variables of the objective function in the optimization target.

第1、第3および第5の発明によれば、(m−1)次元単位球面を含むN次元変数空間上に新たな解候補の集合が生成されるので、新たな解候補の生成が定義域の設定に依存しない。それにより、定義域の設定にかかわらず安定的に最適解を得ることができる。また、定義域を任意に設定することができるので、最適化処理が複雑化しない。   According to the first, third, and fifth inventions, a new set of solution candidates is generated on the N-dimensional variable space including the (m−1) -dimensional unit sphere, so that generation of new solution candidates is defined. It does not depend on the area setting. Thereby, the optimum solution can be stably obtained regardless of the setting of the domain. In addition, since the definition area can be arbitrarily set, the optimization process is not complicated.

また、(m−1)次元単位球面上で連続性を保持したまま解候補の探索が可能となる。したがって、サンプリングバイアスおよび進化的停滞が生じることが防止される。   It is also possible to search for solution candidates while maintaining continuity on the (m−1) -dimensional unit sphere. Thus, sampling bias and evolutionary stagnation are prevented from occurring.

これらの結果、最適化対象における変数を効率的に最適化することができる。   As a result, it is possible to efficiently optimize variables in the optimization target.

第2、第4および第6の発明によれば、m個の変数がm個の1次元単位球面上の点に対応付けられるので、新たな解候補の生成が定義域の設定に依存しない。それにより、定義域の設定にかかわらず安定的に最適解を得ることができる。また、定義域を任意に設定することができるので、最適化処理が複雑化しない。   According to the second, fourth, and sixth inventions, m variables are associated with m points on the one-dimensional unit sphere, so that generation of new solution candidates does not depend on the setting of the domain. Thereby, the optimum solution can be stably obtained regardless of the setting of the domain. In addition, since the definition area can be arbitrarily set, the optimization process is not complicated.

また、m個の1次元単位球面上で連続性を保持したまま解候補の探索が可能となる。したがって、サンプリングバイアスおよび進化的停滞が生じることが防止される。   In addition, it is possible to search for solution candidates while maintaining continuity on m one-dimensional unit spheres. Thus, sampling bias and evolutionary stagnation are prevented from occurring.

これらの結果、最適化対象における目的関数の変数を効率的に最適化することができる。 As a result, it is possible to efficiently optimize the variables of the objective function in the optimization target.

(1)第1の実施の形態
本実施の形態では、個体の交叉に後述する超球面上の交叉が用いられる。
(1) First Embodiment In this embodiment, crossover on a hypersphere, which will be described later, is used for individual crossover.

(a)最適化装置の機能的な構成
まず、本発明の第1の実施の形態に係る最適化装置を図1に基づき説明する。図1は本発明の第1の実施の形態に係る最適化装置の機能的な構成を示すブロック図である。
(A) Functional Configuration of Optimization Device First, the optimization device according to the first embodiment of the present invention will be described with reference to FIG. FIG. 1 is a block diagram showing a functional configuration of the optimization apparatus according to the first embodiment of the present invention.

図1の最適化装置1は、進化型アルゴリズムとして遺伝的アルゴリズム(GA)を利用して周期関数における決定変数の最適解を算出する。この最適化装置1は、最適化対象8に接続される。遺伝的アルゴリズムでは、最適解を最適個体と呼ぶ。   The optimization apparatus 1 of FIG. 1 calculates the optimal solution of the decision variable in a periodic function using a genetic algorithm (GA) as an evolutionary algorithm. The optimization apparatus 1 is connected to the optimization target 8. In the genetic algorithm, the optimal solution is called the optimal individual.

最適化対象8は、機器の性能を評価する評価システムである。評価システムは、実システムを評価する評価装置またはシミュレータである。本実施の形態では、実システムはエンジンであり、最適化対象8はエンジン評価装置である。   The optimization target 8 is an evaluation system that evaluates the performance of the device. The evaluation system is an evaluation device or a simulator that evaluates an actual system. In the present embodiment, the actual system is an engine, and the optimization target 8 is an engine evaluation device.

最適化装置1は、個体生成部2、世代交代部3、個体集合記憶部4、個体選択部5、適応度算出部6および入出力インタフェース7を含む。個体生成部2は、交叉部21および正規化演算部22を含む。   The optimization apparatus 1 includes an individual generation unit 2, a generation change unit 3, an individual set storage unit 4, an individual selection unit 5, an fitness calculation unit 6, and an input / output interface 7. The individual generation unit 2 includes a crossover unit 21 and a normalization calculation unit 22.

個体生成部2、世代交代部3、個体選択部5および適応度算出部6は、後述するCPU101(図2)が最適化プログラムを実行することにより実現される。個体集合記憶部4は、後述する外部記憶装置106(図2)により構成される。   The individual generation unit 2, the generation change unit 3, the individual selection unit 5, and the fitness calculation unit 6 are realized by a CPU 101 (FIG. 2) described later executing an optimization program. The individual set storage unit 4 includes an external storage device 106 (FIG. 2) described later.

使用者10は、最適化装置1に適応度関数(目的関数)を設定する。適応度関数としては、排出ガス中のCO(一酸化炭素)濃度、HC(炭化水素)濃度、NOx(窒素酸化物)濃度、燃料消費量、出力トルク、スロットル弁の開度、エンジンの回転速度等を設定することができる。本実施の形態では、適応度関数としては、エンジンの排出ガス中のHC濃度およびNOx濃度が用いられる。適応度は、適応度関数の値である。   The user 10 sets an fitness function (objective function) in the optimization device 1. The fitness function includes CO (carbon monoxide) concentration, HC (hydrocarbon) concentration, NOx (nitrogen oxide) concentration, fuel consumption, output torque, throttle valve opening, engine speed in exhaust gas. Etc. can be set. In the present embodiment, HC concentration and NOx concentration in engine exhaust gas are used as the fitness function. The fitness is a value of the fitness function.

ここで、遺伝的アルゴリズムの個体とは、最適化問題の解の候補であり、1または複数の決定変数(制御パラメータ)および1または複数の適応度を有する。決定変数は、最適化されるべき変数である。1または複数の決定変数は決定変数ベクトルで表される。この場合、各決定変数は、決定変数ベクトルの要素である。遺伝的アルゴリズムでは、決定変数は遺伝子と呼ばれる。本実施の形態では、決定変数ベクトルは、複数の決定変数の2乗の総和が1となる拘束を有する。後述する例では、決定変数として、時間軸上の複数の区間における燃料噴射量が用いられる。   Here, an individual of a genetic algorithm is a candidate for a solution to an optimization problem, and has one or more decision variables (control parameters) and one or more fitness. A decision variable is a variable to be optimized. One or more decision variables are represented by a decision variable vector. In this case, each decision variable is an element of a decision variable vector. In genetic algorithms, the decision variable is called a gene. In the present embodiment, the decision variable vector has a constraint that the sum of squares of a plurality of decision variables is 1. In the example described later, fuel injection amounts in a plurality of sections on the time axis are used as the decision variable.

個体集合記憶部4は、複数の個体を記憶する。ここで、各個体は、決定変数ベクトルおよび1または複数の適応度からなる。個体選択部5は、個体集合記憶部4に記憶された複数の個体から子個体の生成のために用いる所定数の個体を親個体として選択する。   The individual set storage unit 4 stores a plurality of individuals. Here, each individual consists of a decision variable vector and one or more fitness values. The individual selection unit 5 selects a predetermined number of individuals used for generating child individuals from a plurality of individuals stored in the individual set storage unit 4 as parent individuals.

個体生成部2は、個体選択部5により選択された所定数の親個体から複数の子個体を生成し、子個体の決定変数ベクトルを個体集合記憶部4に与えるとともに入出力インタフェース7を介して最適化対象8に与える。個体生成部2の交叉部21および正規化演算部22の機能の詳細については後述する。   The individual generation unit 2 generates a plurality of child individuals from a predetermined number of parent individuals selected by the individual selection unit 5, gives a decision variable vector of the child individuals to the individual set storage unit 4, and via the input / output interface 7. The optimization object 8 is given. Details of the functions of the crossover unit 21 and the normalization calculation unit 22 of the individual generation unit 2 will be described later.

最適化対象8は、最適化装置1から与えられた個体の決定変数ベクトルに基づいて状態量を出力する。状態量は、例えば、排出ガス中のCO濃度、HC濃度、NOx濃度、燃料消費量、出力トルク、スロットル弁の開度、エンジンの回転速度等の測定値である。本実施の形態では、状態量は、排出ガス中のHC濃度およびNOx濃度の測定値である。   The optimization target 8 outputs a state quantity based on the individual decision variable vector given from the optimization device 1. The state quantity is, for example, a measured value such as CO concentration, HC concentration, NOx concentration, fuel consumption, output torque, throttle valve opening, and engine speed in the exhaust gas. In the present embodiment, the state quantity is a measured value of the HC concentration and NOx concentration in the exhaust gas.

最適化対象8から出力される状態量は、入出力インタフェース7を介して適応度算出部6に入力される。適応度算出部6は、状態量に基づいて適応度を算出し、算出された適応度を個体集合記憶部4に与える。後述する例では、適応度算出部6は、各区間の排出ガス中のHC濃度およびNOx濃度の平均値を適応度としてそれぞれ算出する。個体集合記憶部4は、適応度算出部6により算出された適応度の組および決定変数ベクトルを個体として記憶する。   The state quantity output from the optimization target 8 is input to the fitness calculation unit 6 via the input / output interface 7. The fitness calculation unit 6 calculates fitness based on the state quantity, and gives the calculated fitness to the individual set storage unit 4. In the example described later, the fitness calculation unit 6 calculates the average value of the HC concentration and the NOx concentration in the exhaust gas in each section as the fitness. The individual set storage unit 4 stores the fitness set and the decision variable vector calculated by the fitness calculation unit 6 as individuals.

世代交代部3は、個体集合記憶部4に記憶される複数の個体の適応度に基づいて個体集合記憶部4に記憶される個体集合を更新する。それにより、世代交代が行われる。   The generation change unit 3 updates the individual set stored in the individual set storage unit 4 based on the fitness of a plurality of individuals stored in the individual set storage unit 4. As a result, generational changes are made.

このようにして、個体集合記憶部4には、最適個体を含む個体集合が記憶される。最適化装置1は、最適個体を含む個体集合を使用者10に提示する。   In this way, the individual set storage unit 4 stores an individual set including the optimum individual. The optimization apparatus 1 presents to the user 10 an individual set including the optimal individual.

(b)最適化装置のハードウエア構成
図2は図1の最適化装置1のハードウエア構成を示すブロック図である。
(B) Hardware Configuration of Optimization Device FIG. 2 is a block diagram showing a hardware configuration of the optimization device 1 of FIG.

最適化装置1は、CPU(中央演算処理装置)101、ROM(リードオンリメモリ)102、RAM(ランダムアクセスメモリ)103、入力装置104、表示装置105、外部記憶装置106、記録媒体駆動装置107および入出力インタフェース7を含む。   The optimization device 1 includes a CPU (Central Processing Unit) 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, an input device 104, a display device 105, an external storage device 106, a recording medium driving device 107, and An input / output interface 7 is included.

入力装置104は、キーボード、マウス等からなり、各種指令および各種データを入力するために用いられる。ROM102にはシステムプログラムが記憶される。記録媒体駆動装置107は、CD(コンパクトディスク)ドライブ、DVD(デジタルバーサタイルディスク)ドライブ、フレキシブルディスクドライブ等からなり、CD、DVD、フレキシブルディスク等の記録媒体109に対してデータの読み書きを行う。   The input device 104 includes a keyboard, a mouse, and the like, and is used for inputting various commands and various data. The ROM 102 stores a system program. The recording medium driving device 107 includes a CD (compact disk) drive, a DVD (digital versatile disk) drive, a flexible disk drive, and the like, and reads / writes data from / to a recording medium 109 such as a CD, DVD, or flexible disk.

記録媒体109には、最適化プログラムが記録されている。外部記憶装置106は、ハードディスク装置等からなり、記録媒体駆動装置107を介して記録媒体109から読み込まれた最適化プログラムおよび各種データを記憶する。CPU101は、外部記憶装置106に記憶された最適化プログラムをRAM103上で実行する。   An optimization program is recorded on the recording medium 109. The external storage device 106 includes a hard disk device or the like, and stores an optimization program and various data read from the recording medium 109 via the recording medium driving device 107. The CPU 101 executes the optimization program stored in the external storage device 106 on the RAM 103.

表示装置105は、液晶表示パネル、CRT(陰極線管)等からなり、個体集合等の各種画像を表示する。入出力インタフェース7には最適化対象8が無線通信または有線通信により接続される。入出力インタフェース7は、最適化対象8から出力される状態量を外部記憶装置106に転送するとともに、最適化プログラムにより生成された個体の適応度の組を最適化対象8に与える。   The display device 105 includes a liquid crystal display panel, a CRT (cathode ray tube), and the like, and displays various images such as an individual set. An optimization target 8 is connected to the input / output interface 7 by wireless communication or wired communication. The input / output interface 7 transfers the state quantity output from the optimization target 8 to the external storage device 106 and provides the optimization target 8 with a set of individual fitness values generated by the optimization program.

なお、最適化プログラムを記録する記録媒体109として、ROM等の半導体メモリ、ハードディスク等の種々の記録媒体を用いることができる。また、最適化プログラムを通信回線等の通信媒体を介して外部記憶装置106にダウンロードし、RAM103上で実行してもよい。   As the recording medium 109 for recording the optimization program, various recording media such as a semiconductor memory such as a ROM and a hard disk can be used. Alternatively, the optimization program may be downloaded to the external storage device 106 via a communication medium such as a communication line and executed on the RAM 103.

ここで、記録媒体109は、コンピュータで読み取り可能な記録媒体であれば、電子的読み取り方式、磁気的読み取り方式、光学的読み取り方式またはその他のあらゆる読み取り方式の記録媒体を含む。例えば、上記のCD、DVDおよびフレキシブルディスクの他、CDV(コンパクトディスクビデオ)等の光学的読取方式記録媒体、RAM、ROM等の半導体記録媒体、ハードディスク等の磁気記録型記録媒体、MO(光磁気ディスク)等の磁気記憶/光学的読取方式記録媒体を用いることができる。   Here, as long as the recording medium 109 is a computer-readable recording medium, the recording medium 109 includes an electronic reading method, a magnetic reading method, an optical reading method, or any other reading method. For example, in addition to the above-mentioned CD, DVD and flexible disk, optical reading type recording medium such as CDV (compact disk video), semiconductor recording medium such as RAM and ROM, magnetic recording type recording medium such as hard disk, MO (magneto-optical) A magnetic storage / optical reading type recording medium such as a disk) can be used.

(c)燃料噴射パターンの最適化への適用
図3は最適化装置を燃料噴射パターンの最適化に適用する方法を説明するための図である。
(C) Application to Optimization of Fuel Injection Pattern FIG. 3 is a diagram for explaining a method of applying the optimization device to optimization of the fuel injection pattern.

燃料噴射量を一定としたまま、ある時間内で種々のパターンで燃料噴射を行うことを考える。この燃料噴射パターンの違いにより、燃料の壁面付着および燃焼状態が変化し、結果的に排出ガス中の有害成分の量に違いが生じる。   Consider performing fuel injection in various patterns within a certain time while keeping the fuel injection amount constant. Due to the difference in the fuel injection pattern, the adhesion of the fuel to the wall surface and the combustion state change, resulting in a difference in the amount of harmful components in the exhaust gas.

図3の例では、燃料噴射時期を一定とした状態で燃料噴射開始時点0から燃料噴射終了時点t2までを均等に5区間に分割している。ここで、燃料噴射量の合計は一定であるとする。   In the example of FIG. 3, the fuel injection timing is constant and the fuel injection start time 0 to the fuel injection end time t2 are equally divided into five sections. Here, it is assumed that the total fuel injection amount is constant.

各区間の重みをその都度正規化する方法で最適化を行うと、解は無限に存在することになる。そのため、個体の探索の効率が悪くなると考えられる。   If optimization is performed by a method of normalizing the weight of each section each time, the solutions exist infinitely. Therefore, it is considered that the efficiency of searching for an individual is deteriorated.

ある区間の燃料噴射量をxi 2(i=1,…,5)とすると、全区間の燃料噴射量の合計はx1 2+…+x5 2=1となる。それにより、燃料噴射量ベクトルxは4次元単位球面上に分布する点であることがわかる。したがって、燃料噴射パターンの最適化に詳細を以下に述べる超球面上の交叉方法(UNDX−H)を適用することができる。その結果、燃料噴射パターンの最適化を効率的に行うことができる。 If the fuel injection amount in a certain section is x i 2 (i = 1,..., 5), the total fuel injection amount in all sections is x 1 2 +... + X 5 2 = 1. Thereby, it is understood that the fuel injection amount vector x is a point distributed on the four-dimensional unit spherical surface. Therefore, the hyperspherical crossover method (UNDX-H) described in detail below can be applied to the optimization of the fuel injection pattern. As a result, the fuel injection pattern can be optimized efficiently.

(d)最適化装置の全体処理
図4は図1の最適化装置1の全体処理を示すフローチャートである。図4に示すように、まず、個体生成部2は、予め定められた決定変数の範囲内で個体をランダムに生成することにより初期個体集合を生成し(ステップS1)、生成された初期個体集合の各個体の決定変数ベクトルを最適化対象8に順次出力する(ステップS2)。それにより、最適化対象8から状態量が順次出力される。
(D) Overall Processing of Optimization Device FIG. 4 is a flowchart showing overall processing of the optimization device 1 of FIG. As shown in FIG. 4, first, the individual generation unit 2 generates an initial individual set by randomly generating individuals within a predetermined decision variable range (step S1), and the generated initial individual set. Are sequentially output to the optimization target 8 (step S2). Thereby, state quantities are sequentially output from the optimization target 8.

適応度算出部6は、最適化対象8から出力される各個体に対応する状態量を取得し(ステップS3)、取得した状態量に基づいて各個体の適応度を算出する(ステップS4)。算出された各個体の適応度は、決定変数ベクトルとともに個体集合記憶部4に記憶される。   The fitness calculation unit 6 acquires a state quantity corresponding to each individual output from the optimization target 8 (step S3), and calculates the fitness of each individual based on the acquired state quantity (step S4). The calculated fitness of each individual is stored in the individual set storage unit 4 together with the decision variable vector.

次に、個体選択部5は、個体集合記憶部4に記憶される複数の個体から新たな子個体の生成に用いる所定数の個体を親個体として選択する(ステップS5)。本実施の形態では、3つの親個体が選択される。   Next, the individual selection unit 5 selects a predetermined number of individuals used for generating a new child individual from a plurality of individuals stored in the individual set storage unit 4 as a parent individual (step S5). In the present embodiment, three parent individuals are selected.

さらに、個体生成部2は、個体選択部5により選択された所定数の親個体を用いた交叉により複数の新たな子個体を生成する(ステップS6)。ここで、各区間の燃料噴射量を決定変数とする決定変数ベクトルは、決定変数の2乗の総和が1となる拘束を有するので、後述する超面上の交叉方法が用いられる。   Furthermore, the individual generation unit 2 generates a plurality of new child individuals by crossover using a predetermined number of parent individuals selected by the individual selection unit 5 (step S6). Here, since the decision variable vector having the fuel injection amount of each section as a decision variable has a constraint that the sum of the squares of the decision variables is 1, a crossover method on a super plane described later is used.

個体生成部2は、各子個体の決定変数ベクトルを最適化対象8に順次出力する(ステップS7)。それにより、最適化対象8から状態量が順次出力される。   The individual generation unit 2 sequentially outputs the decision variable vector of each child individual to the optimization target 8 (step S7). Thereby, state quantities are sequentially output from the optimization target 8.

適応度算出部6は、最適化対象8から出力される各子個体に対応する状態量を取得し(ステップS8)、取得した状態量に基づいて各子個体の適応度を算出する(ステップS9)。算出された各子個体の適応度は、決定変数ベクトルとともに個体集合記憶部4に記憶される。   The fitness calculation unit 6 acquires a state quantity corresponding to each child individual output from the optimization target 8 (step S8), and calculates the fitness of each child individual based on the acquired state quantity (step S9). ). The calculated fitness of each child individual is stored in the individual set storage unit 4 together with the decision variable vector.

世代交代部3は、各子個体および各親個体の適応度に基づいて子個体を親個体と入れ換えることにより個体集合記憶部4に記憶される個体集合を更新する(ステップS10)。この場合、世代交代部3は、適応度の大小比較による選択、適応度の高さにより決定される確率による選択、およびランダム選択のうち少なくとも1つの方法で個体集合を更新する。それにより、世代交代が行われる。   The generation change unit 3 updates the individual set stored in the individual set storage unit 4 by replacing the child individual with the parent individual based on the fitness of each child individual and each parent individual (step S10). In this case, the generation change unit 3 updates the individual set by at least one method selected from selection based on a comparison of fitness levels, selection based on the probability determined by the high fitness level, and random selection. As a result, generational changes are made.

ここで、世代とは、個体集合から親個体を選択する選択ステップ、交叉により新たな子個体を生成する交叉ステップおよび親個体と子個体とを入れ換える世代交代ステップから構成される。世代交代により、個体集合に属する適応度の悪い個体が淘汰される。   Here, the generation includes a selection step for selecting a parent individual from an individual set, a crossover step for generating a new child individual by crossover, and a generation change step for replacing the parent individual with the child individual. Due to the generation change, individuals with poor fitness belonging to the individual set are deceived.

その後、個体生成部2は、世代数が所定の終了条件に到達したか否かを判定する(ステップS11)。   Thereafter, the individual generation unit 2 determines whether or not the number of generations has reached a predetermined end condition (step S11).

世代数が所定の終了条件に到達していないと判定した場合には、ステップS5に移行する。世代数が所定の終了条件に到達したと判定した場合には、個体生成部2は、個体集合記憶部4に記憶された最適個体を含む個体集合を使用者10に提示し、処理を終了する。   If it is determined that the number of generations has not reached the predetermined end condition, the process proceeds to step S5. If it is determined that the number of generations has reached a predetermined end condition, the individual generation unit 2 presents the individual set including the optimum individual stored in the individual set storage unit 4 to the user 10 and ends the process. .

(e)最適化処理の一例
図5は図1の最適化装置1による最適化処理の一例を示す模式図である。図5の最適化処理では、世代交代モデルとしてMGG(Minimal Generation Gap)を用いている。
(E) Example of Optimization Process FIG. 5 is a schematic diagram illustrating an example of the optimization process performed by the optimization apparatus 1 of FIG. In the optimization process of FIG. 5, MGG (Minimal Generation Gap) is used as a generation change model.

図5に示すように、交叉オペレータとしてUNDX(単峰性正規分布交叉:Unimodal Normal Distribution Crossover)を用いる場合、個体集合Pから3つの親個体p1,p2,p3を選択する。選択された3つの親個体に交叉を行うことにより複数の子個体c1,c2,c3,c4を生成する。親個体p1,p2,p3および子個体c1,c2,c3,c4により家族個体集合Fが構成される。家族個体集合Fの各個体の適応度を得る。   As shown in FIG. 5, when UNDX (Unimodal Normal Distribution Crossover) is used as a crossover operator, three parent individuals p1, p2, and p3 are selected from the individual set P. A plurality of child individuals c1, c2, c3, and c4 are generated by crossing the three selected parent individuals. A family individual set F is composed of the parent individuals p1, p2, p3 and the child individuals c1, c2, c3, c4. The fitness of each individual in the family individual set F is obtained.

家族個体集合Fからエリート選択により最良の適応度を有する個体を選択し、選択された個体を個体集合P内の親個体と置き換える。図5の例では、子個体c2がエリート個体として選択され、個体集合Pの親個体p1と置き換えられる。また、家族個体集合Fの各個体の適応度に比例する確率でルーレットホイール選択を行い、選択された個体を個体集合P内の親個体と置き換える。図5の例では、ルーレットホイール選択により子個体c3が選択され、個体集合Pの親個体p2と置き換えられる。   An individual having the best fitness is selected from the family individual set F by elite selection, and the selected individual is replaced with a parent individual in the individual set P. In the example of FIG. 5, the child individual c2 is selected as an elite individual and is replaced with the parent individual p1 of the individual set P. In addition, roulette wheel selection is performed with a probability proportional to the fitness of each individual in the family individual set F, and the selected individual is replaced with a parent individual in the individual set P. In the example of FIG. 5, the child individual c3 is selected by roulette wheel selection and replaced with the parent individual p2 of the individual set P.

(f)超球面上の交叉方法の基本概念
超球面上の交叉方法について説明する。n次元実数空間Rn において、(n−1)次元単位球面Sn-1 は次式のように定義される。
(F) Basic Concept of Crossover Method on Hypersphere The crossover method on the hypersphere will be described. In the n-dimensional real space R n , the (n−1) -dimensional unit sphere S n−1 is defined as follows:

n-1 ={(x1 ,x2 ,...,xn )∈Rn |x1 2+x2 2+...xn 2=1}
上式において、nは2以上の任意の自然数であり、x1,x2,…,xnはn個の決定変数であり、n次元決定変数ベクトルの要素である。すなわち、n次元実数空間Rnはn個の決定変数により定義される。(n−1)次元単位球面Sn-1 はx1 2+x2 2+…+xn 2=1の条件を満足する。
S n-1 = {(x 1 , x 2 ,..., X n ) ∈R n | x 1 2 + x 2 2 + ... x n 2 = 1}
In the above equation, n is an arbitrary natural number equal to or greater than 2, and x 1 , x 2 ,..., X n are n decision variables and are elements of an n-dimensional decision variable vector. That is, the n-dimensional real space R n is defined by n decision variables. The (n−1) -dimensional unit spherical surface S n−1 satisfies the condition of x 1 2 + x 2 2 +... + X n 2 = 1.

例えば、2次元実数空間R2 において、1次元単位球面S1 はx1 2+x2 2=1の条件を満足する単位円である。3次元実数空間R3 において、2次元単位球面S2 はx1 2+x2 2+x3 2=1の条件を満足する単位球である。 For example, in the two-dimensional real space R 2 , the one-dimensional unit spherical surface S 1 is a unit circle that satisfies the condition x 1 2 + x 2 2 = 1. In the three-dimensional real space R 3 , the two-dimensional unit spherical surface S 2 is a unit sphere that satisfies the condition x 1 2 + x 2 2 + x 3 2 = 1.

n次元実数空間Rn の単位方向ベクトルを求める問題は、個体が(n−1)次元単位球面Sn-1 に分布する問題として一般化できる。 The problem of obtaining the unit direction vector of the n-dimensional real space R n can be generalized as a problem in which individuals are distributed on the (n−1) -dimensional unit sphere S n−1 .

ここで、(n−1)次元単位球面を超球面と呼ぶ。   Here, the (n−1) -dimensional unit sphere is called a hypersphere.

ここで、超球面上の交叉方法について説明する。図6a、図6bおよび図6cは超球面上の交叉方法を説明するための模式図である。本例では、交叉オペレータとして、UNDXが用いられる。図6a、図6bおよび図6cの横軸は決定変数x1、縦軸は決定変数x2である。 Here, the crossover method on the hypersphere will be described. 6a, 6b and 6c are schematic diagrams for explaining a crossover method on a hypersphere. In this example, UNDX is used as the crossover operator. 6A, 6B, and 6C, the horizontal axis is the decision variable x 1 , and the vertical axis is the decision variable x 2 .

図6aにおいて、決定変数x1および決定変数x2により定義される2次元実数空間R2 において、超球面としてx1 2+x2 2=1の条件を満足する単位円UCを設定する。 In FIG. 6a, a unit circle UC that satisfies the condition x 1 2 + x 2 2 = 1 is set as a hypersphere in the two-dimensional real space R 2 defined by the decision variable x 1 and the decision variable x 2 .

図6aに示すように、単位円UC上に3つの親個体P1,P2,P3が設定される。親個体P1,P2,P3は、決定変数x1および決定変数x2を要素とする2次元単位方向ベクトルである。UNDXでは、3つの親個体P1,P2,P3の位置関係に基づいて定められる正規分布乱数に従って子個体を生成する。 As shown in FIG. 6a, three parent individuals P 1 , P 2 and P 3 are set on the unit circle UC. Parent individuals P 1 , P 2 , and P 3 are two-dimensional unit direction vectors having the decision variable x 1 and the decision variable x 2 as elements. In UNDX, child individuals are generated according to normal distribution random numbers determined based on the positional relationship between the three parent individuals P 1 , P 2 , and P 3 .

図6bに示すように、3つの親個体P1,P2,P3から複数の子個体C1’〜C5’が生成される。子個体C1’〜C5’は、決定変数x1および決定変数x2を要素とする2次元決定変数ベクトルである。 As shown in FIG. 6b, a plurality of child individuals C 1 ′ to C 5 ′ are generated from the three parent individuals P 1 , P 2 , P 3 . The child individuals C 1 ′ to C 5 ′ are two-dimensional decision variable vectors having the decision variable x 1 and the decision variable x 2 as elements.

次に、図6cに示すように、複数の子個体C1’〜C5’をそれぞれ正規化することにより単位円UCに複数の子個体C1〜C5を得る。子個体C1〜C5は、決定変数x1および決定変数x2を要素とする2次元単位方向ベクトルである。 Next, as shown in FIG. 6c, a plurality of child individuals C 1 to C 5 are obtained in the unit circle UC by normalizing the plurality of child individuals C 1 ′ to C 5 ′, respectively. The child individuals C 1 to C 5 are two-dimensional unit direction vectors having the decision variable x 1 and the decision variable x 2 as elements.

本実施の形態において、n次元実数空間Rn または2次元実数空間(2次元実数平面)R2 がN次元変数空間に相当し、(n−1)次元単位球面Sn-1 、超球面または単位円が(m−1)次元単位球面に相当し、n個の決定変数x,x,…,xがN個の変数およびm個の変数に相当する。すなわち、本実施の形態では、N=m=nである。なお、N個の変数がn個の決定変数以外の変数を含んでもよい。その場合には、N>m=nとなる。 In the present embodiment, the n-dimensional real space R n or the two-dimensional real space (two-dimensional real plane) R 2 corresponds to the N-dimensional variable space, and the (n−1) -dimensional unit spherical surface S n−1 , hypersphere or A unit circle corresponds to an (m−1) -dimensional unit sphere, and n decision variables x 1 , x 2 ,..., X n correspond to N variables and m variables. That is, in this embodiment, N = m = n. Note that the N variables may include variables other than n decision variables. In that case, N> m = n.

(h)超球面上の交叉方法の手順
図7は超球面上の交叉処理を示すフローチャートである。図7の交叉処理は、図1の個体選択部5、交叉部21および正規化演算部22により行われる。
(H) Procedure for Crossover Method on Hypersphere FIG. 7 is a flowchart showing the crossover process on the hypersphere. The crossover process of FIG. 7 is performed by the individual selection unit 5, the crossover unit 21, and the normalization calculation unit 22 of FIG.

まず、交叉部21は、個体集合を(n−1)次元単位球面Sn-1 (超球面)上に配置する(ステップS21)。超球面上に分布する個体集合は、個体集合記憶部4に記憶される。 First, the crossing unit 21 places the individual set on the (n−1) -dimensional unit spherical surface S n-1 (hyperspherical surface) (step S21). The individual set distributed on the hypersphere is stored in the individual set storage unit 4.

次に、個体選択部5は、(n−1)次元単位球面Sn-1 (超球面)上に分布する個体集合から所定数の個体を親個体として選択する(ステップS22)。 Next, the individual selection unit 5 selects a predetermined number of individuals as a parent individual from the individual set distributed on the (n−1) -dimensional unit sphere S n-1 (hypersphere) (step S22).

次に、交叉部21は、超球面上から選択された所定数の親個体に対してn次元実数空間Rn 上の点として交叉オペレータを適用することにより複数の子個体を生成する(ステップS23)。各子個体は、n次元実数空間Rn 上の決定変数ベクトルXC’で表される。 Next, the crossover unit 21 generates a plurality of child individuals by applying a crossover operator as points on the n-dimensional real space R n to a predetermined number of parent individuals selected from the hypersphere (step S23). ). Each child individual is represented by a decision variable vector X C ′ on the n-dimensional real space R n .

さらに、正規化演算部22は、各子個体の決定変数ベクトルXC’の大きさが0か否か、すなわち‖XC'‖=0であるか否かを判定する(ステップS24)。 Furthermore, the normalization calculation unit 22 determines whether or not the magnitude of the decision variable vector X C ′ of each child individual is 0, that is, whether ‖X C ′ ‖ = 0 (step S24).

‖XC'‖=0である場合には、ステップS21に戻り、子個体を再度生成する。‖XC'‖=0でない場合には、正規化演算部22は、子個体の決定変数ベクトルXC’に次式の正規化演算を行う(ステップS25)。 If ‖X C ′ ‖ = 0, the process returns to step S21 to generate a child individual again. If ‖X C ′で な い = 0 is not true, the normalization operation unit 22 performs the following normalization operation on the decision variable vector X C ′ of the child individual (step S25).

Figure 0004993061
Figure 0004993061

上式により超球面上に子個体の決定変数ベクトルXCが得られる。 From the above equation, the decision variable vector X C of the child individual is obtained on the hypersphere.

その後、個体選択部5は、必要数の個体が生成されたか否かを判定する(ステップS26)。必要数の個体が生成されていない場合には、ステップS21に戻り、ステップS21〜S26の処理を繰り返す。必要数の個体が生成された場合には、交叉処理を終了する。   Thereafter, the individual selection unit 5 determines whether or not the necessary number of individuals has been generated (step S26). If the required number of individuals has not been generated, the process returns to step S21, and the processes of steps S21 to S26 are repeated. When the required number of individuals is generated, the crossover process is terminated.

交叉オペレータとしてUNDXを用いた超球面上の交叉方法をUNDX−H(UNDX for Hyper sphere)と呼ぶ。UNDX−Hにより超球面上の親個体から生成された子個体は超球面上に分布する。それにより、超球面上での連続性を保持したまま実数値GAによる個体の探索が可能となる。   A hypersphere crossover method using UNDX as a crossover operator is referred to as UNDX-H (UNDX for Hypersphere). Child individuals generated from a parent individual on the hypersphere by UNDX-H are distributed on the hypersphere. As a result, it is possible to search for individuals using the real value GA while maintaining continuity on the hypersphere.

なお、超球面上の交叉方法では、UNDXに限らず、他の実数値GAの交叉オペレータを用いることができる。例えば、交叉オペレータとして、BLX−αを用いてもよい。BLX−αでは、2つの親個体の位置関係から決まる一様分布により子個体を生成する。   Note that the crossover method on the hypersphere is not limited to UNDX, and other crossover operators with real values GA can be used. For example, BLX-α may be used as the crossover operator. In BLX-α, child individuals are generated with a uniform distribution determined from the positional relationship between two parent individuals.

(h)(n−1)次元単位球面上の初期個体集合の生成
図8aおよび図8bは(n−1)次元単位球面上の初期個体集合の生成処理の一例を示す図である。図8aおよび図8bでは、n次元実数空間Rn が2次元実数空間R2 であり、(n−1)次元単位球面Sn-1 が1次元単位球面S1 (単位円)である場合が示される。図8aおよび図8bの横軸は決定変数x1、縦軸は決定変数x2である。
(H) Generation of Initial Individual Set on (n-1) Dimensional Unit Spherical FIGS. 8a and 8b are diagrams illustrating an example of processing for generating an initial individual set on an (n-1) dimensional unit sphere. In FIGS. 8a and 8b, the n-dimensional real space R n is a two-dimensional real space R 2 and the (n−1) -dimensional unit sphere S n-1 is a one-dimensional unit sphere S 1 (unit circle). Indicated. 8A and 8B, the horizontal axis is the decision variable x 1 , and the vertical axis is the decision variable x 2 .

図8aに示すように、2次元実数空間R2 に複数の個体がランダムに生成される。この場合、複数の個体は2次元正規分布を有する。 As shown in FIG. 8a, a plurality of individuals in a two-dimensional real space R 2 are randomly generated. In this case, the plurality of individuals have a two-dimensional normal distribution.

次に、図8bに示すように、上記の正規化演算により2次元実数空間R2 上の複数の個体が単位円上の個体に変換される。 Next, as shown in FIG. 8b, the normalization operation of the plurality of individuals in the two-dimensional real space R 2 is converted to an individual on the unit circle.

(i)第1の実施の形態の効果
本実施の形態に係る最適化装置1においては、個体の交叉に超球面上の交叉が用いられる。この場合、超球面上の親個体から生成された子個体は超球面上に分布する。それにより、超球面上での連続性を保持したまま実数値GAによる個体の探索が可能となる。
(I) Effects of the First Embodiment In the optimization apparatus 1 according to the present embodiment, crossing on a hypersphere is used for crossing individuals. In this case, child individuals generated from parent individuals on the hypersphere are distributed on the hypersphere. As a result, it is possible to search for individuals using the real value GA while maintaining continuity on the hypersphere.

また、個体を超球面に設定する操作および正規化演算により連続性を保持した交叉が行われるので、全決定変数の2乗和が1となる拘束条件を有する決定変数ベクトルの最適化の処理が煩雑とならない。   In addition, since crossover with continuity is performed by an operation of setting an individual to a hypersphere and normalization calculation, optimization processing of a decision variable vector having a constraint condition that the sum of squares of all decision variables is 1 is performed. It is not complicated.

これらの結果、全決定変数の2乗和が1となる拘束条件を有する決定変数ベクトルの最適化を効率的に行うことが可能となる。   As a result, it is possible to efficiently optimize a decision variable vector having a constraint that the sum of squares of all decision variables is 1.

(2)第2の実施の形態
本実施の形態では、個体の交叉に後述する周期関数用の交叉が用いられる。
(2) Second Embodiment In this embodiment, crossover for a periodic function, which will be described later, is used for individual crossover.

(a)最適化装置の機能的な構成
次に、本発明の第2の実施の形態に係る最適化装置を図9に基づき説明する。図9は本発明の第2の実施の形態に係る最適化装置の機能的な構成を示すブロック図である。
(A) Functional Configuration of Optimization Device Next, an optimization device according to the second embodiment of the present invention will be described with reference to FIG. FIG. 9 is a block diagram showing a functional configuration of the optimization apparatus according to the second embodiment of the present invention.

図9の最適化装置1が図1の最適化装置1と異なるのは、個体生成部2の構成である。図9の最適化装置1の他の部分の構成は、図1の最適化装置1の対応する部分の構成と同様である。また、図9の最適化装置1のハードウエアの構成は、図2に示した構成と同様である。   The optimization device 1 in FIG. 9 is different from the optimization device 1 in FIG. 1 in the configuration of the individual generation unit 2. The configuration of the other parts of the optimization apparatus 1 in FIG. 9 is the same as the configuration of the corresponding part of the optimization apparatus 1 in FIG. Further, the hardware configuration of the optimization apparatus 1 in FIG. 9 is the same as the configuration shown in FIG.

使用者10は、最適化装置1に適応度関数(目的関数)を設定する。適応度関数としては、排出ガス中のCO(一酸化炭素)濃度、HC(炭化水素)濃度、NOx(窒素酸化物)濃度、燃料消費量、出力トルク、スロットル弁の開度、エンジンの回転速度等を設定することができる。本実施の形態では、適応度関数としては、エンジンの排出ガス中のHC濃度およびNOx濃度が用いられる。適応度は、適応度関数の値である。   The user 10 sets an fitness function (objective function) in the optimization device 1. The fitness function includes CO (carbon monoxide) concentration, HC (hydrocarbon) concentration, NOx (nitrogen oxide) concentration, fuel consumption, output torque, throttle valve opening, engine speed in exhaust gas. Etc. can be set. In the present embodiment, HC concentration and NOx concentration in engine exhaust gas are used as the fitness function. The fitness is a value of the fitness function.

また、本実施の形態では、決定変数として、燃料噴射時期、点火時期、吸気バルブタイミングおよび排気バルブタイミングが用いられる。すなわち、決定変数ベクトルの次数は4である。ここで、燃料噴射時期を決定変数とする適応度関数は周期関数である。   In this embodiment, fuel injection timing, ignition timing, intake valve timing, and exhaust valve timing are used as decision variables. That is, the order of the decision variable vector is 4. Here, the fitness function having the fuel injection timing as a determining variable is a periodic function.

最適化対象8から出力される状態量は、例えば、排出ガス中のCO濃度、HC濃度、NOx濃度、燃料消費量、出力トルク、スロットル弁の開度、エンジンの回転速度等の測定値である。本実施の形態では、状態量は、排出ガス中のHC濃度およびNOx濃度の測定値である。   The state quantity output from the optimization target 8 is, for example, measured values such as CO concentration, HC concentration, NOx concentration, fuel consumption, output torque, throttle valve opening, and engine speed in the exhaust gas. . In the present embodiment, the state quantity is a measured value of the HC concentration and NOx concentration in the exhaust gas.

図9に示すように、個体生成部2は、交叉部21、三角関数演算部23および逆正接関数演算部24を含む。個体生成部2の詳細な動作については後述する。本実施の形態に係る最適化装置1においては、周期関数を有する個体の交叉として単位円上の交叉が行われる。   As shown in FIG. 9, the individual generation unit 2 includes a crossover unit 21, a trigonometric function calculation unit 23, and an arctangent function calculation unit 24. Detailed operation of the individual generation unit 2 will be described later. In the optimization apparatus 1 according to the present embodiment, crossover on a unit circle is performed as crossover of individuals having a periodic function.

本実施の形態において、燃料噴射時期、点火時期、吸気バルブタイミングおよび排気バルブタイミングがN個の変数に相当し、燃料噴射時期がm個の変数に相当する。すなわち、本実施の形態では、N=4およびm=1である。   In the present embodiment, the fuel injection timing, the ignition timing, the intake valve timing, and the exhaust valve timing correspond to N variables, and the fuel injection timing corresponds to m variables. That is, in this embodiment, N = 4 and m = 1.

(b)最適化対象の構成
図10は最適化対象8の構成の一例を示すブロック図である。図10の最適化対象8はエンジン評価装置である。
(B) Configuration of Optimization Target FIG. 10 is a block diagram illustrating an example of the configuration of the optimization target 8. The optimization target 8 in FIG. 10 is an engine evaluation device.

最適化対象8は、ECU(エンジン制御ユニット)81、エンジン82および排出ガス分析計83を備える。   The optimization target 8 includes an ECU (engine control unit) 81, an engine 82, and an exhaust gas analyzer 83.

エンジン82の吸気ポート84には燃料噴射装置86および吸気バルブ87が設けられ、排気ポート85には排気バルブ88が設けられている。また、シリンダヘッド89には、点火プラグ90が設けられている。   A fuel injection device 86 and an intake valve 87 are provided in the intake port 84 of the engine 82, and an exhaust valve 88 is provided in the exhaust port 85. The cylinder head 89 is provided with a spark plug 90.

ECU81は、最適化装置1からシリアル通信により決定変数ベクトルを受ける。本例では、決定変数ベクトルは、燃料噴射時期、点火時期、吸気バルブタイミングおよび排気バルブタイミングを要素として含む。ECU81は、クランクシャフト91の回転角度(クランク回転角度)を示す信号を受け、決定変数ベクトルに基づいて燃料噴射装置86の燃料噴射タイミング、点火プラグ90の点火タイミング、吸気バルブ87の開閉タイミング(吸気バルブタイミング)および排気バルブ88の開閉タイミング(排気バルブタイミング)を制御する。   The ECU 81 receives the decision variable vector from the optimization device 1 by serial communication. In this example, the decision variable vector includes fuel injection timing, ignition timing, intake valve timing, and exhaust valve timing as elements. The ECU 81 receives a signal indicating the rotation angle (crank rotation angle) of the crankshaft 91, and based on the decision variable vector, the fuel injection timing of the fuel injection device 86, the ignition timing of the spark plug 90, and the opening / closing timing of the intake valve 87 (intake air) Valve timing) and the opening / closing timing (exhaust valve timing) of the exhaust valve 88 are controlled.

排出ガス分析計83は、エンジン82からの排出ガス中の成分を分析し、HC濃度およびNOx濃度を示す排出ガスデータを状態量としてシリアル通信により最適化装置1に出力する。   The exhaust gas analyzer 83 analyzes the components in the exhaust gas from the engine 82, and outputs the exhaust gas data indicating the HC concentration and the NOx concentration to the optimization device 1 by serial communication as state quantities.

燃料噴射時期を決定変数とするHC濃度およびNOx濃度は、周期720°の周期関数となる。   The HC concentration and NOx concentration with the fuel injection timing as the determining variables are periodic functions with a period of 720 °.

図10の最適化対象8は、最適化装置1から個体の決定変数ベクトルとして燃料噴射時期、点火時期、吸気バルブタイミングおよび排気バルブタイミングを受け、状態量としてHC濃度およびNOx濃度を出力する。   10 receives fuel injection timing, ignition timing, intake valve timing and exhaust valve timing as individual decision variable vectors from the optimization device 1, and outputs HC concentration and NOx concentration as state quantities.

(c)最適化装置の全体処理
図9の最適化装置1の全体処理を図4のフローチャートを用いて説明する。図4に示すように、まず、個体生成部2は、予め定められた決定変数の範囲内で個体をランダムに生成することにより初期個体集合を生成し(ステップS1)、生成された初期個体集合の各個体の決定変数ベクトルを最適化対象8に順次出力する(ステップS2)。それにより、最適化対象8から状態量が順次出力される。
(C) Overall Processing of Optimization Device The overall processing of the optimization device 1 in FIG. 9 will be described using the flowchart in FIG. As shown in FIG. 4, first, the individual generation unit 2 generates an initial individual set by randomly generating individuals within a predetermined decision variable range (step S1), and the generated initial individual set. Are sequentially output to the optimization target 8 (step S2). Thereby, state quantities are sequentially output from the optimization target 8.

適応度算出部6は、最適化対象8から出力される各個体に対応する状態量を取得し(ステップS3)、取得した状態量に基づいて各個体の適応度を算出する(ステップS4)。算出された各個体の適応度は、決定変数ベクトルとともに個体集合記憶部4に記憶される。   The fitness calculation unit 6 acquires a state quantity corresponding to each individual output from the optimization target 8 (step S3), and calculates the fitness of each individual based on the acquired state quantity (step S4). The calculated fitness of each individual is stored in the individual set storage unit 4 together with the decision variable vector.

次に、個体選択部5は、個体集合記憶部4に記憶される複数の個体から新たな子個体の生成に用いる所定数の個体を親個体として選択する(ステップS5)。本実施の形態では、3つの親個体が選択される。   Next, the individual selection unit 5 selects a predetermined number of individuals used for generating a new child individual from a plurality of individuals stored in the individual set storage unit 4 as a parent individual (step S5). In the present embodiment, three parent individuals are selected.

さらに、個体生成部2は、個体選択部5により選択された所定数の親個体を用いた交叉により複数の新たな子個体を生成する(ステップS6)。ここで、燃料噴射時期を決定変数とする適応度関数は周期関数であるため、燃料噴射時期の要素については後述する交叉方法が用いられ、点火時期、吸気バルブタイミングおよび排気バルブタイミングの3つの要素についてはUNDX等の一般的な交叉方法が用いられる。   Furthermore, the individual generation unit 2 generates a plurality of new child individuals by crossover using a predetermined number of parent individuals selected by the individual selection unit 5 (step S6). Here, since the fitness function having the fuel injection timing as a determining variable is a periodic function, the crossover method described later is used as an element of the fuel injection timing, and the three elements of ignition timing, intake valve timing, and exhaust valve timing are used. In general, a general crossover method such as UNDX is used.

ここで、燃料噴射時期は角度で表される決定変数である。後述するように、角度は、2次元実数空間上で2つの直交する新たな決定変数に分解される。したがって、交叉前には決定変数ベクトルの次数は4であり、交叉時には決定変数ベクトルの次数は5となり、交叉後に決定変数ベクトルの次数は4に戻る。   Here, the fuel injection timing is a decision variable represented by an angle. As will be described later, the angle is decomposed into two orthogonal new decision variables in the two-dimensional real space. Therefore, the order of the decision variable vector is 4 before the crossover, the order of the decision variable vector is 5 at the time of crossover, and the order of the decision variable vector returns to 4 after the crossover.

個体生成部2は、各子個体の決定変数ベクトルを最適化対象8に順次出力する(ステップS7)。それにより、最適化対象8から状態量が順次出力される。   The individual generation unit 2 sequentially outputs the decision variable vector of each child individual to the optimization target 8 (step S7). Thereby, state quantities are sequentially output from the optimization target 8.

適応度算出部6は、最適化対象8から出力される各子個体に対応する状態量を取得し(ステップS8)、取得した状態量に基づいて各子個体の適応度を算出する(ステップS9)。算出された各子個体の適応度は、決定変数ベクトルとともに個体集合記憶部4に記憶される。   The fitness calculation unit 6 acquires a state quantity corresponding to each child individual output from the optimization target 8 (step S8), and calculates the fitness of each child individual based on the acquired state quantity (step S9). ). The calculated fitness of each child individual is stored in the individual set storage unit 4 together with the decision variable vector.

世代交代部3は、各子個体および各親個体の適応度に基づいて子個体を親個体と入れ換えることにより個体集合記憶部4に記憶される個体集合を更新する(ステップS10)。この場合、世代交代部3は、適応度の大小比較による選択、適応度の高さにより決定される確率による選択、およびランダム選択のうち少なくとも1つの方法で個体集合を更新する。それにより、世代交代が行われる。世代交代により、個体集合に属する適応度の悪い個体が淘汰される。   The generation change unit 3 updates the individual set stored in the individual set storage unit 4 by replacing the child individual with the parent individual based on the fitness of each child individual and each parent individual (step S10). In this case, the generation change unit 3 updates the individual set by at least one method selected from selection based on a comparison of fitness levels, selection based on the probability determined by the high fitness level, and random selection. As a result, generational changes are made. Due to the generation change, individuals with poor fitness belonging to the individual set are deceived.

その後、個体生成部2は、世代数が所定の終了条件に到達したか否かを判定する(ステップS11)。   Thereafter, the individual generation unit 2 determines whether or not the number of generations has reached a predetermined end condition (step S11).

世代数が所定の終了条件に到達していないと判定した場合には、ステップS5に移行する。世代数が所定の終了条件に到達したと判定した場合には、個体生成部2は、個体集合記憶部4に記憶された最適個体を含む個体集合を使用者10に提示し、処理を終了する。   If it is determined that the number of generations has not reached the predetermined end condition, the process proceeds to step S5. If it is determined that the number of generations has reached a predetermined end condition, the individual generation unit 2 presents the individual set including the optimum individual stored in the individual set storage unit 4 to the user 10 and ends the process. .

(d)周期関数用の交叉方法の基本概念
次に、先に述べた超球面上の交叉方法を応用した周期関数用の交叉方法について説明する。2次元実数空間(2次元実数平面)R2 において、1次元単位球面S1 (単位円)は次式のように定義される。
(D) Basic Concept of Crossover Method for Periodic Function Next, a crossover method for a periodic function that applies the above-described crossover method on a hypersphere will be described. In the two-dimensional real space (two-dimensional real plane) R 2 , the one-dimensional unit spherical surface S 1 (unit circle) is defined as follows:

1 ={(x,y)∈R2 |x2 +y2 =1}
上式において、xおよびyは2次元実数平面R2の座標である。単位円S1 はx2+y2=1の条件を満足する。
S 1 = {(x, y) ∈R 2 | x 2 + y 2 = 1}
In the above equation, x and y are the coordinates of the two-dimensional real plane R 2 . The unit circle S 1 satisfies the condition x 2 + y 2 = 1.

ここで、角度θ∈[−π,π]を決定変数として有する周期関数f(θ)について角度θを単位円S1 上の点として最適化することを考える。すなわち、決定変数を2次元実数平面R2 における単位方向ベクトルとして考える。 Here, it is considered that the angle θ is optimized as a point on the unit circle S 1 for the periodic function f (θ) having the angle θ∈ [−π, π] as a decision variable. In other words, consider the decision variable as a unit direction vector in the two-dimensional real plane R 2.

図11a、図11bおよび図11cは単位円上の交叉方法を説明するための模式図である。本例では、交叉オペレータとしてUNDXが用いられる。   11a, 11b, and 11c are schematic diagrams for explaining a crossing method on a unit circle. In this example, UNDX is used as the crossover operator.

図11aにおいて、x座標およびy座標を有する2次元実数平面R2 において、x2+y2=1の条件を満足する単位円UCを設定する。各個体の決定変数ベクトルの角度θをx座標およびy座標に分解する。この場合、決定変数として角度θを有する各個体について単位円上の座標(x,y)を次式により算出する。 In FIG. 11a, a unit circle UC that satisfies the condition of x 2 + y 2 = 1 is set in the two-dimensional real plane R 2 having x and y coordinates. The angle θ of the decision variable vector of each individual is decomposed into the x coordinate and the y coordinate. In this case, the coordinates (x, y) on the unit circle are calculated by the following formula for each individual having the angle θ as a decision variable.

(x,y)=(cosθ,sinθ)
すなわち、x座標で表される変数およびy座標で表される変数を要素とする新たな決定変数ベクトルを考える。この結果、算出された座標(x,y)に基づいて各個体の探索点は2次元実数平面R2 に設定される。
(X, y) = (cos θ, sin θ)
That is, consider a new decision variable vector whose elements are a variable represented by an x coordinate and a variable represented by a y coordinate. As a result, the search point of each individual is set on the two-dimensional real plane R 2 based on the calculated coordinates (x, y).

図11aの例では、単位円UC上に3つの親個体P1,P2,P3が設定される。3つの親個体P1,P2,P3の決定変数は角度θ1,θ2,θ3である。UNDXでは、3つの親個体P1,P2,P3の位置関係に基づいて定められる正規分布乱数に従って子個体を生成する。 In the example of FIG. 11a, three parent individuals P 1 , P 2 and P 3 are set on the unit circle UC. The decision variables of the three parent individuals P 1 , P 2 , P 3 are the angles θ 1 , θ 2 , θ 3 . In UNDX, child individuals are generated according to normal distribution random numbers determined based on the positional relationship between the three parent individuals P 1 , P 2 , and P 3 .

図11bに示すように、3つの親個体P1,P2,P3のx座標およびy座標から複数の子個体C1〜C5が生成される。 As shown in FIG. 11b, a plurality of child individuals C 1 to C 5 are generated from the x and y coordinates of the three parent individuals P 1 , P 2 and P 3 .

次に、図11cに示すように、2次元実数平面R2 上の各子個体C1〜C5のx座標およびy座標について次式の逆正接関数により決定変数である角度θC1〜θC5をそれぞれ得る。次式では、複数の子個体C1〜C5の角度θC1〜θC5を角度θCとする。 Next, as shown in FIG. 11c, the angles θ C1 to θ C5 that are decision variables for the x-coordinate and y-coordinate of each of the child individuals C 1 to C 5 on the two-dimensional real number plane R 2 by the arctangent function of the following equation: Get each. In the following equation, angles θ C1 to θ C5 of a plurality of offspring C 1 to C 5 are defined as an angle θ C.

Figure 0004993061
Figure 0004993061

上式において、sign(y)はyが正のときに+1となり、yが負のときに−1となる。   In the above equation, sign (y) becomes +1 when y is positive, and becomes -1 when y is negative.

第2の実施の形態の交叉方法は、第1の実施の形態の交叉方法においてを超球面として単位円を用いた場合と等価である。本実施の形態では、最終的に決定変数として角度θを有する新しい個体(探索点)求める場合に、第1の実施の形態における正規化演算を行うことなく、逆正接関数を用いて直接決定変数である角度θが求められる。   The crossover method of the second embodiment is equivalent to the case where a unit circle is used as a hypersphere in the crossover method of the first embodiment. In the present embodiment, when a new individual (search point) having an angle θ is finally obtained as a decision variable, the decision variable is directly determined using an arctangent function without performing the normalization operation in the first embodiment. Is obtained.

(e)周期関数用の交叉方法の手順
図12は単位円上の交叉処理を示すフローチャートである。図12の交叉処理は、図9の個体選択部5、交叉部21、三角関数演算部23および逆正接関数演算部24により行われる。
(E) Procedure of Periodic Function Crossover Method FIG. 12 is a flowchart showing the crossover process on a unit circle. The crossover process of FIG. 12 is performed by the individual selection unit 5, the crossover unit 21, the trigonometric function calculation unit 23, and the arctangent function calculation unit 24 of FIG.

まず、三角関数演算部23は、各個体の決定変数である角度θを三角関数を用いた演算により2次元実数平面R2 上のx座標およびy座標に分解し(ステップS31)、個体集合を単位円上に配置する(ステップS32)。単位円上に分布する個体集合は、個体集合記憶部4に記憶される。 First, the trigonometric function calculation unit 23 decomposes the angle θ, which is a decision variable of each individual, into x and y coordinates on the two-dimensional real plane R 2 by calculation using a trigonometric function (step S31), It arrange | positions on a unit circle (step S32). The individual set distributed on the unit circle is stored in the individual set storage unit 4.

次に、個体選択部5は、単位円上に分布する個体集合から所定数の個体を親個体として選択する(ステップS33)。   Next, the individual selection unit 5 selects a predetermined number of individuals as a parent individual from the set of individuals distributed on the unit circle (step S33).

次に、交叉部21は、単位円上から選択された所定数の親個体に対して2次元実数平面R2 上の点として交叉オペレータを適用することにより複数の子個体を生成する(ステップS34)。 Next, the crossover unit 21 generates a plurality of child individuals by applying a crossover operator as points on the two-dimensional real plane R 2 to a predetermined number of parent individuals selected from the unit circle (step S34). ).

逆正接関数演算部24は、子個体のx座標およびy座標を上式の逆正接関数を用いた演算により角度に変換する(ステップS35)。それにより、子個体の決定変数である角度θC が得られる。 The arc tangent function calculation unit 24 converts the x coordinate and y coordinate of the child individual into an angle by calculation using the arc tangent function of the above equation (step S35). Thereby, an angle θ C that is a decision variable of the child individual is obtained.

その後、個体選択部5は、必要数の個体が生成されたか否かを判定する(ステップS36)。必要数の個体が生成されていない場合には、ステップS31に戻り、ステップS31〜S36の処理を繰り返す。必要数の個体が生成された場合には、交叉処理を終了する。   Thereafter, the individual selection unit 5 determines whether or not the required number of individuals has been generated (step S36). If the necessary number of individuals has not been generated, the process returns to step S31, and the processes of steps S31 to S36 are repeated. When the required number of individuals is generated, the crossover process is terminated.

交叉オペレータとしてUNDXを用いた単位円上の交叉方法をUNDX−P(UNDX for Periodic function)と呼ぶ。   A crossover method on a unit circle using UNDX as a crossover operator is called UNDX-P (UNDX for Periodic function).

なお、単位円上の交叉方法では、UNDXに限らず、他の実数値GAの交叉オペレータを用いることができる。例えば、交叉オペレータとして、BLX−αを用いてもよい。   Note that the crossover method on the unit circle is not limited to UNDX, and other crossover operators with real values GA can be used. For example, BLX-α may be used as the crossover operator.

(f)高次元の周期関数への単位円上の交叉方法の拡張
n次元角度ベクトル(n次元決定変数ベクトル)θ=(θ1 ,θ2 ,…,θn )についてのn次元の周期関数f(θ)に単位円上の交叉方法を用いる方法を説明する。nは任意の自然数である。ここで、θ1 ,θ2 ,…,θnは決定変数である角度であり、n次元決定変数ベクトルの要素である。
(F) Extension of crossover method on unit circle to high-dimensional periodic function n-dimensional periodic function for n-dimensional angle vector (n-dimensional decision variable vector) θ = (θ 1 , θ 2 ,..., Θ n ) A method using a crossover method on a unit circle for f (θ) will be described. n is an arbitrary natural number. Here, θ 1 , θ 2 ,..., Θ n are angles that are decision variables, and are elements of an n-dimensional decision variable vector.

決定変数である角度θi について(xi,yi)=(cosθi,sinθi)から単位円上のxi座標およびyi座標をそれぞれ算出する。ここで、i=1,2,…,nである。それにより、各個体を2n次元実数平面R2nにそれぞれ配置する。2n次元実数平面R2nに分布する個体から親個体を選択し、選択された親個体に対してUNDXを行い、各子個体のxi 座標およびyi 座標をそれぞれ算出する。その後、各子個体のxi 座標およびyi 座標を逆正接関数を用いた演算により各子個体の決定変数である角度θCiに変換する。 The x i and y i coordinates on the unit circle are calculated from (x i , y i ) = (cos θ i , sin θ i ) for the angle θ i that is the decision variable. Here, i = 1, 2,..., N. Thereby, each individual is arranged on the 2n-dimensional real number plane R 2n . A parent individual is selected from the individuals distributed in the 2n-dimensional real number plane R 2n , UNDX is performed on the selected parent individual, and the x i and y i coordinates of each child individual are calculated. Thereafter, the x i and y i coordinates of each child individual are converted into an angle θ Ci which is a decision variable of each child individual by an operation using an arctangent function.

この場合、単位円が1次元単位球面に相当し、θ1,θ2,…,θnがm個の変数の組に相当し、n次元実数空間Rn がN次元変数空間に相当し、2n次元実数平面R2nが[(N−m)+2m]次元変数空間に相当し、n次元角度ベクトル(n次元決定変数ベクトル)θ=(θ1 ,θ2 ,…,θn )が変数ベクトルに相当する。すなわち、本例では、N=m=nである。 In this case, the unit circle corresponds to a one-dimensional unit sphere, θ 1 , θ 2 ,..., Θ n correspond to a set of m variables, the n-dimensional real space R n corresponds to an N-dimensional variable space, The 2n-dimensional real number plane R 2n corresponds to a [(N−m) + 2m] -dimensional variable space, and the n-dimensional angle vector (n-dimensional decision variable vector) θ = (θ 1 , θ 2 ,..., Θ n ) is a variable vector. It corresponds to. That is, in this example, N = m = n.

図13は単位円上の交叉方法をn次元角度ベクトルからなる決定変数ベクトルへ拡張する方法を示す模式図である。本例では、n=3である。   FIG. 13 is a schematic diagram showing a method of extending the crossover method on the unit circle to a decision variable vector composed of an n-dimensional angle vector. In this example, n = 3.

図13に示すように、決定変数である角度θ1 について(x1,y1)=(cosθ1,sinθ1)から単位円上のx1座標およびy1座標をそれぞれ算出する。上記の単位円上の交叉方法により各子個体のx1座標およびy1座標をそれぞれ算出する。その後、各子個体のx1座標およびy1座標を逆正接関数により各子個体の決定変数である角度θC1を算出する。 As shown in FIG. 13, the x 1 coordinate and the y 1 coordinate on the unit circle are calculated from (x 1 , y 1 ) = (cos θ 1 , sin θ 1 ) for the angle θ 1 that is a decision variable. The x 1 coordinate and y 1 coordinate of each child individual are calculated by the crossing method on the unit circle. Thereafter, an angle θ C1 that is a decision variable of each child individual is calculated from the x 1 coordinate and y 1 coordinate of each child individual using an arctangent function.

決定変数である角度θ2 について(x2,y2)=(cosθ2,sinθ2)から単位円上のx2座標およびy2座標をそれぞれ算出する。上記の単位円上の交叉方法により各子個体のx2座標およびy2座標をそれぞれ算出する。その後、各子個体のx2座標およびy2座標を逆正接関数により各子個体の決定変数である角度θC2に変換する。 For the angle θ 2 that is a decision variable, the x 2 coordinate and the y 2 coordinate on the unit circle are calculated from (x 2 , y 2 ) = (cos θ 2 , sin θ 2 ), respectively. The x 2 coordinate and y 2 coordinate of each child individual are calculated by the crossing method on the unit circle. Then, to convert the x 2 coordinate and y 2 coordinate of each child individual by arctan angle theta C2 is a decision variable for each child individual.

決定変数である角度θ3 について(x3,y3)=(cosθ3,sinθ3)から単位円上のx3座標およびy3座標をそれぞれ算出する。上記の単位円上の交叉方法により各子個体のx3座標およびy3座標をそれぞれ算出する。その後、各子個体のx3座標およびy3座標を逆正接関数により各子個体の決定変数である角度θC3に変換する。 For the angle θ 3 that is a decision variable, the x 3 coordinate and the y 3 coordinate on the unit circle are calculated from (x 3 , y 3 ) = (cos θ 3 , sin θ 3 ), respectively. The x 3 coordinate and y 3 coordinate of each child individual are calculated by the crossing method on the unit circle. Thereafter, the x 3 coordinate and y 3 coordinate of each child individual are converted into an angle θ C3 which is a decision variable of each child individual by an arctangent function.

(3)他の実施の形態
(a)定義域の変換
1周期を表す定義域が[−π,π]でない次式の周期関数f(φ)に上記第1および第2の実施の形態の交叉方法を適用する場合について説明する。
(3) Other Embodiments (a) Domain Conversion The domain representing one cycle is not [−π, π], and the periodic function f (φ) of the following expression is changed to the above-described first and second embodiments. A case where the crossover method is applied will be described.

f(φ),φ∈[φmin,φmax
上式において、φは決定変数であり、φminは定義域の最小値を示し、φmaxは定義域の最大値を示す。以下に、定義域[φmin,φmax]を定義域[−π,π]に変換する方法について説明する。
f (φ), φ∈ [φ min , φ max ]
In the above equation, φ is a decision variable, φ min indicates the minimum value of the domain, and φ max indicates the maximum value of the domain. Hereinafter, a method for converting the domain [φ min , φ max ] to the domain [−π, π] will be described.

図14aおよび図14bは定義域の変換方法を説明するための模式図である。図14aの横軸は決定変数φであり、縦軸は周期関数f(φ)の値である。図14bの横軸は決定変数θであり、縦軸は周期関数f(θ)の値である。   14A and 14B are schematic diagrams for explaining the domain conversion method. The horizontal axis of FIG. 14a is the decision variable φ, and the vertical axis is the value of the periodic function f (φ). The horizontal axis of FIG. 14b is the decision variable θ, and the vertical axis is the value of the periodic function f (θ).

個体選択部5は、図14aの定義域[φmin,φmax]を有する周期関数f(θ)を定義域の大きさが2πとなるように、決定変数φの縮尺を調整するとともに、調整後の周期関数の定義域の中心が0となるように周期関数を横軸に沿って平行移動する。図14bに示すように、縮尺の調整および平行移動後の決定変数θとする。それにより、定義域が[−π,π]である周期関数f(θ)が得られる。このようにして、決定変数φから決定変数θへの変換を行う。 The individual selection unit 5 adjusts the scale of the decision variable φ and adjusts the periodic function f (θ) having the domain [φ min , φ max ] of FIG. 14 a so that the size of the domain is 2π. The periodic function is translated along the horizontal axis so that the center of the definition area of the subsequent periodic function becomes zero. As shown in FIG. 14b, the determination variable θ after the scale adjustment and the parallel movement is used. Thereby, a periodic function f (θ) whose domain is [−π, π] is obtained. In this way, conversion from the decision variable φ to the decision variable θ is performed.

その後、周期関数用の交叉を行い、交叉後に決定変数θから決定変数φへの逆変換を行う。   Thereafter, crossover for a periodic function is performed, and after the crossover, inverse conversion from the decision variable θ to the decision variable φ is performed.

(b)エンジンシミュレータへの適応例
図15は最適化装置をエンジンシミュレータに適用した例を示すブロック図である。
(B) Application Example to Engine Simulator FIG. 15 is a block diagram showing an example in which the optimization device is applied to the engine simulator.

図15の最適化対象8aはエンジンシミュレータである。エンジンシミュレータは、例えばパーソナルコンピュータからなる。この最適化対象8aは、最適化装置1から与えられる決定変数ベクトルに基づいてエンジンの動作のシミュレーションを行い、シミュレーション結果を状態量として最適化装置1に出力する。   The optimization target 8a in FIG. 15 is an engine simulator. The engine simulator is composed of a personal computer, for example. The optimization object 8a performs a simulation of engine operation based on the decision variable vector given from the optimization device 1, and outputs the simulation result to the optimization device 1 as a state quantity.

決定変数として、例えば、燃料噴射時期、点火時期、吸気バルブタイミングおよび排気バルブタイミングが設定される。また、適応度関数としては、例えば、エンジンの排出ガスに含まれるHC濃度およびNOx濃度が設定される。燃料噴射時期に対するHC濃度およびNOx濃度は周期関数となる。   For example, fuel injection timing, ignition timing, intake valve timing, and exhaust valve timing are set as the decision variables. As the fitness function, for example, the HC concentration and NOx concentration contained in the exhaust gas of the engine are set. The HC concentration and NOx concentration with respect to the fuel injection timing are periodic functions.

本実施の形態では、排出ガスに含まれるHC濃度およびNOx濃度のシミュレーション結果が最適化対象8aから排出ガスデータとして出力される。   In the present embodiment, the simulation results of the HC concentration and NOx concentration contained in the exhaust gas are output as the exhaust gas data from the optimization target 8a.

図15の最適化装置1によれば、適応度関数として周期関数を設定することにより、燃料噴射時期の最適化を効率的に行うことができる。   According to the optimization device 1 of FIG. 15, the fuel injection timing can be optimized efficiently by setting the periodic function as the fitness function.

(c)ロボット評価装置への適応例
図16は最適化装置をロボット評価装置に適用した例を示すブロック図である。
(C) Application Example to Robot Evaluation Device FIG. 16 is a block diagram showing an example in which the optimization device is applied to the robot evaluation device.

図16の最適化対象8bはロボット評価装置である。ロボット評価装置は、ECU91およびロボット92を備える。   The optimization target 8b in FIG. 16 is a robot evaluation apparatus. The robot evaluation device includes an ECU 91 and a robot 92.

ロボット91は、例えば、2次元平面において関節数が4以上の冗長なアームを有する。また、ロボット91は、3次元空間において関節数が7以上の冗長なアームを有してもよい。   The robot 91 has, for example, redundant arms having four or more joints in a two-dimensional plane. Further, the robot 91 may have a redundant arm having seven or more joints in the three-dimensional space.

ロボット91のアームの手先位置が定まったときに、各関節の角度は一意に決めることができない。したがって、目標関節角度の最適化が必要となる。ロボット91のアームのリンク機構が1回転できる場合には、目標関節角度の最適化は、周期関数の最適化問題として考えることができる。   When the hand position of the arm of the robot 91 is determined, the angle of each joint cannot be uniquely determined. Therefore, it is necessary to optimize the target joint angle. When the link mechanism of the arm of the robot 91 can make one rotation, the optimization of the target joint angle can be considered as a periodic function optimization problem.

決定変数ベクトルとしては、例えは、ロボット91のリンク機構の目標関節角度が設定される。適応度関数としては、例えば、姿勢維持のための消費電力、開始姿勢から終了姿勢までの消費電力の積分値またはロボット91のアームの移動経路に障害物が存在する場合の接触回数が設定される。   For example, the target joint angle of the link mechanism of the robot 91 is set as the decision variable vector. As the fitness function, for example, the power consumption for posture maintenance, the integrated value of the power consumption from the start posture to the end posture, or the number of times of contact when an obstacle exists in the movement path of the arm of the robot 91 is set. .

図16の最適化対象8bのECU91は、最適化装置1から個体の決定変数ベクトルとして目標関節角度を受け、ロボット92のリンク機構を制御する。目標関節角度を決定変数ベクトルとする消費電力は周期関数となる。ロボット92は、例えば特定のアーム先端位置に対する消費電力データを状態量として最適化装置1に出力する。   The ECU 91 of the optimization target 8b in FIG. 16 receives the target joint angle from the optimization device 1 as the individual decision variable vector, and controls the link mechanism of the robot 92. The power consumption with the target joint angle as a decision variable vector is a periodic function. The robot 92 outputs, for example, power consumption data for a specific arm tip position to the optimization device 1 as a state quantity.

図16の最適化装置1によれば、適応度関数として周期関数を設定することにより、ロボット92のリンク機構の目標関節角度の最適化を効率的に行うことができる。   According to the optimization device 1 of FIG. 16, the target joint angle of the link mechanism of the robot 92 can be optimized efficiently by setting a periodic function as the fitness function.

(d)ロボットシミュレータへの適応例
図17は最適化装置をロボットシミュレータに適用した例を示すブロック図である。
(D) Application Example to Robot Simulator FIG. 17 is a block diagram showing an example in which the optimization apparatus is applied to the robot simulator.

図17の最適化対象8cはロボットシミュレータである。ロボットシミュレータは、例えばパーソナルコンピュータからなる。この最適化対象8cは、最適化装置1から与えられる決定変数ベクトルに基づいてロボットの動作のシミュレーションを行い、シミュレーション結果を状態量として最適化装置1に出力する。   The optimization target 8c in FIG. 17 is a robot simulator. The robot simulator is composed of a personal computer, for example. The optimization target 8c performs a simulation of the robot operation based on the decision variable vector given from the optimization device 1, and outputs the simulation result to the optimization device 1 as a state quantity.

決定変数ベクトルとしては、例えは、ロボットのリンク機構の目標関節角度が設定される。適応度関数としては、例えば、姿勢維持のための消費電力、開始姿勢から終了姿勢までの消費電力の積分値またはロボットのアームの移動経路に障害物が存在する場合の接触回数が設定される。   As the decision variable vector, for example, the target joint angle of the link mechanism of the robot is set. As the fitness function, for example, power consumption for posture maintenance, an integrated value of power consumption from the start posture to the end posture, or the number of times of contact when an obstacle exists in the movement path of the robot arm is set.

本実施の形態では、特定のアーム先端位置に対する消費電力のシミュレーション結果が最適化対象8cから消費電力データとして出力される。   In the present embodiment, a simulation result of power consumption for a specific arm tip position is output from the optimization target 8c as power consumption data.

図17の最適化装置1によれば、適応度関数として周期関数を設定することにより、ロボットのリンク機構の目標関節角度の最適化を効率的に行うことができる。   According to the optimization apparatus 1 of FIG. 17, the target joint angle of the robot link mechanism can be optimized efficiently by setting the periodic function as the fitness function.

(e)ロボットシミュレータへの適応例
図18は最適化装置をロボットシミュレータに適用した例を示すブロック図である。
(E) Application Example to Robot Simulator FIG. 18 is a block diagram showing an example in which the optimization apparatus is applied to a robot simulator.

図18の最適化対象8dはロボットシミュレータである。ロボットシミュレータは、例えばパーソナルコンピュータからなる。この最適化対象8dは、最適化装置1から与えられる決定変数ベクトルに基づいてロボットの動作のシミュレーションを行い、シミュレーション結果を状態量として最適化装置1に出力する。   The optimization target 8d in FIG. 18 is a robot simulator. The robot simulator is composed of a personal computer, for example. The optimization target 8d performs a simulation of the robot operation based on the decision variable vector given from the optimization device 1, and outputs the simulation result to the optimization device 1 as a state quantity.

二足歩行ロボットが歩行と同じ周期でアームを振る動作をシミュレートする。遊脚が着地した瞬間の時刻を0とし、反対の遊脚が着地した瞬間の時刻をT1とした場合にアームを振り出すタイミングの最適化は、周期T1の周期関数の最適化問題として考えることができる。   Simulates the motion of a biped robot swinging an arm at the same cycle as walking. The optimization of the timing of swinging the arm when the time when the free leg has landed is 0 and the time when the opposite free leg is landed is T1 is considered as an optimization problem of the periodic function of the period T1. Can do.

また、決定変数ベクトルにアームの振りの速度を加えることにより、歩行の安定化指標を最大化するアームの振りのタイミングおよび歩行の効率を向上させるアームの振りのタイミングを最適化することができる。   Further, by adding the arm swing speed to the decision variable vector, it is possible to optimize the arm swing timing that maximizes the walking stabilization index and the arm swing timing that improves the walking efficiency.

本実施の形態では、決定変数ベクトルとしてアームを振り出すタイミングおよび速度が最適化対象8dに入力され、歩行の安定化指標および歩行の効率のシミュレーション結果が最適化対象8dから安定化指標データおよび効率データとして出力される。   In the present embodiment, the timing and speed of swinging the arm as a decision variable vector are input to the optimization target 8d, and the simulation result of the walking stabilization index and the walking efficiency is obtained from the optimization target 8d as the stabilization index data and the efficiency. Output as data.

図18の最適化装置1によれば、適応度関数として周期関数を設定することにより、アームの振りのタイミングの最適化を効率的に行うことができる。   According to the optimization apparatus 1 of FIG. 18, the arm swing timing can be optimized efficiently by setting a periodic function as the fitness function.

(f)蛋白質シミュレータへの適応例
図19は最適化装置を蛋白質シミュレータに適用した例を示すブロック図である。
(F) Application Example to Protein Simulator FIG. 19 is a block diagram showing an example in which the optimization device is applied to a protein simulator.

図19の最適化対象8eは蛋白質シミュレータである。蛋白質シミュレータは、例えばパーソナルコンピュータからなる。この最適化対象8eは、最適化装置1から与えられる決定変数ベクトルに基づいて蛋白質の構造のシミュレーションを行い、シミュレーション結果を状態量として最適化装置1に出力する。   The optimization target 8e in FIG. 19 is a protein simulator. The protein simulator is composed of, for example, a personal computer. The optimization object 8e performs a simulation of the protein structure based on the decision variable vector given from the optimization device 1, and outputs the simulation result to the optimization device 1 as a state quantity.

本実施の形態では、決定変数ベクトルとして蛋白質の二面角が最適化対象8eに入力され、エネルギーのシミュレーション結果が最適化対象8eからエネルギーデータとして出力される。   In the present embodiment, the dihedral angle of the protein is input to the optimization target 8e as a decision variable vector, and the energy simulation result is output from the optimization target 8e as energy data.

図19の最適化装置1によれば、適応度関数として周期関数を設定することにより、蛋白質の二面角の最適化を効率的に行うことができる。   According to the optimization apparatus 1 of FIG. 19, the dihedral angle of the protein can be optimized efficiently by setting the periodic function as the fitness function.

(g)交通シミュレータへの適応例
図20は最適化装置を交通シミュレータに適用した例を示すブロック図である。図21は交通信号の広域制御を説明するための模式図である。
(G) Application Example to Traffic Simulator FIG. 20 is a block diagram showing an example in which the optimization device is applied to a traffic simulator. FIG. 21 is a schematic diagram for explaining wide-area control of traffic signals.

図20の最適化対象8fは交通シミュレータである。交通シミュレータは、例えばパーソナルコンピュータからなる。この最適化対象8fは、最適化装置1から与えられる決定変数ベクトルに基づいて交通信号の広域制御のシミュレーションを行い、シミュレーション結果を状態量として最適化装置1に出力する。   The optimization target 8f in FIG. 20 is a traffic simulator. The traffic simulator is composed of a personal computer, for example. This optimization object 8f performs a simulation of traffic signal wide-area control based on the decision variable vector given from the optimization device 1, and outputs the simulation result to the optimization device 1 as a state quantity.

交通信号の広域制御では、ある道路に設置された信号の点灯タイミングにより交通流が制御される。時々刻々と変化する交通量に対して信号の点灯タイミングを最適化することにより渋滞を最小限にすることができる。   In wide area control of traffic signals, traffic flow is controlled by the lighting timing of signals installed on a certain road. Congestion can be minimized by optimizing the lighting timing of the signal for the traffic volume that changes from moment to moment.

図21に示す道路RTでは、交通流は信号A,Bの点灯タイミングにより制御されると考えられる。このとき、道路RTを通過した車の台数または平均速度を最大にする信号Bの点灯タイミングを最適化することにより交通流を最適に制御することができる。   On the road RT shown in FIG. 21, the traffic flow is considered to be controlled by the lighting timing of the signals A and B. At this time, the traffic flow can be optimally controlled by optimizing the lighting timing of the signal B that maximizes the number or average speed of the vehicles that have passed the road RT.

信号A,Bの点灯色は青、黄および赤の順に変化し、赤から再び青に戻る。このとき、信号A,Bの1点灯サイクルに要する時間をt1とする。信号Aの青の点灯開始タイミングを時刻0としたときに、信号Bの青の点灯開始タイミングを区間0からt1の定義域内で変更する。また、信号Bの青の点灯開始タイミングを時刻0にすることと、信号Bの青の点灯開始タイミングを時刻t1にすることとは全く同じである。したがって、上記の交通流の制御は、信号Bの青の点灯開始タイミングを決定変数ベクトルとする周期関数の最適化問題と考えることができる。   The lighting colors of the signals A and B change in the order of blue, yellow and red, and return from red to blue again. At this time, the time required for one lighting cycle of the signals A and B is defined as t1. When the blue lighting start timing of the signal A is set to time 0, the blue lighting start timing of the signal B is changed within the definition range from the section 0 to t1. Also, setting the blue lighting start timing of signal B to time 0 is completely the same as setting the blue lighting start timing of signal B to time t1. Therefore, the above traffic flow control can be considered as an optimization problem of a periodic function using the blue lighting start timing of the signal B as a decision variable vector.

さらに、上り車線と下り車線とで交通量が異なる場合に、両方の車線の信号の点灯タイミングを最適化することは多目的の周期関数の最適化問題として考えることもできる。   Furthermore, when the traffic volume is different between the up lane and the down lane, optimizing the lighting timing of the signals in both lanes can be considered as a multipurpose periodic function optimization problem.

本実施の形態では、決定変数ベクトルとして信号Bの点灯開始のタイミングが最適化対象8eに入力され、交通量のシミュレーション結果が最適化対象8fから交通量データとして出力される。   In the present embodiment, the lighting start timing of the signal B is input to the optimization target 8e as a decision variable vector, and a traffic volume simulation result is output from the optimization target 8f as traffic volume data.

図20の最適化装置1によれば、適応度関数として周期関数を設定することにより、信号の点灯タイミングの最適化を効率的に行うことができる。   According to the optimization apparatus 1 of FIG. 20, the signal lighting timing can be optimized efficiently by setting the periodic function as the fitness function.

(h)画像処理装置への適応例
図22は最適化装置を画像処理装置に適用した例を示すブロック図である。図23aは2次元パターンマッチングを説明するための模式図である。図23bは3次元パターンマッチングを説明するための模式図である。
(H) Application Example to Image Processing Device FIG. 22 is a block diagram showing an example in which the optimization device is applied to an image processing device. FIG. 23 a is a schematic diagram for explaining two-dimensional pattern matching. FIG. 23b is a schematic diagram for explaining the three-dimensional pattern matching.

図22の最適化対象8gは画像処理装置である。画像処理装置は、例えばパーソナルコンピュータからなる。この最適化対象8gは、最適化装置1から与えられる決定変数ベクトルに基づいてパターンマッチングを行い、マッチング量を状態量として最適化装置1に出力する。   The optimization target 8g in FIG. 22 is an image processing apparatus. The image processing apparatus is composed of a personal computer, for example. The optimization target 8g performs pattern matching based on the decision variable vector given from the optimization device 1, and outputs the matching amount to the optimization device 1 as a state quantity.

図23aにおいて、(x,y)は超球面上の交叉において求められる2次元単位方向ベクトルである。この2次元単位方向ベクトルがテンプレートPIの向きを表す。2次元パターンマッチングでは、まず、微分法等により対象画像POのエッジが抽出される。   In FIG. 23a, (x, y) is a two-dimensional unit direction vector obtained at the intersection on the hypersphere. This two-dimensional unit direction vector represents the direction of the template PI. In the two-dimensional pattern matching, first, the edge of the target image PO is extracted by a differentiation method or the like.

次に、決定変数ベクトルとしてテンプレートPIの座標、拡大率および2次元単位方向ベクトルが最適化対象8eに入力され、抽出された対象画像POのエッジに基づいて対象画像POとテンプレートPIとのマッチング量(一致の程度)が出力される。   Next, the coordinates of the template PI, the enlargement ratio, and the two-dimensional unit direction vector are input to the optimization target 8e as decision variable vectors, and the matching amount between the target image PO and the template PI based on the extracted edge of the target image PO. (Degree of match) is output.

図23bにおいて、(x,y,z)は超球面上の交叉において求められる3次元単位方向ベクトルである。この3次元単位方向ベクトルがテンプレートPiの向きを表す。3次元パターンマッチングでは、まず、微分法等により対象画像Poのエッジが抽出される。   In FIG. 23b, (x, y, z) is a three-dimensional unit direction vector obtained at the intersection on the hypersphere. This three-dimensional unit direction vector represents the direction of the template Pi. In the three-dimensional pattern matching, first, the edge of the target image Po is extracted by a differentiation method or the like.

次に、決定変数ベクトルとしてテンプレートPiの座標、拡大率および3次元単位方向ベクトルが最適化対象8eに入力され、抽出された対象画像Poのエッジに基づいて対象画像PoとテンプレートPiとのマッチング量(一致度)が出力される。   Next, the coordinates of the template Pi, the enlargement factor, and the three-dimensional unit direction vector are input to the optimization target 8e as the decision variable vector, and the matching amount between the target image Po and the template Pi based on the extracted edge of the target image Po. (Coincidence) is output.

図22の最適化装置1によれば、適応度関数として周期関数を設定することにより、パターンマッチングによる対象画像の姿勢推定を効率的に行うことができる。   According to the optimization apparatus 1 of FIG. 22, by setting a periodic function as the fitness function, it is possible to efficiently estimate the posture of the target image by pattern matching.

(i)進化型アルゴリズムの他の例
上記実施の形態では、進化型アルゴリズムとして遺伝的アルゴリズム(GA)を用いているが、これに限定されず、遺伝的アルゴリズムの代わりに、進化戦略(ES:Evolution Strategy)等の同様のアイデアに基づく計算法を用いてもよい。
(I) Other Examples of Evolutionary Algorithm In the above embodiment, the genetic algorithm (GA) is used as the evolutionary algorithm. However, the present invention is not limited to this, and instead of the genetic algorithm, an evolution strategy (ES: Calculation methods based on similar ideas such as (Evolution Strategy) may be used.

なお、GA、ES等の計算法は、進化アルゴリズム(EAs:Evolutionary Algorithms)または進化計算(Evolutionary Computation)と総称される。   Note that calculation methods such as GA and ES are collectively referred to as evolutionary algorithms (EAs) or evolutionary computation (Evolutionary Computation).

(j)各部の実現方法
上記実施の形態では、個体生成部2、世代交代部3、個体選択部5および適応度算出部6がCPU101およびプログラムにより実現されるが、個体生成部2、世代交代部3、個体選択部5および適応度算出部6の一部または全てが電子回路等のハードウエアにより実現されてもよい。
(J) Realization method of each unit In the above embodiment, the individual generation unit 2, the generation change unit 3, the individual selection unit 5, and the fitness calculation unit 6 are realized by the CPU 101 and the program. Part or all of the unit 3, the individual selection unit 5, and the fitness calculation unit 6 may be realized by hardware such as an electronic circuit.

(4)実施例1および比較例1
第2の実施の形態における単位円上の交叉方法の有効性を確認するために、周期テスト関数による数値実験を行った。
(4) Example 1 and Comparative Example 1
In order to confirm the effectiveness of the crossover method on the unit circle in the second embodiment, a numerical experiment using a periodic test function was performed.

以下の実施例1では、第2の実施の形態に係る最適化装置1により周期テスト関数による最適化を行った。また、比較例1では、交叉オペレータを除いて第2の実施の形態に係る最適化装置と同様の最適化装置により周期テスト関数による最適化を行った。実施例1では、交叉オペレータとして単位円上の交叉方法(UNDX−P)を用いた。比較例1では、交叉オペレータとしてUNDXを用い、個体が定義域を外れた場合に個体を生成しなおす方法を採用した。まず、周期テスト関数および評価方法について説明する。   In Example 1 below, optimization using a periodic test function was performed by the optimization apparatus 1 according to the second embodiment. In Comparative Example 1, optimization using a periodic test function was performed using an optimization device similar to the optimization device according to the second embodiment except for the crossing operator. In Example 1, the crossover method (UNDX-P) on the unit circle was used as the crossover operator. In Comparative Example 1, UNDX was used as the crossover operator, and a method of regenerating an individual when the individual deviated from the definition range was adopted. First, the periodic test function and the evaluation method will be described.

実施例1および比較例1では、3種類の周期テスト関数TF−1、TF−2およびFletcher and Powell関数(以下、FPと呼ぶ。)を用いた。   In Example 1 and Comparative Example 1, three types of periodic test functions TF-1, TF-2 and Fletcher and Powell functions (hereinafter referred to as FP) were used.

図24aは周期テスト関数TF−1の概略形状を示す図、図24bは周期テスト関数TF−2の概略形状を示す図、図24cは周期テスト関数FPの概略形状を示す図である。図24a〜図24cの直交する2つの横軸は変数x1,x2であり、縦軸は適応度(適応度関数f(x)の値)である。ここで、x=(x1,x2)である。 24A is a diagram illustrating a schematic shape of the periodic test function TF-1, FIG. 24B is a diagram illustrating a schematic shape of the periodic test function TF-2, and FIG. 24C is a diagram illustrating a schematic shape of the periodic test function FP. In FIG. 24a to FIG. 24c, two orthogonal horizontal axes are variables x 1 and x 2 , and a vertical axis is fitness (value of fitness function f (x)). Here, x = (x 1 , x 2 ).

図25は実施例1および比較例1で用いられた3種類の周期テスト関数の詳細を示す図である。   FIG. 25 is a diagram showing details of the three types of periodic test functions used in Example 1 and Comparative Example 1.

周期テスト関数TF−1は単峰性の形状を有し、周期テスト関数TF−2は多峰性の形状を有する。周期テスト関数TF−1および周期テスト関数TF−2はそれぞれxi =2N+1,N=0,±1,±2,…のとき最小値0をとる周期2の周期関数である。変数の定義域をxi ∈[0+L,2+L]とする。 The periodic test function TF-1 has a unimodal shape, and the periodic test function TF-2 has a multimodal shape. The periodic test function TF-1 and the periodic test function TF-2 are periodic functions of period 2 that take the minimum value 0 when x i = 2N + 1, N = 0, ± 1, ± 2,. Let the variable domain be x i ∈ [0 + L, 2 + L].

周期テスト関数FPは最小値0をとる最適解α=(α1 ,α2 ,…,αn )と精度的に区別できない複数の最適解、および多数の局所解を有する周期2πの周期関数である。ここでは、図25に示される周期テスト関数FPの定数a、bおよびαとして非特許文献2記載された値を用いた。変数の定義域をxi ∈[−π+Lπ,π+Lπ]とする。 The periodic test function FP is a periodic function with a period of 2π having a plurality of optimal solutions that cannot be accurately distinguished from the optimal solution α = (α 1 , α 2 ,..., Α n ) having the minimum value 0, and a large number of local solutions. is there. Here, the values described in Non-Patent Document 2 were used as the constants a, b, and α of the periodic test function FP shown in FIG. Let the domain of the variable be x i ∈ [−π + Lπ, π + Lπ].

ここで、Lは定義域のオフセットであり、オフセットLの範囲は[0,1]である。周期テスト関数TF−1および周期テスト関数TF−2では,L=0のときに最適解は定義域の中央に位置し、オフセットLが1に近づくほど最適解が定義域の境界に近づくことになる。周期テスト関数FPでは、最適解および局所解の位置関係は複雑に変化すると予想される。   Here, L is a domain offset, and the range of the offset L is [0, 1]. In the periodic test function TF-1 and the periodic test function TF-2, the optimum solution is positioned at the center of the domain when L = 0, and the optimum solution approaches the boundary of the domain as the offset L approaches 1. Become. In the periodic test function FP, the positional relationship between the optimal solution and the local solution is expected to change in a complicated manner.

実施例1および比較例1では,周期テスト関数TF−1の次元nを10および20とし、周期テスト関数TF−2の次元nを4および6とし、周期テスト関数FPの次元nを6および9とし、オフセットLが0、0.3、0.6および0.9の場合について、各々30回の最適化を実施し(試行回数30)、最適解を発見した回数および収束の様子を評価する。   In Example 1 and Comparative Example 1, the dimension n of the periodic test function TF-1 is 10 and 20, the dimension n of the periodic test function TF-2 is 4 and 6, and the dimension n of the periodic test function FP is 6 and 9 In the case where the offset L is 0, 0.3, 0.6, and 0.9, 30 optimizations are performed (30 trials), and the number of times the optimal solution is found and the state of convergence are evaluated. .

理想的には、適応度が0になる個体が最適解であるが、ここでは、個体の適応度が1.0×10-7未満になったときに最適解を発見したものとする。 Ideally, an individual whose fitness is 0 is the optimal solution. Here, it is assumed that the optimal solution is found when the fitness of the individual becomes less than 1.0 × 10 −7 .

遺伝的アルゴリズムの条件としては、個体集合サイズを100とし、生成される子個体数を50とする。世代交代モデルとしては図5に示したMGGを用い、、選択方法としてはエリート選択およびルーレットホイール選択を用いる。周期テスト関数TF−1および周期テスト関数TF−2の評価回数を5.0×105 回とし、周期テスト関数FPの評価回数を7.5×105 回とする。ここで、評価回数は、(世代数×子個体の数+初期個体集合の個体の数)で求められる。 As conditions for the genetic algorithm, an individual set size is set to 100 and the number of generated child individuals is set to 50. The MGG shown in FIG. 5 is used as a generation change model, and elite selection and roulette wheel selection are used as selection methods. Assume that the number of evaluations of the periodic test function TF-1 and the periodic test function TF-2 is 5.0 × 10 5 times, and the number of evaluations of the periodic test function FP is 7.5 × 10 5 times. Here, the number of evaluations is obtained by (number of generations × number of child individuals + number of individuals in the initial individual set).

図26は実施例1および比較例1における周期テスト関数TF−1およびTF−2に関する最適解発見回数を示す図である。   FIG. 26 is a diagram showing the number of times of finding the optimum solution related to the periodic test functions TF-1 and TF-2 in Example 1 and Comparative Example 1.

図26において、4つのオフセットLでの最適解発見回数のうち最も少ない値に下線を付している。周期テスト関数TF−1およびTF−2ともに、比較例1では、オフセットLが1に近づくにしたがって(すなわち最適解の位置が定義域の境界に近づくにしたがって)最適解発見回数が減少する。これに対して、実施例1では、オフセットLが1に近づいても(すなわち最適解の位置が定義域の境界に近づいても)最適解発見回数が減少せず、30回の全ての試行で最適解が発見されている。   In FIG. 26, the smallest value among the optimal solution discovery times at the four offsets L is underlined. In both of the periodic test functions TF-1 and TF-2, in the first comparative example, the optimal solution discovery count decreases as the offset L approaches 1 (that is, as the position of the optimal solution approaches the domain boundary). On the other hand, in the first embodiment, even when the offset L approaches 1 (that is, the position of the optimal solution approaches the boundary of the domain), the number of times of finding the optimal solution does not decrease, and in all 30 trials An optimal solution has been found.

周期テスト関数FP(n=6)に関しては、比較例1では、オフセットLが1に近づくにしたがって最適解発見回数が減少する。これに対して、実施例1では、最適解発見回数がオフセットLに全く影響を受けず、30回の全ての試行で最適解が発見されている。   With respect to the periodic test function FP (n = 6), in the first comparative example, the optimal solution discovery count decreases as the offset L approaches 1. On the other hand, in the first embodiment, the optimal solution discovery count is not affected at all by the offset L, and the optimal solution is found in all 30 trials.

周期テスト関数FP(n=9)に関しては、比較例1では、オフセットLにより最適解発見回数が大きく変動している。これに対して、実施例1では、最適解発見回数がオフセットLにほとんど影響を受けず、30回のうち約半分の試行で最適解が発見されている。   Regarding the periodic test function FP (n = 9), in Comparative Example 1, the number of times of finding the optimum solution varies greatly due to the offset L. On the other hand, in the first embodiment, the optimum solution discovery frequency is hardly affected by the offset L, and the optimum solution is found in about half of the 30 trials.

これらの結果、実施例1の最適化の安定性を確認することができた。   As a result, the stability of optimization in Example 1 could be confirmed.

図27aおよび図27bはそれぞれ実施例1および比較例1における周期テスト関数TF−1の収束の様子を示す図である。図27aおよび図27bは、次元nが20の場合の結果を示す。図28aおよび図28bはそれぞれ実施例1および比較例1における周期テスト関数TF−2の収束の様子を示す図である。図28aおよび図28bは、次元nが6の場合の結果を示す。図29aおよび図29bはそれぞれ実施例1および比較例1における周期テスト関数FPの収束の様子を示す図である。図29aおよび図29bは、次元nが9の場合の結果を示す。   FIGS. 27a and 27b are diagrams showing how the periodic test function TF-1 converges in Example 1 and Comparative Example 1, respectively. FIGS. 27 a and 27 b show the results when dimension n is 20. FIG. 28a and 28b are diagrams showing how the periodic test function TF-2 converges in Example 1 and Comparative Example 1, respectively. 28a and 28b show the results when dimension n is 6. FIG. FIGS. 29a and 29b are diagrams showing how the periodic test function FP converges in Example 1 and Comparative Example 1, respectively. Figures 29a and 29b show the results for dimension n = 9.

図27a〜図29bの横軸は評価回数を示し、縦軸は適応度を示す。適応度は最適解が発見された試行における適応度の平均を表している。実線はオフセットLが0.0、点線はオフセットLが0.3、一点鎖線はオフセットLが0.6、破線はオフセットLが0.9の場合を示す。   27a to 29b, the horizontal axis indicates the number of evaluations, and the vertical axis indicates the fitness. The fitness indicates the average fitness in the trial in which the optimal solution was found. A solid line indicates that the offset L is 0.0, a dotted line indicates that the offset L is 0.3, an alternate long and short dash line indicates that the offset L is 0.6, and a broken line indicates that the offset L is 0.9.

図27bおよび図28bに示すように、周期テスト関数TF−1およびTF−2に関しては、比較例1では、オフセットLが1に近づくにしたがって生成される個体の適応度が最適解(1.0×10-7未満)に収束する速度が遅くなっていく。これに対して、図27aおよび図28aに示すように、実施例1では、周期テスト関数TF−1およびTF−2のオフセットL(すなわち定義域)によらず生成される個体の適応度が同じ速度で最適解(1.0×10-7未満)に収束している。 As shown in FIGS. 27b and 28b, with respect to the periodic test functions TF-1 and TF-2, in Comparative Example 1, the fitness of an individual generated as the offset L approaches 1 is the optimal solution (1.0 the rate of convergence in less than × 10 -7) is getting late. On the other hand, as shown in FIGS. 27a and 28a, in the first embodiment, the fitness of individuals generated is the same regardless of the offset L (that is, the domain) of the periodic test functions TF-1 and TF-2. It converges to the optimal solution (less than 1.0 × 10 −7 ) at speed.

周期テスト関数FPに関しては、比較例1では、図29bに示すように、試行ごとに得られる最適解の違いにより収束の速度が大きくばらつく。これに対して、実施例1では、図29aに示すように、評価回数2.0×105 回付近まではオフセットL(すなわち定義域)によらず生成される個体の適応度が同じ速度で収束している。それにより、生成される個体の適応度がいずれかの最適解の適応度近傍に収束するまでは安定した探索が行われていると考えられる。 As for the periodic test function FP, in Comparative Example 1, as shown in FIG. 29b, the convergence speed greatly varies depending on the difference in the optimum solution obtained for each trial. On the other hand, in the first embodiment, as shown in FIG. 29a, the fitness of the individuals generated regardless of the offset L (that is, the domain) is the same speed up to the vicinity of the evaluation number 2.0 × 10 5 times. It has converged. Thereby, it is considered that a stable search is performed until the fitness of the generated individual converges near the fitness of any optimal solution.

図30は実施例1および比較例1における周期テスト関数FP(n=6)に関する代表的な解の位置および発見回数を示す図である。図31は実施例1および比較例1における周期テスト関数FP(n=9)に関する代表的な解の位置および発見回数を示す図である。   FIG. 30 is a diagram illustrating a typical solution position and the number of times of discovery regarding the periodic test function FP (n = 6) in the first embodiment and the first comparative example. FIG. 31 is a diagram illustrating a representative solution position and the number of times of discovery regarding the periodic test function FP (n = 9) in the first embodiment and the first comparative example.

周期テスト関数FPの最適化では、n=6のとき2個の最適解および3個の局所解が30×8回の試行で得られた。また、n=9のとき8個の最適解および18個の局所解が30×8回の試行で得られた。   In the optimization of the periodic test function FP, two optimal solutions and three local solutions were obtained in 30 × 8 trials when n = 6. In addition, when n = 9, 8 optimal solutions and 18 local solutions were obtained in 30 × 8 trials.

図30には、n=6の場合の2個の最適解Opt1,Opt2および1個の局所解Loc1が代表的に示される。図31には、n=9の場合の8個の最適解Opt1〜Opt8および3個の局所解Loc1〜Loc3が代表的に示される。   FIG. 30 representatively shows two optimum solutions Opt1, Opt2 and one local solution Loc1 in the case of n = 6. FIG. 31 representatively shows eight optimal solutions Opt1 to Opt8 and three local solutions Loc1 to Loc3 in the case of n = 9.

同じ解でも、オフセットL(定義域)により位置が異なるが、実質的に位置が等しい解は同じ解とみなしている。各オフセットLで最も多く生成された解の発見回数に下線を付している。   Even in the same solution, the position differs depending on the offset L (domain), but solutions having substantially the same position are regarded as the same solution. The number of times of finding the most generated solutions at each offset L is underlined.

図30および図31に示すように、実施例1では、オフセットL(定義域)によらず発見される解の位置が安定している。これに対して、比較例1では、最適解の発見回数はオフセットL(定義域)に大きく依存し、あるオフセットL(定義域)では実施例1に比べて高い率で最適解が発見されるが、他のオフセットL(定義域)では実施例1に比べて低い率で最適解が発見される。これは、サンプリングバイアスにより定義域の中心付近にある最適解が得られやすくなるためと考えられる。   As shown in FIGS. 30 and 31, in the first embodiment, the position of the solution found regardless of the offset L (definition area) is stable. On the other hand, in the first comparative example, the number of times the optimal solution is found depends greatly on the offset L (definition area), and an optimal solution is found at a higher rate than in the first embodiment at a certain offset L (definition area). However, an optimal solution is found at a lower rate than in the first embodiment at other offsets L (domain). This is considered to be because an optimum solution near the center of the domain is easily obtained by the sampling bias.

n=9およびL=0.6のとき、局所解Loc2は、定義域の下限(−π+0.6π=−1.256637)と等しい要素(x3 =−1.256637)を有する。最適解Opt2は自明な最適解αであり、要素α3 =−1.283410<x3 を有する。それにより、局所解Loc2は、最適解Opt2近傍の強力な局所解となっている。したがって、局所解Loc2は位相の切断により発生した局所解であると考えられる。同様に、n=6の場合の3個の局所解のうちの2個の局所解およびn=9の場合の18個の局所解のうちの13個の局所解は、定義域の境界に等しい要素を有し、位相の切断により発生したものである。 When n = 9 and L = 0.6, the local solution Loc2 has an element (x 3 = −1.255637) equal to the lower limit of the domain (−π + 0.6π = −1.255637). The optimal solution Opt2 is a trivial optimal solution α and has an element α 3 = −1.283410 <x 3 . As a result, the local solution Loc2 is a strong local solution near the optimal solution Opt2. Therefore, the local solution Loc2 is considered to be a local solution generated by phase cutting. Similarly, 2 local solutions out of 3 local solutions when n = 6 and 13 local solutions out of 18 local solutions when n = 9 are equal to domain boundaries. It has elements and is generated by phase cutting.

以上より、周期関数における決定変数ベクトルの最適化に従来の交叉方法を用いると、定義域の設定により最適解および局所解の位置関係が複雑に変化する。また、位相の切断に起因する新たな局所解を多数生成することになる。その結果、定義域の設定が最適化の難易度に大きな影響を与えることがわかる。   As described above, when the conventional crossover method is used to optimize the decision variable vector in the periodic function, the positional relationship between the optimal solution and the local solution changes in a complicated manner depending on the setting of the domain. In addition, a large number of new local solutions resulting from phase cutting are generated. As a result, it can be seen that the setting of the domain has a great influence on the difficulty of optimization.

これに対して、周期関数における決定変数ベクトルの最適化に周期関数用の交叉方法を用いると、最適解および局所解の位置関係が定義域の設定により影響を受けない。また、位相の切断による新たな局所解を生成することもない。したがって、周期関数用の交叉方法は周期関数における決定変数ベクトルの最適化に有効であることがわかる。   On the other hand, when the crossover method for the periodic function is used to optimize the decision variable vector in the periodic function, the positional relationship between the optimal solution and the local solution is not affected by the setting of the domain. In addition, a new local solution is not generated by phase cutting. Therefore, it is understood that the crossover method for the periodic function is effective for optimizing the decision variable vector in the periodic function.

(5)実施例2
実施例2では、第2の実施の形態に係る最適化装置1を用いて多目的遺伝的アルゴリズムにより燃料噴射時期の最適化を行った。
(5) Example 2
In Example 2, the fuel injection timing was optimized by the multipurpose genetic algorithm using the optimization device 1 according to the second embodiment.

決定変数としては、点火時期、燃料噴射時期、吸気バルブタイミングおよび排気バルブタイミングを設定し、適応度関数としてNOx濃度およびHC濃度を設定する。すなわち、実施例2の最適化問題は2目的4変数の多目的最適化問題である。HC濃度とNOx濃度とはトレードオフの関係を有する。すなわち、HC濃度を低くするとNOx 濃度が高くなり、NOx 濃度を低くするとHC濃度が高くなる。このような多目的最適化問題は、一般的に単一の最適解を持たず、パレート最適解と呼ばれる概念で定義される最適解集合を持つ。 As decision variables, ignition timing, fuel injection timing, intake valve timing and exhaust valve timing are set, and NOx concentration and HC concentration are set as fitness functions. That is, the optimization problem of the second embodiment is a multi-objective optimization problem with two objectives and four variables. The HC concentration and the NOx concentration have a trade-off relationship. That is, when the HC concentration is lowered, NOx Concentration increases, NOx Lowering the concentration increases the HC concentration. Such a multi-objective optimization problem generally does not have a single optimal solution, but has an optimal solution set defined by a concept called a Pareto optimal solution.

燃料噴射時期は、クランクシャフトの回転角度に関してどのタイミングで燃料噴射を行うかを決定するパラメータである。クランクシャフトの回転角度は0〜720°の範囲で定義する。このとき、燃料噴射時期が排出ガスに与える影響は、クランクシャフトの回転角度が0°のときと回転角度が720°のときとで等しい。したがって、燃料噴射時期を決定変数ベクトルとするHC濃度およびNOx濃度は、周期720°の周期関数となることがわかる。   The fuel injection timing is a parameter that determines at which timing fuel injection is performed with respect to the rotation angle of the crankshaft. The rotation angle of the crankshaft is defined in the range of 0 to 720 °. At this time, the influence of the fuel injection timing on the exhaust gas is the same when the rotation angle of the crankshaft is 0 ° and when the rotation angle is 720 °. Therefore, it can be seen that the HC concentration and NOx concentration with the fuel injection timing as a decision variable vector are periodic functions with a period of 720 °.

本実施例2では、燃料噴射時期の最適化にのみ第2の実施の形態における単位円上の交叉方法(UNDX−P)を適用する。   In the second embodiment, the crossover method (UNDX-P) on the unit circle in the second embodiment is applied only to the optimization of the fuel injection timing.

図32および図33は図3の最適化装置1により得られた最適個体を示す図である。図32の横軸は点火時期を示し、縦軸は燃料噴射時期を示す。図33の横軸は燃料噴射時期を示し、縦軸は吸気バルブタイミングを示す。   32 and 33 are diagrams showing the optimum individuals obtained by the optimization apparatus 1 of FIG. The horizontal axis in FIG. 32 indicates the ignition timing, and the vertical axis indicates the fuel injection timing. The horizontal axis in FIG. 33 indicates the fuel injection timing, and the vertical axis indicates the intake valve timing.

本実施例2では多目的最適化を行っているため、複数のパレート最適個体が得られる。図32および図33において、燃料噴射時期が0であることと燃料噴射時期が1であることとは等しい。   In the second embodiment, since multi-objective optimization is performed, a plurality of Pareto optimal individuals can be obtained. 32 and 33, the fuel injection timing is 0 and the fuel injection timing is 1.

図32および図33に示すように、燃料噴射時期は0と1とをまたぐように分布している様子が見られる。それにより、定義域の境界近傍の最適個体を発見できることがわかる。   As shown in FIGS. 32 and 33, it can be seen that the fuel injection timings are distributed so as to cross between 0 and 1. As a result, it can be seen that the optimum individual near the boundary of the domain can be found.

図34は実施例2において得られたHC濃度およびNOx 濃度の関係を示す図である。図34に示されるように、トレードオフの関係を有するHC濃度およびNOx濃度についてパレート最適個体集合が得られることがわかる。 FIG. 34 shows the HC concentration and NOx obtained in Example 2. It is a figure which shows the relationship of a density | concentration. As shown in FIG. 34, it can be seen that the Pareto optimal population is obtained for the HC concentration and the NOx concentration having a trade-off relationship.

(6)請求項の構成要素と実施の形態の各部との対応
上記実施の形態では、個体集合記憶部4が解候補記憶部に相当し、個体選択部5が解候補選択部に相当し、個体生成部2が解候補生成部に相当し、適応度算出部6が評価値演算部に相当し、世代交代部3が解候補集合更新部に相当する。
(6) Correspondence between constituent elements of claim and each part of embodiment In the above embodiment, the individual set storage unit 4 corresponds to a solution candidate storage unit, the individual selection unit 5 corresponds to a solution candidate selection unit, The individual generation unit 2 corresponds to a solution candidate generation unit, the fitness calculation unit 6 corresponds to an evaluation value calculation unit, and the generation change unit 3 corresponds to a solution candidate set update unit.

また、決定変数が最適化すべき変数に相当し、個体が解候補に相当し、所定数の親個体が所定数の解候補に相当し、複数の子個体が新たな解候補に相当し、適応度が評価値に相当する。   Also, the decision variable corresponds to the variable to be optimized, the individual corresponds to the solution candidate, the predetermined number of parent individuals corresponds to the predetermined number of solution candidates, and the plurality of child individuals correspond to new solution candidates, The degree corresponds to the evaluation value.

特に、第1の実施の形態において、n次元実数空間Rn または2次元実数空間(2次元実数平面)R2 がN次元変数空間に相当し、(n−1)次元単位球面Sn-1 、超球面または単位円が(m−1)次元単位球面に相当し、n個の決定変数x,x,…,xがN個の変数およびm個の変数に相当する。すなわち、第1の実施の形態では、N=m=nである。 In particular, in the first embodiment, the n-dimensional real space R n or the two-dimensional real space (two-dimensional real plane) R 2 corresponds to the N-dimensional variable space, and the (n−1) -dimensional unit spherical surface S n−1. , The hypersphere or unit circle corresponds to the (m−1) -dimensional unit sphere, and n decision variables x 1 , x 2 ,..., X n correspond to N variables and m variables. That is, in the first embodiment, N = m = n.

また、第2の実施の形態において、単位円UCが1次元単位球面に相当し、2次元実数空間(2次元実数平面)Rが2次元平面に相当し、θ1,θ2,…,θnがm個の変数の組に相当する。 In the second embodiment, the unit circle UC corresponds to a one-dimensional unit sphere, the two-dimensional real space (two-dimensional real plane) R 2 corresponds to a two-dimensional plane, and θ 1 , θ 2 ,. θ n corresponds to a set of m variables.

また、燃料噴射時期または燃料噴射パターンがクランク回転角度に基づくパラメータに相当し、対象画像PO,Poが対象画像に相当し、テンプレートPI,Piが参照画像に相当し、マッチング量が誤差に相当する。   Further, the fuel injection timing or the fuel injection pattern corresponds to a parameter based on the crank rotation angle, the target images PO and Po correspond to the target image, the templates PI and Pi correspond to the reference image, and the matching amount corresponds to an error. .

本発明は、周期関数における変数の最適化等に利用することができる。   The present invention can be used for optimization of variables in a periodic function.

本発明の第1の実施の形態に係る最適化装置の機能的な構成を示すブロック図である。It is a block diagram which shows the functional structure of the optimization apparatus which concerns on the 1st Embodiment of this invention. 図1の最適化装置のハードウエア構成を示すブロック図である。It is a block diagram which shows the hardware constitutions of the optimization apparatus of FIG. 最適化装置を燃料噴射パターンの最適化に適用する方法を説明するための図である。It is a figure for demonstrating the method of applying an optimization apparatus to optimization of a fuel injection pattern. 図1の最適化装置の全体処理を示すフローチャートである。It is a flowchart which shows the whole process of the optimization apparatus of FIG. 図1の最適化装置による最適化処理の一例を示す模式図である。It is a schematic diagram which shows an example of the optimization process by the optimization apparatus of FIG. 超球面上の交叉方法を説明するための模式図である。It is a schematic diagram for demonstrating the crossing method on a hypersphere. 超球面上の交叉方法を説明するための模式図である。It is a schematic diagram for demonstrating the crossing method on a hypersphere. 超球面上の交叉方法を説明するための模式図である。It is a schematic diagram for demonstrating the crossing method on a hypersphere. 超球面上の交叉処理を示すフローチャートである。It is a flowchart which shows the cross process on a hypersphere. (n−1)次元単位球面上の初期個体集合の生成処理の一例を示す図である。It is a figure which shows an example of the production | generation process of the initial individual set on a (n-1) dimension unit spherical surface. (n−1)次元単位球面上の初期個体集合の生成処理の一例を示す図である。It is a figure which shows an example of the production | generation process of the initial individual set on a (n-1) dimension unit spherical surface. 本発明の第2の実施の形態に係る最適化装置の機能的な構成を示すブロック図である。It is a block diagram which shows the functional structure of the optimization apparatus which concerns on the 2nd Embodiment of this invention. 最適化対象の構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the optimization object. 単位円上の交叉方法を説明するための模式図である。It is a schematic diagram for demonstrating the crossing method on a unit circle. 単位円上の交叉方法を説明するための模式図である。It is a schematic diagram for demonstrating the crossing method on a unit circle. 単位円上の交叉方法を説明するための模式図である。It is a schematic diagram for demonstrating the crossing method on a unit circle. 単位円上の交叉処理を示すフローチャートである。It is a flowchart which shows the crossover process on a unit circle. 単位円上の交叉方法をn次元角度ベクトルからなる決定変数ベクトルへ拡張する方法を示す模式図である。It is a schematic diagram which shows the method of extending the crossing method on a unit circle to the decision variable vector which consists of an n-dimensional angle vector. 定義域の調整方法を説明するための模式図である。It is a schematic diagram for demonstrating the adjustment method of a definition area. 定義域の調整方法を説明するための模式図である。It is a schematic diagram for demonstrating the adjustment method of a definition area. 最適化装置をエンジンシミュレータに適用した例を示すブロック図である。It is a block diagram which shows the example which applied the optimization apparatus to the engine simulator. 最適化装置をロボット評価装置に適用した例を示すブロック図である。It is a block diagram which shows the example which applied the optimization apparatus to the robot evaluation apparatus. 最適化装置をロボットシミュレータに適用した例を示すブロック図である。It is a block diagram which shows the example which applied the optimization apparatus to the robot simulator. 最適化装置をロボットシミュレータに適用した例を示すブロック図である。It is a block diagram which shows the example which applied the optimization apparatus to the robot simulator. 最適化装置を蛋白質シミュレータに適用した例を示すブロック図である。It is a block diagram which shows the example which applied the optimization apparatus to the protein simulator. 最適化装置を交通シミュレータに適用した例を示すブロック図である。It is a block diagram which shows the example which applied the optimization apparatus to the traffic simulator. 交通信号の広域制御を説明するための模式図である。It is a schematic diagram for demonstrating wide area control of a traffic signal. 最適化装置を画像処理装置に適用した例を示すブロック図である。It is a block diagram which shows the example which applied the optimization apparatus to the image processing apparatus. 2次元パターンマッチングを説明するための模式図である。It is a schematic diagram for demonstrating two-dimensional pattern matching. 3次元パターンマッチングを説明するための模式図である。It is a schematic diagram for demonstrating three-dimensional pattern matching. 周期テスト関数TF−1の概略形状を示す図である。It is a figure which shows schematic shape of periodic test function TF-1. 周期テスト関数TF−2の概略形状を示す図である。It is a figure which shows the schematic shape of periodic test function TF-2. 周期テスト関数FPの概略形状を示す図である。It is a figure which shows the schematic shape of the period test function FP. 実施例1および比較例1で用いられた3種類の周期テスト関数の詳細を示す図である。It is a figure which shows the detail of three types of periodic test functions used in Example 1 and Comparative Example 1. FIG. 実施例1および比較例1における周期テスト関数TF−1、TF−2およびFPに関する最適個体発見回数を示す図である。It is a figure which shows the optimal individual discovery frequency regarding the periodic test function TF-1, TF-2, and FP in Example 1 and Comparative Example 1. FIG. 実施例1および比較例1における周期テスト関数TF−1の収束の様子を示す図である。It is a figure which shows the mode of convergence of the periodic test function TF-1 in Example 1 and Comparative Example 1. FIG. 実施例1および比較例1における周期テスト関数TF−1の収束の様子を示す図である。It is a figure which shows the mode of convergence of the periodic test function TF-1 in Example 1 and Comparative Example 1. FIG. 実施例1および比較例1における周期テスト関数TF−2の収束の様子を示す図である。It is a figure which shows the mode of convergence of the periodic test function TF-2 in Example 1 and Comparative Example 1. FIG. 実施例1および比較例1における周期テスト関数TF−2の収束の様子を示す図である。It is a figure which shows the mode of convergence of the periodic test function TF-2 in Example 1 and Comparative Example 1. FIG. 実施例1および比較例1における周期テスト関数FPの収束の様子を示す図である。It is a figure which shows the mode of convergence of the periodic test function FP in Example 1 and Comparative Example 1. FIG. 実施例1および比較例1における周期テスト関数FPの収束の様子を示す図である。It is a figure which shows the mode of convergence of the periodic test function FP in Example 1 and Comparative Example 1. FIG. 実施例1および比較例1における周期テスト関数FP(n=6)に関する代表的な個体の位置および発見回数を示す図である。It is a figure which shows the position of the typical individual regarding the periodic test function FP (n = 6) in Example 1 and Comparative Example 1, and the number of times of discovery. 実施例1および比較例1における周期テスト関数FP(n=9)に関する代表的な個体の位置および発見回数を示す図である。It is a figure which shows the position of the typical individual regarding the periodic test function FP (n = 9) in Example 1 and Comparative Example 1, and the number of times of discovery. 図3の最適化装置により得られた最適個体を示す図である。It is a figure which shows the optimal individual | organism | solid obtained by the optimization apparatus of FIG. 図3の最適化装置により得られた最適個体を示す図である。It is a figure which shows the optimal individual | organism | solid obtained by the optimization apparatus of FIG. 実施例2において得られたHC濃度およびNOx 濃度の関係を示す図である。FIG. 6 is a graph showing the relationship between HC concentration and NO x concentration obtained in Example 2. 周期関数の定義域の設定範囲の一例を示す模式図である。It is a schematic diagram which shows an example of the setting range of the definition area of a periodic function. 周期関数の定義域の設定範囲の他の例を示す模式図である。It is a schematic diagram which shows the other example of the setting range of the definition area of a periodic function. 実数値の交叉による子個体の生起確率密度分布を示す模式図である。It is a schematic diagram which shows distribution probability density distribution of the child individual by crossing of a real value. 進化的停滞を説明するための模式図である。It is a schematic diagram for demonstrating evolutionary stagnation. 境界法を説明するための模式図である。It is a schematic diagram for demonstrating the boundary method.

符号の説明Explanation of symbols

1 最適化装置
2 個体生成部
3 世代交代部
4 個体集合記憶部
5 個体選択部
6 適応度算出部
7 入出力インタフェース
8 最適化対象
10 使用者
21 交叉部
22 正規化演算部
23 三角関数演算部
24 逆正接関数演算部
81 ECU(エンジン制御ユニット)
82 エンジン
83 排気ガス分析計
84 吸気ポート
85 排気ポート
86 燃料噴射装置
87 吸気バルブ
88 排気バルブ
89 シリンダヘッド
90 点火プラグ
101 CPU(中央演算処理装置)
102 ROM(リードオンリメモリ)
103 RAM(ランダムアクセスメモリ)
104 入力装置
105 表示装置
106 外部記憶装置
107 記録媒体駆動装置
109 記録媒体
DESCRIPTION OF SYMBOLS 1 Optimization apparatus 2 Individual generation part 3 Generation change part 4 Individual set storage part 5 Individual selection part 6 Fitness calculation part 7 Input / output interface 8 Optimization object 10 User 21 Crossover part 22 Normalization calculation part 23 Trigonometric function calculation part 23 24 Inverse Tangent Function Calculation Unit 81 ECU (Engine Control Unit)
82 Engine 83 Exhaust gas analyzer 84 Intake port 85 Exhaust port 86 Fuel injection device 87 Intake valve 88 Exhaust valve 89 Cylinder head 90 Spark plug 101 CPU (Central processing unit)
102 ROM (read only memory)
103 RAM (Random Access Memory)
DESCRIPTION OF SYMBOLS 104 Input device 105 Display device 106 External storage device 107 Recording medium drive device 109 Recording medium

Claims (19)

最適化すべきN個の変数のうちm個の変数の2乗の総和が1となる拘束を有する場合に最適化対象にN個の変数を有する解候補を与え、N個の変数についての目的関数に対応する状態量を前記最適化対象から受ける最適化装置であって、
N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合を解候補の集合として記憶する解候補記憶部と、
前記解候補記憶部に記憶された解候補の集合から所定数の解候補を選択する解候補選択部と、
前記解候補選択部により選択された所定数の解候補に基づいて(m−1)次元単位球面を含むN次元変数空間上に新たな解候補の集合を生成し、生成された解候補の集合を前記最適化対象および前記解候補記憶部に与える解候補生成部と、
前記最適化対象から出力される状態量の評価値を算出する評価値演算部と、
前記評価値演算部により算出される評価値に基づいて前記解候補記憶部に記憶される解候補の集合を更新する解候補集合更新部とを備え、
Nは2以上の自然数であり、前記mは前記N以下の自然数であることを特徴とする最適化装置。
When there is a constraint that the sum of squares of m variables out of N variables to be optimized is 1, a solution candidate having N variables is given to the optimization target, and an objective function for the N variables An optimization device that receives from the optimization object a state quantity corresponding to
A solution candidate storage unit that stores a set of variable vectors representing points on an N-dimensional variable space defined by a set of N variables as a set of solution candidates;
A solution candidate selection unit that selects a predetermined number of solution candidates from a set of solution candidates stored in the solution candidate storage unit;
Based on a predetermined number of solution candidates selected by the solution candidate selection unit, a new solution candidate set is generated on the N-dimensional variable space including the (m−1) -dimensional unit sphere, and the generated solution candidate set is generated. A solution candidate generator that provides the optimization target and the solution candidate storage unit with
An evaluation value calculator that calculates an evaluation value of the state quantity output from the optimization target;
A solution candidate set update unit that updates a set of solution candidates stored in the solution candidate storage unit based on the evaluation value calculated by the evaluation value calculation unit,
N is a natural number equal to or greater than 2, and m is a natural number equal to or less than N.
最適化対象に最適化すべきN個の変数を有する解候補を与え、m個の変数に関して周期性を有する目的関数を含む前記N個の変数についての目的関数に対応する状態量を前記最適化対象から受ける最適化装置であって、
N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合を解候補の集合として記憶する解候補記憶部と、
前記解候補記憶部に記憶された解候補の集合から所定数の解候補を選択する解候補選択部と、
前記解候補選択部により選択された所定数の解候補に基づいてm個の変数をm個の1次元単位球面上の点に対応付けることによりN次元変数空間を[(N−m)+2m]次元変数空間に拡張し、拡張された[(N−m)+2m]次元変数空間上に解候補の集合を生成し、生成された解候補の集合をN次元変数空間上の点に再び対応付けることにより新たな解候補の集合を生成し、生成された解候補の集合を前記最適化対象および前記解候補記憶部に与える解候補生成部と、
前記最適化対象から出力される状態量の評価値を算出する評価値演算部と、
前記評価値演算部により算出される評価値に基づいて前記解候補記憶部に記憶される解候補の集合を更新する解候補集合更新部とを備え、
Nは1以上の自然数であり、前記mは前記N以下の自然数であることを特徴とする最適化装置。
A solution candidate having N variables to be optimized is given to the optimization target, and a state quantity corresponding to the objective function for the N variables including an objective function having periodicity with respect to m variables is set as the optimization target. An optimization device received from
A solution candidate storage unit that stores a set of variable vectors representing points on an N-dimensional variable space defined by a set of N variables as a set of solution candidates;
A solution candidate selection unit that selects a predetermined number of solution candidates from a set of solution candidates stored in the solution candidate storage unit;
By associating m variables with m points on the one-dimensional unit sphere based on a predetermined number of solution candidates selected by the solution candidate selection unit, the N-dimensional variable space is [(N−m) + 2m] dimensions. By expanding into the variable space, generating a set of solution candidates on the expanded [(N−m) + 2m] -dimensional variable space, and re-associating the generated set of solution candidates with points on the N-dimensional variable space A solution candidate generation unit that generates a set of new solution candidates and gives the generated solution candidate set to the optimization target and the solution candidate storage unit;
An evaluation value calculator that calculates an evaluation value of the state quantity output from the optimization target;
A solution candidate set update unit that updates a set of solution candidates stored in the solution candidate storage unit based on the evaluation value calculated by the evaluation value calculation unit,
N is a natural number of 1 or more, and m is a natural number of N or less.
前記m個の変数の各々をθとし、2次元平面上の点の第1および第2の座標をそれぞれxおよびyとした場合に、
前記解候補生成部は、前記解候補選択部により選択された所定数の解候補の前記変数θを(x,y)=(cosθ,sinθ)の演算により第1および第2の座標(x,y)に置き換え、生成された各解候補の第1および第2の座標(x,y)を下記式により変数θCに変換することを特徴とする請求項2記載の最適化装置。
Figure 0004993061
When each of the m variables is θ and the first and second coordinates of the point on the two-dimensional plane are x and y, respectively,
The solution candidate generation unit calculates the variable θ of the predetermined number of solution candidates selected by the solution candidate selection unit by calculating the first and second coordinates (x, y) = (cos θ, sin θ). 3. The optimization apparatus according to claim 2, wherein the first and second coordinates (x, y) of each solution candidate generated by replacing with y) are converted into a variable θ C by the following equation.
Figure 0004993061
前記解候補選択部は、前記目的関数の定義域を前記目的関数の周期に設定し、設定された定義域が2πになるように前記目的関数を変数軸の方向に拡大または縮小し、前記定義域の中心が前記変数軸の座標0に位置するように前記目的関数をシフトさせることを特徴とする請求項2または3記載の最適化装置。 The solution candidate selecting unit sets the domain of the objective function with the period of the objective function, to increase or decrease the objective function as set domain is 2π in the direction of the variable axis, defined 4. The optimization apparatus according to claim 2, wherein the objective function is shifted so that the center of the region is located at the coordinate 0 of the variable axis. 前記最適化対象は機器の性能を評価するための評価システムを含み、前記変数ベクトルは前記評価システムのための制御用パラメータを含み、前記状態量は前記評価システムの評価により得られる前記機器の性能であることを特徴とする請求項1〜4のいずれかに記載の最適化装置。 The optimization target includes an evaluation system for evaluating the performance of the device, the variable vector includes a control parameter for the evaluation system, and the state quantity is the performance of the device obtained by the evaluation of the evaluation system. The optimization device according to claim 1, wherein 前記評価システムは、前記制御用パラメータに基づいて前記機器を制御するとともに前記機器の動作により発生される前記機器の性能を状態量として出力する機器評価装置であることを特徴とする請求項5記載の最適化装置。 6. The device evaluation apparatus according to claim 5, wherein the evaluation system is a device evaluation device that controls the device based on the control parameter and outputs the performance of the device generated by the operation of the device as a state quantity. Optimization device. 前記評価システムは、前記制御用パラメータに基づいて前記機器の動作をシミュレーションすることにより前記機器の性能を評価し、評価された性能を状態量として出力する機器シミュレータであることを特徴とする請求項5記載の最適化装置。 The evaluation system is a device simulator that evaluates the performance of the device by simulating the operation of the device based on the control parameter, and outputs the evaluated performance as a state quantity. 5. The optimization device according to 5. 前記機器は内燃機関であり、前記制御用パラメータは前記内燃機関のクランク回転角度に基づくパラメータであり、前記状態量は前記パラメータについて周期的に変化する前記内燃機関の性能であることを特徴とする請求項6または7記載の最適化装置。 The device is an internal combustion engine, the control parameter is a parameter based on a crank rotation angle of the internal combustion engine, and the state quantity is a performance of the internal combustion engine that changes periodically with respect to the parameter. The optimization apparatus according to claim 6 or 7. 前記内燃機関は燃料噴射装置を有し、前記クランク回転角度に基づくパラメータは前記燃料噴射装置の燃料噴射時期を含むことを特徴とする請求項8記載の最適化装置。 9. The optimization device according to claim 8, wherein the internal combustion engine has a fuel injection device, and the parameter based on the crank rotation angle includes a fuel injection timing of the fuel injection device. 前記内燃機関は燃料噴射装置を有し、前記クランク回転角度に基づくパラメータは、複数の区間を含む一定期間内における前記燃料噴射装置による燃料噴射パターンであり、前記燃料噴射パターンは、前記燃料噴射装置による燃料噴射量の合計が一定となるような各区間の燃料噴射量からなるベクトルであり、前記状態量は前記パラメータについて周期的に変化する前記内燃機関の性能であることを特徴とする請求項8記載の最適化装置。 The internal combustion engine includes a fuel injection device, and the parameter based on the crank rotation angle is a fuel injection pattern by the fuel injection device within a certain period including a plurality of sections, and the fuel injection pattern is the fuel injection device. 2. The vector of fuel injection amounts in each section such that the sum of fuel injection amounts due to is constant, and the state amount is a performance of the internal combustion engine that periodically changes with respect to the parameter. 8. The optimization device according to 8. 前記状態量は、排出ガス中の所定の成分の濃度、燃料消費量、出力トルク、スロットル弁の開度およびクランク回転速度のうち少なくとも1つを含むことを特徴とする請求項9または10記載の最適化装置。 11. The state quantity includes at least one of a concentration of a predetermined component in exhaust gas, fuel consumption, output torque, throttle valve opening, and crank rotation speed. Optimization device. 前記機器はロボットリンク機構であり、前記変数ベクトルは前記リンク機構の関節がなす角度を示すパラメータであり、前記状態量は前記パラメータについて周期的に変化する前記ロボットリンク機構の性能であることを特徴とする請求項6または7記載の最適化装置。 The device is a robot link mechanism, the variable vector is a parameter indicating an angle formed by a joint of the link mechanism, and the state quantity is a performance of the robot link mechanism that periodically changes with respect to the parameter. The optimization device according to claim 6 or 7. 前記最適化対象は、道路に配置された複数の交通信号を含む交通システムの広域制御をシミュレーションする交通シミュレータであり、前記変数ベクトルは少なくとも1つ交通信号の点灯タイミングであり、前記状態量は前記道路を通過する車に関する情報を含むことを特徴とする請求項5記載の最適化装置。 The optimization object is a traffic simulator for simulating wide area control of a traffic system including a plurality of traffic signals arranged on a road, the variable vector is at least one traffic signal lighting timing, and the state quantity is 6. The optimization apparatus according to claim 5, further comprising information on a vehicle passing through the road. 前記最適化装置は、蛋白質の構造をシミュレーションする蛋白質シミュレータであり、前記変数ベクトルは蛋白質の共有結合間の二面角を表す方向ベクトルであり、前記状態量はエネルギーに関する情報であることを特徴とする請求項5記載の最適化装置。 The optimization device is a protein simulator for simulating a protein structure, the variable vector is a direction vector representing a dihedral angle between covalent bonds of the protein, and the state quantity is information on energy. The optimization apparatus according to claim 5. 前記最適化対象は、対象画像と参照画像とのマッチング処理を行う画像処理装置であり、前記変数ベクトルは前記参照画像に対する前記対象画像の方向ベクトルであり、前記状態量は前記対象画像と前記参照画像との誤差を示す情報であることを特徴とする請求項5記載の最適化装置。 The optimization target is an image processing device that performs a matching process between a target image and a reference image, the variable vector is a direction vector of the target image with respect to the reference image, and the state quantity is the target image and the reference 6. The optimization apparatus according to claim 5, wherein the optimization apparatus is information indicating an error from an image. 最適化対象に最適化すべきN個の変数を有する変数を有する解候補を与え、m個の変数の2乗の総和が1となる拘束を有する目的関数を含む前記N個の変数についての目的関数に対応する状態量を前記最適化対象から受ける最適化方法であって、
N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合を解候補の集合として記憶部に記憶するステップと、
前記記憶された解候補の集合から所定数の解候補を選択するステップと、
前記選択された所定数の解候補に基づいて(m−1)次元単位球面を含むN次元変数空間上に新たな解候補の集合を生成し、生成された解候補の集合を前記最適化対象および前記記憶部に与えるステップと、
前記最適化対象から出力される状態量の評価値を算出するステップと、
前記算出される評価値に基づいて前記記憶部に記憶される解候補の集合を更新するステップとを備え、
Nは2以上の自然数であり、前記mは前記N以下の自然数であることを特徴とする最適化方法。
An objective function for the N variables including an objective function having a constraint that gives a solution candidate having a variable having N variables to be optimized and has a sum of squares of m variables being 1. An optimization method for receiving from the optimization target a state quantity corresponding to
Storing a set of variable vectors representing points on an N-dimensional variable space defined by a set of N variables in a storage unit as a set of solution candidates;
Selecting a predetermined number of solution candidates from the set of stored solution candidates;
Based on the selected predetermined number of solution candidates, a new solution candidate set is generated on an N-dimensional variable space including an (m−1) -dimensional unit sphere, and the generated solution candidate set is the optimization target. And giving to the storage unit;
Calculating an evaluation value of a state quantity output from the optimization target;
Updating a set of solution candidates stored in the storage unit based on the calculated evaluation value,
N is a natural number of 2 or more, and m is a natural number of N or less.
最適化対象に最適化すべきN個の変数を有する変数を有する解候補を与え、m個の変数に関して周期性を有する目的関数を含む前記N個の変数についての目的関数に対応する状態量を前記最適化対象から受ける最適化方法であって、
N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合を解候補の集合として記憶部に記憶するステップと、
前記記憶された解候補の集合から所定数の解候補を選択するステップと、
前記選択された所定数の解候補に基づいてm個の変数をm個の1次元単位球面上の点に対応付けることによりN次元変数空間を[(N−m)+2m]次元変数空間に拡張し、拡張された[(N−m)+2m]次元変数空間上に解候補の集合を生成し、生成された解候補の集合をN次元変数空間上の点に再び対応付けることにより新たな解候補の集合を生成し、生成された解候補の集合を前記最適化対象および前記記憶部に与えるステップと、
前記最適化対象から出力される状態量の評価値を算出するステップと、
前記算出される評価値に基づいて前記記憶部に記憶される解候補の集合を更新するステップとを備え、
Nは1以上の自然数であり、前記mは前記N以下の自然数であることを特徴とする最適化方法。
A solution candidate having a variable having N variables to be optimized is given as an optimization target, and a state quantity corresponding to the objective function for the N variables including an objective function having periodicity with respect to m variables is set as the state quantity. An optimization method received from an optimization target,
Storing a set of variable vectors representing points on an N-dimensional variable space defined by a set of N variables in a storage unit as a set of solution candidates;
Selecting a predetermined number of solution candidates from the set of stored solution candidates;
The N-dimensional variable space is expanded to a [(N−m) + 2m] -dimensional variable space by associating m variables with m points on the one-dimensional unit sphere based on the selected predetermined number of solution candidates. Then, a solution candidate set is generated on the expanded [(N−m) + 2m] dimensional variable space, and the generated solution candidate set is re-associated with a point on the N dimensional variable space to generate a new solution candidate. Generating a set and providing the generated set of solution candidates to the optimization target and the storage unit;
Calculating an evaluation value of a state quantity output from the optimization target;
Updating a set of solution candidates stored in the storage unit based on the calculated evaluation value,
N is a natural number of 1 or more, and m is a natural number of N or less.
最適化対象に最適化すべきN個の変数を有する変数を有する解候補を与え、m個の変数の2乗の総和が1となる拘束を有する目的関数を含む前記N個の変数についての目的関数に対応する状態量を前記最適化対象から受けるコンピュータにより実行可能な最適化プログラムであって、
N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合を解候補の集合として記憶部に記憶する処理と、
前記記憶された解候補の集合から所定数の解候補を選択する処理と、
前記選択された所定数の解候補に基づいて(m−1)次元単位球面を含むN次元変数空間上に新たな解候補の集合を生成し、生成された解候補の集合を前記最適化対象および前記記憶部に与える処理と、
前記最適化対象から出力される状態量の評価値を算出する処理と、
前記算出される評価値に基づいて前記記憶部に記憶される解候補の集合を更新する処理とを前記コンピュータに実行させ、
Nは2以上の自然数であり、前記mは前記N以下の自然数であることを特徴とする最適化プログラム。
An objective function for the N variables including an objective function having a constraint that gives a solution candidate having a variable having N variables to be optimized and has a sum of squares of m variables being 1. An optimization program that can be executed by a computer that receives from the optimization object a state quantity corresponding to
Storing a set of variable vectors representing points on an N-dimensional variable space defined by a set of N variables in a storage unit as a set of solution candidates;
A process of selecting a predetermined number of solution candidates from the stored solution candidate set;
Based on the selected predetermined number of solution candidates, a new solution candidate set is generated on an N-dimensional variable space including an (m−1) -dimensional unit sphere, and the generated solution candidate set is the optimization target. And processing to be given to the storage unit,
Processing for calculating an evaluation value of a state quantity output from the optimization target;
Processing to update the set of solution candidates stored in the storage unit based on the calculated evaluation value,
N is a natural number equal to or greater than 2, and m is a natural number equal to or less than N.
最適化対象に最適化すべきN個の変数を有する変数を有する解候補を与え、m個の変数に関して周期性を有する目的関数を含む前記N個の変数についての目的関数に対応する状態量を前記最適化対象から受けるコンピュータにより実行可能な最適化プログラムであって、
N個の変数の組により定義されるN次元変数空間上の点を表す変数ベクトルの集合を解候補の集合として記憶部に記憶する処理と、
前記記憶された解候補の集合から所定数の解候補を選択する処理と、
前記選択された所定数の解候補に基づいてm個の変数をm個の1次元単位球面上の点に対応付けることによりN次元変数空間を[(N−m)+2m]次元変数空間に拡張し、拡張された[(N−m)+2m]次元変数空間上に解候補の集合を生成し、生成された解候補の集合をN次元変数空間上の点に再び対応付けることにより新たな解候補の集合を生成し、生成された解候補の集合を前記最適化対象および前記記憶部に与える処理と、
前記最適化対象から出力される状態量の評価値を算出する処理と、
前記算出される評価値に基づいて前記記憶部に記憶される解候補の集合を更新する処理とを前記コンピュータに実行させ、
Nは1以上の自然数であり、前記mは前記N以下の自然数であることを特徴とする最適化プログラム。
A solution candidate having a variable having N variables to be optimized is given as an optimization target, and a state quantity corresponding to the objective function for the N variables including an objective function having periodicity with respect to m variables is set as the state quantity. An optimization program executable by a computer received from an optimization target,
Storing a set of variable vectors representing points on an N-dimensional variable space defined by a set of N variables in a storage unit as a set of solution candidates;
A process of selecting a predetermined number of solution candidates from the stored solution candidate set;
The N-dimensional variable space is expanded to a [(N−m) + 2m] -dimensional variable space by associating m variables with m points on the one-dimensional unit sphere based on the selected predetermined number of solution candidates. Then, a solution candidate set is generated on the expanded [(N−m) + 2m] dimensional variable space, and the generated solution candidate set is re-associated with a point on the N dimensional variable space to generate a new solution candidate. A process of generating a set and providing the generated set of solution candidates to the optimization target and the storage unit;
Processing for calculating an evaluation value of a state quantity output from the optimization target;
Processing to update the set of solution candidates stored in the storage unit based on the calculated evaluation value,
N is a natural number equal to or greater than 1, and m is a natural number equal to or less than N.
JP2006068196A 2005-03-16 2006-03-13 Optimization device, optimization method, and optimization program Expired - Fee Related JP4993061B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006068196A JP4993061B2 (en) 2005-03-16 2006-03-13 Optimization device, optimization method, and optimization program

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2005074371 2005-03-16
JP2005074371 2005-03-16
JP2006068196A JP4993061B2 (en) 2005-03-16 2006-03-13 Optimization device, optimization method, and optimization program

Publications (2)

Publication Number Publication Date
JP2006294002A JP2006294002A (en) 2006-10-26
JP4993061B2 true JP4993061B2 (en) 2012-08-08

Family

ID=37414452

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006068196A Expired - Fee Related JP4993061B2 (en) 2005-03-16 2006-03-13 Optimization device, optimization method, and optimization program

Country Status (1)

Country Link
JP (1) JP4993061B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5073268B2 (en) * 2006-11-01 2012-11-14 富士重工業株式会社 Automatic adjustment device for control parameters
US9128699B2 (en) 2008-12-22 2015-09-08 Intel Corporation Method and system for queuing transfers of multiple non-contiguous address ranges with a single command
CN109783867A (en) * 2018-12-17 2019-05-21 西安工程大学 A kind of western clothes collar genetic algorithm Automated Design coding-decoding method

Also Published As

Publication number Publication date
JP2006294002A (en) 2006-10-26

Similar Documents

Publication Publication Date Title
CN110887484B (en) Mobile robot path planning method based on improved genetic algorithm and storage medium
Jin et al. An efficient self-organizing map designed by genetic algorithms for the traveling salesman problem
Zhang et al. A self-organizing multiobjective evolutionary algorithm
Pan et al. Monkey king evolution: an enhanced ebb-tide-fish algorithm for global optimization and its application in vehicle navigation under wireless sensor network environment
Pham et al. Comparative study of derivative free optimization algorithms
Cai et al. A multiobjective simultaneous learning framework for clustering and classification
JP2007172306A (en) Multipurpose optimization apparatus, multipurpose optimization method and multipurpose optimization program
JP4993061B2 (en) Optimization device, optimization method, and optimization program
Walton et al. Selected engineering applications of gradient free optimisation using cuckoo search and proper orthogonal decomposition
Sun et al. An immune genetic algorithm to buildings displacement in cartographic generalization
Wang et al. Improvement analysis and application of real-coded genetic algorithm for solving constrained optimization problems
US7437336B2 (en) Polyoptimizing genetic algorithm for finding multiple solutions to problems
Kampolis et al. Multilevel optimization strategies based on metamodel-assisted evolutionary algorithms, for computationally expensive problems
JP2005285090A (en) Multiobjective optimization apparatus, method, and program
Wang et al. Discrete particle swarm optimization based on estimation of distribution for polygonal approximation problems
Liu et al. Clifford group equivariant simplicial message passing networks
Wang et al. Handling of constraints in efficient global optimization
Havoutis et al. Constrained geodesic trajectory generation on learnt skill manifolds
Lu et al. A Trust Index-Based Adaptive Kriging Method for the Cooling Fan Optimization
CN113722853B (en) Group intelligent evolutionary engineering design constraint optimization method for intelligent computation
Jia et al. Autonomous mobile robot global path planning: A prior information-based particle swarm optimization approach
Guo et al. A set of novel continuous action-set reinforcement learning automata models to optimize continuous functions
CN117688121B (en) SubGNN geographic knowledge graph representation learning method for injecting spatial features
Gopal et al. TEXTAL™: Automated Crystallographic Protein Structure Determination.
Kaji Automotive engine calibration with experiment-based evolutionary multi-objective optimization

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20061017

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20061019

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090313

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120409

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120424

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120424

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150518

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4993061

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees