(57)【要約】【課題】仮想磁場漸弱法による磁場パラメータ又はニューロン間の結合荷重係数を用いてより確実に最適解を求めるホップフィールドネットワークを提供する。【解決手段】ニューロンの出力を求める場合に使用するニューロンの出力の算出式に磁場パラメータが含まれ、当該磁場パラメータは、磁場パラメータが初期値を負とし、時刻の経過により０、正、０となるように磁場パラメータ付与手段により求められるので、後説する実施形態の実験結果に示すようにより確実に最適解を求めることができる。また、ニューロン間の結合荷重係数を変化させることでネットワークのエネルギー状態を変化させて確実に最適解を求めることができる。【選択図】図１９
2008269593.tif 000002
【特許請求の範囲】
【請求項１】
すべてのニューロンが自己を除く他のすべてのニューロンと結合したホップフィールドネットワークであって、
任意のニューロンを選択するニューロン選択手段と、
当該ニューロン選択手段で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段と、
時刻に応じた磁場パラメータを求める磁場パラメータ付与手段と、
前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力及び磁場パラメータ付与手段で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、
前記ニューロン選択手段、入力取得手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行し、
前記磁場パラメータ付与手段は、磁場パラメータの初期値が負であり、時刻の経過に伴って漸次大きくなって磁場パラメータが０となり、少なくとも１回は磁場パラメータが正の値となって再び０となるように磁場パラメータを求めるホップフィールドネットワーク。
【請求項２】
前記磁場パラメータ付与手段は、磁場パラメータが０となり、正の値となって再び０となる時刻を繰り返し実行の終了時点とする
前記請求項１に記載のホップフィールドネットワーク。
【請求項３】
前記磁場パラメータ付与手段は、時刻の経過に伴って磁場パラメータの絶対値を小さくしながら負と正を順次繰り返すように磁場パラメータを求める
前記請求項１に記載のホップフィールドネットワーク。
【請求項４】
すべてのニューロンが自己を除く他のすべてのニューロンと結合したホップフィールドネットワークであって、
任意のニューロンを選択するニューロン選択手段と、
当該ニューロン選択手段で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段と、
時刻に応じた磁場パラメータを求める磁場パラメータ付与手段と、
前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力及び磁場パラメータ付与手段で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、
前記ニューロン選択手段、入力取得手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行し、
前記磁場パラメータ付与手段は、磁場パラメータの初期値が正であり、時刻の経過に伴って漸次小さくなって磁場パラメータが０となるように磁場パラメータを求めるホップフィールドネットワーク。
【請求項５】
前記磁場パラメータ付与手段は、磁場パラメータが０となる時刻を繰り返し実行の終了時点またはその近傍とする
前記請求項４に記載のホップフィールドネットワーク。
【請求項６】
前記磁場パラメータ付与手段は、磁場パラメータが０となった後に、少なくとも１回は磁場パラメータが負の値となって再び０となる
前記請求項４に記載のホップフィールドネットワーク。
【請求項７】
前記磁場パラメータ付与手段は、磁場パラメータが０となり、負の値となって再び０となる時刻を繰り返し実行の終了時点またはその近傍とする
前記請求項６に記載のホップフィールドネットワーク。
【請求項８】
前記磁場パラメータ付与手段は、時刻の経過に伴って磁場パラメータの絶対値を小さくしながら正と負を順次繰り返すように磁場パラメータを求める
前記請求項４に記載のホップフィールドネットワーク。
【請求項９】
請求項１ないし８のいずれかに記載のホップフィールドネットワークにおいて、
前記ニューロン選択手段で選択されたニューロン及び前記入力取得手段で取得した他のニューロンとの結合荷重を算出する結合荷重算出手段を備え、
前記ニューロン選択手段、入力取得手段、結合荷重算出手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行し、
前記結合荷重算出手段が、前記結合荷重に関する任意の結合荷重係数に基づいて、前記結合荷重を変化させて算出することを特徴とするホップフィールドネットワーク。
【請求項１０】
請求項９に記載のホップフィールドネットワークにおいて、
前記結合荷重算出手段が、前記ニューロン選択手段で選択されたニューロンと当該選択されたニューロン以外のニューロンとの結合状態に基づいて、各ニューロンごとに重み付けをして結合荷重係数を求めることを特徴とするホップフィールドネットワーク。
【請求項１１】
すべてのニューロンが自己を除く他のすべてのニューロンと結合したホップフィールドネットワークであって、
任意のニューロンを選択するニューロン選択手段と、
前記ニューロン選択手段で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段と、
前記ニューロン選択手段で選択されたニューロン及び前記入力取得手段で取得した他のニューロンとの結合荷重を算出する結合荷重算出手段と、
前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力及び前記結合荷重算出手段により算出した結合荷重に基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、
前記ニューロン選択手段、入力取得手段、結合荷重算出手段及び出力ニューロン算出手段を順次繰り返し実行し、
前記結合荷重算出手段が、前記結合荷重に関する任意の結合荷重係数に基づいて、前記結合荷重を変化させて算出することを特徴とするホップフィールドネットワーク。
【請求項１２】
請求項１１に記載のホップフィールドネットワークにおいて、
時刻に応じた磁場パラメータを求める磁場パラメータ付与手段を備え、
前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力、前記結合荷重算出手段により算出した結合荷重及び磁場パラメータ付与手段で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、
前記ニューロン選択手段、入力取得手段、結合荷重算出手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行することを特徴とするホップフィールドネットワーク。
【請求項１３】
請求項１２に記載のホップフィールドネットワークにおいて、
前記結合荷重算出手段が、前記ニューロン選択手段で選択されたニューロンと当該選択されたニューロン以外のニューロンとの結合状態に基づいて、各ニューロンごとに重み付けをして結合荷重係数を求めることを特徴とするホップフィールドネットワーク。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、相互結合型ニューラルネットワークの一種であるホップフィールドネットワークに関する。
【背景技術】
【０００２】
組合せ最適化問題とは、すべての組合せの中から、与えられた条件を最も満たすものを選ぶ問題である。例えば、スケジューリングや最近話題にあがる数独と呼ばれる脳力トレーニングゲームなどのように、組合せ最適化問題は企業活動や日常など様々な場所に現れる。
【０００３】
ところで、現在主流となっているノイマン型と呼ばれる直列逐次処理方式のコンピュータでは、組合せ総数が多くなった場合、その中から最適解を求めるためには多大な時間が必要であると言われている。このことは、一般に最適解を求めるまでに要する時間が長くなることを意味し、そのため解探索が困難な問題として位置づけられている。
このような経緯から、最適解を求める方法がいろいろと提案され、現在も様々な方面で研究され続けている。
【０００４】
このような要求を満たす解探索法の一つにホップフィールドネットワークと呼ばれるニューラルネットワークがある。ニューラルネットワークとは、人間の脳の構造を模倣して情報処理をするものである。このうちで、相互結合型ニューラルネットワークというものは、すべてのニューロンが互いに結合しており、その結合強度によってニューロンの値が変化していくものである。
【０００５】
Ｊｏｈｎ  Ｈｏｐｆｉｅｌｄは、相互結合型ニューラルネットワークと物理学におけるスピングラス理論の構造上の類似性に着目し、ニューラルネットワークの世界にエネルギー関数の概念を導入した。これが、いわゆるホップフィールドネットワークの始まりである。このモデルは最急降下方向にのみ状態変化を引き起こすため、エネルギーは増加することがない。したがって、初期値によっては局所解に陥ることもあり、必ずしも最適解が求められるわけではない点に問題がある。
【０００６】
さて、このような局所解に陥るという問題の対策として、これまでに擬似焼きなまし法や仮想磁場漸弱法、ヒルクライミングタームなどが提案されている。擬似焼きなまし法はいわゆる温度パラメータを変化させ、徐々に冷却していく手法である。これに対して、仮想磁場漸弱法はいわゆる磁場パラメータを変化させ、これに対応するニューロンの閾値を操作する手法であるが、これらはいずれも物理学の世界で裏付けのある操作に基づいている。また、ヒルクライミングタームは特定のニューロンの値を変化させるもので、正解を導くことを最優先とした恣意的な操作である。
【非特許文献１】清水保希："ホップフィールドネットワークを利用した組み合わせ最適化問題の解探索法に関する研究",平成１４年度佐賀大学理工学部電気電子工学科卒業研究論文,２００３
【発明の開示】
【発明が解決しようとする課題】
【０００７】
Ｊｏｈｎ  Ｈｏｐｆｉｅｌｄは、相互結合型ニューラルネットワークと物理学におけるスピングラス理論の構造上の類似性に着目し、ニューラルネットワークの世界にエネルギー関数の概念を導入した。これが、いわゆるホップフィールドネットワークの始まりである。
【０００８】
しかしながら、このモデルは最急降下方向にのみ状態変化を引き起こすため、エネルギーは増加することがない。したがって、初期値によっては局所解に陥ることもあり、必ずしも最適解が求められるわけではない点に問題がある。
【０００９】
さて、このような局所解に陥るという問題の対策として、これまでに擬似焼きなまし法や仮想磁場漸弱法、ヒルクライミングタームなどが提案されている。擬似焼きなまし法はいわゆる温度パラメータを変化させ、徐々に冷却していく手法である。これに対して、仮想磁場漸弱法はいわゆる磁場パラメータを変化させ、これに対応するニューロンの閾値を操作する手法であるが、これらはいずれも物理学の世界で裏付けのある操作に基づいている。また、ヒルクライミングタームは特定のニューロンの値を変化させるもので、正解を導くことを最優先とした恣意的な操作である。
【００１０】
そこで、本発明では、物理学の世界で裏付けがある操作という前者の立場に着目したうえで、近年提案された仮想磁場漸弱法について、磁場パラメータを効率に与え、また、ニューロン間の結合荷重を変化させることでネットワークのエネルギー状態を変化させて最適解を求めるホップフィールドネットワークを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明では、物理学の世界で裏付けがある操作という前者の立場に着目したうえで、近年提案された仮想磁場漸弱法について、磁場パラメータを効率に与える。
さて、これまで磁場パラメータは初期値を負の値に設定し、最終的に０になるように与えられていた（非特許文献１）。
そこで、本発明では、磁場パラメータを一度正方向に増加させた後、０にするという操作を行った場合のシミュレーションを通して、その有効性を説明する。
【００１２】
本発明に係るホップフィールドネットワークは、すべてのニューロンが自己を除く他のすべてのニューロンと結合したホップフィールドネットワークであって、任意のニューロンを選択するニューロン選択手段と、当該ニューロン選択手段で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段と、時刻に応じた磁場パラメータを求める磁場パラメータ付与手段と、前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力及び磁場パラメータ付与手段で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、前記ニューロン選択手段、入力取得手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行し、前記磁場パラメータ付与手段は、磁場パラメータの初期値が負であり、時刻の経過に伴って漸次大きくなって磁場パラメータが０となり、少なくとも１回は磁場パラメータが正の値となって再び０となるように磁場パラメータを求める仮想磁場漸弱法を用いたものである。
【００１３】
このように本発明においては、ニューロンの出力を求める場合に使用するニューロンの出力の算出式に磁場パラメータが含まれ、当該磁場パラメータは、磁場パラメータが初期値を負とし、時刻の経過により０、正、０となるように磁場パラメータ付与手段により求められるので、後説する実施形態の実験結果に示すようにより確実に最適解を求めることができるという効果を奏する。
前記ニューロンの算出式の一般式は次の通りである。
【００１４】
【数１】
2008269593.tif 000003
【００１５】
この式（１．１）は、基本的にはニューラルネットワークにおける出力ニューロンの算出式の一般式である。後説する実施形態には、クロスバ・スイッチ問題については式（３．１７）、ｎクィーン問題については式（４．６）、ナンバー・プレイス問題については式（４．１３）が該当する。ニューラルネットワークにおける出力ニューロンの一般式と異なるのは、Θiが磁場パラメータを含んで構成される点である。それぞれの式における閾値の式は、それぞれ式（３．１８）、式（４．７）、式（４．１４）であり、ニューロン毎に設定される閾値と磁場パラメータ関数を加算したものである。なお、式（１．１）と、式（３．１８）、式（４．７）及び式（４．１４）が若干異なるのは主に各問題に対して最適な配置のニューロンで式を組み立てているためである。また、対象となる問題に依存する値は、例えば、クロスバ・スイッチ問題にあっては、式（３．１５）に示す係合係数を求める式及び式（３．１６）に示す磁場パラメータを除く閾値を求める式である。このように問題によって、結合係数を求める式及び磁場パラメータを除く閾値を求める式は相違が生じるが、磁場パラメータの与え方については前説したように本発明の要部となって共通する。
【００１６】
本発明に係るホップフィールドネットワークは必要に応じて、前記磁場パラメータ付与手段は、磁場パラメータが０となり、正の値となって再び０となる時刻を繰り返し実行の終了時点とするものである。
【００１７】
繰り返し実行の終了時点は、繰り返し回数を設定した場合はその繰り返し回数の終了部分である。例えば、１０００回を繰り返し回数とした場合には、９９８回、９９９回、１０００回が繰り返し回数の終了部分となる。繰り返し回数を予め設定しない場合には出力ニューロンの変化がなくなる時点を繰り返し回数の終了部分とし、再度はじめから繰り返し実行することで本発明を適用することができる。
【００１８】
磁場パラメータの初期値又は繰り返し回数の入力を利用者から受け付ける手段を設け、当該利用者からの磁場パラメータの初期値又は繰り返し回数を受けた後に自動的に前記ニューロン選択手段、入力取得手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行する構成とすることもできる。そうすることで、初期値の調整又は繰り返し回数の調整を利用者が行いながら迅速に最適解を求めることができる。この場合において、繰り返し実行が終了した後に、ニューロンの状態を出力する構成が望ましい。
【００１９】
本発明に係るホップフィールドネットワークは必要に応じて、前記磁場パラメータ付与手段は、時刻の経過に伴って磁場パラメータの絶対値を小さくしながら負と正を順次繰り返すように磁場パラメータを求めるものである。
【００２０】
このように本発明においては、時刻の経過に伴って絶対値を小さくしながら負と正を順次繰り返すように磁場パラメータを求めるので、後説する実施形態の実験結果に示すようにさらに確実に最適解を求めることができるという効果を有する。
ここまでのホップフィールドネットワークについては、具体的には後記する第１の実施形態に詳説している。
【００２１】
本発明に係るホップフィールドネットワークは、すべてのニューロンが自己を除く他のすべてのニューロンと結合したホップフィールドネットワークであって、任意のニューロンを選択するニューロン選択手段と、当該ニューロン選択手段で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段と、時刻に応じた磁場パラメータを求める磁場パラメータ付与手段と、前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力及び磁場パラメータ付与手段で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、前記ニューロン選択手段、入力取得手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行し、前記磁場パラメータ付与手段は、磁場パラメータの初期値が正であり、時刻の経過に伴って漸次小さくなって磁場パラメータが０となるように磁場パラメータを求める仮想磁場漸弱法を用いたものである。
【００２２】
このように本発明においては、ニューロンの出力を求める場合に使用するニューロンの出力の算出式に磁場パラメータが含まれ、当該磁場パラメータは、磁場パラメータが初期値を正とし、時刻の経過により０となるように磁場パラメータ付与手段により求められるので、後説する実施形態の実験結果に示したようにより確実に最適解を求めることができるという効果を有する。ここで、磁場パラメータの初期値を正とした場合には、０からさらに負の値とし、０と磁場パラメータをしなくとも、直接０とすることで正答率の改善することができるという効果を有する。
【００２３】
本発明に係るホップフィールドネットワークは必要に応じて、前記磁場パラメータ付与手段は、磁場パラメータが０となる時刻を繰り返し実行の終了時点またはその近傍とするものである。
【００２４】
本発明に係るホップフィールドネットワークは必要に応じて、前記磁場パラメータ付与手段は、磁場パラメータが０となった後に、少なくとも１回は磁場パラメータが負の値となって再び０となるものである。
【００２５】
本発明に係るホップフィールドネットワークは必要に応じて、前記磁場パラメータ付与手段は、磁場パラメータが０となり、負の値となって再び０となる時刻を繰り返し実行の終了時点またはその近傍とするものである。
【００２６】
これまで本発明をホップフィールドネットワークとして捉えてきたが、これまでの説明並びに実施形態からホップフィールドネットワークの磁場パラメータの付与方法としても本発明を把握することができる。
【００２７】
このように本発明においては、磁場パラメータの初期値を正とした場合で、さらに、時刻の経過に伴って磁場パラメータを順次０、負、０とするので、さらに正答率を改善することができるという効果を有する。
【００２８】
本発明に係るホップフィールドネットワークは必要に応じて、前記磁場パラメータ付与手段は、時刻の経過に伴って磁場パラメータの絶対値を小さくしながら正と負を順次繰り返すように磁場パラメータを求めるものである。
【００２９】
ここまでのホップフィールドネットワークについては、具体的には第２の実施形態に詳説している。これ以降のホップフィールドネットワークについては、具体的にはその他の実施形態に詳説している。
【００３０】
本発明に係るホップフィールドネットワークは、前記ニューロン選択手段で選択されたニューロン及び前記入力取得手段で取得した他のニューロンとの結合荷重を算出する結合荷重算出手段を備え、前記ニューロン選択手段、入力取得手段、結合荷重算出手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行し、前記結合荷重算出手段が、前記結合荷重に関する任意の結合荷重係数に基づいて、前記結合荷重を変化させて算出するものである。
【００３１】
このように本発明においては、ニューロンの出力を求める場合に使用するニューロンの出力の算出式にニューロン間の結合荷重が含まれ、当該結合荷重は、任意の結合荷重係数に基づいて変化させて算出されるため、ネットワークにおけるエネルギーが変化され、後説する実施形態の実験結果に示したように、より確実に組み合わせの最適解を求めることができるという効果を有する。
また、この場合ネットワークのエネルギー関数及びニューロンの出力の算出式は以下のようになる。
【００３２】
【数２】
2008269593.tif 000004
【００３３】
【数３】
2008269593.tif 000005
【００３４】
式（１．２）、（１．３）において、ｗが結合荷重で、ｋが結合荷重係数である。この式（１．２）から、結合荷重が含まれる項はニューロンの出力Ｖが２次であるのに対し、磁場パラメータを含む閾値θが含まれる項はニューロンの出力Ｖが１次であることから、結合荷重ｗの方が閾値θと比較してエネルギーに対する影響が大きいと考えられる。すなわち、ネットワークのエネルギーの変化の度合いをより大きく且つ綿密にすることで、確実で早く最適解を求めることができるという効果を奏する。
【００３５】
本発明に係るホップフィールドネットワークは、前記結合荷重算出手段が、前記ニューロン選択手段で選択されたニューロンと当該選択されたニューロン以外のニューロンとの結合状態に基づいて、各ニューロンごとに重み付けをして結合荷重係数を求める仮想磁場漸弱法を用いたものである。
【００３６】
このように本発明においては、ニューロン間の結合荷重について、各ニューロンごとに重み付けをして結合荷重係数を求めるため、ネットワークのエネルギーを緻密に変化させてより最適な解を早く求めることができるという効果を奏する。
【００３７】
本発明に係るホップフィールドネットワークは、すべてのニューロンが自己を除く他のすべてのニューロンと結合したホップフィールドネットワークであって、任意のニューロンを選択するニューロン選択手段と、前記ニューロン選択手段で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段と、前記ニューロン選択手段で選択されたニューロン及び前記入力取得手段で取得した他のニューロンとの結合荷重を算出する結合荷重算出手段と、前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力及び前記結合荷重算出手段により算出した結合荷重に基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、前記ニューロン選択手段、入力取得手段、結合荷重算出手段及び出力ニューロン算出手段を順次繰り返し実行し、前記結合荷重算出手段が、前記結合荷重に関する任意の結合荷重係数に基づいて、前記結合荷重を変化させて算出するものである。
【００３８】
このように本発明においては、式（１．２）における第２項目の磁場パラメータを含む閾値θの値に依存することなく、結合荷重算出手段が結合荷重を変化させることでネットワークのエネルギーを変化させることができるため、処理を簡略化することができるという効果を奏する。
【００３９】
本発明に係るホップフィールドネットワークは、時刻に応じた磁場パラメータを求める磁場パラメータ付与手段を備え、前記入力取得手段により取得した他のニューロンから選択されたニューロンへの入力、前記結合荷重算出手段により算出した結合荷重及び磁場パラメータ付与手段で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段とを含み、前記ニューロン選択手段、入力取得手段、結合荷重算出手段、磁場パラメータ付与手段及び出力ニューロン算出手段を順次繰り返し実行するものである。
【００４０】
なお、ここでは、θをΘに改めて磁場パラメータ考慮し、従来通り負から０に変化させてもよいし、負、正、０と変化させてもよいし、負と正を繰り返しながら絶対値を小さくしてもよい。また、正から０に変化させてもよいし、正、負、０と変化させてもよいし、正と負を繰り返しながら絶対値を小さくしてもよい。すなわち、磁場パラメータの変化に依存させてもよいし、依存させなくてもよい。
【００４１】
本発明に係るホップフィールドネットワークは、前記結合荷重算出手段が、前記ニューロン選択手段で選択されたニューロンと当該選択されたニューロン以外のニューロンとの結合状態に基づいて、各ニューロンごとに重み付けをして結合荷重係数を求めるものである。
【００４２】
このように本発明においては、ニューロン間の結合荷重について、各ニューロンごとに重み付けをして結合荷重係数を求めるため、ネットワークのエネルギーを緻密に変化させてより最適な解を早く求めることができるという効果を奏する。
これら前記の発明の概要は、本発明に必須となる特徴を列挙したものではなく、これら複数の特徴のサブコンビネーションも発明となり得る。
【発明を実施するための最良の形態】
【００４３】
（本発明の第１の実施形態）
［１．要素技術］
本章では、まずホップフィールドネットワークの基本的な概念であるニューラルネットワークについて紹介した後、ホップフィールドネットワークの構造や動作、スピングラス理論との類似性について説明する。そして、仮想磁場漸弱法の考え方について述べる。
【００４４】
［１．１  ニューラルネットワーク］
ニューラルネットワークとは、脳の情報処理方式を模擬しようというものである。そこでまず、脳の構造と情報処理方式について簡単に説明する。脳を構成している細胞は、１４０億個程度のニューロン（神経細胞）とその５〜１０倍はあるというグリア細胞である（萩原将文,"ニューロ・ファジイ・遺伝的アルゴリズム",産業図書,１９９４）。
【００４５】
ニューロンの基本的な構造は図１に示すようなもので、ニューロンの本体にあたる細胞体、ニューロンの入力端子にあたる樹状突起、ニューロンの出力端子にあたる軸索、ニューロン間をつなげる役割を果たすシナプスから成る。ニューロンはそれを取り巻く細胞外液との間に膜電位と呼ばれる電位差をもっている。膜電位は通常−７０［ｍＶ］程度を保っているが、他のニューロンから入力信号が加わると膜電位が上昇する。それぞれのニューロンは平均して他のニューロンと１０００［個］程度のつながりをもっており、他のニューロンからの入力信号の総和による膜電位の変化が、ある決められた値（閾値）を超えるとニューロンが発火し、パルス（活動電位）を発生させて次のニューロンへと伝えていく。
【００４６】
この膨大なニューロン数とニューロン間のつながりが、人間特有の情報処理機能を実現しており、これをモデル化することで新しい情報処理原理を追求しようとしたものがニューラルネットワークである。現在、よく用いられるニューロンモデルは図２に示すようなものである。
【００４７】
この図の中で、ｘ1、ｘ2、・・・、ｘnは前段のニューロンの出力、ｙはこのニューロンの出力、そしてｗ1、ｗ2、・・・、ｗnはこれらのニューロン間の結合の強さを表す。他の各ニューロンから、それぞれの結合荷重を通して入力される値の総和が閾値より大きければ、ニューロンが発火状態のときの出力を“１”、静止状態のときの出力を“０”とすると、上述の性質は以下のように表すことができる。
【００４８】
【数４】
2008269593.tif 000006
【００４９】
【数５】
2008269593.tif 000007
ｎは前段のニューロン数、θは閾値を表す。なお、ｆは閾値関数と呼ばれるもので，ニューラルネットワークの有する不思議な能力の源泉である。
【００５０】
［１．２  ホップフィールドネットワーク］
ホップフィールドネットワークとは、１９８２年に物理学者Ｊｏｈｎ  Ｈｏｐｆｉｅｌｄが提案した相互結合型ニューラルネットワークの一つである。相互結合型ニューラルネットワークとは、すべてのニューロンが自分自身を除く他のすべてのニューロンと結合しており、図３に示すような構造をしている。ここで○（マル）はニューロンを、→（矢印）はニューロン間の結合を表している。いま、時刻ｔにおけるニューロンｉの出力をＶi（ｔ）とおくと、次の時刻ｔ＋１における各ニューロンの出力は式（２．１）を参考にして
【００５１】
【数６】
2008269593.tif 000008
で表される。
【００５２】
次に、ホップフィールドネットワークの動作について説明する。まず、各ニューロンの初期値を乱数で決定する。そして、式（２．１）による動作をすべてのニューロンに対して任意の順序で１つずつ行い、ニューロンの出力値の変化がなくなるまで繰り返す。このようにニューロンの状態遷移を一度に１つずつ行うことを非同期式と呼ぶ。なお、これに対して全ニューロンの状態遷移を一度に行うものを同期式と呼ぶ。
ホップフィールドネットワークでは、ニューロン間の結合荷重に関して次の特徴を仮定する。
【００５３】
【数７】
2008269593.tif 000009
このとき式（２．４）並びにニューロンの状態遷移が非同期式であることから、次式のようなエネルギー関数が定義できる。
【００５４】
【数８】
2008269593.tif 000010
【００５５】
ここに示すエネルギー関数は、本来、物理学のスピングラス理論の世界において定式化されるものである。このアイデアを相互結合型ニューラルネットワークへ導入することができたのは、両者の類似性に着目したためであり、このことにより、それまで困難とされていた組合せ最適化問題（多数の組合せの中から最適な解を求める問題。詳細については後説する。）を、比較的容易に解くことが可能であると示された。
さて、ここでスピングラス理論とホップフィールドネットワークとの対応関係を示す。
【００５６】
【表１】
2008269593.tif 000011
【００５７】
表１に示すように、スピンの向きＳi（ｔ）をニューロンの出力Ｖi（ｔ）に、スピン間の相互作用Ｊijをニューロン間の結合荷重ｗijに対応させると、スピングラスのエネルギーであるハミルトニアンＨ（ｔ）からホップフィールドネットワークのエネルギーＥ（ｔ）を式（２．５）のように定義できる。なお、スピングラスのエネルギー（ハミルトニアン）は以下のように定義されている。
【００５８】
【数９】
2008269593.tif 000012
【００５９】
また、両者の包含関係は図４に示すようになり（Hiroshi  Wakuya,"A  new  search  method  for  combinatorial  optimization  problem  inspired  from  the  spin  glass  system",Abstracts  of  the  2nd  International  Conference  on  Brain-inspired  Information  Technology(BrainIT2005)）、スピングラスの世界で成り立つ現象はホップフィールドネットワークでも成り立つが、ホップフィールドネットワークの世界で成り立つ現象が物理学の世界に存在しているわけではないことがわかる。
【００６０】
ホップフィールドネットワークを用いて組合せ最適化問題を解く場合、以下のような問題点がある。ホップフィールドネットワークは、式（２．５）で定義されるエネルギー関数を減少させる方向に式（２．１）に従って各ニューロンの状態遷移を行う。この時、エネルギーが増加する方向には決して動作しないため、必ずしも最適解を求められるわけではなく、ネットワークの初期状態によっては近似解となってしまうことも多い。ネットワークの各状態に対するエネルギーの増減を、山と谷が交互に存在する曲線として模式的に表したものが図５である。例えば、図５中の同じ山の左右にネットワークの初期状態としてＡとＢをとると、Ａの場合は最適解に到達することができるが、Ｂの場合は局所解（近似解）に落ち込み、そこから脱出できなくなってしまうことがわかる。
【００６１】
この種の問題点への対策として、ボルツマンマシンとヒルクライミングタームをはじめとするいくつかの方法が提案されている。ボルツマンマシンでは、状態遷移に確率を導入したため、ネットワークの状態がエネルギーが増加する方向に動作することが許される。ニューロンの状態遷移は次式で計算される確率Ｐに従って出力が１に設定される（合原一幸，"ニューロ・ファジィ・カオス"，オーム社，１９９３）。
【００６２】
【数１０】
2008269593.tif 000013
【００６３】
式（２．７）のｕi（ｔ）は各ニューロンからの入力和、Ｔは温度パラメータを示す。なお、確率関数Ｐは、ｕi（ｔ）→∞で１．０に近づき、ｕi（ｔ）→−∞で値０に近づく非線形な関数で、シグモイド関数と呼ばれているものである。図６に示すように、シグモイド関数の形状は、温度パラメータの値の大きさによって傾きを変化させる。
【００６４】
始めは温度パラメータの値を大きく設定し、シグモイド関数の傾きをなめらかにすることで、入力和が小さくてもニューロンが発火しやすくなり、極小値から脱出する確率を大きくする。徐々に温度を下げることによって、入力和が小さい場合はニューロンが発火しにくくなり、最終的にはエネルギーの最も低い状態に収束し、最適解が求められるというこの方法は、金属材料を加熱して徐々に冷却して内部の欠陥を取り除く「焼きなまし」に似ていることから、擬似焼きなまし法と呼ばれている。またこの手法は、スピングラス理論においても成り立つ手法であり、スピンを高温から低温に徐々冷却すると、最終的にハミルトニアンが最も小さいスピンの安定状態を得ることができる。
【００６５】
ヒルクライミングタームとはネットワークの状態が局所解に陥った場合、そこから抜け出すために、ニューロンの値を操作するものである。例えば、組合せ最適化問題を解く場合に、「縦の並びに“１”が１つだけ」という制約条件があったとする。ニューロンの状態遷移の過程で、もし縦の並びがすべて“０”になった際に、その列のある１つのニューロンの出力を強制的に“１”にすることで局所解から脱出し、最適解を求めるきっかけをつくることができるのである。この操作は、最適解を求めるためには有効的な手法ではあるが、ニューラルネットワークの世界でしか適用がなく、物理学に裏付けのない恣意的な操作である。
【００６６】
［１．３  スピングラス理論］
ここではホップフィールドネットワークにエネルギー関数を導入する起源となったスピングラス理論について述べる。スピングラスとは、強磁性体と反強磁性体がランダムに並んでいる磁性体のことである（高山一，“スピングラス”，丸善，１９９１）。磁性体を構成する磁性原子は最小の単位磁石として振る舞い、これがスピンと呼ばれるものにあたる。以下では、スピンを模式的に上向きと下向きの矢印として扱い、その２つの状態しか存在しないものと仮定する。
【００６７】
強磁性体とは、隣接するスピン間で互いの向きを平行に揃えようとする強磁性相互作用が働いている磁性体であり、強磁性相互作用を直線（−）で表すと、図７（ａ）に示すように、スピンの向きがすべて同一方向を向いている状態として表すことができる。これに対して、反強磁性体とは、隣接するスピン間の向きを反平行に揃えようとする反強磁性相互作用が働いている磁性体であり、反強磁性相互作用を波線（〜）で表すと、図７（ｂ）に示すように、スピンの向きが上下交互に並んでいる状態として表すことができる。定性的にはこのような説明ができるため、強磁性体は強い磁性を帯びることになるが、反強磁性体は磁性を帯びることはない。
【００６８】
一般のスピングラスモデルでは、どちらか一方の相互作用のみが働いている状態で存在していることは稀である。したがって、はじめに述べたように、強磁性体と反強磁性体がランダムに並んだものとなる。そのため、図８の×印で示したところのように、相互作用を満たすことのできないスピン配列が存在するようになる。このように相互作用を満たすことのできないスピン配列をフラストレーション（相互作用の競合）と呼び、フラストレーションの少ないスピン配列ほどエネルギーの小さい安定状態が得られる。
【００６９】
［１．４  仮想磁場漸弱法］
前述のように、ホップフィールドネットワークには一度エネルギーの谷に陥るとそこから抜け出せず、局所解（近似解）が求まるという問題点があった。この対策として、ボルツマンマシンやヒルクライミングタームが提案されていることは先に述べたが、近年、これに加えて新しく仮想磁場漸弱法が提案された。
【００７０】
仮想磁場漸弱法の動作原理を説明するにあたって、以下のような思考実験を考える。まず、図８のようなフラストレーションの少ない安定したスピンモデルに外部から強い磁場を加えてみよう。スピングラス理論によると、このような場合、スピンは外部磁場の向きに従うように方向を変化させるであろう。この状態から、磁場の大きさを少しずつ弱めていくと、スピン間の相互作用の強いところから順に各スピンの向きが変化し、最終的にハミルトニアンが小さく安定した状態に向かう（図９参照）。
【００７１】
さて、この思考実験をもとに考えられたものが、仮想磁場漸弱法である。ホップフィールドネットワークに強い仮想的な“磁場”を外部から加えると、スピンに対応するニューロンの状態が発火または静止になる。この状態から次第に仮想磁場の影響を弱めていくと各ニューロンの自由度が高まり、仮想的な磁場が消失した段階で通常のホップフィールドネットワークと等価となって、解が求められるというものである。表１で示したようにスピングラス理論の磁場はホップフィールドネットワークの閾値に対応するので、仮想磁場を変化させることは閾値を操作することと等価である。なお、原理としては、従来の擬似焼きなまし法に似ている点もあるが、温度パラメータではなく、磁場パラメータを操作する点が決定的にことなっている。具体的には、仮想磁場漸弱法がニューロンの閾値関数ｆ（ｘ）を左右に動かす手法であるのに対して、擬似焼きなまし法が閾値関数ｆ（ｘ）の傾きを変化させるという点で異なる。
【００７２】
［２．仮想磁場漸弱法による最適解探索］
本章では、前章で紹介した仮想磁場漸弱法の有効性について検討するため、クロスバ・スイッチ問題と呼ばれる組合せ最適化問題の中では特に制約条件の少ないものを取り上げて、計算機シミュレーションを行う。
【００７３】
［２．１  クロスバ・スイッチ問題とそのエネルギー関数の導出］
クロスバ・スイッチ問題とは、組合せ最適化問題の中でも特に条件の少ないと言われている問題で、「ｎ×ｎのマスの中にｎ個の要素を縦あるいは横方向へ重ならないように配置する」というものである。もともとは、ｎ人の発信者とｎ人の受信者の間を結ぶ、有線通信路における交換機を設定するものであった。この問題は組合せ最適化問題を解く上で基礎となる問題であり、スケジューリングなどに応用できる応用性のある問題でもある。
【００７４】
このクロスバ・スイッチ問題をホップフィールドネットワークに適した表現にすると、図１０に示すようにｎ×ｎの行列状にニューロンを配置すればよい。このとき、最適解を求めるための制約条件は以下の２つである。
・条件１：それぞれの行（横の並び）には、“１”が１つだけ存在し、残りはすべて“０”とする。
・条件２：それぞれの列（縦の並び）には、“１”が１つだけ存在し、残りはすべて“０”とする。
【００７５】
時刻ｔにおける（ｘ，ｙ）のニューロンの出力をＶxy（ｔ）とおき、上述の２つの条件を満たした時にネットワークのエネルギーの値が０となるように、エネルギー関数Ｅ（ｔ）を作ればよい。
まず、条件１であるが、これに関わるエネルギー関数をＥ1（ｔ）とおくと、横方向のニューロンの出力の総和が１であればよいので、
【００７６】
【数１１】
2008269593.tif 000014
となる。また、同様にして、条件２に関わるエネルギー関数をＥ2（ｔ）とおくと、縦方向のニューロンの出力の総和が１であればよいので、
【００７７】
【数１２】
2008269593.tif 000015
と表すことができる。
ここでＡ，Ｂを定数とすると、クロスバ・スイッチ問題のエネルギー関数Ｅ（ｔ）は、
【００７８】
【数１３】
2008269593.tif 000016
である。ニューロンの結合荷重と閾値を求めるためにはこの式を展開して整理すればよい。
式（３．１）より、
【００７９】
【数１４】
2008269593.tif 000017
ここで、クロネッカーのデルタ
【００８０】
【数１５】
2008269593.tif 000018
を用いると、
【００８１】
【数１６】
2008269593.tif 000019
となるので、これを式（３．４）に代入して、
【００８２】
【数１７】
2008269593.tif 000020
となる。右辺第２項は式（３．５）よりａ＝ｘのときδxa＝１となるので、
【００８３】
【数１８】
2008269593.tif 000021
よって、
【００８４】
【数１９】
2008269593.tif 000022
である。ところで、ここでニューロンの出力は“０”または“１”の２値であるため、
【００８５】
【数２０】
2008269593.tif 000023
としても構わない。したがって、式（３．７）は、
【００８６】
【数２１】
2008269593.tif 000024
と整理することができる。
式（３．２）についても、同様に変形すると、次のとおりである。
【００８７】
【数２２】
2008269593.tif 000025
ここで、式（３．１１）と式（３．１２）を式（３．３）に代入して整理し、クロスバ・スイッチ問題におけるエネルギー関数を求めると、
【００８８】
【数２３】
2008269593.tif 000026
となる。また、これをスピングラス理論におけるエネルギー関数の式（２．５）と比較すると、ニューロン（ａ，ｂ）からニューロン（ｘ，ｙ）への結合荷重をｗxy,abとし、ニューロン（ｘ，ｙ）の閾値をθxyとして、
【００８９】
【数２４】
2008269593.tif 000027
より
【００９０】
【数２５】
2008269593.tif 000028
【００９１】
【数２６】
2008269593.tif 000029
と求められる。
【００９２】
なお、式（３．１３）の第３項目は、最適解が求められた時のエネルギーの値を０にするためのバイアス項であり、エネルギーの状態遷移には影響しない。
前述したように、仮想磁場漸弱法はスピングラス理論の磁場と等価である閾値を操作するものであるので、仮想磁場漸弱法を導入した場合のエネルギー関数は、磁場パラメータをθeとすると、
【００９３】
【数２７】
2008269593.tif 000030
【００９４】
【数２８】
2008269593.tif 000031
に従って状態遷移を行えばよい。このときのエネルギー関数は
【００９５】
【数２９】
2008269593.tif 000032
と表される。
【００９６】
図１１は本実施形態に係る仮想磁場漸弱法を用いたホップフィールドネットワークのブロック構成図である。
本実施形態に係る仮想磁場漸弱法を用いたホップフィールドネットワークは、ホップフィールドネットワークを構成するニューロンの中から一のニューロンを選択するニューロン選択手段１と、このニューロン選択手段１で選択されたニューロン以外の他のニューロンから選択されたニューロンへの入力を取得する入力取得手段２と、時刻ｔに応じて磁場パラメータを求める磁場パラメータ付与手段３と、前記入力取得手段２により取得した他のニューロンから選択されたニューロンへの入力及び磁場パラメータ付与手段３で求めた磁場パラメータに基づいてニューロンの出力を求める出力ニューロン算出手段４と、ニューロンの状態を記録するニューロン状態記憶手段５とを備える。
【００９７】
前記磁場パラメータ付与手段３は、磁場パラメータの初期値が負であり、時刻の経過に伴って漸次大きくなって磁場パラメータが０となり、少なくとも１回は磁場パラメータが正の値となって再び０となるように磁場パラメータを求める機能を有する。例えば、式（３．２１）により磁場パラメータを求める。なお、離散値となる繰り返し回数に応じた磁場パラメータの集合をメモリ上に予め用意し、繰り返し回数に応じて対応する磁場パラメータを出力する構成であってもよく、必ずしも式を用いる必要もない。また、式も磁場パラメータの初期値、繰り返し回数を与えると、２次元座標系でいうと２点の座標点（繰り返し回数＝０、磁場パラメータ＝初期値）、（繰り返し回数、磁場パラメータ＝０）を与えることと同義となり、この座標点から自動的に式を生成し、生成した式を磁場パラメータ付与手段３が取り込み、ニューロン選択手段１、入力取得手段２、磁場パラメータ付与手段３及び出力ニューロン算出手段４を順次繰り返し回数だけ繰り返し実行し、最終的なニューロンの状態を利用者に出力する構成とすることもできる。そうすることで、利用者は磁場パラメータの初期値及び繰り返し回数を与えることで、自動的に最終的なニューロンの状態を得ることができ、適切な磁場パラメータの初期値及び繰り返し回数が与えられなくて問題を解くことができなかった場合であっても再度磁場パラメータの初期値及び繰り返し回数を与え、トライアンドエラーを繰り返して最終的に適切な磁場パラメータの初期値及び繰り返し回数を設定することができる。
【００９８】
前記出力ニューロン算出手段４は、式（３．１７）に他のニューロンから選択されたニューロンへの入力及び磁場パラメータを代入してニューロンの出力を求める機能を有する。
ニューロン状態記憶手段５は、出力ニューロン算出手段４により求まったニューロンの出力を一時的に記憶し、全てのニューロンについてニューロンの出力が求まった時点で次の時刻のニューロンの出力に更新する機能を有する。
【００９９】
図１２は本実施形態に係る仮想磁場漸弱法を用いたホップフィールドネットワークを構築したコンピュータのハードウェア構成図の一例である。一般的なコンピュータに仮想磁場漸弱法を用いたホップフィールドネットワークを構築することができる。この一般的なコンピュータは、例えば、ＣＰＵ１０１、メインメモリ１０２、ＭＢチップセット１０３、ビデオカード１０４、ＨＤＤ１１１、ブリッジ回路１１２、ネットワークインタフェース１１３、光学ドライブ１２１、キーボード１２２及びマウス１２３を含む。
【０１００】
図１３は本実施形態に係る仮想磁場漸弱法を用いたホップフィールドネットワークの動作フローチャートである。
【０１０１】
ニューロン選択手段１が選択されていないニューロンの中から任意のニューロンを選択する（ステップＳ１００）。入力取得手段２が、ニューロン選択手段１に選択されたニューロンへの入力を取得する（ステップＳ１０５）。磁場パラメータ付与手段３が、現在の繰り返し回数に応じた磁場パラメータを求める（ステップＳ１１０）。出力ニューロン算出手段４が入力取得手段２により取得された選択されたニューロンへの入力及び磁場パラメータ付与手段３により付与された磁場パラメータをニューロンの算出式に代入して現在選択されているニューロンの出力を求める（ステップＳ１１５）。ニューロン状態記憶手段５が出力ニューロン算出手段４が算出した選択されているニューロンの出力を一時的に記憶する（ステップＳ１２０）。ニューロン選択手段１が全てのニューロンを選択したか否かを判断し（ステップＳ１２５）、全てのニューロンを選択していない場合にはステップＳ１００に戻り、全てのニューロンを選択している場合にはニューロン状態記憶手段５が一時記憶していた出力ニューロン算出手段４により算出されたニューロンの出力で現在のニューロンの状態を更新する（ステップＳ１３０）。現在の繰り返し回数が予め設定された所定回数を超えているか否かを判断し（ステップＳ１３５）、超えていないと判断した場合には繰り返し回数を１インクリメントしてステップＳ１００に戻る。超えていると判断した場合には終了する。なお、繰り返し回数は利用者が与えるのではなく、ニューロンの状態が所定回数繰り返し実行しても変化しない場合に、繰り返し実行を停止する構成であってもよい。
次章以降においても、この図１１ないし図１３を用いた説明は同様であるため省略する。
【０１０２】
［２．２  計算機シミュレーション］
前節で求めた状態遷移式とエネルギー関数を用いて計算機シミュレーションを行う。まず、定数Ａ＝Ｂ＝１０００とおき、繰り返し回数が１００００[回]となるまで、式（３．１７）に従ってニューロンの出力を更新する。なお、文献（Hiroshi  Wakuya："A  new  search  method  for  combinatorial  optimization  problem  inspired  from  the  spin  glass  system"Abstracts  of  the  2nd  International  Conference  on  Brain-inspired  Information  Technology(BrainIT2005)）において、磁場パラメータの与え方以外については開示されている。そこで、磁場パラメータの与え方について説示する。
【０１０３】
[２．２．１  仮想磁場制御実験（１）〜一定の割合で変化させたとき〜]
また、繰り返し回数ｔ＝１００００となるまで、以下の式に従ってニューロンの出力を更新する。
【０１０４】
【数３０】
2008269593.tif 000033
【０１０５】
これは、ｔ＝０のときθe（０）＝−５００とおき、ｔ＝５０００のときθe（５０００）＝０となるようにするものである。また、ここでは乱数で決定した１０００通りの異なる初期状態を用意し、領域数ｎを増減させたときの、仮想磁場漸弱法の導入前後の正答率を比較した。参考までに、とりうる組合せの総数と正解数およびその比率を表２に示す。ここで、とりうる組合せの総数は２n×n通り（ｎ×ｎのマス目の上には、それぞれ“０”または“１”のどちらかが入るため、２の（ｎ×ｎ）乗通りの組合せが考えられる。）、正解の個数はｎ！通り（１行目のマスに“１”を１つだけ配置するのはｎ通り、それと同じ列に“１”が入らないように２行目のマスに“１”を１つだけ配置するのは（ｎ−１）通り、・・・というように考えていくとｎ！通りの組合せが考えられる。）である。これによると、一般にｎの増加とともに比率が減少し、正解を求めるのが困難になっていくことがわかる。なお、ここでは、式（３．２０）で磁気パラメータを与えたが、初期値が負であり、繰り返し回数の増加に応じて大きくなり、最終的に０になる式であれば他の式であってもよい。
【０１０６】
【表２】
2008269593.tif 000034
【０１０７】
次に計算機シミュレーションの結果を図１４に示す。この図からもわかるように、従来のホップフィールドネットワークでは、領域数ｎが増加するにつれて正答率が下がっていくが、仮想磁場漸弱法を導入することによって、正答率が１００［％］となることが確認できる。表２から、両手法とも正答率はｎの増加とともに次第に低下していくと思われるが、さらに領域数ｎを増加させてｎ＝８０まで調べたところ、従来法では正答率が１５［％］程度に低下してほぼ一定となったのに対し、提案法では正答率が１００［％］を維持するという良好な結果を得た。
【０１０８】
[２．２．２  仮想磁場制御実験（２）〜初期値の依存性について〜]
ここでは、ｔ＝５０００の時に磁場パラメータが０となるように固定したまま、ｔ＝０における初期値θe（０）を変化させて、その影響について調べてみた。具体的には、式（３．２１）に従って磁場パラメータを制御したときの正答率について上と同様に１０００通りの異なる初期状態を用意して検討した。
【０１０９】
【数３１】
2008269593.tif 000035
【０１１０】
これは、図１５に示すように磁場パラメータを変えていくものである。また、磁場パラメータの大きさによってネットワークへ及ぼす影響力が変化するため、どの程度の“外力”で効果が現れるのかを調べた。領域数ｎにより影響力の大きさも異なると予想されるため、ここではｎ＝５，１０，３０について調べた。そのときの結果を図１６に示す。
【０１１１】
このとき、図１６（ａ）によれば、磁場パラメータの初期値は広い範囲で正答率を改善させる効果が認められる。ここで、θe（０）≧−１００００とし、さらに磁場パラメータの影響力を強めた場合についても調べたところ、正答率は１００［％］となった。ただし、強力な仮想磁場を加えるということは、式（３．２１）より閾値を極めて低く設定するということであり、初期の段階で全ニューロンが発火して“１”となってしまうことを意味する。すなわち、当初有していた多様な初期状態を排して、同一状態から開始するのと等価であり、１通りの解しか導くことができなくなる。したがって、正答率は１００［％］か０［％］だけの２種類となる。また、図１６（ｂ）からは、θe（０）＝−０．００５という非常に小さい値でも効果を発揮することが確認できたが、θe（０）＝−０．００４では磁場パラメータの効果が消失し、従来法と同様の正答率となった。このように、磁場パラメータの効果の有無を隔てる範囲が小さいため、徐々に変化していく。
【０１１２】
以上のことから、クロスバ・スイッチ問題においては、正答率は磁場パラメータの変化率には依存せず、そして、領域数ｎにかかわらず磁場パラメータの初期値がθe（０）≦−０．００５であればよいことが判明した。
【０１１３】
［２．２．３  仮想磁場制御実験（３）〜ニューロンの状態遷移について〜］
ここでは、各ニューロンの出力がどのように変化して正解に辿り着いているのかについて、上述のθe（０）＝−５００の場合を取り上げて調べてみた。図１７にｎ＝５のときのニューロンの状態遷移の一例を示すが、これによると、ｔ＝１でニューロンの出力が変化した以降は、仮想磁場が消失する直前のｔ＝４９９９まで変化がない。そして、ｔ＝５０００以降にいくつかのニューロンの出力が変化して、正解に辿り着いていることがわかる。このように、仮想磁場が０になった時点よりも後にニューロンの出力変化が認められる原因を追究するため、このときのθeの詳細な値について調べた。その結果、表３に示すように微小な値ではあるが、ｔ＝５０００以降に磁場パラメータの値が正値となって残っていることが判明した。これは、式（３．２０）の計算を１０進数で行うと、ちょうど割り切れてｔ＝５０００の時に磁場パラメータθeが０となるが、コンピュータが２進数に基づいた演算を行っていることを考慮すると、実際には割り切れず、計算過程でわずかな誤差が累積されていき、最終的に磁場パラメータが正値になってしまった。そこで、このような状況にはならないようにｔ＝５０００の時に強制的にθe＝０として、厳密な意味で式（３．２０）を満足するようにして再び計算機シミュレーションを行ったところ、正答率は従来法と同様になり、仮想磁場漸弱法の効果が消失してしまうことが明らかになった。
【０１１４】
【表３】
2008269593.tif 000036
【０１１５】
本章では、クロスバ・スイッチ問題という制約条件の少ない組合せ最適化問題において、仮想磁場漸弱法の有効性を確認することに主眼を置いて計算機シミュレーションを行った。ところで、この手法は仮想磁場を最初に負値として与えて徐々に増加させ、最終的には正値となるようにすることで、その効果を発揮していることが判明した。またこのとき、磁場パラメータの初期値は広い範囲で正答率を改善させる効果が認められたため、θe（０）の設定には、かなりの自由度がある。しかし、これはクロスバ・スイッチ問題の制約条件が少ないためとも考えられるので、次章では制約条件の多い組合せ最適化問題を取り上げ、磁場パラメータの効果的な与え方について、計算機シミュレーションを通して説示する。
【０１１６】
本章では、クロスバ・スイッチ問題に仮想磁場漸弱法を適用した計算機シミュレーションを行った結果、正答率の著しい改善が認められた。その結果、仮想磁場漸弱法の有効性を確認することができた。なお、磁場パラメータを最終的に負値から一度正値とすることで、この効果が現れる。その詳細については次章で説示する。
【０１１７】
［３．仮想磁場漸弱法における磁場パラメータの有効な決定法］
［３．１  エネルギー関数の導出］
前章では、クロスバ・スイッチ問題という制約条件の少ない組合せ最適化問題を取り上げ、これに仮想磁場漸弱法を導入した結果、磁場パラメータの初期値設定に関する自由度は大きく、負値から始めて最終的には符号が反転して正値になればよいことを確認した。そこで、同様のことが制約条件の増えた場合でも成立するかについて、ｎクィーン問題やナンバー・プレイス問題などの組合せ最適化問題を取り上げ、計算機シミュレーションを通して詳細に検討する。
まずここでは、［２．２  計算機シミュレーション］と同じように、上述の問題のエネルギー関数を求めてみることにする。そして、それぞれの問題を解くためのホップフィールドネットワークの構造を決定する。
【０１１８】
［３．１．１  ｎクィーン問題の制約条件によるエネルギー関数の導出］
ｎクィーン問題とは、ｎ×ｎの升目上に、チェスのコマであるクィーンｎ個を互いに効きが当たらないように配置する問題である。チェスのクィーンのコマは縦・横・斜め方向に何マスでも進めることができるので、ｎクィーン問題をホップフィールドネットワークに適した表現にすると、ｎ×ｎの行列状にニューロンを配置し、クィーンを置く場所を“１”、それ以外を“０”とすればよい。このとき最適解を求めるための制約条件は以下の４つである。
・条件１：行列のそれぞれの行（横の並び）には、“１”が１つだけ存在し、残りはすべて０とする。
・条件２：行列のそれぞれの列（縦の並び）には、“１”が１つだけ存在し、残りはすべて０とする。
・条件３：行列のそれぞれの左上・右下の斜め方向には、“１”が１つだけで残りは“０”、あるいはすべて“０”とする。
・条件４：行列のそれぞれの左下・右上の斜め方向には、“１”が１つだけで残りは“０”、あるいはすべて“０”とする。
【０１１９】
時刻ｔにおける（ｘ，ｙ）のニューロンの出力をＶxy（ｔ）とおき、上述の４つの条件をすべて満たした時にネットワークのエネルギーの値が０となるように、エネルギー関数Ｅ[nq]（ｔ）を作ればよい。まず条件１であるが、これに関わるエネルギー関数をＥ1[nq]（ｔ）とおくと、横方向のニューロン出力の総和が１であればよいので、
【０１２０】
【数３２】
2008269593.tif 000037
となる。同様にして、条件２に関わるエネルギー関数をＥ2[nq]とおくと、縦方向のニューロンの出力の総和が１であればよいので、
【０１２１】
【数３３】
2008269593.tif 000038
と表すことができる。ここまでは、２．２のクロスバ・スイッチ問題で言及した式（３．１）、（３．２）と同じであるが、ここではさらに条件３や条件４として、これに関わるエネルギー関数をＥ3[nq]（ｔ）あるいはＥ4[nq]（ｔ）とおくと、所定の方向に並んだ任意の２つのニューロン出力の積が０であればよいので、
【０１２２】
【数３４】
2008269593.tif 000039
【０１２３】
【数３５】
2008269593.tif 000040
と表される。なお、クロネッカーのデルタに着目すれば、式（４．３）よりｘ−ａ＝ｙ−ｂのときに値を持ち、これはｘとｙの増分に応じてａとｂも増大する必要があり、左上・右下の斜め方向を指すことになる。同様に式（４．４）よりｘ＋ｙ＝ａ＋ｂのときに値を持ち、これはｘやａの増分（減分）に応じてｙやｂが減少（増大）する必要があり、左下・右上の斜め方向を指すことになる。
【０１２４】
前章でクロスバ・スイッチ問題のエネルギー関数を導出したようにして、ｎクィーン問題のエネルギー関数Ｅ[nq]（ｔ）を求めると、Ａ、Ｂ、Ｃ、Ｄを定数として、
【０１２５】
【数３６】
2008269593.tif 000041
となる。ただし、右辺第１項の（−２Ｃδx-a,y-b−２Ｄδx+y,a+b）という部分は、ａ≠ｘかつｂ≠ｙという条件のもとでのみ機能する。これを式（２．６）に示すハミルトニアンと比較すれば、結合荷重ｗxy,abと閾値θxyの値が求められる。
【０１２６】
そして、磁場パラメータとしてθeを導入すると、ｎクィーン問題を解くホップフィールドネットワークは、
【０１２７】
【数３７】
2008269593.tif 000042
【０１２８】
【数３８】
2008269593.tif 000043
に従って、状態遷移を行えばよい。このときのエネルギー関数は、
【０１２９】
【数３９】
2008269593.tif 000044
と表される。
【０１３０】
［３．１．２  ナンバー・プレイス問題の制約条件によるエネルギー関数の導出］
ナンバー・プレイス問題とは、別名「数独」と呼ばれる「９×９の升目上に、縦・横各列と３×３の９個の正方形エリアに１から９の数字を重複しないように１つずつあてはめる」という問題のことである。広義には、「ｎ×ｎの升目上に１からｎまでの数字を縦・横重複しないように配置する」という場合にも用いられる。以下では、後者の意味として、この問題を扱うものとする。
【０１３１】
このナンバー・プレイス問題をホップフィールドネットワークに適した表現にすると、図１８に示すようにｎ×ｎ×ｎの３次元状にニューロンを配置すればよい（武藤佳恭，“ニューラルコンピューティング”，コロナ社，１９９６）。ここで、ｘ方向とｙ方向は従来の横方向と縦方向に対応するが、ｚ方向（高さ方向）として、マス目に配置する数字に対応する情報を新たに用意する。例えば、（ｘ，ｙ）＝（２，５）に“３”とおくのであればｚ＝３の（２，５）要素を“１”とする。このとき、最適解を求めるための制約条件は以下の３つである。
・条件１：それぞれの行（横の並び）には、“１”が１つだけ存在し、残りはすべて“０”とする。
・条件２：それぞれの列（縦の並び）には、“１”が１つだけ存在し、残りはすべて“０”とする。
・条件３：それぞれの高さ方向には、“１”が１つだけで残りはすべて“０”とする。
【０１３２】
時刻ｔにおける（ｘ、ｙ、ｚ）のニューロンの出力をＶxyz（ｔ）とおき、上述の３つの条件をすべて満たした時、エネルギーの値が０となるように、エネルギー関数Ｅ[np]（ｔ）を作る。まず、条件１について、これに関わるエネルギー関数をＥ1[np]（ｔ）とおくと、横方向のニューロン出力の総和が１であればよいので、
【０１３３】
【数４０】
2008269593.tif 000045
となる。また、同様にして、条件２関わるエネルギー関数をＥ2[np]（ｔ）とおくと、縦方向のニューロン出力の総和が１であればよいので、
【０１３４】
【数４１】
2008269593.tif 000046
条件３に関わるエネルギー関数をＥ2[np]（ｔ）とおくと、高さ方向のニューロン出力の総和が１であればよいので、
【０１３５】
【数４２】
2008269593.tif 000047
と表すことができる。ここで、Ａ、Ｂ、Ｃを定数とすると、ナンバー・プレイス問題のエネルギー関数Ｅ[np]（ｔ）は、
【０１３６】
【数４３】
2008269593.tif 000048
となる。これを式（２．６）に示すハミルトニアンと比較すれば、結合荷重ｗxyz,abcと閾値θxyzの値が求められる。
【０１３７】
そして、磁場パラメータとしてθe（ｔ）を導入すると、ナンバー・プレイス問題を解くホップフィールドネットワークは、
【０１３８】
【数４４】
2008269593.tif 000049
【０１３９】
【数４５】
2008269593.tif 000050
に従って状態遷移を行えばよい。このときのエネルギー関数は
【０１４０】
【数４６】
2008269593.tif 000051
と表される。
【０１４１】
［３．２  計算機シミュレーション］
［３．２．１  実験方法］
前章で行ったクロスバ・スイッチ問題における計算機シミュレーションより、繰り返し回数は１００００回より少なくても同様の結果を得られることが確認できた。そこで、ここでは計算時間を短縮するという目的から繰り返し回数ｔを３０回としてニューロンの出力を更新する。このとき、乱数で決定した１０００通りの初期値を用意して、領域数ｎを増加させたときの正答率を調べる。また、磁場パラメータの与え方による正答率の変化について検討するため、初期値θe（０）＜０を変化させ、以下の３通りとしたときの結果を比較する。
【０１４２】
【数４７】
2008269593.tif 000052
【０１４３】
【数４８】
2008269593.tif 000053
【０１４４】
【数４９】
2008269593.tif 000054
また、この（ａ）、（ｂ）、（ｃ）の磁場パラメータの変化を図示したものが図１９である。
【０１４５】
［３．２．２  実験結果（１）〜ｎクィーン問題のとき〜］
ここでは、ｎクィーン問題を取り上げるに当たり、斜め方向に関する制約条件を縦・横方向に関する制約条件よりも重視するため、定数Ａ＝Ｂ＝１０００、Ｃ＝Ｄ＝２０００とおき、また上述の実験方法で磁場パラメータの初期値をθe（０）＝−１として、計算機シミュレーションを行った。そのときの結果を図２０に示す。この結果から、領域数ｎ≦６の範囲では、（ｂ）のような磁場パラメータの与え方が最も有効であるといえる。領域数ｎが大きくなった場合は、（ｃ）のような磁場の与え方をした場合の方が全体的にみて正答率がよく、さらに（ｃ）の場合は領域数ｎが大きくなっても最適解が求められている。また、（ａ）の磁場の与え方の正答率は、従来のホップフィールドネットワークと同様の結果となるため、仮想磁場漸弱法の有効性が消失してしまった。したがって、磁場パラメータは負値から始めて正方向に変化させることが重要であるといえる。
【０１４６】
次に、磁場パラメータの初期値を変化させて、ネットワークへの影響を調べた結果、−１×１０3≦θe（０）≦−１×１０-4の範囲では同様の正答率となった。このことから、ｎクィーン問題においても、磁場パラメータの初期値は広い範囲で正答率を改善させる効果のあることが認められた。換言すると、前章のクロスバ・スイッチ問題と同様に、θe（０）を設定する際は大きな自由度のあることが判明した。
【０１４７】
［３．２．３  実験結果（２）〜ナンバー・プレイス問題のとき〜］
ここでは、ナンバー・プレイス問題を取り上げるに当たり、３つの制約条件を同等に扱うため、定数Ａ＝Ｂ＝Ｃ＝１０００とおき、また上述の磁場パラメータの初期値をθe（０）＝−１として、計算機シミュレーションを行った。このときの正答率は、従来のホップフィールドネットワークのときと同じで、変化が認められなかった。これは、磁場パラメータの初期値が小さく、ネットワークに及ぼす影響が小さかったためと考えられる。そこで、磁場パラメータの初期値を正答率に変化がみられるまで増加させていったところ、例えば、図２１と図２２に示すような結果が得られた。これらは、磁場パラメータの初期値をθe（０）＝−１００００、−１５０００とした場合で、両者とも（ｃ）のような磁場パラメータの与え方をした場合に成績がよい。これは、領域数ｎ＝８においても最適解が求められていること、また正答率が全体的に（ａ）、（ｂ）よりもよくなっているという２つの事実から明らかである。したがって、ナンバー・プレイス問題においても、やはり（ｃ）のような磁場パラメータの与え方が効果的であるといえるだろう。
【０１４８】
ところで、今回の計算機シミュレーションは、これまでの２つの組合せ最適化問題とは異なり、磁場パラメータの与え方を極端に強くしなければ効果を発揮することができなかった。これは、ナンバー・プレイス問題をニューラルネットワークで表現する際に、図１８に示す通り３次元配列としたため、２次元配列で表現した場合よりも、磁場パラメータのネットワークに及ぼす影響力が弱くなってしまうためだと考えられる。そこで、領域数ｎ＝５の場合を例にとり、図２３に磁場パラメータの初期値による正答率の変化を示す。このグラフからわかるように、磁場パラメータの値は小さすぎても効果はないが、反対に大きすぎると（ｃ）のように正答率が０［％］となってしまう場合がある。前説したが、当初、多様性を示していたネットワークの初期状態にかかわらず、与える磁場パラメータの影響が強すぎると同一状態にそろってしまい、すべて同じ状態遷移をするためである。
【０１４９】
［３．３  考察］
本実施形態では、計算機シミュレーションを通して検討した結果、仮想磁場漸弱法で用いる磁場パラメータは、負値から正値に変化させて与えることにより、その有効性が発揮できることを説示した。
また、今回は３通りの磁場パラメータの与え方を取り上げて検討を行った。
【０１５０】
［４．結論］
本実施形態では、仮想磁場漸弱法において負の方向から０に向かって磁場パラメータを与えるという従来の発想を発展させ、負の方向から正の方向へ反転させて与えることで、著しい性能改善が達成できることを示した。また、３つの組合せ最適化問題を取り上げて、実際に組合せ最適解の探索を行うことにより、その有効性を説示した。
【０１５１】
[５．動作メカニズム]
以下に、上記結論を導いた理由付けとして、仮想磁場漸弱法で用いる磁場パラメータによる動作の影響に着目し、解析的な手法を用いた検討を行った結果を示す。また、磁場パラメータを操作した際のエネルギー関数への影響についても、幾何学的な観点から検討した結果を示す。
【０１５２】
[５．１  計算機シミュレーション]
ここでは、いくつかの組み合わせ最適化問題に対して、仮想磁場漸弱法を導入したホップフィールドネットワークを用いて、計算機シミュレーションによる解探索を行う。ニューロン出力の繰り返し計算回数は１００回で、仮想磁場パラメータθは、図２４に示すように、負値から正値に変化させ、その後、零に戻るような設定とする。この時のθe（ｔ）を以下の式で定義する。
【０１５３】
【数５０】
2008269593.tif 000055
【０１５４】
また、ここでは乱数で決定した１００通りの異なる初期状態を用意して領域数ｎを増減させたとき、仮想磁場漸弱法の導入前後で正答率がどのように変化するかを比較した。具体的には、クロスバ・スイッチ問題とｎクイーン問題を取り上げ、シミュレーションした結果を図２５に示す。上記にも示したが、クロスバ・スイッチ問題において２つの条件の重み付け係数をそれぞれＡ、Ｂとすると、エネルギー関数は以下のようになる。
【０１５５】
【数５１】
2008269593.tif 000056
【０１５６】
【数５２】
2008269593.tif 000057
【０１５７】
【数５３】
2008269593.tif 000058
また、ｎクイーン問題において４つの条件の重み付け係数をそれぞれＡ、Ｂ、Ｃ、Ｄとすると、エネルギー関数は以下のようになる。
【０１５８】
【数５４】
2008269593.tif 000059
【０１５９】
【数５５】
2008269593.tif 000060
【０１６０】
【数５６】
2008269593.tif 000061
【０１６１】
ここで、Ａ＝Ｂ＝１００、Ｃ＝Ｄ＝２００とした場合のそれぞれの問題をシミュレーションした。図２５（ａ）はクロスバ・スイッチ問題の場合の結果であり、図２５（ｂ）はｎクイーン問題の場合の結果である。図２５（ａ）、（ｂ）において、「導入前」とは仮想磁場漸弱法を導入していないホップフィールドネットワークによるシミュレーション結果であり、「導入後」とは仮想磁場漸弱法を導入したホップフィールドネットワークによるシミュレーション結果である。図２５からわかる通り、どちらも従来（導入前）のホップフィールドネットワークでは、領域数ｎが増加するにつれて全体的に正答率は下がっていくが、仮想磁場漸弱法を導入することで正答率が改善されている。
【０１６２】
[５．２  解析的手法による動作メカニズムの検討]
[５．２．１  クロスバ・スイッチ問題]
ここでは、磁場パラメータによる動作の影響について解析的な手法を用いて検討する。簡単のため、領域数ｎは３とし、（ｘ，ｙ）＝（１，２）にのみ着目しているが、基本的に他の場合でも同様である。Ａ＝Ｂ＝１００、ｎ＝３、ｘ＝１、ｙ＝２なので、式（６．３）、（６，４）より、
【０１６３】
【数５７】
2008269593.tif 000062
【０１６４】
【数５８】
2008269593.tif 000063
となる。ただし、式（６．８）の右辺にはクロネッカーのデルタを含むため、
【０１６５】
【数５９】
2008269593.tif 000064
である。一般に自己結合もないため
【０１６６】
【数６０】
2008269593.tif 000065
となる。したがって、他のニューロンからの抑制性結合が実質的に働くのは、図２６で■とした、「ａ＝１∧ｂ≠２」または「ａ≠１∧ｂ＝２」の部分である。そこで、これらをまとめると
【０１６７】
【数６１】
2008269593.tif 000066
となる。ここでは仮想磁場パラメータの存在により、その値次第でニューロン（１，２）の発火と静止が決定される。したがって、ここでは発火に要する仮想磁場パラメータの大きさという観点からの検討を行う。このとき、ニューロンの出力は式（２．３）より、
【０１６８】
【数６２】
2008269593.tif 000067
【０１６９】
に従って更新されることになる。ただし、本実施系形態においては非同期式でニューロンの状態遷移を行うため、具体的には図２７に示すタイミングで上に示した繰り返し計算を行う。すなわち、各時刻ｔをニューロンの個数ｎで等分し、便宜上、左上から右下に向かってニューロン１つずつに式（６．１３）を適用していく。そして、右下まで１通り実行されると、時刻が１つ増加して、また左上から順番に式（６．１３）を実行する。なお仮想磁場パラメータは、式（６．１）に示すとおり、時刻ｔの関数となっているので、繰り返し計算が１巡するまで同一の値を保持すると定める。
発火ニューロンがない場合、式（６．１３）より
【０１７０】
【数６３】
2008269593.tif 000068
【０１７１】
となる。ここで、「１」を出力するためには、関数ｆの中身（２００−θe）が０以上となれば良い。つまり、所定の領域に発火ニューロンがない場合に「１」を出力する条件はθe≦２００で、θe＞２００のときは「０」を出力する。すなわち、このときの仮想磁場パラメータの臨界値θecは２００である。
発火ニューロンが１個の場合、式（６．１３）より
【０１７２】
【数６４】
2008269593.tif 000069
となる。ここで、「１」を出力するためには、関数ｆの中身（０−θe）が０以上となれば良い。つまり、所定の領域に発火ニューロンが１個の場合に「１」を出力する条件はθe≦０で、このときの仮想磁場パラメータの臨界値θecは０である。
発火ニューロンが２個の場合、式（６．１３）より
【０１７３】
【数６５】
2008269593.tif 000070
【０１７４】
となる。ここで、「１」を出力するためには、関数ｆの中身（−２００−θe）が０以上となれば良い。つまり、所定の領域に発火ニューロンが２個の場合に「１」を出力する条件はθe≦２００で、このときの仮想磁場パラメータの臨界値θecは−２００である。同様に、発火ニューロンが３個、４個のときの磁場パラメータの臨海値はそれぞれ−４００、−６００となる。
【０１７５】
このように、所定領域内の発火ニューロン数と、そのときに着目しているニューロンが発火する仮想磁場パラメータの臨界値をまとめたのが下記の表４である。左欄の数だけニューロンが発火していると、着目しているニューロンが発火するためには右欄の数値以下の仮想磁場が必要となっている。すなわち、所定領域内の発火ニューロンがない場合は、磁場パラメータθeが０から２００の範囲にあれば着目しているニューロンは発火し、発火ニューロンが１個の場合は、磁場パラメータθeが−２００から０の範囲にあれば発火する。以下２個〜４個の場合も同様である。
【０１７６】
【表４】
2008269593.tif 000071
【０１７７】
この様子を模式的に表したものが図２８で、灰色で塗られた領域であればニューロンが発火することを示している。換言すれば、仮想磁場パラメータによりこの灰色の領域がベルト状に上下し、仮想磁場が小さくなれば灰色の領域が増して、当該ニューロンが発火しやすくなることがわかる。さて、図２８が単一のニューロンを表しているので、それを３×３に配置して、図２６に示しているようなホップフィールドネットワークの各ニューロンと対応づけたとき、それぞれの状態遷移をまとめて図２９のように表すことにする。図２９中の○は当該ニューロンが静止状態であること、●は発火状態であることを表し、状態が変化したニューロンを丸印で囲んでいる。
【０１７８】
図２９において、初期状態ｔ＝０ではθe＝５０であるのため図２９（ａ）のとおりであり、ｎ＝１となったとき、ニューロン（１，１）が発火から静止へと変化して図２９（ｂ）となる。このとき、同一の行と列にあるニューロンは受け取る発火ニューロン数が１つ減少して、矢印のとおり１段下方へ移動する。以下同様の手続きを繰り返し、ｎ＝２では変化なしで、ｎ＝３のときニューロン（１，３）が発火して図２９（ｃ）となり、この状態をしばらく維持する。ｔ＝２６となったとき、仮想磁場パラメータθeが正となって臨界値を超え、灰色で示した発火領域のレベルが１段低下して図２９（ｄ）となる。これは、ちょうど図２８（ａ）で示した状態である。そしてｎ＝１のときは変化なしで、ｎ＝２のときニューロン（１，２）が静止して図２９（ｅ）となり、ｎ＝４のときニューロン（２，１）が静止して図２９（ｆ）、ｎ＝５のときニューロン（２，２）が発火して図２９（ｇ）となり、再びこの状態をしばらく維持する。ｔ＝７５となったとき、仮想磁場パラメータθeが零となって臨界値を超え、灰色で示した発火領域のレベルが１段上昇して図２９（ｈ）となる。これは、ちょうど図２８（ｂ）で示した状態である。そして、これはちょうど条件を満たした状態のため、そのまま変化は生じず、解探索は終了してｔ＝１００で解が求まる。
【０１７９】
[５．２．２  ｎクイーン問題]
クロスバ・スイッチ問題と同様にして、ｎクイーン問題について検討する。簡単のため、領域数ｎは４とし、（ｘ，ｙ）＝（１，２）にのみ着目しているが、基本的に他の場合でも同様である。ここで、Ａ＝Ｂ＝１００、Ｃ＝Ｄ＝２００、ｎ＝４、ｘ＝１、ｙ＝２なので、式（６．６）、（６．７）より、
【０１８０】
【数６６】
2008269593.tif 000072
【０１８１】
【数６７】
2008269593.tif 000073
となる。ただし、式（６．１７）の右辺にはクロネッカーのデルタを含むため、
【０１８２】
【数６８】
2008269593.tif 000074
となるのは、次の４つの条件を同時に満たすときである。すなわち、
１．第１項（１−δ1a）δ2b＝０よりａ＝１∨ｂ≠２
２．第２項（１−δ2b）δ1a＝０よりａ≠１∨ｂ＝２
３．第３項δ1-a,2-b＝０より１−ａ≠２−ｂ  ∴ａ≠ｂ−１
４．第４項δ1+2,a+b＝０より１＋２≠ａ＋ｂ  ∴ａ＋ｂ≠３
である。一般に自己結合もないので、
【０１８３】
【数６９】
2008269593.tif 000075
となる。したがって、他のニューロンからの抑制性結合が実質的に働くのはこれ以外の部分であり、ド・モルガンの定理を用いると、図３０に示すとおりである。このうち、「ａ≠１∧ｂ＝２」または「ａ＝１∧ｂ≠２」を満たす部分と、「ａ＝ｂ−１」または「ａ＋ｂ＝３」のいずれかで「ａ≠１∧ｂ≠２」を満たす部分では値が異なる。そこで、これらをまとめると、
【０１８４】
【数７０】
2008269593.tif 000076
となる。ここでも仮想磁場パラメータにより、その値次第でニューロン（１，２）の発火と静止が決定される。したがって、ここでは発火に要する仮想磁場パラメータの大きさという観点からの検討を行う。このとき、ニューロンの出力は式（２．３）より、
【０１８５】
【数７１】
2008269593.tif 000077
に従って更新されることになる。ただし、クロスバ・スイッチ問題の場合と同様、ここでも非同期式でニューロンの状態遷移を行うため、図２７のようなタイミングで上に示した繰り返し計算を行う。
発火ニューロンがない場合、式（６．２２）より、
【０１８６】
【数７２】
2008269593.tif 000078
となる。ここで、「１」を出力するためには、関数ｆの中身（２００−θe）が０以上となれば良い。つまり、所定の領域に発火ニューロンがない場合に「１」を出力する条件はθe≦２００で、θe＞２００のときは「０」を出力する。すなわち、このときの仮想磁場パラメータの臨界値θecは２００である。
発火ニューロンが縦または横方向に１個の場合、式（６．２２）より、
【０１８７】
【数７３】
2008269593.tif 000079
となる。ここで、「１」を出力するためには、関数ｆの中身（０−θe）が０以上となれば良い。つまり、所定の領域に発火ニューロンが縦または横方向に１個の場合に「１」を出力する条件はθe≦０で、このときの仮想磁場パラメータの臨界値θecは０である。
発火ニューロンが斜め方向に１個の場合、式（６．２２）より、
【０１８８】
【数７４】
2008269593.tif 000080
となる。ここで、「１」を出力するためには、関数ｆの中身（−２００−θe）が０以上となれば良い。つまり、所定の領域に発火ニューロンが斜め方向に１個の場合に「１」を出力する条件はθe≦−２００で、このときの仮想磁場パラメータの臨界値θecは−２００である。
発火ニューロンが縦または横方向に２個の場合、式（６．２２）より、
【０１８９】
【数７５】
2008269593.tif 000081
となる。ここで、「１」を出力するためには、関数ｆの中身（−２００−θe）が０以上となれば良い。つまり、所定の領域に発火ニューロンが縦または横方向に２個の場合に「１」を出力する条件はθe≦２００で、このときの仮想磁場パラメータの臨界値θecは−２００である。
発火ニューロンが縦または横方向に１個、さらに斜め方向に１個の場合、式（６．２２）より、
【０１９０】
【数７６】
2008269593.tif 000082
となる。ここで、「１」を出力するためには、関数ｆの中身（−４００−θe）が０以上となれば良い。つまり、所定の領域に発火ニューロンが縦または横方向に１個、さらに斜め方向に１個の場合に「１」を出力する条件はθe≦−４００で、このときの仮想磁場パラメータの臨界値θecは−４００である。
【０１９１】
このように、所定領域内で縦、横方向あるいは斜め方向の発火ニューロン数と、そのときに着目しているニューロンが発火する仮想磁場パラメータの臨界値をまとめたのが下記の表５である。左欄の数だけニューロンが発火していると、着目しているニューロンが発火するためには右欄の数値以下の仮想磁場が必要となっている。すなわち、所定領域内に発火ニューロンがない場合は、磁場パラメータが０から２００の範囲にあれば着目しているニューロンは発火し、発火ニューロンが縦、横方向に１個の場合は、仮想磁場パラメータが−２００から０の範囲にあれば発火する。以下同様に発火ニューロン数と仮想磁場パラメータが関連付いている。
【０１９２】
【表５】
2008269593.tif 000083
【０１９３】
この様子を模式的に表したのが図３１で、灰色で塗られた領域であればニューロンが発火することを示している。換言すれば、仮想磁場パラメータによりこの灰色の領域が増減し、仮想磁場が小さくなれば灰色の領域が増して、当該ニューロンが発火しやすくなることがわかる。なお、これは図２８を元にして２次元に拡張したものである。
【０１９４】
さて、図３１が単一のニューロンを表しているので、それを４×４に配置して、図３０に示しているようなホップフィールドネットワークの各ニューロンと対応付けたとき、それぞれの状態遷移をまとめて図３２のように表すことにする。図３２中の○は当該ニューロンが静止状態であることを、●は発火状態であることを表し、状態が変化したニューロンを丸印で囲んでいる。
【０１９５】
図３２において、初期状態ｔ＝０ではθe＝−５０のため図３２（ａ）のとおりであり、この状態をしばらく維持する。ｔ＝２６となったとき、仮想磁場パラメータθeが正となって臨界値を超え、灰色で示した発火領域が減少して図３２（ｂ）となる。これはちょうど、図３１（ａ）で示した状態である。そしてｎ＝１のとき、ニューロン（１，１）が発火から静止へ変化して図３２（ｃ）となる。このとき、同一の行と列及び斜め方向にあるニューロンは受け取る発火ニューロン数が１つ減少して、それぞれ矢印のとおり下あるいは左へ移動する。以下同様の手続きを繰り返し、ｎ＝８のときニューロン（２，４）が静止して図３２（ｄ）となり、ｔ＝２７でｎ＝３のときニューロン（１，３）が発火して図３２（ｅ）となり、この状態をしばらく維持する。ｔ＝７５となったとき、仮想磁場パラメータθeが零となって臨界値を超え、灰色で示した発火領域が増加して図３２（ｆ）となる。これはちょうど図３１（ｂ）で示した状態である。そして、ｎ＝５のときニューロン（２，１）が発火して図３２（ｇ）となり、ｎ＝１４のときニューロン（４，２）が発火して図３２（ｈ）となり、ｔ＝７６でｎ＝１３のときニューロン（４，１）が静止して図３２（ｉ）となる。そして、これはちょうど条件を満たした状態のため、そのまま変化は生じず、解探索は終了してｔ＝１００で解が求まる。
【０１９６】
[５．３  エネルギー関数の形状に基づいた動作メカニズムの検討]
以下に、磁場パラメータを変えることで、どのようにして局所解から抜け出したのかをエネルギー関数という観点から検討する。
一例として、ここではクロスバ・スイッチ問題について検討する。なお当然のことながら、ｎクイーン問題においても同様の議論が成り立つ。まず図２９の状態遷移をニューロンの発火を「１」、静止を「０」として描き直したものが図３３であり、状態が変化したニューロンを丸印で囲んでいる。また、それぞれの状態で、仮想磁場パラメータθeが５０、０、−５０のときのエネルギー関数
【０１９７】
【数７７】
2008269593.tif 000084
【０１９８】
【数７８】
2008269593.tif 000085
を求め、描き分けたものが図３４である。これは、図５の形状を実際に求めたものに相当する。
【０１９９】
まずθe＝５０でｔ＝０に動作を開始すると、横軸であるネットワークの状態Ｖが（ａ）の状態から（ｃ）の状態になるまで斜面を降下する。その後、θeが増加してｔ＝２６で正値となった時点でエネルギー関数の形状が谷から山へと変わり、再び動き始めて状態（ｄ）、状態（ｅ）を経て状態（ｆ）に到達し、ｔ＝７６のときにθe＝０となるのを待って解が得られたと解釈できる。
【０２００】
なお本来であれば、ホップフィールドネットワークはエネルギーが低くなる状態を探索して状態遷移を繰り返すはずであるが、ここでは簡単のため、これとは反対にホップフィールドネットワークの状態からエネルギーを算出し、減少していることを確かめている。
【０２０１】
ところで前述したとおり、組み合わせ最適化問題におけるエネルギー局所解を回避する方法がこれまでにもいくつか提案されている。まず、擬似焼きなまし法であるが、これは、温度パラメータを高く設定することで"起伏がなだらかな状態"にしておき、ネットワークの探索範囲を広くする。その後、徐々に低くすることで元の形状に戻していき、その過程でエネルギーの低い領域に向かって探索範囲を狭め、解を求めるというものである。実際は本来の形状をしたエネルギー関数にノイズを付加して、徐々に弱めていくのであるが、定性的にはこのように解釈しても問題ないであろう。これに類似したヒルクライミングタームは、人為的にニューロン出力を反転させるため、文字通り山を登って飛び越えるものである。このようにしてみると、エネルギーの形状自体を変化させる仮想磁場漸弱法は、他のいずれの手法とも異なっていることは明らかである。
【０２０２】
[５．４  動作メカニズムの検討における考察]
本章（５．動作メカニズム）において、クロスバ・スイッチ問題及びｎクイーン問題の解探索を通して、その動作メカニズムについての検討を行った。仮想磁場漸弱法とは、他のニューロンからの信号の荷重和と閾値の関係によって当該ニューロンの出力を決定する際に、仮想磁場パラメータに対応する閾値を操作することでニューロンの出力制限を変えるというものである。その仮想磁場パラメータには、表４、表５で示したように、ニューロン出力が変わる臨界値が存在する。
また、仮想磁場パラメータを正へ振らせることで正答率が上がったのは、臨界値を超えてニューロンの発火のしやすさが変わったためである。
【０２０３】
ｎクイーン問題については、１００％の正答率を得ることができなかったが、これは局所解から抜け出すことができる磁場パラメータの臨界値に至らなかったためであると思われる。従って、仮想磁場パラメータの臨界値を事前に考慮して有効なパラメータ設定を行うことで高い正答率を得ることができると思われる。
【０２０４】
[５．５  動作メカニズムの検討における結論]
メカニズムについて詳細な検討を行った結果、仮想磁場パラメータにはニューロン出力が変わる臨界値が存在することが明らかとなり、仮想磁場パラメータの極性を反転することで正答率が改善されたのは、臨界値を超えることでニューロンの発火のしやすさが変わったためであることが解明された。また、エネルギー関数という観点から仮想磁場漸弱法の動作メカニズムを検討した結果、仮想磁場パラメータを操作することでエネルギー関数の形状が変化し、その結果として局所解から抜け出し、最適解に到達していることが明らかとなった。
【０２０５】
（本発明の第２の実施形態）
［ニューロンの出力の反転］
前説したようにクロスバ・スイッチ問題においての制約条件は次の通りであった。
・条件１：それぞれの行（横の並び）には、“１”が１つだけ存在し、残りはすべて“０”とする。
・条件２：それぞれの列（縦の並び）には、“１”が１つだけ存在し、残りはすべて“０”とする。
【０２０６】
ここで、クロスバ・スイッチ問題の解答を得るという目的は変えず、次のように制約条件を変更した。
・条件１：それぞれの行（横の並び）には、“０”が１つだけ存在し、残りはすべて“１”とする。
・条件２：それぞれの列（縦の並び）には、“０”が１つだけ存在し、残りはすべて“１”とする。
【０２０７】
このように制約条件を変更した場合であっても、同様にクロスバ・スイッチ問題を解けることは明らかである。同様のニューロン状態を得たいのであれば、新たな制約条件の下で求めたニューロン状態を最後に全て反転させればよい。
【０２０８】
そうすると、ホップフィールドネットワークを含むニューラルネットワークにおいてニューロンの出力を反転することが可能である。ただし、新しい制約条件で仮想磁場漸弱法を用いたホップフィールドネットワークを実現するためには、式（３．１）及び式（３．２）はそれぞれ次の通りとなる。
【０２０９】
【数７９】
2008269593.tif 000086
【０２１０】
【数８０】
2008269593.tif 000087
そして、新しい制約条件を満たしたときに、次のＥが０となるようにする。
【０２１１】
【数８１】
2008269593.tif 000088
このエネルギー関数を展開して同様にニューロンの出力の算出式を求める。そして、このニューロンの出力の算出式を用いて、状態遷移を繰り返すことでクロスバ・スイッチ問題を解く。
【０２１２】
上記ニューロンの出力の反転を用いてクロスバ・スイッチ問題を解いた場合の計算機シミュレーションの結果が図３５である。仮想磁場漸弱法を用いないホップフィールドネットワークは領域数ｎの増加にともない正答率が低下する。一方、仮想磁場漸弱法を用いたホップフィールドネットワークで且つニューロンの出力の反転を適用した場合には、正答率が領域数によって変化せず常に１００［％］を維持している。よって、ニューロンの出力を反転した仮想磁場漸弱法を用いたホップフィールドネットワークによって高い正解率でクロスバ・スイッチ問題を解けることが確認された。前記第１の実施形態と同様に、ナンバー・プレイス問題についても計算機シミュレーションを行った。シミュレーションの条件は次の通りである。
【０２１３】
・ニューロンの状態を更新する繰り返し計算回数：２０回
・乱数で決定した１０００［通り］の初期状態を用意
・領域数ｎを増やしたときの正答率を調べる
このシミュレーション条件におけるナンバー・プレイス問題の結果は図３６の通りである。仮想磁場漸弱法を用いたホップフィールドネットワークにおいてニューロンの出力を反転させた場合も、ニューロンの出力を反転させない場合に劣ることない正答率を維持しているだけでなく、若干上回っている。
【０２１４】
さらに、ｔ＝０で磁場パラメータθｅ＝０とした場合と、ｔ＝１１でθｅ＜０、ｔ＝１２でθｅ＝０とした場合での対比も行った（図３７（ａ）参照）。その結果は図３７（ｂ）である。この結果から磁場パラメータの与え方として、繰り返し回数にともなって正から０へ、０から負へ、負から０へ遷移する磁場パラメータの与え方が望ましいことがわかる。
【０２１５】
（その他の実施形態）
［１  結合荷重の算出］
第１の実施形態で示したように、ネットワークの状態とエネルギーの関係を検討することで本発明の仮想磁場漸弱法を用いたホップフィールドネットワークは、エネルギー関数の形状を変化させるような動きをしていたことがわかる。第１の実施形態及び第２の実施形態においては、閾値θの値に着目して操作を行ったが、本実施形態では結合荷重ｗを変化させる。すなわち、式（１．２）及び式（１．３）において、結合荷重係数ｋにより結合荷重を変化させる。
【０２１６】
図３８は、本実施形態に係るホップフィールドネットワークのブロック構成図である。第１の実施形態と異なる点は、磁場パラメータ出力手段３を備えていない点と、結合荷重算出手段６を備える点である。
【０２１７】
結合荷重算出手段６は、入力取得手段２で取得したニューロンとニューロン選択手段１で選択したニューロン間の結合荷重を算出する処理を行う。結合荷重には結合荷重係数が与えられ（式（１．２）におけるｋ）、その結合荷重係数を変化させて算出する。そして、算出した結合荷重に基づいてニューロンの出力値が算出される。
【０２１８】
なお、結合荷重係数は、ニューロンごとに重み付けをし（例えば、ニューロン間の距離等）、その重み付けに基づいて各ニューロンごとに変化させるようにしてもよいし、全てのニューロン間に一律に同じ値を与えるようにしてもよい。
また、結合荷重係数算出手段６は、ニューロン間の結合係数が予め登録された結合荷重係数データ（図示しない）に基づいて結合荷重を算出してもよい。
【０２１９】
さらに、図３８において、図１１と同様に磁場パラメータ出力手段３を備える構成としてもよい。その場合には、結合荷重及び／又は磁場パラメータによりネットワークのエネルギーを緻密に制御することができるため、様々な組み合わせ最適化問題に対応することができる可能性がある。例えば、組み合わせ最適化問題の種類や複雑さの度合いに応じて結合荷重及び／又は磁場パラメータの変化を加えることで、従来は正答率が低かった問題についても正答率を上げることができる可能性がある。
さらにまた、磁場パラメータ出力手段３を備える構成とした場合には、磁場パラメータの出力値をθ＝０に固定しておいてもよい。
【０２２０】
図３９は、本実施形態に係るホップフィールドネットワークの動作フローチャートである。ニューロン選択手段１が選択されていないニューロンの中から任意のニューロンを選択する（ステップＳ１００）。入力取得手段２が、ニューロン選択手段１に選択されたニューロンへの入力を取得する（ステップＳ１０５）。結合荷重算出手段６が、選択されたニューロンと他のニューロン間の結合荷重を結合荷重係数に基づいて算出する（ステップＳ１０６）。出力ニューロン算出手段４が入力取得手段２により取得された選択されたニューロンへの入力、及び、結合荷重算出手段６により算出された結合荷重をニューロンの算出式に代入して現在選択されているニューロンの出力を求める（ステップＳ１１５）。ステップＳ１２０以降の処理については、第１の実施形態と同様であるため説明は省略する。
【０２２１】
なお、図３９において、図１３と同様に磁場パラメータ出力手段３を備える場合には、ステップＳ１１０の磁場パラメータを求める処理を、ステップＳ１０６の結合荷重を算出する処理の後に入れてもよい。そうすることで、上述したように、結合荷重及び／又は磁場パラメータによりネットワークのエネルギーを緻密に制御することができるため、様々な組み合わせ最適化問題に対応することができる可能性がある。
さらにまた、磁場パラメータを求める処理を含める場合には、磁場パラメータの出力値をθ＝０として求めるようにしてもよい。
【０２２２】
［２  実験結果］
［２−１  クロスバ・スイッチ問題の場合］
図４０は、クロスバ・スイッチ問題における正答率の変化を示すグラフである。図４０（ａ）は、時間ｔにおける結合荷重係数ｋの値を示したグラフであり、ｋ＝１．０を中心にｋ＝０．１からｋ＝１．１までの値に変化させている。なお、ここでは、段階的にｋの値を変化させたが、連続的に変化させても同様の結果が得られるはずである。図４０（ｂ）は、従来法と結合荷重係数ｋを変化させた場合との正答率の変化を示す。従来法はｋ＝１と固定したままで、通常のホップフィールネットワークと同じである。
【０２２３】
グラフから明らかなように、結合荷重係数ｋを変化させた場合は領域数ｎが１０になった場合でも正答率が１００％であるのに対し、従来法では１５％〜２０％を推移している。これは結合荷重係数ｋを変化させた場合には顕著な効果が認められることを示しており、第１の実施形態の場合と同等の効果を示していることがわかる。
【０２２４】
［２−２  ｎクイーン問題の場合］
図４１は、ｎクイーン問題における正答率の変化を示すグラフである。図４１（ａ）は、図４０（ａ）と同様に、時間ｔにおける結合荷重係数ｋの値を示したグラフであり、ｋ＝１．０を中心にｋ＝０．１からｋ＝１．１までの値に変化させている。なお、ここでは、段階的にｋの値を変化させたが、連続的に変化させても同様の結果が得られるはずである。図４１（ｂ）は、従来法と結合荷重係数ｋを変化させた場合との正答率の変化を示す。従来法はｋ＝１と固定したままで、通常のホップフィールネットワークと同じである。
【０２２５】
ｎクイーン問題の場合は、クロスバ・スイッチ問題ほどの顕著な効果は見られなかったが、領域数ｎ＝６以外は全ての領域数において従来法より高い正答率となった。つまり、結合荷重係数ｋを変化させることで、一定の効果が認められたことを示している。
【０２２６】
［３  考察］
磁場パラメータを含む閾値θ以外に、結合荷重ｗを操作した場合にもθを操作した場合と同様の結果を得ることができることが説示された。
【０２２７】
［４  結論］
仮想磁場漸弱法を用いたホップフィールドネットワークは、エネルギー関数の形状を変化させるような動きをしていることから、結合荷重ｗを操作した場合も著しい性能改善が達成できることを示した。また、クロスバ・スイッチ問題については領域数が増えても正答率１００％を維持するという顕著な効果が示され、ｎクイーン問題についても一定の効果があることが示された。
【０２２８】
以上の前記各実施形態により本発明を説明したが、本発明の技術的範囲は実施形態に記載の範囲には限定されず、これら各実施形態に多様な変更又は改良を加えることが可能である。そして、かような変更又は改良を加えた実施の形態も本発明の技術的範囲に含まれる。このことは、特許請求の範囲及び課題を解決する手段からも明らかなことである。
【図面の簡単な説明】
【０２２９】
【図１】ニューロンの基本的な構造図である。
【図２】一般的なニューロンのモデルである。
【図３】相互結合型ニューラルネットワークの構造である。
【図４】スピングラス理論とホップフィールドネットワークの包含関係を示す図である。
【図５】ホップフィールドネットワークのエネルギーのグラフである。
【図６】温度パラメータによるシグモイド関数の形状のグラフである。
【図７】強磁性秩序状態（ａ）と反強磁性秩序状態（ｂ）を示す図である。
【図８】一般のスピングラスモデルである。
【図９】外部磁場を印加したときのスピングラスモデルである。
【図１０】クロスバ・スイッチ問題のニューロ表現（ｎ＝４の場合）である。
【図１１】本発明の第１の実施形態に係る仮想磁場漸弱法を用いたホップフィールドネットワークのブロック構成図である。
【図１２】本発明の第１の実施形態に係るコンピュータのハードウェア構成図である。
【図１３】本発明の第１の実施形態に係る仮想磁場漸弱法を用いたホップフィールドネットワークの動作フローチャートである。
【図１４】領域数ｎによる正答率の変化のグラフである。
【図１５】初期値を変化させたときの磁場パラメータの与え方である。
【図１６】磁場パラメータの初期値θe（０）の違いによる正答率の変化である。
【図１７】領域数ｎ＝５におけるニューロンの状態遷移の一例である。
【図１８】ナンバー・プレイス問題のニューロンの配置である。
【図１９】仮想磁場制御法の３つの例（模式図）である。
【図２０】磁場パラメータの与え方による正答率の変化−ｎクィーン問題の場合である。
【図２１】磁場パラメータの与え方による正答率の変化−ナンバープレイス問題の場合である。
【図２２】磁場パラメータの与え方による正答率の変化−ナンバープレイス問題の場合である。
【図２３】磁場パラメータの初期値による正答率の変化（ｎ＝５）である。
【図２４】磁場パラメータの与え方を示す図である。
【図２５】仮想磁場漸弱法の導入前後の正答率を変化を示す図である。
【図２６】ニューロンの出力決定に関係する部分の一例を示す図である（クロスバ・スイッチ問題）。
【図２７】各ニューロンの状態遷移を行うタイミングを示す図である。
【図２８】発火ニューロン数、仮想磁場パラメータ及びニューロン出力の関係を示す図である（クロスバ・スイッチ問題）。
【図２９】クロスバ・スイッチ問題の出力変化を示す図である。
【図３０】ニューロンの出力決定に関係する部分の一例を示す図である（ｎクイーン問題）。
【図３１】発火ニューロン数、仮想磁場パラメータ及びニューロン出力の関係を示す図である（ｎクイーン問題）。
【図３２】ｎクイーン問題の出力変化を示す図である。
【図３３】クロスバ・スイッチ問題におけるニューロンの状態遷移の一例を示す図である。
【図３４】ネットワークの状態とエネルギーの関係を示すグラフである。
【図３５】領域数ｎによる正答率の変化のグラフである。
【図３６】領域数ｎによる正答率の変化のグラフである。
【図３７】磁場パラメータの与え方及び領域数ｎによる正答率の変化のグラフである。
【図３８】本発明のその他の実施形態に係るホップフィールドネットワークのブロック構成図である。
【図３９】本発明のその他の実施形態に係るホップフィールドネットワークの動作フローチャートである。
【図４０】クロスバ・スイッチ問題における荷重結合係数及び正答率の変化を示すグラフである。
【図４１】ｎクイーン問題における荷重結合係数及び正答率の変化を示すグラフである。
【符号の説明】
【０２３０】
１  ニューロン選択手段
２  入力取得手段
３  磁場パラメータ付与手段
４  出力ニューロン算出手段
５  ニューロン状態記憶手段
１０  コンピュータ
１０１  ＣＰＵ
１０２  メインメモリ
１０３  ＭＢチップセット
１０４  ビデオカード
１１１  ＨＤＤ
１１２  ブリッジ回路
１１３  ネットワークインタフェース
１２１  光学ドライブ
１２２  キーボード
１２３  マウス
【図１】
2008269593.tif 000089
【図２】
2008269593.tif 000090
【図３】
2008269593.tif 000091
【図４】
2008269593.tif 000092
【図５】
2008269593.tif 000093
【図６】
2008269593.tif 000094
【図７】
2008269593.tif 000095
【図８】
2008269593.tif 000096
【図９】
2008269593.tif 000097
【図１０】
2008269593.tif 000098
【図１１】
2008269593.tif 000099
【図１２】
2008269593.tif 000100
【図１３】
2008269593.tif 000101
【図１４】
2008269593.tif 000102
【図１５】
2008269593.tif 000103
【図１６】
2008269593.tif 000104
【図１７】
2008269593.tif 000105
【図１８】
2008269593.tif 000106
【図１９】
2008269593.tif 000107
【図２０】
2008269593.tif 000108
【図２１】
2008269593.tif 000109
【図２２】
2008269593.tif 000110
【図２３】
2008269593.tif 000111
【図２４】
2008269593.tif 000112
【図２５】
2008269593.tif 000113
【図２６】
2008269593.tif 000114
【図２７】
2008269593.tif 000115
【図２８】
2008269593.tif 000116
【図２９】
2008269593.tif 000117
【図３０】
2008269593.tif 000118
【図３１】
2008269593.tif 000119
【図３２】
2008269593.tif 000120
【図３３】
2008269593.tif 000121
【図３４】
2008269593.tif 000122
【図３５】
2008269593.tif 000123
【図３６】
2008269593.tif 000124
【図３７】
2008269593.tif 000125
【図３８】
2008269593.tif 000126
【図３９】
2008269593.tif 000127
【図４０】
2008269593.tif 000128
【図４１】
2008269593.tif 000129