JPH07200516A - Optimizing method and optimizing device - Google Patents

Optimizing method and optimizing device

Info

Publication number
JPH07200516A
JPH07200516A JP5349690A JP34969093A JPH07200516A JP H07200516 A JPH07200516 A JP H07200516A JP 5349690 A JP5349690 A JP 5349690A JP 34969093 A JP34969093 A JP 34969093A JP H07200516 A JPH07200516 A JP H07200516A
Authority
JP
Japan
Prior art keywords
genetic
genetic code
parent
codes
crossover
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.)
Pending
Application number
JP5349690A
Other languages
Japanese (ja)
Inventor
Shunichi Kubo
俊一 久保
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP5349690A priority Critical patent/JPH07200516A/en
Publication of JPH07200516A publication Critical patent/JPH07200516A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To shorten the time needed for calculating a satisfactory solution of the optimization problem by providing a constitution where a certain parent genetic code replaces by itself the value of the genes of two or more parent genetic codes with the value of the genes of the parts corresponding to the value of the genes of the parent genetic codes. CONSTITUTION:In a crossing process of a genetic algorithm, three or more parent genetic codes are selected decisively or in terms of probability as the crossing objects based on some rule. Then a certain parent genetic code replaces the value of the genes of the different parts of two or more other parent genetic codes with the value of its own genes of the parts corresponding to those genetic codes. For instance, the gene d1 of the first parent genetic code is replaced with the gene d2 of the second parent genetic code, the gene d2 is replaced with the gene d3 of the third parent genetic code, and the gene d3 is replaced with the gene d1 respectively among these three genetic codes. Thus various genetic codes are acquired.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は最適化方法及び最適化装
置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an optimization method and an optimization device.

【0002】[0002]

【従来の技術】巡回セールスマン問題、スケジューリン
グ問題、ナップザック問題、LSIの最適配線問題、等
の組み合わせ最適化問題、或いは離散最適化問題は、解
となるパラメータを変数とする何らかの評価関数(或い
はコスト関数)を定義し、それらの値が最大(或いは最
小)となるパラメータセットを見つける問題であるが、
一般にこれらの評価関数(或いはコスト関数)は多峰性
(或いは多谷性)であり、従来、勾配法等の非線形最適
化手法によってこれを解いた場合、極大点即ち局所最適
点(或いは極小点)で、最適化が終了してしまい、最適
化問題の解として満足が得られない解を得てしまうとい
う欠点を有していた。
2. Description of the Related Art A combinatorial optimization problem such as a traveling salesman problem, a scheduling problem, a knapsack problem, an LSI optimal wiring problem, or a discrete optimization problem is an evaluation function (or a cost) having a parameter as a variable. Function) and find the parameter set where those values are maximum (or minimum).
Generally, these evaluation functions (or cost functions) are multi-peaked (or multi-valleyed), and when this is solved by a conventional non-linear optimization method such as a gradient method, a maximum point, that is, a local optimum point (or a minimum point). ), The optimization ends, and there is a drawback that an unsatisfactory solution is obtained as a solution of the optimization problem.

【0003】[0003]

【発明が解決しようとする課題】上に示したような従来
の最適化手法の欠点は、最適化問題が長年抱えてきた、
解空間を広く探し回ることと、焦点を絞って探す事の両
立という問題に起因している。多点並列探索アルゴリズ
ムである遺伝的アルゴリズムは、それに対する解決手法
の1つとして期待されているが、最適化問題の解として
十分満足の得られる解を上記アルゴリズムによって求め
るためには、計算時間が非常に大きくなるという問題点
を有していた。
The drawbacks of the conventional optimization method as shown above are that the optimization problem has been held for many years.
This is due to the problem of both searching widely for the solution space and focusing on the search. The genetic algorithm, which is a multipoint parallel search algorithm, is expected as one of the solving methods for it, but in order to obtain a solution that is sufficiently satisfactory as a solution of an optimization problem, the calculation time is required. It had the problem of becoming very large.

【0004】本発明の最適化方法及び最適化装置はこの
ような課題に着目してなされたものであり、その目的と
するところは、最適化問題の解空間の広域探索と集中探
索の両立を図りながら、局所最適解で最適化が終了する
確率を低減し、最適化問題の解として十分満足の得られ
る解が求まるまでの計算時間を短縮できる最適化方法及
び最適化装置を提供することにある。
The optimization method and the optimization apparatus of the present invention have been made in view of such a problem, and an object thereof is to achieve both wide area search and concentrated search of the solution space of the optimization problem. (EN) Provided are an optimization method and an optimization device capable of reducing the probability that optimization ends with a local optimal solution and shortening the calculation time until a sufficiently satisfactory solution is obtained as a solution of an optimization problem. is there.

【0005】[0005]

【課題を解決するための手段】上記の目的を達成するた
めに、本発明の最適化方法は、遺伝的アルゴリズムにお
ける交叉の過程において、ある親遺伝コードが、2つ以
上の他の親遺伝コードの遺伝子の値を自らのそれらに対
応する部分の遺伝子の値として置き換えることによって
子遺伝コードを生成する。
In order to achieve the above object, the optimization method of the present invention is such that one parent genetic code is two or more other parent genetic codes in the process of crossover in a genetic algorithm. The child genetic code is generated by substituting the values of the genes of the above for the values of the genes of the part corresponding to them.

【0006】また、本発明の最適化装置は、複数のプロ
セッサーを備え、各プロセッサーが交叉の対象とする親
遺伝コードの内容を1つずつ割り当てられ、他のプロセ
ッサーからの他の親遺伝コードに関する遺伝子情報を受
け取り、それに基づいて交叉を行う遺伝的アルゴリズム
を実行する最適化装置において、交叉の過程において、
各プロセッサーが2つ以上の他のプロセッサーから他の
親遺伝コードに関する遺伝子情報を受け取り、それに基
づいて交叉を行う。
Further, the optimizing device of the present invention is provided with a plurality of processors, each processor is assigned one of the contents of the parent genetic code to be crossed, and relates to another parent genetic code from another processor. In an optimizer that receives genetic information and executes a genetic algorithm that performs crossover based on it, in the process of crossover,
Each processor receives genetic information about other parental genetic codes from two or more other processors and performs crossover based on it.

【0007】[0007]

【作用】すなわち、本発明の最適化方法は、遺伝的アル
ゴリズムにおける交叉の過程で子遺伝コードを生成する
場合、ある親遺伝コードが、2つ以上の他の親遺伝コー
ドの遺伝子の値を自らのそれらに対応する部分の遺伝子
の値として置き換えるようにする。
That is, in the optimization method of the present invention, when a child genetic code is generated in the process of crossing over in a genetic algorithm, a certain parent genetic code uses the gene values of two or more other parent genetic codes by itself. The values of the genes corresponding to those of are replaced.

【0008】また、本発明の最適化装置は、複数のプロ
セッサーの各々のプロセッサーが交叉の対象とする親遺
伝コードの内容を1つずつ割り当てられ、他のプロセッ
サーからの他の親遺伝コードに関する遺伝子情報を受け
取り、それに基づいて交叉を行う遺伝的アルゴリズムを
実行するにあたって、交叉の過程において、各プロセッ
サーが2つ以上の他のプロセッサーから他の親遺伝コー
ドに関する遺伝子情報を受け取り、それに基づいて交叉
を行う。
Further, in the optimizing device of the present invention, each processor of the plurality of processors is assigned one by one the contents of the parent genetic code to be crossed over, and the genes relating to other parent genetic codes from other processors are assigned. In executing a genetic algorithm that receives information and performs crossover based on it, in the process of crossover, each processor receives genetic information about another parent genetic code from two or more other processors and performs crossover based on it. To do.

【0009】[0009]

【実施例】以下、図面を参照して本発明の実施例を詳細
に説明する。
Embodiments of the present invention will now be described in detail with reference to the drawings.

【0010】まず、本発明の第1実施例に係る最適化方
法が適用される遺伝的アルゴリズムを説明する。まず、
与えられた最適化問題に対して、その変数セットを決定
する一連の記号(以下、遺伝子と呼ぶ)の列、すなわち
遺伝コードを生成する規則、及び各遺伝コードに対応す
る適応度を、その値が大きい程、その遺伝コードに対応
する変数セットがもとの最適化問題の評価関数値を高く
(或いは、コスト関数を低く)するように定義してお
く。
First, a genetic algorithm to which the optimization method according to the first embodiment of the present invention is applied will be described. First,
For a given optimization problem, a series of symbols (hereinafter referred to as genes) that determine the variable set, that is, the rules for generating a genetic code, and the fitness corresponding to each genetic code, Is defined so that the larger the value of, the higher the evaluation function value of the original optimization problem (or the lower cost function) of the variable set corresponding to the genetic code.

【0011】図1は、本実施例の概略を説明するための
1つの遺伝コードの論理的構成を示す図であり、A1〜
Anはそれを構成する遺伝子である。始めに、複数の遺
伝コードを用意し、それらを親遺伝コードとする。
FIG. 1 is a diagram showing a logical configuration of one genetic code for explaining the outline of the present embodiment, and
An is a gene that constitutes it. First, multiple genetic codes are prepared, and these are used as parent genetic codes.

【0012】(1) まず選択過程では、親遺伝コードと全
く同一の遺伝コードを、その親遺伝コードの適応度に応
じて確率的、あるいは確定的に複製する。例えば、その
親遺伝コードの適応度の関数値となる期待値の数だけ確
率的に、或いは適応度の関数値となる割合で確定的に複
製する。具体的には、適応度の高い遺伝コードを確率的
に多く、低い遺伝コードを少なく複製する。あるいは適
応度の高い遺伝コードは必ず複製する。あるいは適応度
の低い遺伝コードは全く複製しないということも考えら
れるが、適応度に応じた複製の方法は従来からさまざま
なモデルが提案されており、本実施例は特定の方法に制
限されるものではない。
(1) First, in the selection process, the same genetic code as the parent genetic code is stochastically or deterministically duplicated according to the fitness of the parent genetic code. For example, the number of expected values serving as the function value of the fitness of the parent genetic code is stochastically or deterministically replicated at the rate of serving as the function value of the fitness. Specifically, a genetic code having a high fitness is stochastically increased, and a genetic code having a low fitness is replicated less. Alternatively, the highly adaptable genetic code is always duplicated. Alternatively, it is conceivable that a genetic code having a low fitness is not replicated at all, but various models have been conventionally proposed as a replication method according to the fitness, and this embodiment is limited to a specific method. is not.

【0013】(2) 次の交叉過程では、前記選択の過程を
経た親遺伝コードの間から、3つ以上の親遺伝コードを
確率的あるいは何らかの規則に従って確定的に選択し交
叉の対象とする。ここで本実施例の交叉過程は、交叉の
概念自体が従来行われてきた2つの親遺伝コード間のも
のより拡張されたものである。
(2) In the next crossover process, three or more parental genetic codes are deterministically selected from the parental genetic codes that have undergone the selection process and are selected according to some rule to be the target of the crossover. Here, the crossover process of the present embodiment is an extension of the concept of crossover itself from that between two parent genetic codes which has been conventionally performed.

【0014】すなわち、ある遺伝コードが従来のよう
に、ただ1つの他の親遺伝コードの遺伝子の値を自らの
それに対応する部分の遺伝子の値とすることを含み、2
つ以上の他の親遺伝コードのそれぞれ異なる部分の遺伝
子の値を自らのそれらに対応する部分の遺伝子の値とし
て置き換えることを交叉とする。これは、遺伝コードに
含まれる遺伝子の数が異なる、すなわち長さの異なる他
の親遺伝コードの遺伝子の値を、自らが遺伝子を保有し
ていない部分に追加することも含む。
That is, a certain genetic code includes the conventional method in which the value of a gene of only one other parent genetic code is used as the value of a gene of its own portion.
The crossover is to replace the gene values of different parts of one or more other parental genetic codes with the gene values of the part corresponding to them. This also includes adding the values of genes of other parental genetic codes having different numbers of genes included in the genetic code, that is, having different lengths, to the part where the gene does not posses itself.

【0015】また、以下の実施例においては全て遺伝子
の置き換えは確定的に記述してあるが、特定或いは全て
の部分の遺伝子の置き換えは確率的に、その他の部分は
確定的に置き換えるとすることも考えられる。
In the following examples, all gene replacements are described definitely, but it is assumed that gene replacements of specific or all parts are stochastically carried out and other parts are definitely replaced. Can also be considered.

【0016】従って、本実施例における交叉は、従来、
遺伝的アルゴリズムで用いられていた交叉の概念、即ち
2つの親遺伝コード間で、その一部の遺伝子の値を互い
に交換して子遺伝コードとする事を含んだ拡張概念であ
る。また、従来の2つの親遺伝コード間の交叉の場合、
交換する遺伝子の遺伝コード内での位置を決めれば、作
られる子遺伝コードの数は親遺伝コードの数と同数の2
つと決まっていたが、本実施例による3つ以上の親遺伝
コード間の交叉によれば子遺伝コードの数は、組み合わ
せ的に親遺伝コードの数以上作ることが可能となる。
Therefore, the crossover in this embodiment is conventionally
This is an extended concept including the concept of crossover used in a genetic algorithm, that is, the values of some of the genes of two parent genetic codes are exchanged with each other to obtain a child genetic code. Also, in the case of a crossover between two conventional parental genetic codes,
If the positions of the genes to be exchanged in the genetic code are determined, the number of child genetic codes to be created will be the same as the number of parent genetic codes, 2
However, according to the crossover between three or more parent genetic codes according to the present embodiment, the number of child genetic codes can be combined and made larger than the number of parent genetic codes.

【0017】以下に実例を挙げてより具体的に説明す
る。図2は交叉の対象となる親遺伝コードを示すもので
ある。遺伝コード01、02、03、04は、それぞ
れ、交叉の対象となる親遺伝コードである。遺伝子a1
〜h1、a2〜h2、a3〜h3、a4〜h4は、それ
ぞれ遺伝コード01、02、03、04の内容を示す遺
伝子である。
A more specific description will be given below with reference to actual examples. FIG. 2 shows the parental genetic code to be crossed. The genetic codes 01, 02, 03, 04 are parent genetic codes that are the targets of crossover. Gene a1
-H1, a2-h2, a3-h3, and a4-h4 are genes showing the contents of genetic codes 01, 02, 03, 04, respectively.

【0018】本図においては、各親遺伝コードの長さは
全て同じになっているが、以下の操作が可能な限り、各
遺伝コードの長さは同一である必要は全く無い。本実施
例において、例えば、3つの親遺伝コード01、02、
03間での交叉の実例としては、図3に示すように、親
遺伝コード01のd1をd2に、親遺伝コード02のd
2をd3に、親遺伝コードの03のd3をd1に置き換
えたものを子遺伝コードとする。
In this figure, all the parent genetic codes have the same length, but the genetic codes need not have the same length as long as the following operations are possible. In this example, for example, three parental genetic codes 01, 02,
As an example of crossover between 03, as shown in FIG. 3, d1 of the parent genetic code 01 is changed to d2 and d of the parent genetic code 02 is changed.
2 is replaced with d3 and d3 of the parental genetic code 03 is replaced with d1 as the child genetic code.

【0019】また、3つの親遺伝コード間の交叉の別の
例としては、図4に示すように、親遺伝コード01のb
1,c1をb2,c2に、f1をf3に、親遺伝コード
02のb2,c2をb3,c3に、f2をf1に、親遺
伝コード03のb3,c3をb1,c1に、f3をf2
に置き換えたものが考えられる。
Further, as another example of the crossover between the three parent genetic codes, as shown in FIG.
1, c1 to b2 and c2, f1 to f3, parent genetic code 02 b2 and c2 to b3 and c3, f2 to f1, parent genetic code 03 b3 and c3 to b1 and c1, f3 to f2
It is possible to replace it with.

【0020】さらに、図5に示すように、親遺伝コード
01のb1,c1をb3、c3に、f1をf2に、親遺
伝コード02のb2,c2をb1,c1に、f2をf3
に、親遺伝コード03のb3,c3をb2,c2に、f
3をf1に置き換えたものが考えられる。
Further, as shown in FIG. 5, b1 and c1 of parental genetic code 01 are set to b3 and c3, f1 is set to f2, b2 and c2 of parental genetic code 02 are set to b1 and c1, and f2 is set to f3.
, B3, c3 of parental genetic code 03 into b2, c2, f
It is conceivable that 3 is replaced with f1.

【0021】さらに、図6に示すように、親遺伝コード
01のb1,c1をb2,c2に、親遺伝コード02の
b2,c2をb1,c1に、f2をf3に、親遺伝コー
ド03のf3をf2に置き換えたものが考えられる。
Further, as shown in FIG. 6, b1, c1 of parental genetic code 01 is set to b2, c2, b2, c2 of parental genetic code 02 is set to b1, c1, f2 is set to f3, and parental genetic code 03 is set. It is possible to replace f3 with f2.

【0022】上記した図4、図5、図6に示した遺伝コ
ードそれぞれ、または、すべてを親遺伝コード01、0
2、03間の交叉による子遺伝コードとする事が出来
る。
Each or all of the above-mentioned genetic codes shown in FIGS. 4, 5 and 6 are parental genetic codes 01, 0.
It can be used as a child genetic code by crossing between 2003 and 03.

【0023】更に、1回の交叉において、書き換える遺
伝子の遺伝コード内での位置のセットを複数選択する事
を許して、図3、図4、図5、図6の遺伝コード全て
を、3つの親遺伝コード01、02、03の間の交叉に
よる子遺伝コードとする事も出来る。
Further, in one crossover, it is possible to select a plurality of sets of positions in the genetic code of the gene to be rewritten, and all the genetic codes of FIGS. 3, 4, 5, and 6 are set to three. It is also possible to use the child genetic code by crossing over the parent genetic codes 01, 02, 03.

【0024】また、4つの親遺伝コード01、02、0
3、04による交叉の実例としては、図7に示すよう
に、親遺伝コード01のb1を、b2に、g1をg3
に、親遺伝コード02のd2,e2をd3,e3に、g
2をg4に、親遺伝コード03のb3をb2に、d3,
e3をd2,e2に、g3をg1に、親遺伝コード04
のb4をb3に、g4をg2に置き換えたものを子遺伝
コードとすることができる。 また、長さの異なる親遺
伝コード間の交叉の実例としては、図8に示すような遺
伝子α1〜ε1、α2〜η2、α3〜ε3から構成され
た親遺伝コード11、12、13に対して、図9に示さ
れるように、親遺伝コード11のγ1がγ3に置き換え
られ、ζ2、η2が追加されたものと、親遺伝コード1
2のγ2がγ1に置き換えられたものと、親遺伝コード
13のγ3がγ2に置き換えられ、ζ2、η2が追加さ
れたものを子遺伝コードとすることが考えられる。
The four parent genetic codes 01, 02, 0
As an example of crossover by 3, 04, as shown in FIG. 7, b1 of parental genetic code 01, b2, g1 to g3
, D2, e2 of parental genetic code 02 to d3, e3, g
2 to g4, b3 of parental genetic code 03 to b2, d3
e3 to d2, e2, g3 to g1, parental genetic code 04
The child genetic code can be obtained by replacing b4 with b3 and g4 with g2. Further, as an example of crossover between parent genetic codes having different lengths, for the parent genetic codes 11, 12, 13 composed of genes α1 to ε1, α2 to η2, and α3 to ε3 as shown in FIG. As shown in FIG. 9, γ1 of the parent genetic code 11 is replaced with γ3, ζ2 and η2 are added, and the parent genetic code 1
It is considered that the γ2 of 2 is replaced by γ1 and the γ3 of the parental genetic code 13 is replaced by γ2, and ζ2 and η2 are added as the child genetic code.

【0025】以上に示した図4、図5、図6、図7、図
9の子遺伝コードは、従来の2つの親遺伝コードの交叉
によっては得ることのできない子遺伝コードを生成する
ことができるという効果を有する。
The above-described child genetic codes of FIGS. 4, 5, 6, 7, and 9 can generate a child genetic code that cannot be obtained by crossing two conventional parent genetic codes. It has the effect of being able to.

【0026】また、組み合わせ的に合成する事が可能な
子遺伝コードの内、どれを最終的な子遺伝コードとする
かに関しては、その適応度に基づいて選ぶ、或いは、そ
の親遺伝コードの適応度に応じて作る子遺伝コードの数
を決める等の例が考えられる。
Further, which of the child genetic codes which can be combined in combination is selected as the final child genetic code is selected based on its fitness or the adaptation of its parent genetic code. An example is conceivable in which the number of child genetic codes to be created is determined according to the degree.

【0027】(3) 次の突然変異の過程では、各子遺伝コ
ードに対して、確率的或いは何らかの規則に従って確定
的に決めた特定の部位の遺伝子を、所定の確率で他のコ
ード値に置き換える。これらを次の世代の親遺伝コード
とする。
(3) In the next mutation process, a gene at a specific site determined probabilistically or in accordance with some rule for each child's genetic code is replaced with another code value with a predetermined probability. . These are the parental genetic codes for the next generation.

【0028】上記(1) 乃至(3) の以上の手続きを所定の
回数繰り返し、それまでに得られた最大適応度の遺伝コ
ードを解とする。
The above procedures (1) to (3) are repeated a predetermined number of times, and the genetic code of the maximum fitness obtained up to that point is taken as the solution.

【0029】以上、上記した第1実施例によれば、1回
の交叉における、書き換える遺伝子の遺伝コード内での
位置のセットを複数許すかどうか、また、交叉の対象と
なる遺伝コードの長さを一致させるかどうか等にかかわ
らず、従来行われていた2つの親遺伝コード間の交叉に
よって得られる子遺伝コードを含み、それよりはるかに
多様な子遺伝コードが得られる事になる。それらは、従
来の2つの親遺伝コード間の交叉では決して得る事が出
来なかった適応度の高い3つ以上の親遺伝コードから遺
伝子を受け継いだ子遺伝コードを含んでおり、上記(1)
乃至(3) の手続きを同一回繰り返して従来の交叉を用い
た遺伝的アルゴリズムと比較した場合、最終的に得られ
る最大適応度の値を大きくする事が期待できる。即ち、
最適化問題の解として十分満足の行く解を得る為の計算
時間を短縮する事が可能となる。また同時に局所最適解
で最適化が終了してしまう確率を低減することも可能と
なる。
As described above, according to the first embodiment described above, whether or not a plurality of sets of positions in the genetic code of a rewritten gene are permitted in one crossover, and the length of the genetic code to be crossed over is determined. Irrespective of whether or not they match, it is possible to obtain a far more diverse child genetic code including the child genetic code obtained by the crossover between two parent genetic codes that has been conventionally performed. They include a child genetic code that inherits a gene from three or more highly adaptable parent genetic codes that could never be obtained by crossover between two conventional parent genetic codes.
When the procedure from (3) to (3) is repeated the same times and compared with the conventional genetic algorithm using crossover, it is expected that the value of the maximum fitness finally obtained will be increased. That is,
It is possible to shorten the calculation time for obtaining a sufficiently satisfactory solution as the solution of the optimization problem. At the same time, it is possible to reduce the probability that the optimization will end with the local optimum solution.

【0030】以下に本発明の第2実施例に係る最適化装
置について説明する。本発明の第2の実施例において
は、遺伝的アルゴリズムを複数のプロセッサを備えた並
列計算機で実行する場合に、交叉の対象とする各親遺伝
コードを1つずつのプロセッサに割り当てるものとす
る。本実施例においては、選択の過程の後に第1実施例
に示したような交叉の過程を実行する場合に、図10に
示すように、各親遺伝コード21、22、23、24を
割り当てられた各プロセッサ201、202、203、
204は、各プロセッサ間を直接接続した双方向の通信
路312、313、314、323、324、334を
通して、各プロセッサが割り当てられた親遺伝コード以
外の親遺伝コードの遺伝子情報を受け取るものとする。
An optimizing apparatus according to the second embodiment of the present invention will be described below. In the second embodiment of the present invention, when the genetic algorithm is executed by a parallel computer having a plurality of processors, each parent genetic code to be crossed is assigned to one processor. In this embodiment, when the crossover process as shown in the first embodiment is executed after the selection process, each parent genetic code 21, 22, 23, 24 is assigned as shown in FIG. Each processor 201, 202, 203,
The processor 204 receives the genetic information of the parent genetic code other than the parent genetic code assigned to each processor through the two-way communication paths 312, 313, 314, 323, 324, 334 that directly connect the respective processors. .

【0031】各プロセッサにおける遺伝コードの組み替
えは、そのプロセッサが割り当てられた親遺伝コードが
必要とする他の親遺伝コードの遺伝子情報を得られる状
態になれば、即ちそれらの他の親遺伝コードが選択の過
程を終了していれば直ちに行って良く、必ずしも同期的
に実行される必要はない。これによって、遺伝子情報交
換のメッセージを非同期的にして、メッセージ衝突を防
ぐことも可能である。例えば、親遺伝コード21、2
2、23は選択の過程を終了しているが、24は終了し
ておらず、しかも、親遺伝コード21は交叉において、
親遺伝コード22、23の遺伝子情報しか必要としてい
ない場合がこれにあたる。
The rearrangement of the genetic code in each processor is such that when the genetic information of another parent genetic code required by the parent genetic code assigned to that processor is obtained, that is, those other parent genetic codes are If the selection process is completed, it may be performed immediately, and does not necessarily have to be executed synchronously. As a result, it is possible to make the messages for gene information exchange asynchronous so as to prevent message collision. For example, parental genetic code 21, 2
2 and 23 have completed the selection process, but not 24, and the parental genetic code 21 at the crossover
This is the case where only the genetic information of the parent genetic codes 22 and 23 is needed.

【0032】上記過程を経て生成された子遺伝コードは
メモリー40に蓄えられ、次の突然変異の過程の時に
は、また、各プロセッサーに再配分される。このメモリ
ーは分散的に複数備えても良い。
The child genetic code generated through the above process is stored in the memory 40, and is redistributed to each processor during the next mutation process. This memory may be provided in a distributed manner.

【0033】以上、上記した第2実施例によれば、本質
的に並列計算向きである遺伝的アルゴリズムを並列計算
機で実行する事による計算速度の向上という利点を生か
した上で、1回の交叉における書き換える遺伝子の遺伝
コード内での位置のセットを複数許すかどうか、また、
交叉の対象となる遺伝コードの長さを一致させるかどう
か等にかかわらず、従来行われていた2つの親遺伝コー
ド間の交叉によって得られる子遺伝コードを含み、それ
よりはるかに多様な子遺伝コードが得られる事になる。
それらは、従来の2つの親遺伝コード間の交叉では決し
て得る事が出来なかった適応度の高い3つ以上の親遺伝
コードから遺伝子を受け継いだ子遺伝コードを含んでお
り、第1実施例における(1) 乃至(3) の手続きを繰り返
して従来の交叉を用いた遺伝的アルゴリズムを同一の並
列計算機上で実行したものと比較した場合、最適化問題
の解として十分満足の行く解を得る為の計算時間を短縮
する事が可能となる。
As described above, according to the second embodiment described above, the advantage that the calculation speed is improved by executing the genetic algorithm which is essentially suitable for parallel calculation on the parallel computer is used, and then the crossover is performed once. Whether to allow multiple sets of positions in the genetic code of the rewriting gene in
Includes a child genetic code obtained by crossover between two parental genetic codes that has been conventionally performed, regardless of whether or not the lengths of the genetic codes to be crossed are the same. You will get the code.
They include a child genetic code that inherits a gene from three or more highly adaptable parent genetic codes that could never be obtained by crossover between two conventional parent genetic codes. When the procedures of (1) to (3) are repeated and the conventional genetic algorithm using crossover is compared with the one executed on the same parallel computer, a sufficiently satisfactory solution is obtained as a solution of the optimization problem. It is possible to shorten the calculation time of.

【0034】また同時に局所最適解で最適化が終了して
しまう確率を低減することも可能となる。
At the same time, it is possible to reduce the probability that the optimization will end with the local optimum solution.

【0035】なお、本発明は上記した第1及び第2実施
例に限定されず、本発明の要旨を逸脱しない範囲で様々
な変更及び変形例が考えられることはいうまでもない。
Needless to say, the present invention is not limited to the first and second embodiments described above, and various modifications and variations can be considered without departing from the gist of the present invention.

【0036】[0036]

【発明の効果】以上述べたように、本発明によれば、従
来の遺伝的アルゴリズムにおける交叉によって得られる
子遺伝コードよりはるかに多様な子遺伝コードを得られ
る事になり、最適化問題の解として十分満足のいく解を
得るために必要とする計算時間を短縮する事が可能とな
る。
As described above, according to the present invention, it is possible to obtain much more diverse child genetic codes than the child genetic codes obtained by crossover in the conventional genetic algorithm, and to solve the optimization problem. As a result, it is possible to reduce the calculation time required to obtain a sufficiently satisfactory solution.

【0037】また同時に局所最適解で最適化が終了して
しまう確率を低減することも可能となる。
At the same time, it is possible to reduce the probability that the optimization will end with the local optimum solution.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の実施例の概略を説明するための親遺伝
コードの論理的構成図である。
FIG. 1 is a logical configuration diagram of a parent genetic code for explaining the outline of an example of the present invention.

【図2】交叉の対象となる親遺伝コードを示す図であ
る。
FIG. 2 is a diagram showing a parent genetic code which is a target of crossover.

【図3】本発明の第1実施例に係わる子遺伝コードの構
成を示す図である。
FIG. 3 is a diagram showing a structure of a child genetic code according to the first embodiment of the present invention.

【図4】本発明の第1実施例に係わる子遺伝コードの他
の構成を示す図である。
FIG. 4 is a diagram showing another structure of the child genetic code according to the first embodiment of the present invention.

【図5】本発明の第1実施例に係わる子遺伝コードの他
の構成を示す図である。
FIG. 5 is a diagram showing another configuration of the child genetic code according to the first embodiment of the present invention.

【図6】本発明の第1実施例に係わる子遺伝コードの他
の構成を示す図である。
FIG. 6 is a diagram showing another configuration of a child genetic code according to the first embodiment of the present invention.

【図7】本発明の第1実施例に係わる子遺伝コードの他
の構成を示す図である。
FIG. 7 is a diagram showing another configuration of a child genetic code according to the first embodiment of the present invention.

【図8】本発明の第1実施例に係わる親遺伝コードの他
の構成を示す図である。
FIG. 8 is a diagram showing another configuration of the parent genetic code according to the first example of the present invention.

【図9】本発明の第1実施例に係わる子遺伝コードの他
の構成を示す図である。
FIG. 9 is a diagram showing another configuration of the child genetic code according to the first example of the present invention.

【図10】本発明の第2実施例に係わる並列計算機の構
成を示す図である。
FIG. 10 is a diagram showing a configuration of a parallel computer according to a second embodiment of the present invention.

【符号の説明】[Explanation of symbols]

01、02、03、04、11、12、13、21、2
2、23…遺伝コード、A1〜An、a1〜h1、a2
〜h2、a3〜h3、a4〜h4、α1〜ε1、α2〜
η2、α3〜ε31…遺伝子、201、202、20
3、204…プロセッサ、312、313、314、3
23、324、334…通信路。
01, 02, 03, 04, 11, 12, 13, 21, 2
2, 23 ... Genetic code, A1 to An, a1 to h1, a2
~ H2, a3 to h3, a4 to h4, α1 to ε1, α2
η2, α3 to ε31 ... Gene, 201, 202, 20
3, 204 ... Processor, 312, 313, 314, 3
23, 324, 334 ... Communication paths.

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 遺伝的アルゴリズムにおける交叉の過程
において、ある親遺伝コードが、2つ以上の他の親遺伝
コードの遺伝子の値を自らのそれらに対応する部分の遺
伝子の値として置き換えることによって子遺伝コードを
生成することを特徴とする最適化方法。
1. In a process of crossover in a genetic algorithm, a parent genetic code replaces a gene value of two or more other parent genetic codes with a gene value of its corresponding portion. An optimization method characterized by generating a genetic code.
【請求項2】 遺伝子の値を2箇所以上置き換えること
を特徴とする請求項1記載の最適化方法。
2. The optimization method according to claim 1, wherein the gene value is replaced at two or more positions.
【請求項3】 複数のプロセッサーを備え、各プロセッ
サーが交叉の対象とする親遺伝コードの内容を1つずつ
割り当てられ、他のプロセッサーからの他の親遺伝コー
ドに関する遺伝子情報を受け取り、それに基づいて交叉
を行う遺伝的アルゴリズムを実行する最適化装置におい
て、交叉の過程において、各プロセッサーが2つ以上の
他のプロセッサーから他の親遺伝コードに関する遺伝子
情報を受け取り、それに基づいて交叉を行うことを特徴
とする最適化装置。
3. A plurality of processors, each processor being assigned one of the contents of the parent genetic code to be crossed over, receiving genetic information relating to the other parent genetic code from another processor, and based on that In an optimizing device for executing a genetic algorithm for performing crossover, each processor receives genetic information regarding another parent genetic code from two or more other processors in the process of crossover, and performs crossover based on the genetic information. And the optimization device.
JP5349690A 1993-12-29 1993-12-29 Optimizing method and optimizing device Pending JPH07200516A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5349690A JPH07200516A (en) 1993-12-29 1993-12-29 Optimizing method and optimizing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5349690A JPH07200516A (en) 1993-12-29 1993-12-29 Optimizing method and optimizing device

Publications (1)

Publication Number Publication Date
JPH07200516A true JPH07200516A (en) 1995-08-04

Family

ID=18405449

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5349690A Pending JPH07200516A (en) 1993-12-29 1993-12-29 Optimizing method and optimizing device

Country Status (1)

Country Link
JP (1) JPH07200516A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018514340A (en) * 2015-05-11 2018-06-07 シーメンス アクチエンゲゼルシヤフトSiemens Aktiengesellschaft Method and system for aligning 2D / 2.5D laparoscopic image data or 2D / 2.5D endoscopic image data with 3D volumetric image data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018514340A (en) * 2015-05-11 2018-06-07 シーメンス アクチエンゲゼルシヤフトSiemens Aktiengesellschaft Method and system for aligning 2D / 2.5D laparoscopic image data or 2D / 2.5D endoscopic image data with 3D volumetric image data

Similar Documents

Publication Publication Date Title
Ziavras RH: a versatile family of reduced hypercube interconnection networks
US5282147A (en) Method and apparatus for optimizing a logic network
CN110914813A (en) Digital processing connectivity
US4951225A (en) Updating pattern-matching networks
US5228115A (en) Hybrid backtrack/lookahead search technique for constraint-satisfaction problems
CN109189941A (en) For updating the method, apparatus, equipment and medium of model parameter
CN104850618A (en) System and method for providing sorted data
JPH07200516A (en) Optimizing method and optimizing device
US20100017377A1 (en) Finite-state machine augmented for multiple evaluations of text
CN116016199B (en) Information control method, system, electronic equipment and readable storage medium
Bartlett et al. New progressive variable ordering for binary decision diagram analysis of fault trees
Stojmenović An optimal algorithm for generating equivalence relations on a linear array of processors
CN111400611B (en) Service discovery method based on Web complex relation network
CN114297484A (en) Single information source point positioning method based on optimization observation point selection strategy
US6192506B1 (en) Controller for solving logic
Davoian et al. A Modified Genetic Algorithm for the Traveling Salesman Problem and Its Parallelization.
JP3336614B2 (en) Tree structure communication path design method and communication path tree structure solution
TW526530B (en) Method and apparatus for automatically generating schedules for wafer processing within a multichamber semiconductor wafer processing tool
JP2001117774A (en) Production system with adaptation mechanism
Oommen et al. A fast and efficient solution to the capacity assignment problem using discretized learning automata
JP3076168B2 (en) Stochastic search method
JP3722892B2 (en) Variable exchange method for binary decision graph
JPH0793156A (en) Production system
JPH0887483A (en) Network composing method
Davies et al. On the formal specification and verification of network routing algorithms