JPH05173999A - Search system for solution of optimization problem - Google Patents

Search system for solution of optimization problem

Info

Publication number
JPH05173999A
JPH05173999A JP33833791A JP33833791A JPH05173999A JP H05173999 A JPH05173999 A JP H05173999A JP 33833791 A JP33833791 A JP 33833791A JP 33833791 A JP33833791 A JP 33833791A JP H05173999 A JPH05173999 A JP H05173999A
Authority
JP
Japan
Prior art keywords
symbol string
matrix
symbol
procedure
solution
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.)
Withdrawn
Application number
JP33833791A
Other languages
Japanese (ja)
Inventor
Toshiaki Hatano
寿昭 波田野
Ryoichi Ichikawa
量一 市川
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 JP33833791A priority Critical patent/JPH05173999A/en
Publication of JPH05173999A publication Critical patent/JPH05173999A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

PURPOSE:To automatically and efficiently search for such a solution that an evaluated value is maximum by correcting a method which selects a change position when a new symbol string is generated with the evaluated value given to the new symbol string. CONSTITUTION:A symbol string generation part 61 generates S symbol strings at random and a set of the S symbol strings is stored as an initial set in a symbol string set storage part 62. Then an evaluated value calculation part 64 calculates the evaluated values of the respective symbol strings included in the initial set and stores them in an evaluated value storage part 63 and a matrix correction part 67 performs normalization. Then a symbol string generation part 61 selects one (or two) symbol string at random from the symbol string set in the symbol string set storage part 62 and a matrix correction part 67 corrects the matrix in a matrix storage part 66 for symbol string generation and finds a symbol string which maximizes the evaluated value. Consequently, the possibility that a search is advanced in an improper direction is reduced when a search is made nearby an optimum solution and the solution which maximizes the evaluated value can automatically be searched for with efficiency.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、コンピュータ等を用い
て最適な解を探索するための最適化問題の解の探索方式
に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a solution search method for an optimization problem for searching an optimum solution using a computer or the like.

【0002】[0002]

【従来の技術】従来から、与えられた問題に対して、コ
ンピュータ等を用いて最適な解を探索するための各種方
式が提案されている。
2. Description of the Related Art Conventionally, various methods have been proposed for searching an optimum solution for a given problem using a computer or the like.

【0003】例えば、記号の集合と、この集合から取り
出した記号を一列に並べて作られた記号列に対して評価
値を与える指標とがある時に、「評価値を最大にする記
号列を見い出す。」という問題の解の探索を行う場合、
決定的な手順によって解く方法では莫大な計算量を必要
とする。このため、非決定的な要素、すなわち、確率的
な手法を組み込んだ解の探索方式等が提案されている。
For example, when there is a set of symbols and an index that gives an evaluation value to a symbol string created by arranging the symbols extracted from this set in a line, "find a symbol string that maximizes the evaluation value. When searching for a solution to the problem
The method of solving by a deterministic procedure requires a huge amount of calculation. Therefore, a non-deterministic element, that is, a solution search method incorporating a probabilistic method has been proposed.

【0004】[0004]

【発明が解決しようとする課題】しかしながら、上述し
たような確率的な手法を組み込んだ従来の最適化問題の
解の探索方式では、確率分布が固定されているために、
最適解の付近での探索の際等に、不適切な方向にも探索
が進むことがあり、最適解へ到着するまでに多くの計算
を要する場合があるという問題があった。
However, in the conventional search method for the solution of the optimization problem, which incorporates the probabilistic method as described above, the probability distribution is fixed,
When searching in the vicinity of the optimum solution, the search may proceed in an improper direction, and there is a problem in that many calculations may be required before reaching the optimum solution.

【0005】本発明は、かかる従来の事情に対処してな
されたもので、与えられた指標により算出される評価値
が最大となるような解を、自動的に効率良く探索するこ
とのできる最適化問題の解の探索方式を提供しようとす
るものである。
The present invention has been made in consideration of such a conventional situation, and is an optimum method capable of automatically and efficiently searching for a solution having the maximum evaluation value calculated by a given index. It is intended to provide a search method for a solution of the optimization problem.

【0006】[0006]

【課題を解決するための手段】すなわち本発明の最適化
問題の解の探索方式は、所定の指標に基づいて記号列に
与えられる評価値が、最大となる記号列を自動的に探索
する方式であって、複数の記号列からなる記号列集合か
ら前記評価値の高さに応じた確率で記号列を1または複
数選択するステップと、所定の方法により選択された部
位に基づいて、前記選択された1または複数の記号列の
一部を変更し、新しい記号列を作成するステップと、前
記作成された新しい記号列によって、前記記号列集合を
変更するステップと、前記作成された新しい記号列に与
えられた評価値によって、前記新しい記号列を作成する
際に変更部位を選択する方法を修正するステップとを具
備したことを特徴とする。
That is, a solution search method for an optimization problem according to the present invention is a method for automatically searching for a symbol string having a maximum evaluation value given to the symbol string based on a predetermined index. And a step of selecting one or a plurality of symbol strings with a probability according to the height of the evaluation value from a symbol string set composed of a plurality of symbol strings, and the selection based on a site selected by a predetermined method. Changing a part of the generated one or more symbol strings to create a new symbol string, changing the symbol string set according to the created new symbol string, and the created new symbol string. And a step of modifying a method of selecting a changed portion when the new symbol string is created, according to the evaluation value given to the.

【0007】[0007]

【作用】上記構成の本発明の最適化問題の解の探索方式
では、新しい記号列に与えられた評価値によって、新し
い記号列を作成する際に変更部位を選択する方法を修正
する。
In the search method for the solution of the optimization problem of the present invention having the above-mentioned structure, the method of selecting the changed portion when creating a new symbol string is modified by the evaluation value given to the new symbol string.

【0008】したがって、最適解の付近での探索の際等
に、不適切な方向に探索が進む可能性を低減することが
でき、評価値が最大となるような解を、自動的に効率良
く探索することができる。
Therefore, when searching in the vicinity of the optimum solution, it is possible to reduce the possibility that the search will proceed in an inappropriate direction, and to automatically and efficiently find the solution with the maximum evaluation value. You can explore.

【0009】[0009]

【実施例】以下、本発明の最適化問題の解の探索方式の
詳細を、図面を参照して一実施例について説明する。
BEST MODE FOR CARRYING OUT THE INVENTION The details of a method for searching for a solution to an optimization problem according to the present invention will be described below with reference to the drawings.

【0010】この実施例では、図2に示すような迷路を
抜け出る経路を発見するという例題により、本探索方式
を説明する。すなわち、ここでは図2に示す迷路におい
て、Sの場所(座標(1,1))からGの場所(座標(5,5))へ
到達する最短経路を発見することが目的である。
In this embodiment, the present search method will be described by using an example of finding a route out of a maze as shown in FIG. That is, here, in the maze shown in FIG. 2, the purpose is to find the shortest route from the location S (coordinate (1,1)) to the location G (coordinate (5,5)).

【0011】記号の集合として(U,D,R,L)を用
意する。それぞれの記号の意味は、 U:上に移動する。(現在の座標が(i,j) のとき(i,j+
1) へ移動する。) D:下に移動する。(現在の座標が(i,j) のとき(i,j-
1) へ移動する。) R:右に移動する。(現在の座標が(i,j) のとき(i+1,
j) へ移動する。) L:左に移動する。(現在の座標が(i,j) のとき(i-1,
j) へ移動する。) である。この記号を並べた記号列が経路に相当する。例
えば、記号列xが、 x=URUR であるとすると、Sから始めて、上右上右と移動するこ
とになり、xによって到達できる場所は座標(3,3) の袋
小路の中ということになる。
(U, D, R, L) is prepared as a set of symbols. The meaning of each symbol is: U: move up. (When the current coordinate is (i, j) (i, j +
Move to 1). ) D: Move down. (When the current coordinate is (i, j) (i, j-
Move to 1). ) R: Move to the right. (When the current coordinate is (i, j) (i + 1,
Go to j). ) L: Move to the left. (When the current coordinate is (i, j) (i-1,
Go to j). ) Is. A symbol string in which these symbols are arranged corresponds to a route. For example, if the symbol string x is x = URUR, it means starting from S and moving to the upper right and the upper right, and the place reachable by x is in the dead end of the coordinate (3,3).

【0012】さらに、任意の記号列に対して評価値を割
り当てる指標を次のように定める。 評価値=1/(D*4+L) ただし、 D:記号列によって最終的に到達できた場所と目的地点
Gとの距離。
Furthermore, an index for assigning an evaluation value to an arbitrary symbol string is defined as follows. Evaluation value = 1 / (D * 4 + L) However, D: The distance between the destination finally reached by the symbol string and the destination point G.

【0013】(最終的に到達できた場所の座標を(i,j)
とするとD=(5-i)+(5-j) ) L:記号列の長さ (例えば、x=RRRUの長さは4である。) 途中で壁にぶつかってしまった場合は、その位置をもっ
て「最終的に到達できた場所」と決める。例えばx=R
RULとすると、右へ2回移動した後、上には壁があっ
て移動できないので、この位置(座標(3,1))をもって
「最終的に到達できた場所」とする。
(The coordinates of the finally reached place are (i, j)
Then D = (5-i) + (5-j)) L: Length of symbol string (for example, x = RRRU length is 4.) If you hit a wall on the way, The position is decided as "the place where we could finally reach". For example, x = R
In the case of RUL, after moving twice to the right, there is a wall above it and it cannot move, so this position (coordinates (3, 1)) is taken as the “finally reachable place”.

【0014】次に、新しい記号列を生成する手順につい
て説明する。
Next, the procedure for generating a new symbol string will be described.

【0015】生成される記号列の長さの上限をNとす
る。N+1 行N+1 列の行列を3つ用意する。
The upper limit of the length of the generated symbol string is N. Prepare three matrices with N + 1 rows and N + 1 columns.

【0016】[0016]

【数1】 記号列を生成する手順として3通り用意する。[Equation 1] Three procedures are prepared as a procedure for generating a symbol string.

【0017】(1)手順1(以下では手順Cと呼ぶ。) 手順Cは2つの記号列から新しい2つの記号列を生成す
る手続きである。具体的には、図3に示すように、元に
なる2つの記号列をx,y(図3A)をある位置で切断
し、これらを入れ替えて、新しく2つの記号列x',y'
(図3B)を生成するものである。なお、x,yの長さ
をそれぞれm,nとする。もちろんm,nはN以下であ
る。
(1) Procedure 1 (hereinafter referred to as Procedure C) Procedure C is a procedure for generating two new symbol strings from two symbol strings. Specifically, as shown in FIG. 3, the two original symbol strings are cut at a certain position in x and y (FIG. 3A), and these are replaced to create two new symbol strings x ′ and y ′.
(FIG. 3B). The lengths of x and y are m and n, respectively. Of course, m and n are N or less.

【0018】x= x1 x2 ……… xi ……… xm y= y1 y2 ……… yj ……… yn x,yそれぞれを構成する記号列には、長さ+1個の区
切りをつけることができる。xの区切りを□、yの区切
りを○で表すと次のようになる。
X = x 1 x 2 ………… x i ………… x m y = y 1 y 2 ………… y j ……… y n x, y The symbol string constituting each of them has a length of +1 You can add individual breaks. The x-division and the y-division are represented as follows.

【0019】 x=□0 x1 1 x2 2 ……□i-1 xi i ……□m-1 xm m y=○0 y1 1 y2 2 ……○j-1 yj j ……○n-1 yn n 新しい記号列を生成するために使われるx,yの部分を
決めるための行列を定義する。この行列をC(x,y)
={zij}と書くことにする。C(x,y)は縦がxの
区切りを表し、横がyの区切りを表す、m+1 行n+1 列の
行列である。
[0019] x = □ 0 x 1 □ 1 x 2 □ 2 ...... □ i-1 x i □ i ...... □ m-1 x m □ m y = ○ 0 y 1 ○ 1 y 2 ○ 2 ...... ○ j-1 y j o j ... o n-1 y n o n Define a matrix for determining the part of x, y used to generate a new symbol string. This matrix is C (x, y)
= {Z ij }. C (x, y) is a matrix of m + 1 rows and n + 1 columns in which the vertical represents the division of x and the horizontal represents the division of y.

【0020】(zijではi=0,1, ……,m, j=0,1,……,n
とする。)zijは0か1のいずれかの値をとる。そして
ijが1をとるか0を取るかは確率によって決める。そ
の確率は式の行列Cを用いて次の手順で決める。
(In z ij , i = 0,1, ..., m, j = 0,1, ..., n
And ) Z ij takes a value of 0 or 1. Then, whether z ij takes 1 or 0 depends on the probability. The probability is determined by the following procedure using the matrix C of the equation.

【0021】(イ)行列C={cij}より0≦i≦m,
0≦j≦nの部分だけを取りだしC'とする。
(A) From the matrix C = {c ij }, 0≤i≤m ,
Only the part of 0 ≦ j ≦ n is taken out and designated as C ′.

【0022】(ロ)C'を正規化する。すなわち、 を計算し、C'の全ての成分をAで割り、改めてC'とす
る。A=0の場合は、C'の全ての成分を1/(m・n)
とする。
(B) Normalize C '. That is, Is calculated, and all the components of C'are divided by A to obtain C'again. When A = 0, all components of C'are 1 / (m · n)
And

【0023】(ハ)行列C'のi行j列目の値が、zij
1となる確率である。
(C) The value at the i-th row and the j-th column of the matrix C'is z ij =
The probability is 1.

【0024】さて、以上の手順により行列C(x,y)
を確率的に定めたとする。2つの記号列x,yとC
(x,y)から新しい記号列x',y'を生成する手順を示
す。
By the above procedure, the matrix C (x, y)
Is determined stochastically. Two symbol strings x, y and C
A procedure for generating a new symbol string x ′, y ′ from (x, y) will be shown.

【0025】x'を生成する手順 x'=x'i x' 2……x'k ……x'm'とする。[0025] and x 'procedure to generate x' = x 'i x' 2 ...... x 'k ...... x' m '.

【0026】ステップ1: i←0,k←1,s1
0,s2 ←0とする。
Step 1: i ← 0, k ← 1, s 1
Let 0, s 2 ← 0.

【0027】ステップ2: j←s2 とする。Step 2: Set j ← s 2 .

【0028】ステップ3: i>mならば終了。Step 3: End if i> m.

【0029】ステップ4: j>nならばステップ6へ
進む。
Step 4: If j> n, go to Step 6.

【0030】ステップ5: zij=1ならばs1 ←i+
1としてステップ7へ進む。
Step 5: If z ij = 1 then s 1 ← i +
If it is 1, the process proceeds to step 7.

【0031】そうでなければj←j+1としてステップ
4へ戻る。
Otherwise, j ← j + 1 is set and the process returns to step 4.

【0032】ステップ6: x'k ←xi+1 ,i←i+
1,k←k+1としステップ2へ戻る。 ステップ7: i←si とする。
Step 6: x'k ← x i + 1 , i ← i +
Set 1, k ← k + 1 and return to step 2. Step 7: Set i ← s i .

【0033】ステップ8: j>nならば終了。Step 8: If j> n, end.

【0034】ステップ9: i>mならばステップ11へ
進む。
Step 9: If i> m, go to Step 11.

【0035】ステップ10: zij=1ならばs2 ←j+
1としてステップ2へ戻る。
Step 10: If z ij = 1 then s 2 ← j +
Return to step 2 as 1.

【0036】そうでなければi←i+1としてステップ
9へ戻る。
If not, i ← i + 1 is set and the process returns to step 9.

【0037】ステップ11: x'k ←yj+1 ,j←j+
1,k←k+1としステップ7へ戻る。 y'を生成する手順については、x'を生成する手順と同様
であるので、その説明は省略する。
Step 11: x'k ← y j + 1 , j ← j +
Set 1, k ← k + 1 and return to step 7. The procedure for generating y'is the same as the procedure for generating x ', and therefore its description is omitted.

【0038】(2)手順2(以下では手順Mと呼ぶ。) 手順Mは1つの記号列の部分をランダムに変えて新しい
1つの記号列を生成する手続きである。すなわち、図4
に示すように、元になる記号列x(図4A)の一部を他
の記号に置き換えて、新しく記号列x'(図4B)を生成
するものである。なお、xの長さをmとする。また新し
く生成される記号列x'の長さもmである。x= x1 x2
…… xi …… xm x'=x'i x'2 ……x'j ……x'm xを構成する記号列には m+1個の区切りをつけることが
できる。
(2) Procedure 2 (hereinafter referred to as Procedure M) Procedure M is a procedure for randomly changing a portion of one symbol string to generate a new symbol string. That is, FIG.
, A part of the original symbol string x (FIG. 4A) is replaced with another symbol to newly generate a symbol string x ′ (FIG. 4B). Note that the length of x is m. The length of the newly generated symbol string x'is also m. x = x 1 x 2
…… x i …… x m x '= x' i x ' 2 …… x' j …… x ' m x The symbol strings that make up x can have m + 1 delimiters.

【0039】新しい記号列を生成するために使われるx
の部分を決めるための行列を定義する。この行列をM
(x)={zij}と書くことにする。M(x)は縦横共
にxの区切りを表すm+1 列の正方行列である。(zij
はi,j=0,1,……,mとする。)zijは、0か1のいずれか
の値を取る。 i>j の場合はzij=0であり、 i≦jの場
合についてのみ、zijが1を取るか0を取るかを確率に
よって決める。その確率は式の行列Mを用いて手順C
の場合と同様に決める。
X used to generate a new symbol sequence
Define a matrix to determine the part of. This matrix is M
(X) = {z ij } will be written. M (x) is a square matrix of m + 1 columns that represents the division of x in the vertical and horizontal directions. (In z ij , i, j = 0,1, ..., m). Z ij takes either a value of 0 or 1. In the case of i> j, z ij = 0. Only in the case of i ≦ j, whether z ij takes 1 or 0 is determined by the probability. The probability is the procedure C using the matrix M of the formula.
Make the same decision as in.

【0040】さて、行列M(x)を確率的に定めたとす
る。記号列xとM(x)から新しい記号列x'を生成する
手順を示す。
Now, assume that the matrix M (x) is stochastically determined. A procedure for generating a new symbol string x ′ from the symbol string x and M (x) will be shown.

【0041】x'を生成する手順 ステップ1: 0≦i≦mについて、x'i ← xi とす
る。
Procedure for generating x ′ Step 1: For 0 ≦ i ≦ m, let x ′ i ← x i .

【0042】(xをx'にコピーする。) ステップ2: i←0,j←0とする。(Copy x to x '.) Step 2: Set i ← 0 and j ← 0.

【0043】ステップ3: j>mならばi←i+1,
j←iとする。
Step 3: If j> m, i ← i + 1,
Let j ← i.

【0044】ステップ4: i>mならば終了。Step 4: If i> m, end.

【0045】ステップ5: zij=1ならば、x' i+1 ,
……, x'j のそれぞれの値を、{U,D,R,L}の中
からランタムに選ばれた記号で置き換える。
Step 5: If z ij = 1 then x'i + 1 ,
..., each value of x 'j, replacing {U, D, R, L } in symbols chosen lanthanum among.

【0046】ステップ6: j←j+1としてステップ
3へ戻る。
Step 6: Set j ← j + 1 and return to Step 3.

【0047】(3)手順3(以下では手順Iと呼ぶ。) 手順はIは、図5に示すように、元になる1つの記号列
xの部分を逆順に並び変えて新しい1つの記号列x'を生
成する手続きである。なお、xの長さをmとする。ま
た、新しく生成される記号列の長さもmである。
(3) Procedure 3 (hereinafter referred to as Procedure I) The procedure is that, as shown in FIG. 5, the original symbol string x is rearranged in the reverse order to create a new symbol string. This is a procedure to generate x '. Note that the length of x is m. Also, the length of the newly generated symbol string is m.

【0048】x= xi x2 …… xi …… xm x'=x'i x'2 ……x'j ……x'm xを構成する記号列にはm+1 個の区切りをつけることが
できる。
X = x i x 2 ...... x i ...... x m x '= x' i x ' 2 ...... x' j ...... x ' m x The symbol string forming x has m + 1 divisions. Can be turned on.

【0049】新しい記号列を生成するために使われるx
の部分を決めるための行列を定義する。この行列をI
(x)={zij}と書くことにする。I(x)は縦横共
にxの区切りを表す m+1行m+1 列の正方行列である。
(zijではi,j=0,1,……,mとする)zijは0か1のいず
れかの値をとる。 i>j の場合はzij=0であり、 i≦j
の場合についてのみ、zijが1を取るか0を取るかを確
率によって決める。その確率は式の行列Iを用いて手
順Cの場合と同様に決める。
X used to generate a new symbol sequence
Define a matrix to determine the part of. This matrix is I
(X) = {z ij } will be written. I (x) is a square matrix of m + 1 rows and m + 1 columns that represents the division of x in the vertical and horizontal directions.
(In z ij i, j = 0,1, ......, and m) z ij takes a value of either 0 or 1. When i> j, z ij = 0, and i ≦ j
Only in the case of, the probability determines whether z ij takes 1 or 0. The probability is determined using the matrix I of the formula as in the case of the procedure C.

【0050】さて、行列I(x)を確率的に決めたとす
る。記号列xとI(x)から新しい記号列x'を生成する
手順を示す。
Now, assume that the matrix I (x) is determined stochastically. A procedure for generating a new symbol string x ′ from the symbol string x and I (x) will be shown.

【0051】x'を生成する手順 ステップ1: 0≦i≦mについて、x'i ← xi とす
る。
Procedure for generating x ′ Step 1: For 0 ≦ i ≦ m, let x ′ i ← x i .

【0052】(xをx'にコピーする。) ステップ2: i←0,j←0とする。(Copy x to x '.) Step 2: Set i ← 0 and j ← 0.

【0053】ステップ3: j>mならばi←i+1,
j←iとする。
Step 3: If j> m, i ← i + 1,
Let j ← i.

【0054】ステップ4: i>mならば終了。Step 4: If i> m, end.

【0055】ステップ5: zij=1ならば、x' i+1 ,
……, x'j のそれぞれの値を、x'j ,……x' i+1と逆順
になるように並びかえる。
Step 5: If z ij = 1 then x'i + 1 ,
......, 'each of the values of j, x' x j, rearranged so as to be in reverse order and ...... x 'i + 1.

【0056】ステップ6: j←j+1としてステップ
3へ戻る。
Step 6: Set j ← j + 1 and return to Step 3.

【0057】次に、生成方法の適応的な修正について説
明する。
Next, the adaptive modification of the generation method will be described.

【0058】、、式の行列C,M,Iを修正する
ことで、生成方法が修正される。新しく生成された記号
列に与えられる評価値を基に行列の修正を行う。新しく
生成された記号列の評価値をeとする。生成された記号
列が複数ある場合には、最大値をeとする。このときの
行列の修正方法を以下に示す。
The generation method is modified by modifying the matrices C, M, I of the equation. The matrix is modified based on the evaluation value given to the newly generated symbol string. Let e be the evaluation value of the newly generated symbol string. When there are a plurality of generated symbol strings, the maximum value is e. The matrix correction method at this time is shown below.

【0059】(1)行列C 新しい記号列を生成する際に使った行列C(x,y)={zj
i}(0≦i≦m,0 ≦j ≦n)を用いて修正する。
(1) Matrix C Matrix C (x, y) = {zj used when a new symbol string is generated
i} (0≤i≤m, 0≤j≤n).

【0060】C←C+e・△C ただし、△C={wij}(0 ≦i ≦N ,0 ≦j ≦N )
は、wij=zij(0 ≦i ≦m,0 ≦j ≦n)wij=
0 (他の場合) である。
C ← C + eΔC where ΔC = {wij} (0 ≤ i ≤ N, 0 ≤ j ≤ N)
Is { wij = zij (0 ≤ i ≤ m, 0 ≤ j ≤ n) wij =
0 (other cases).

【0061】(2)行列M 新しい記号列を生成する際に使った行列M(x)={z
ij} (0≦i≦m, 0≦j≦m)を用いて修正する。
(2) Matrix M Matrix M (x) = {z used when generating a new symbol string
ij} (0≤i≤m, 0≤j≤m).

【0062】M←M+e・△M ただし、△M={wij}(0 ≦i ≦N ,0 ≦j ≦N )
は、wij=zij(0 ≦i ≦m, 0≦j ≦m)wij=
0 (他の場合) である。
M ← M + eΔM where ΔM = {wij} (0 ≤i ≤N, 0 ≤j ≤N)
Is { wij = zij (0≤i≤m, 0≤j≤m) wij =
0 (other cases).

【0063】(3)行列I 新しい記号列を生成する際に使った行列M(I)={z
ij} (0≦i≦m, 0≦j≦m)を用いて修正する。
(3) Matrix I Matrix M (I) = {z used when generating a new symbol string
ij} (0≤i≤m, 0≤j≤m).

【0064】I←I+e・△I ただし、△I={wij}(0 ≦i ≦N ,0 ≦j ≦N )
は、wij=zij(0 ≦i ≦m, 0≦j ≦m)wij=
0 (他の場合) である。
I ← I + eΔI where ΔI = {wij} (0 ≤ i ≤ N, 0 ≤ j ≤ N)
Is { wij = zij (0≤i≤m, 0≤j≤m) wij =
0 (other cases).

【0065】次に、全体の手順について説明する。以上
説明した新しい記号列を生成する手順、生成方法の適応
的な修正手順を用いて、図1のフローチャートに示すよ
うに探索を実行する。また、図6に、このような探索を
実行するための装置の概略構成を示す。
Next, the overall procedure will be described. The search is executed as shown in the flowchart of FIG. 1 using the procedure for generating a new symbol string and the adaptive correction procedure of the generating method described above. Further, FIG. 6 shows a schematic configuration of an apparatus for performing such a search.

【0066】図6において、61は記号列を生成するた
めの記号列作成部、62は作成された記号列の集合を収
容する記号列集合収容部、63は記号列の評価値を収容
する評価値収容部、64は前述した指標により記号列の
評価値を算出する評価値算出部、65は記号列を生成す
るための手順C、手順M、および手順Iを収容する手順
収容部である。また、66は新しい記号列を生成するた
めに使われる部分を決めるための行列C、行列M、行列
Iを収容する記号列作成用行列収容部であり、67は記
号列作成用行列収容部66内の行列C、行列M、行列I
を、前述した方法により修正する行列修正部である。
In FIG. 6, reference numeral 61 is a symbol string creating unit for creating a symbol string, 62 is a symbol string group accommodating unit for accommodating the created symbol string group, and 63 is an evaluation for accommodating the evaluation value of the symbol string. The value accommodating section 64 is an evaluation value calculating section for calculating the evaluation value of the symbol string by the above-described index, and 65 is a procedure accommodating section for accommodating the procedure C, the procedure M, and the procedure I for generating the symbol string. Further, 66 is a matrix accommodating portion for accommodating a symbol string for accommodating a matrix C, a matrix M, and a matrix I for determining a portion used for generating a new symbol string, and 67 is a accommodating portion 66 for symbol string preparation. Matrix C, matrix M, matrix I in
Is a matrix modification unit that modifies by the method described above.

【0067】このように構成された装置により、まず、
記号列作成部61でS個の記号列をランダムに作り、こ
のS個の記号列集合を初期集合として記号列集合収容部
62に収容する(ステップ1)。
With the apparatus thus configured, first,
The symbol string creating unit 61 randomly creates S symbol strings, and stores the S symbol string sets in the symbol string set accommodating unit 62 as an initial set (step 1).

【0068】次に、評価値算出部64により、初期集合
に含まれる各記号列の評価値を前述した指標に従って計
算し、評価値収容部63に収容する(ステップ2)。
Next, the evaluation value calculation unit 64 calculates the evaluation value of each symbol string included in the initial set according to the index described above, and stores it in the evaluation value storage unit 63 (step 2).

【0069】この後、行列修正部67によって、正規化
を行うため、行列C,M,Iの成分を全て1/N2 にす
る(ステップ3)。
After that, the matrix modifying unit 67 sets all the components of the matrices C, M and I to 1 / N 2 for normalization (step 3).

【0070】しかる後、記号列作成部61は、記号列集
合収容部62内の記号列集合から評価値の大きさに比例
した確率で2つの記号列x,yを選択する(ステップ
4)。次に、記号列作成部61は、手順収容部65から
手順C,手順M,および手順Iの1つの手順をランダム
に選択する(ステップ5)。
After that, the symbol string creating unit 61 selects two symbol strings x and y from the symbol string set in the symbol string set accommodating unit 62 with a probability proportional to the size of the evaluation value (step 4). Next, the symbol string creating unit 61 randomly selects one of the procedures C, M, and I from the procedure accommodating unit 65 (step 5).

【0071】そして、記号列作成部61は、記号列作成
用行列収容部66の行列C、行列M、行列Iを参照し、
手順Cが選ばれた場合はx,yの両方を用い、また、手
順Mまたは手順Iが選択された場合はxを用い、前述し
た方法で新しい記号列x'(およびy')を生成する(ステ
ップ6)。
The symbol string creating unit 61 refers to the matrix C, the matrix M, and the matrix I of the symbol string creating matrix accommodating unit 66,
Generate a new symbol string x '(and y') using the method described above, using both x and y if procedure C is selected, and using x if procedure M or procedure I is selected. (Step 6).

【0072】次に、評価値算出部64により、x'(およ
びy')の評価値を前述した指標に従って計算し、評価値
収容部63に収容する(ステップ7)。
Next, the evaluation value calculation unit 64 calculates the evaluation value of x '(and y') according to the index described above, and stores it in the evaluation value storage unit 63 (step 7).

【0073】この後、記号列作成部61は、記号列集合
収容部62内の記号列集合よりランダムに1つ(または
2つ)の記号列を選び出し、それとx'(およびy')を入
れ換える(ステップ8)。
After that, the symbol string creating unit 61 randomly selects one (or two) symbol strings from the symbol string set in the symbol string set accommodating unit 62 and replaces it with x '(and y'). (Step 8).

【0074】そして、行列修正部67により、x'(およ
びy')の評価値によってステップ5で選択された手順に
対応する記号列作成用行列収容部66内の行列(C,
M,I)を前述した式により修正する(ステップ9)。
Then, the matrix correction unit 67 causes the matrix (C, C, in the symbol string creation matrix accommodating unit 66 corresponding to the procedure selected in step 5 according to the evaluation value of x '(and y').
M, I) is corrected by the above-mentioned formula (step 9).

【0075】上記ステップ4からの工程を終了するまで
繰り返すことにより、評価値を最大にする記号列を見い
出す。なお、終了の判断は、例えば一番評価値の高いも
のを設定値と比較する(設定値より小さければ処理を繰
り返す)ことにより行う(ステップ10)。
By repeating the process from step 4 above, the symbol string that maximizes the evaluation value is found. The determination of the end is made, for example, by comparing the highest evaluation value with the set value (if the value is smaller than the set value, repeat the process) (step 10).

【0076】このように、本実施例によれば、古い記号
列から新しい記号列を作る際の作り方が、過去の事例に
より適応的に修正されるので、より少ない計算量で目的
の記号列を生成させることができ、評価値を最大にする
記号列を効率良く見い出すことができる。
As described above, according to the present embodiment, the method of creating a new symbol string from an old symbol string is adaptively modified according to past cases, so that the target symbol string can be obtained with a smaller amount of calculation. It can be generated, and the symbol string that maximizes the evaluation value can be efficiently found.

【0077】[0077]

【発明の効果】以上説明したように、本発明の最適化問
題の解の探索方式によれば、与えられた指標により算出
される評価値が最大となるような解を、自動的に効率良
く探索することができる。
As described above, according to the solution search method of the optimization problem of the present invention, a solution that maximizes the evaluation value calculated by a given index is automatically and efficiently selected. You can explore.

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

【図1】本発明の一実施例の工程を説明するための図。FIG. 1 is a view for explaining a process of one embodiment of the present invention.

【図2】例題における迷路を説明するための図。FIG. 2 is a diagram for explaining a maze in an example.

【図3】手順Cを説明するための図。FIG. 3 is a diagram for explaining a procedure C.

【図4】手順Mを説明するための図。FIG. 4 is a diagram for explaining a procedure M.

【図5】手順Iを説明するための図。FIG. 5 is a diagram for explaining a procedure I.

【図6】本発明の一実施例を実現するための装置の概略
構成を示す図。
FIG. 6 is a diagram showing a schematic configuration of an apparatus for realizing an embodiment of the present invention.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 所定の指標に基づいて記号列に与えられ
る評価値が、最大となる記号列を自動的に探索する方式
であって、 複数の記号列からなる記号列集合から前記評価値の高さ
に応じた確率で記号列を1または複数選択するステップ
と、 所定の方法により選択された部位に基づいて、前記選択
された1または複数の記号列の一部を変更し、新しい記
号列を作成するステップと、 前記作成された新しい記号列によって、前記記号列集合
を変更するステップと、前記作成された新しい記号列に
与えられた評価値によって、前記新しい記号列を作成す
る際に変更部位を選択する方法を修正するステップとを
具備したことを特徴とする最適化問題の解の探索方式。
1. A method for automatically searching for a symbol string having the maximum evaluation value given to a symbol string based on a predetermined index, wherein the evaluation value is calculated from a symbol string set consisting of a plurality of symbol strings. A step of selecting one or a plurality of symbol strings with a probability according to the height, and changing a part of the selected one or a plurality of symbol strings based on the site selected by a predetermined method, and a new symbol string Creating the new symbol string, changing the symbol string set according to the created new symbol string, and changing when creating the new symbol string by the evaluation value given to the created new symbol string. A method for searching for a solution to an optimization problem, comprising the step of modifying a method for selecting a part.
JP33833791A 1991-12-20 1991-12-20 Search system for solution of optimization problem Withdrawn JPH05173999A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33833791A JPH05173999A (en) 1991-12-20 1991-12-20 Search system for solution of optimization problem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33833791A JPH05173999A (en) 1991-12-20 1991-12-20 Search system for solution of optimization problem

Publications (1)

Publication Number Publication Date
JPH05173999A true JPH05173999A (en) 1993-07-13

Family

ID=18317207

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33833791A Withdrawn JPH05173999A (en) 1991-12-20 1991-12-20 Search system for solution of optimization problem

Country Status (1)

Country Link
JP (1) JPH05173999A (en)

Similar Documents

Publication Publication Date Title
CN108413963B (en) Self-learning ant colony algorithm-based strip robot path planning method
JP2021519461A (en) Methods, devices and systems for determining reachable paths between two nodes
EP2544414A1 (en) Method and device for storing routing table entry
CN108876024A (en) Path planning, path real-time optimization method and device, storage medium
JPH11345257A (en) Network topology designing device, network topology designing method and recording medium stored with network topology design program
CN111104471B (en) Mode database information compression method and system based on jumping point path search
KR20140054675A (en) System and method for aligning genome sequence
Ahmed An improved genetic algorithm using adaptive mutation operator for the quadratic assignment problem
KR101508817B1 (en) System and method for aligning genome sequence
US20210209690A1 (en) Order matching
Xu et al. An efficient algorithm for environmental coverage with multiple robots
JP5678691B2 (en) SEARCH CONTROL DEVICE, SEARCH CONTROL PROGRAM, AND SEARCH CONTROL METHOD
JPH05173999A (en) Search system for solution of optimization problem
CN112148030B (en) Underwater glider path planning method based on heuristic algorithm
KR102188118B1 (en) Electronic device for generating a gene feature vector for gene distributed representation based on a correlation between genes according to cancer and operating method thereof
CN113487031A (en) Multi-unmanned aerial vehicle task allocation method based on improved simulated annealing fusion genetic algorithm
CN111160831A (en) Intensive storage task generation method and device and electronic equipment
CN112598153A (en) Traveler problem solving method based on longicorn stigma search algorithm
Tang et al. Solving Multi-Agent Target Assignment and Path Finding with a Single Constraint Tree
Li et al. Seeding with minimized subsequence
US6988089B2 (en) Deriving a genome representation for evolving graph structure weights
WO2023151631A1 (en) System and method for generating floorplan for digital circuit using reinforcement learning
JP2000112917A (en) Method for clustering mass information
CN117610753A (en) Planning method and system for optimal path of power supply line
JP3754043B2 (en) Data retrieval device

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990311