JPH04319784A - 組合わせ最適解を求める方法及び装置 - Google Patents

組合わせ最適解を求める方法及び装置

Info

Publication number
JPH04319784A
JPH04319784A JP3088124A JP8812491A JPH04319784A JP H04319784 A JPH04319784 A JP H04319784A JP 3088124 A JP3088124 A JP 3088124A JP 8812491 A JP8812491 A JP 8812491A JP H04319784 A JPH04319784 A JP H04319784A
Authority
JP
Japan
Prior art keywords
solution
constraints
data processing
processing device
constraint conditions
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
JP3088124A
Other languages
English (en)
Inventor
Shigeo Abe
阿部 重夫
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP3088124A priority Critical patent/JPH04319784A/ja
Publication of JPH04319784A publication Critical patent/JPH04319784A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Feedback Control In General (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、データ処理装置及び方
法に関し、特に組合わせ最適化問題を求めるのに好適な
ニューラルネットに関する。
【0002】
【従来の技術】ニューラルネットは、人間の脳をモデル
化したもので、入力があるしきい値に達するまでは不活
性状態で、しきい値を越えると活性化するという2つの
状態を取るニューロンを多数個接続して、現状のコンピ
ュータが不得意とする組み合わせ最適化問題や認識処理
を行なおうとするものである。
【0003】ホップフィールド氏が提案したホップフィ
ールド型ニューラルネットは組合わせ最適化問題を解く
のに適しているが、組合わせ最適化問題とは、1と0と
いうようにとびとびの値しか取らないものをある条件を
最小(あるいは最大)にする組合わせを求めるものであ
る。従来この種の問題は問題の規模が大きくなると解く
のは極めて難しいとされていた。
【0004】これに対して、米国特許第4660166
 号等において、ホップフィールド氏が組み合わせ問題
の中で最も解くのが難しいとされている巡回セールスマ
ン問題をニューラルネットにより高速かつ最適解に近い
解が求められることを示した。ここで巡回セールスマン
問題とは、各々の都市を一度だけ通るという制約のもと
で、n都市を最小距離で巡回する経路を求めるもので、
n都市に通してn!/2n=n(n−1)…2.1/2
n 組の組合わせがあり、nの数が大きくなると爆発的
に組み合わせの数が増えるため、最適解を求めるのが極
めて難しくなる。
【0005】ホップフィールド氏は、n都市の各々にn
個のニューロンを対応させ(従って全体でn2 個のニ
ューロンを用いる)、各都市のi番目のニューロンが活
性化したときに、i番目にその都市を訪れるという意味
を持たせた。また各ニューロンの間の結合は、各都市を
一度だけ通るという制約条件と距離の最小化条件によっ
て決め、これらの条件の重み付き和をエネルギーと定義
して、ニューロンの動作を、このエネルギーが時間の経
過とともに小さくなるようにモデル化した。これにより
各ニューロンに活性状態(1)と不活性状態(0)の間
の適当な値を設定すると、時間とともにエネルギーが減
少して、局所的にエネルギーが最小となるところで停る
ことになりn2 個のニューロンのうちn個が活性化し
て、制約条件を満たし距離が最小値に近い解を求めるこ
とができるものである。
【0006】ここでエネルギー関数を用いて上記内容を
説明する。
【0007】数2の線形制約のもとで数1の評価関数を
最小化することを考える。
【0008】
【数1】
【0009】
【数2】
【0010】これによりエネルギー関数Eを次のように
定義する。
【0011】
【数3】
【0012】但しA,Bは重みでE2 は等号制約数2
に対応し、次式の様に数2の二乗を2で割り定数項を除
いたものである。
【0013】
【数4】
【0014】但し、
【0015】
【数5】
【0016】ここで、
【0017】
【数6】
【0018】
【数7】
【0019】とすると、数3のEは次のようになる。
【0020】
【数8】
【0021】従ってエネルギーEに対するホップフィー
ルドモデルは、内部状態ベクトルuを導入し、さらに変
数xi の領域を〔0,1〕とすることにより次のよう
になる。
【0022】
【数9】
【0023】
【数10】
【0024】このとき容易にdE/dt≦0が成立する
ことが分かる。従って数9,数10を任意の初期値で積
分してエネルギーEが極小化するという意味での極小解
を得ることができる。
【0025】ここでニューロンとの対応は以下のとおり
である。n個のニューロンのうち、i番目のニューロン
の出力はxi で、入力は定数入力がbi ,j番目か
らの入力がTijxj 、また自分の出力の自分への入
力はTiixi である。従ってTijは、j番目のニ
ューロンからi番目のニューロンへの入力の結合の強さ
を示しており、特にTiiはi番目のニューロンの出力
の自分自身への入力の結合の強さを示している。
【0026】
【発明が解決しようとする課題】しかしながら上記従来
技術を適用するとエネルギー関数をどのようにして決め
たらよいか、重みはどのように決めるか等の方策がない
ために試行錯誤で適用しているのが現状である。
【0027】本発明の目的は、上記問題点を解決し、ど
のような問題に対しても、最小限あるいはそれに近い解
を高速に与えることのできるニューラルネットを用いた
データ処理装置及び方法を提供することにある。
【0028】
【課題を解決するための手段】本発明は、(イ)エネル
ギー関数の表現,(ロ)重みの決定,(ハ)初期値の設
定,(ニ)計算の高速化、等に特徴を有するものであり
、これらの独立した手段,方法のみならず、種々な組合
わせにもそれぞれ特徴がある。
【0029】以下、問題点を解決するためのもとになる
理論をまず説明しその後に各手段の一例を説明する。
【0030】極小解 組み合わせ最適化問題を考えているため、数8のエネル
ギー関数はn次元超立方体の頂点のエネルギーが変わら
ない範囲で変えることができる。このため自乗の項を次
のように除く。
【0031】
【数11】
【0032】このため以下ではTiiは全て零と仮定す
る。
【0033】もともとホップフィールドモデルでは数9
のf(ui)はシグモイド関数と仮定している。しかし
ながら以下の解析ではこの仮定は不要で0<xi <1
の間でf(ui)が単調で1か0に飽和すればよく、例
えば図2の区分線形関数でもよい。
【0034】ここで超立方体と超立方体の内部を次のよ
うに定義する。
【0035】
【数12】
【0036】
【数13】
【0037】さらに頂点c=(c1,…,cn)に対し
てn個の隣接した頂点c(i)=(c1,…,ci−1
,1−ci,ci+1,…,cn)定義する。
【0038】数9,数10を積分して得られる解は、次
の数9,数10の平衡点の中の安定平衡点である。
【0039】(イ)  頂点c=(c1,…,cn),
ci=1,0,i=1,…,n; (ロ)  Tx+b=0の解 (ハ)  (イ)と(ロ)の組合わせ 但し(ロ),(ハ)の平衡点は1≧xi≧0,i=1,
…nを満足する。
【0040】(ハ)の平衡点はHの表面上の点である。 以下では上記平衡点の安定性を解析する。
【0041】頂点の安定性 頂点の安定性を解析するためにまず頂点cとc(i)と
を結ぶ辺上の点の安定性を解析する。
【0042】即ち、
【0043】
【数14】
【0044】数10,数14より
【0045】
【数15】
【0046】が成立する。但しTi はTのi行目の行
ベクトルである。ここでTii=0であるから次式が成
立する。
【0047】
【数16】
【0048】これは0<α<1に対してui の速度が
一定であることを意味している。従って区分線形関数と
シグモイド関数の違いは前者はxiが0あるいは1に一
定の速度で動くのに対して後者の場合は0あるいは1に
近づくにつれ段々遅くなることである。数16はまた超
平面Tix+bi=0がxi 軸に平行であることを意
味している。
【0049】次式が成り立つことは容易に分かる。
【0050】
【数17】
【0051】但しEc は頂点cにおけるエネルギーE
でありc′は次式で与えられる。
【0052】c′=(c1,…,ci−1,1/2,c
i+1,…,cn) 従って、 (i)  Ec =Eciのとき数15の右辺は全て0
となり数14で与えられるxは数9,数10の平衡点と
なる。
【0053】(ii)  Ec <Eciのときxはc
の方へ動き、Ec >Eciのときxはc(i)の方へ
動く。
【0054】ここでEc =Eciのとき頂点c,c(
i)を縮退していると呼ぶことにする。これは超平面T
ix+bi=0が頂点c,c(i)を含むのと等価であ
る。したがってc(i)をcに隣接した頂点と呼ぶこと
にする。
【0055】次に超立方体内部Hのxの動きを調べるた
め超平面Tix+bi=0によりHが次のように分割さ
れるとする。
【0056】
【数18】
【0057】数9,数10式よりx∈D+(i)に対し
xがD+(i)にいる限りはxi は常に単調減少しヽ
x∈D−(i)に対するxがD(i)にいる限りはxi
 は常に単調増加し、x∈D0(i)のときはxi は
変わらない。 従ってもしD+(i)あるいはD−(i)が空ならばx
iは0<xi <1で増加あるいは減少するからxi 
は0<xi <1を満たすどのような初期値から出発し
ても同一の0あるいは1の値に収束する。そこで頂点c
に対して領域Dc を次のように定義する。
【0058】
【数19】
【0059】但し
【0060】
【数20】
【0061】定義によりx∈Dc に対してもし頂点c
,c(i)が縮退していなければxが領域Dc に留ま
るかぎりxi は単調に動く。ここで領域Dc を次の
ように分類する。
【0062】(i)  Ec ≦Eci(i=1,…,
n)が少なくとも一つのiについて不等号が成立すると
きxがDc に留まるかぎり縮退していない頂点c,c
(i)に対するxi は単調にci に収束する。もし
全てのiについて不等号が成立するとき頂点cを強安定
、Dc を強収束領域と呼ぶことにし、そうでないとき
cを弱安定、Dc を弱収束領域と呼ぶことにする。
【0063】(ii)  Ec≧Eci(i=1,…,
n)のとき xがDc に留まるかぎり縮退していない頂点c,c(
i)に対するxi は単調にci から離れていく。そ
こで頂点cを不安定、Dc を発散領域と呼ぶことにす
る。
【0064】(iii) Ec≧EciおよびEc≦E
ci(i=1,…,n)でどちらの向きの不等号も少な
くとも一つは成立するとき xがDc に留まるかぎりEc<Eciに対するxi 
は単調にci の方向に動き、Ec >Eciに対する
xi は単調にci から離れていく。そこで頂点cを
鞍型、Dc を通過領域と呼ぶことにする。
【0065】以上の定義より次の性質が成立する。
【0066】性質1  頂点cを強安定とするx∈Dc
 となる任意のxは単調にcに収束する。
【0067】証明  Ec<Eci及び数17により、
頂点cはTix+bi=0を満足しない。従ってx∈D
c に対してxはcに向かって修正される。超平面Ti
 x+bi =0(i=1,…,n)は軸xi に平行
であるから、この超平面は修正された方向にない。従っ
て修正されたxはDc に留まりxは単調にcに収束す
る(証明完)。上記の性質はエネルギーのことなる2つ
の隣接した頂点はホップフィールドモデルの安定点には
ならないことを示している。
【0068】次の性質は明らかである。
【0069】性質2  頂点cを弱安定とするとEc<
Eci となるxi,(x∈Dc)についてxがDc 
に留まるかぎり単調にci に収束する。
【0070】もし頂点が弱安定とするとx∈Dc がc
に収束する保証はない。さらに頂点が縮退しているとき
は行列Tの対角要素が0でも0と1の間に収束する可能
性がある。図3に
【0071】
【数21】
【0072】で0<b<1のときの軌跡を示す。頂点(
0,0),(1,0)は縮退しておりD0,0=D0,
1,D1,0=D1,1また頂点(0,0),(1,1
)は不安定で、頂点(0,1)は強安定、頂点(1,0
)は弱安定である。 図からも明らかなように頂点(0,0)と(1,0)を
結ぶ辺上の点は平衡点でb<x1 ≦1で安定である。
【0073】頂点でない平衡の安定性 Tx+b=0を満足する平衡点の安定性に関し次の性質
が成立する。
【0074】性質3  sをTx+b=0の解とし0≦
si ≦1(i=1,…,n)を満たすとする。あるi
について不等号が成立するとするとsは不安定平衡点と
なり、もし強安定な頂点cが存在するとするとsの近傍
にx∈Dc が存在しxは単調にcを収束する。もしs
が頂点に一致するときはsは不安定か、頂点のなかで最
小のエネルギーを持つ。特別の場合は全ての頂点が縮退
し全て同じエネルギーとなる。
【0075】証明  0<si <1が少なくとも1つ
のiについて成立するとする。sの近傍にx∈D+(i
)あるいはD−(i)をとる。xi はxi 軸に添っ
て単調に動くから、xはsから離れてゆく。従ってsは
安定点とはならない。強安定な頂点cが存在するとする
と、Dc の定義からsの近傍にcに収束するx∈Dc
 が存在する。
【0076】次にsi =0,1(i=1,…,n)と
し弱安定あるいは強安定な頂点cが存在するとする。こ
のときsの近傍のx∈Dc をとると、Ec<Eci 
を満足するxi はciに収束するからsは不安定とな
る。(頂点sとそれに隣接した頂点は縮退していから頂
点cはsと一致することはない。)もしそのような頂点
が存在しないときは、sとそれに隣接した頂点は頂点の
なかでエネルギーが最小となり、それらと頂点を結ぶ辺
は安定となる。そうでなければ全ての頂点が縮退し同一
のエネルギーを持つ(証明完)。
【0077】残りの平衡点はHの表面上の点である。こ
こでSk を{1,…,n}からk個の整数を選んだ集
合とする。このとき表面上の平衡点は次の式を解くこと
により求まる。
【0078】
【数22】
【0079】ここでi∈Sk ,k=1,…,nに対し
て0<xi<1とする。このとき0あるいは1となるx
i を削除することにより数9,数10の次元をnから
kまで下げることができる。ここで縮退したモデルでも
行列Tの対角要素は0であるから性質2が成立し、頂点
でない平衡点は不安定となる。従って次の性質が成立す
る。
【0080】性質4  数22の解sが0≦si ≦1
(i=1,…,n)を満たすとし少なくとも一つのiに
ついて不等号が成立すると、sは不安定平衡点である。
【0081】以上の理論に基づいた問題点を解決するた
めの手段の一例を次に示す。
【0082】(イ)  エネルギー関数の表現エネルギ
ー関数のうちで評価関数の表し方にはそれほどの自由度
はないが制約条件にはなん通りもの表し方がある。求ま
る解の質は大きくはその制約でいくつのニューロンを規
定しているかが決まる。制約のなかに含まれるニューロ
ンの数が増えるほど、多数のニューロンが関連して制約
を満たす必要があるため制約条件の項が厳しくなり評価
関数の項が効きにくくなる。このため制約条件が部分的
か部分的でないかを判定することにより制約条件を決定
する手段、具体的には制約条件のなかに含まれるニュー
ロンの数を数えることにより制約条件を決定手段を設け
より部分的なあるいは制約条件のなかに含まれるニュー
ロン数がより少ない制約条件を選ぶようにする。
【0083】(ロ)  重みの決定 上記理論の性質1を用いて評価関数と制約条件との相対
関係により制約条件を満たさない解を不安定とするよう
に重みを決定する手段を設ければよい。
【0084】(ハ)  初期値の設定 性質3よりもし平衡点sが0≦si ≦1(i=1,…
,n)を満足すると任意の強安定な点に収束するsの近
傍の点が存在する。従ってsの近傍に初期値を設定する
手段を備えればよい。あるいはTx+b=0を解きたく
なければある初期値が強収束領域にあるか否かを判定す
ることにより初期値を設定する手段を設け初期値が強収
束領域に含まれないように初期値を選べばよい。
【0085】(ニ)  計算の高速化 計算途中で強収束領域にはいったか否か、あるいはニュ
ーロンの出力のうち飽和したもの(1あるいは0)があ
るか否かを判定することにより計算を終了する手段を設
け、強収束領域に入るか、飽和すれば計算を打切ればよ
い。
【0086】
【作用】(イ)  エネルギー関数の表現制約条件にか
かわるニューロンの数が少ない制約条件を選ぶことによ
り最適解が求まりやすくなる。
【0087】(ロ)  重みの決定 制約条件を満たさない解を不安定とすることにより制約
条件を満たす解が常に求まるようになる。
【0088】(ハ)  初期値の設定 平衡点の近傍あるいは通過領域,発散領域に設定するこ
とにより最適解が求まる可能性が高くなる。
【0089】(ニ)  計算の高速化 強収束領域に入った時点で計算を打ち切ることにより計
算を高速化することができる。
【0090】
【実施例】以下本発明の実施例を図1により説明する。 図において100は制約条件を決定するステップ、20
0は重みを決定するステップ、300は初期値を設定す
るステップ、400は計算を打ち切るステップである。 以下各ステップを詳細に説明する。
【0091】まず制約条件を決定するステップ100を
説明する。制約条件を数2で表現するとき表現の仕方は
いろいろありうる。このとき数2の制約はn個のニュー
ロンに関係しているが実際にはri のなかに0の要素
がある場合もありこのときは関連するニューロンの数が
nより少なくなる。いくつかの制約条件の表現法のなか
で関連するニューロンの数が少ないほうが制約がより部
分的になるから関連するニューロンの数が少ないものを
選ぶ。
【0092】次に重みを決定するステップ200を説明
する。上記理論より頂点でない平衡点は不安定となる。 従って頂点の制約条件を満たさない解(不要解)が不安
定となるように重みを決めればよい。ここで注意すべき
ことは通過領域でHの表面に到達するかということであ
る。もしそうでなければ次元が下がることにより不安定
な解が安定になる可能性がでる。しかしながらこれは特
定のニューロンのf(ui)の傾斜を大きくするなどを
しないかぎりまれである。従ってxはHの表面に収束領
域で到達すると考えてよい。これによりn次元空間で不
安定となる制約条件を満たさない安定な頂点のみを抑圧
すればよいことになる。性質1より次のように不要解を
抑圧すればよい。
【0093】(イ)  制約条件を満たす解に隣接する
解を不安定にする。
【0094】(ロ)  制約条件を満たす解に隣接しな
い解を不安定にする。
【0095】(イ)は比較的簡単である。性質1よりも
し全ての制約条件を満たす解が強安定となれば制約条件
に隣接する解は存在しない。そこでまず任意の制約条件
を満たす解を仮定する。その解はエネルギーが隣接して
いる解のエネルギーより小さければ強安定となる。従っ
てすべての制約条件を満たす解のエネルギーが隣接した
解(制約条件を満たす解の一つのニューロンの状態を1
から0あるいは0から1に変えた解)のエネルギーより
小さくなるように重みA,Bを設定すればよい。即ちA
,Bを制約条件を満たす頂点c及びそれに隣接するc(
i)が Eci>Ec を満足するように決める。
【0096】(ロ)はそれほど簡単ではない。このため
には性質1を用いてどのような頂点がエネルギーが極小
になるかを調べる必要があるからである。このようにし
て不要解が見つかったとき重みを変えることにより抑圧
可能かを調べる。もしそれが不可能であるが除くことが
必要なときはそのような不要解を抑圧できるような制約
を加える必要がある。
【0097】次に初期値を設定するステップ300を説
明する。性質3よりも平衡点sが0≦si ≦1(i=
1,…,n)を満足すると任意の強安定な点に収束する
sの近傍の点が存在する。従ってsの近傍に初期値を設
定するのがよい。このために平衡点sを求めることによ
り初期値を設定する。ここでsが0≦si ≦1(i=
1,…,n)を満足しない場合でもsのまわりに設定し
て解を求めることができる。それは例えばsi >1の
ときxi =f(ui)の領域を0≦xi ≦1から0
≦xi ≦a,a≧si に拡張しxi =si −ε
,ε>0とすればよい。
【0098】あるいはTx+b=0を解きたくなければ
少なくとも強収束領域に初期値を設定すべきではない。 次善の手は発散領域あるいは通過領域に設定することで
ある。このためにはある初期値が強収束領域にあるか否
かを判定することにより初期値を設定する手段を設け初
期値が強収束領域に含まれないように初期値を選べばよ
い。ここで初期値xが強収束領域にあるかいないかの判
定は次のようにiを1からnまで変えて調べればよい。
【0099】x∈D+(i)  のとき  ci =0
とする。
【0100】x∈D−(i)  のとき  ci =1
とする。
【0101】x∈D0(i)  のとき  xは強収束
領域にはないので終了する。
【0102】cが求まったときEc<Eci(i=1,
…,n)が成立すれば強収束領域にある。
【0103】次に計算の打切りのステップ400を説明
する。数9,数10の計算はシグモイド関数の代わりに
図2の区分線形関数を用い、数10にオイラー法を適用
すればよい。即ち
【0104】
【数23】
【0105】
【数24】
【0106】ここでΔtは積分の刻み幅、jはベクトル
のj番目の要素で、const は1以下の定数である
。数24はxi =0.5(i=1,…,n)における
修正量の最大値をconst に押さえることにより原
点に収束するのを防いでいる。なお解の質を改善するた
めにはアイジェーシーエンエンー89(IJCNN−8
9)第1巻、553−540頁にあるようにシミュレー
テイッドアニーリング法を適用することも可能である。
【0107】計算途中で強収束領域にはいると後は単調
に収束するから、強収束領域に入れば計算を打切ること
ができる。強収束領域に入ったか否かは300で示した
手順で調べることができる。簡単な方法で行なうとすれ
ばニューロンの出力のうち飽和したもの(1あるいは0
)があるかいないかを判定し、飽和すれば計算を打ち切
ればよい。
【0108】次に巡回セールスマンの実施例を説明する
。巡回セールスマン問題はn都市を巡回する経路のうち
各都市を一度だけ通るという制約のもとででもっとも短
いものを求める組み合わせ問題である。ホップフィール
ドは各々の都市にn個のニューロンを割り当て都市のi
番目のニューロンが発火したときi番目にその都市をと
るという意味に定義した。またエネルギー関数を次のよ
うに定義した。
【0109】
【数25】
【0110】  但し  Vxi:都市xのi番目のニ
ューロン、0≦Vxi≦1, dxy:都市x,yの間に距離 A,B,C:重み 添字i−1,i+1はモジューロnで計算数25の定式
化をホップフィールドのエネルギー関数と呼ぶことにす
る。エネルギー関数の第一項は都市xに対してVxi=
1を満足するiは多くてもひとつであることを示す。ま
た第二項は添え字iに対してVxi=1を満足する都市
xは多くても一つであることを示す。第三番目の項は発
火するニューロン数がnであることを規定する。最初の
3項は制約条件である。
【0111】不要解を抑圧するために重みは次の様にし
て決める。まず最初制約条件を満たす解に隣接した不要
解を抑圧することを考える。任意の制約条件を満たす解
を仮定し、一つのニューロンの状態を0から1に変える
。この変更により数25の制約条件に違反ししかも巡回
する経路も増える。重みを正に設定するかぎりはエネル
ギーは上昇するからこの変更は考えなくてよい。
【0112】次にあるひとつのニューロンを1から0に
変えることを考える。この変更で数25の最初の二つの
項は0のままであるが三番目の項は C/2 だけ増加し四番目の項は D(dxy+dxz) だけ減少する。ここで都市x,y,zにおいて距離dx
y+dXZ,dyx,dzxを加算する必要がある。従
って性質より次式が成立し
【0113】
【数26】
【0114】かつ重みA,Bが正ならばすべての制約条
件を満足する解は安定となる。ここで制約条件が同等に
はたらくために
【0115】
【数27】
【0116】とする。
【0117】次に制約条件を満たす解に隣接しない不要
解を調べる。ここで図4に場合分けした例を示す。図に
おいて600,700,800は5都市の不要解の例で
ある。
【0118】(イ)  第3番目の制約のみに違反する
解(600) 第1及び2の制約に違反しないニューロンの状態から0
から1に変えることにより第3番目の制約のエネルギー
は少なくともC/2だけ減少し、第4番目の項は多くて
もD(dxy+dxz)だけ増加する。従って数26よ
りもとの解は安定解ではない。
【0119】(ロ)  第1及び2の制約のみに違反す
る解(700) 制約を満たさないニューロンを1から0に変えることに
より第1,2,4項は少なくともAだけ減少し第3項は
C/2だけ増加する。従って数27よりもとの解は安定
ではない。
【0120】(ハ)  同一の列でk(>1)ニューロ
ンが発火し全体でn−lニューロンが発火(800)列
のニューロンの一つを1から0にすることにより、第1
,2,4項のエネルギーは少なくとも
【0121】
【数28】
【0122】だけ減少し第3番目の項は
【0123】
【数29】
【0124】だけ増加する。従って、不要解は
【012
5】
【数30】
【0126】のとき存在する可能性がある。数27より
数30は
【0127】
【数31】
【0128】となる。
【0129】またkニューロンと同一の列の発火してい
ないニューロンでそのニューロンが含まれる行の全ての
ニューロンが発火していないものについて状態を0から
1に変えると第1,2,4項に対するエネルギーは少な
くともkAだけ増加し、第4項は(l−1/2)減少す
る。従って
【0130】
【数32】
【0131】が成立するとき、不要解が存在する可能性
がある。数27より、数32は
【0132】
【数33】
【0133】となる。従って数31,数33より不要解
【0134】
【数34】
【0135】のとき、存在する可能性がある。
【0136】ここで発火していないニューロンのうちで
状態を1に変えても第1および2の制約に違反しないも
ののうちで同一列のk個のニューロンに隣接したものの
状態を変える(ここで隣接はモジュロnで考えるものと
する)。このとき第1,2,4項のエネルギーは多くて
【0137】
【数35】
【0138】だけ増加する(800参照)。但し和は都
市xへの距離のうちで最大値から2k番目までの最大値
について取るものとする。第3番目の項は(m−1/2
)C減少する。ここで数35の最大値はk=m+1のと
きであるから、
【0139】
【数36】
【0140】が成立すると、不要解を抑圧することがで
きる。
【0141】
【数37】
【0142】であるから、
【0143】
【数38】
【0144】が成立する。従って数36をm=1につい
てのみ調べればよい。即ち
【0145】
【数39】
【0146】数26より数39が成立すると全ての制約
条件を満たさない解は不安定となり制約条件を満たすも
ののみが安定となる。
【0147】ホップフィールドの定式化を変形した次の
ものを考える。
【0148】
【数40】
【0149】これを修正エネルギー関数と呼ぶことにす
る。第一及び二項の制約はxあるいはiを1からnまで
変えたときVxi=1となるのは一個だけという制約で
ある。まず制約条件に隣接する不要解について考える。 あるニューロンを1から0に変えると第一番および第二
番目の制約に対するエネルギーは各々A/2,B/2だ
け上昇する。これに対して三番目の項に対するエネルギ
ーは 2D(dxy+dxz) だけ減少する。従ってすべての制約条件を満たす解が強
安定となるためにはつぎの不等式を満足する必要がある
【0150】
【数41】
【0151】ここで二つの制約条件が同等にはたらくた
めに
【0152】
【数42】
【0153】とすると数41は次のようになる。
【0154】
【数43】
【0155】次に制約条件を満たす解に隣接しない不要
解を抑圧することを考える。
【0156】(イ)  列あるいは行で少なくとも一つ
のニューロンが発火(600) 発火しているニューロンの数がnより少ないとき制約を
違反しない範囲でニューロンの状態を1に変えることが
できる。これにより第1,2項のエネルギーは少なくと
も(A+B)/2だけ減少し、第3項は多くてもD(d
xy+dyz)増える。従って数43が成立するかぎり
もとの解は安定ではない。
【0157】(ロ)  行あるいは列のk(>2)ニュ
ーロンが発火 上記のニューロンの一つの状態を1から0にするエネル
ギーは常に減少するからもとの解は安定ではない。
【0158】(ハ)  行あるいは列で二つのニューロ
ンが発火 もしVxi,Vxj,Vyi=1とすると、Vxiを0
にすることによりエネルギーは減少するのでこの場合は
安定とはならない。また同様に上記のニューロンに隣接
した発火ニューロンがある場合も除外できる。それは隣
接したニューロンに接した二つのニューロンのうちの一
つの状態を0とすることにより、エネルギーが減少する
からである。
【0159】以上の議論より不要解は二つのニューロン
が行あるいは列で発火しそれらに隣接した発火状態のニ
ューロンが存在しないときである。図5にその例を示す
。図において900,1000は不要解の例を示す。 即ち (ニ)  二つのニューロンが列で発火し(全体でn個
発火)それらには発火状態のニューロンが隣接していな
い発火状態のニューロンを0にしてもエネルギーは変わ
らない。したがってもとの状態は弱安定であり、重みを
変えても抑圧できない。この不要解はnが偶数のとき生
じる(900参照)。
【0160】(v)  少なくとも二つの列で二つのニ
ューロンが発火 最も厳しい条件として列i及びi+2で二つのニューロ
ンが発火しているとする。このときi+1列の全てのニ
ューロンは発火していない。i+1列の制約条件は違反
しないニューロンを一個0から1に変えることにより第
1,2項のエネルギーは(A+B)/2だけ減少し第3
項は
【0161】
【数44】
【0162】だけ増加するから
【0163】
【数45】
【0164】が成立すればもとの解は不安定となる(1
000参照)。
【0165】したがって修正エネルギー関数ではnが偶
数のとき全ての不要解を抑圧することはできない。この
解は例えば数25の第2項のように同一列で二つ以上ニ
ューロンが発火しない制約を加えることにより抑圧でき
る。
【0166】最適解の先見的な知識を持っていないので
初期値としては最適解が求まる可能性のある点に設定す
る必要がある。どちらのエネルギー関数でも平衡点sは
超立方体の内部に存在することが分かる。従って性質3
より初期値をsのまわりに設定することにより最適解を
求めうる。ここでsはTx+b=0を解くことなく求め
ることができる。初期値を超立方体の中点あるいは一般
化して
【0167】
【数46】
【0168】とするとVxiは、同様に振る舞いネット
ワークがn2 からn次元に縮退する。但し1は要素が
1のn次元ベクトル。Tの縮退した行列の対角要素が大
きい値となるためsが唯一の安定な解となる。従って数
46で初期値を与えるsが求まる。これよりsのまわり
に初期値を設定するには数46に雑音を加えればよい。 従って例えば
【0169】
【数47】
【0170】とすればよい。但しα:パラメータ、RA
ND:[−0.5,0.5]に分布する一様乱数上記数
25,数40のエネルギー関数のどちらを選べばよいか
はステップ100を実行すればよい。即ち数25の第3
項の制約条件はn2個のニューロンに関係しているがこ
れに対して数40の1,2番目の制約条件はn個のニュ
ーロンに関係しているのみである。従って、数40の制
約条件の方を選べばよい。
【0171】次にエルエスアイ(LSI)のモジュール
配置問題の実施例を示す。回路をLSIに配置する場合
回路を論理回路の集合であるモジュールに分割する。図
6はモジュール分割された回路の例を示している。図に
おいて1,…,6はモジュールで7,…,16は端子で
ある。モジュール間及びモジュールと端子間は配線で結
ばれている。このようにモジュール分割された回路を図
7に示すLSI上のスロットに配置するときできるだけ
配線距離が短くなるように配置することが必要になる。 ただし図において20,…,29は端子を配置する外部
スロット、30,…,35はモジュールを配置する内部
スロットである。図8はモジュール配置した例を示す。 モジュール配置問題はこのようにn個のモジュールをn
個のスロットに配線長が最短となるように配置する問題
となり、各スロットに対してn個のニューロンを用意し
、従って全体でn2 個のニューロンを用意して、i番
目のスロットのj番目のニューロンが1のときi番目の
スロットにj番目のモジュールを配置することにする。 即ち、モジュール配置問題はモジュールをスロットに1
対1に配置する制約条件のもとで配線長を最短にするこ
とになる。従って制約条件は巡回セールスマン問題と同
じに表現できるから制約条件としては数25と数40で
比較すれば数40の第1,2項を取ればよい。また評価
関数も巡回セールスマン問題と同様に定義できるから重
みも巡回セールスマンと同じように定義できる。但し初
期値に関しては数46のように設定してニューロンの縮
退は起こらないから平衡点のまわりあるいは強収束領域
にならないように設定すればよい。また計算の打切りも
以前の場合と同じである。
【0172】以上説明した本発明の実施例の効果を説明
する。
【0173】(イ)  エネルギー関数の表現制約条件
をより部分的な制約条件となるように選ぶことにより最
適解への収束性がよくなる。例えば10都市の巡回セー
ルスマン問題のとき数25,数40の評価関数に対して
1000回の試行に対して数25では19回しか最適解
が求まらなかったのに対して数40では432回求まり
最適解への収束性が大幅に改善された。
【0174】(ロ)  重みの決定 制約条件を満たさない解を不安定とすることにより常に
制約条件を満たす解が求まるようになる。巡回セールス
マン問題のときは制約条件を満たす解に隣接した解を不
安定とすること、即ち数26,数43を満たすように重
みを決めることで100%制約条件を満たす解を求める
ことができる。
【0175】(ハ)  初期値の設定 初期値を平衡点のまわりに設定することにより最適解に
近い解を求めることができる。10都市巡回セールスマ
ン問題では1000回試行したときα=10−5のとき
最適解が273回求まったのに対してα=10−7では
432回に向上した。
【0176】(ニ)  計算の高速化 強収束領域に入ったとき計算を打ち切ることにより計算
時間を大幅に短縮することが可能である。
【0177】
【発明の効果】本発明は組合わせ問題を解いて種々の産
業上のシステムに適用する際に、各種の定数が試行錯誤
を行なうことなく高速に最適解もしくは、最適解に近い
ものが得られるという効果を奏するものである。
【図面の簡単な説明】
【図1】具体的実施例を説明する図。
【図2】区分線形関数を説明する図。
【図3】2ニューロンネットワークの軌跡を示す図。
【図4】ホップフィールドのエネルギー関数の不要解を
説明した図。
【図5】修正エネルギー関数の不要解を説明した図。
【図6】LSI配置問題のモジュールを説明した図。
【図7】LSI配置問題のスロットを説明した図。
【図8】LSI配置問題のモジュールの配置を示した図
【符号の説明】
100…制約条件を決定するステップ、200…重みを
決定するステップ、300…初期値を設定するステップ
、400…計算を打ち切るステップ。

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】制約条件と評価関数の重み付き和で表され
    るエネルギー関数を用いて組合わせ最適解を求めるデー
    タ処理装置において複数の制約条件より演算に用いる制
    約条件を選択する手段を備えたことを特徴とするデータ
    処理装置。
  2. 【請求項2】請求項1記載のデータ処理装置の制約条件
    を決定する手段において、制約条件が少なくとも、2以
    上の表現形式で表されるとき同一項の中に指定される要
    素の数が少ない制約条件を選択することを特徴とするデ
    ータ処理装置。
  3. 【請求項3】制約条件と評価関数の重み付き和で表され
    るエネルギー関数を用いて組合わせ最適解を求めるデー
    タ処理装置において制約条件と評価関数との相対的関係
    により重みを決定する手段を備えたことを特徴とするデ
    ータ処理装置。
  4. 【請求項4】請求項3記載のデータ処理装置及び方法の
    重みを決定する手段において、制約条件を満たさない解
    が不安定になるように重みを決めることを特徴とするデ
    ータ処理装置。
  5. 【請求項5】請求項3記載のデータ処理装置の重みを決
    定する手段において、制約条件を満たす解に隣接した解
    が不安定になるように重みを決めることを特徴とするデ
    ータ処理装置。
  6. 【請求項6】制約条件と評価関数の重み付き和で表され
    るエネルギー関数を用いて組合わせ最適解を求めるデー
    タ処理装置において組み合わせ解でない平衡解を求める
    ことにより初期値を設定する手段を備えたことを特徴と
    するデータ処理装置。
  7. 【請求項7】請求項6記載のデータ処理装置の組み合わ
    せ解でない平衡解を求める手段により解を求め、その近
    傍に初期値を設定することを特徴とするデータ処理装置
  8. 【請求項8】制約条件と評価関数の重み付き和で表され
    るエネルギー関数を用いて組合わせ最適解を求めるデー
    タ処理装置においてある初期値が収束領域に含まれるか
    否かを調べることにより初期値に設定する手段を備え収
    束領域に含まれないように初期値を設定することを特徴
    とするデータ処理装置。
  9. 【請求項9】制約条件と評価関数の重み付き和で表され
    るエネルギー関数を用いて組合わせ最適解を求めるデー
    タ処理装置において解の要素が飽和したか否かにより計
    算を打ち切る手段を設け、計算の途中で解の一つ以上の
    要素が飽和したときの計算を打切ることを特徴とするデ
    ータ処理装置。
  10. 【請求項10】制約条件と評価関数の重み付き和で表さ
    れるエネルギー関数を用いて組合わせ最適解を求める方
    法であって (1)  部分的な制約条件を選択することにより制約
    条件を決め、 (2)  制約条件と評価関数との相対的関係により重
    みを決定し、 (3)  ある初期値が収束領域に含まれるか否かを調
    べることにより初期値を設定し、 (4)  解の要素が飽和したか否かにより計算を打ち
    切る、の過程のうち少なくとも一つを備えたことを特徴
    とするデータ処理方法。
  11. 【請求項11】制約条件と評価関数の重み付き和で表さ
    れるエネルギー関数を用いてエルエスアイのモジュール
    配置の最適解を求める方法であって (1)  部分的な制約条件を選択することにより制約
    条件を決め、 (2)  制約条件と評価関数との相対的関係により重
    みを決定し、 (3)  ある初期値が収束領域に含まれるか否かを調
    べることにより初期値を設定し、 (4)  解の要素が飽和したか否かにより計算を打ち
    切る、の過程のうち少なくとも一つを備えたことを特徴
    とするモジュール配置方法。
JP3088124A 1991-04-19 1991-04-19 組合わせ最適解を求める方法及び装置 Pending JPH04319784A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3088124A JPH04319784A (ja) 1991-04-19 1991-04-19 組合わせ最適解を求める方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3088124A JPH04319784A (ja) 1991-04-19 1991-04-19 組合わせ最適解を求める方法及び装置

Publications (1)

Publication Number Publication Date
JPH04319784A true JPH04319784A (ja) 1992-11-10

Family

ID=13934163

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3088124A Pending JPH04319784A (ja) 1991-04-19 1991-04-19 組合わせ最適解を求める方法及び装置

Country Status (1)

Country Link
JP (1) JPH04319784A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07175669A (ja) * 1993-10-08 1995-07-14 Internatl Business Mach Corp <Ibm> ニューラル・ネットワーク優先順位関数を使用する適応ジョブ・スケジューリング

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07175669A (ja) * 1993-10-08 1995-07-14 Internatl Business Mach Corp <Ibm> ニューラル・ネットワーク優先順位関数を使用する適応ジョブ・スケジューリング

Similar Documents

Publication Publication Date Title
US20210201125A1 (en) On-chip training of memristor crossbar neuromorphic processing systems
US11521054B2 (en) Analog neuromorphic circuit implemented using resistive memories
EP0401687B1 (en) Placement optimizing method/apparatus for designing semiconductor devices
Abe Global convergence and suppression of spurious states of the Hopfield neural networks
EP0378115B1 (en) Neural computer
JPH0760428B2 (ja) 線形微分方程式を用いて接続の重みが生成されるような分散並列処理ネットワーク
US20220147800A1 (en) Multi-layer neural networks using symmetric tensors
Libeskind-Hadas et al. Solutions to the module orientation and rotation problems by neural computation networks
Atiya et al. An analog feedback associative memory
Hopfield The effectiveness of analogue'neural network'hardware
JPH04319784A (ja) 組合わせ最適解を求める方法及び装置
JPH03248259A (ja) モジュール割当方法
US5586223A (en) High speed segmented neural network and fabrication method
JPH076146A (ja) 並列データ処理システム
US5157275A (en) Circuit employing logical gates for calculating activation function derivatives on stochastically-encoded signals
Date et al. LSI module placement methods using neural computation networks
Funabiki et al. A binary neural network approach for link activation problems in multihop radio networks
Kwon et al. Contrast enhancement for backpropagation
Yamagiwa et al. A FPGA-based Learning Accelerator for Self-Organizing Map and Its Application to Trend-Visualization
Tanaka et al. An efficient algorithm for solving optimization problems on Hopfield‐type neural networks
Tanaka et al. Locally Broken Shock Wave Detection with One-Dimensional Convolutional Neural Network in Shock Turbulence Interaction
Inoue et al. Lsi module placement using the Kohonen network
JP2810083B2 (ja) 組合せ最適解を求めるデータ処理装置及び方法
CN116168249A (zh) 搜索方法及装置、芯片、计算机可读存储介质
JPH0415860A (ja) ニューラル・ネットワークの学習効率化方法