JPH0981615A - 回路設計装置および方法 - Google Patents
回路設計装置および方法Info
- Publication number
- JPH0981615A JPH0981615A JP7236512A JP23651295A JPH0981615A JP H0981615 A JPH0981615 A JP H0981615A JP 7236512 A JP7236512 A JP 7236512A JP 23651295 A JP23651295 A JP 23651295A JP H0981615 A JPH0981615 A JP H0981615A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- chromosome
- logic
- pld
- matrix
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Logic Circuits (AREA)
Abstract
(57)【要約】
【課題】 大規模な論理回路を設計することができるよ
うにする。 【解決手段】 遺伝的アルゴリズムに基づいて、プログ
ラム可能な論理回路(PLD: Programmable Logic De
vice)の回路構成を更新し、目的の出力を行う論理回路
を設計する。遺伝的アルゴリズムに従って、PLDの回
路構成を導出する文法ルール(例えば、図5(a)乃至
図5(d))の集合を染色体とし、この染色体(文法ル
ールの集合)を更新していき、最適な回路構成を与える
染色体を導出する。このとき、染色体の長さは、文法ル
ールの数に比例するので、PLDの回路の規模に依存せ
ず、PLDの回路が大規模である場合でも、適度な計算
時間で、回路構成の設計を行うことができる。
うにする。 【解決手段】 遺伝的アルゴリズムに基づいて、プログ
ラム可能な論理回路(PLD: Programmable Logic De
vice)の回路構成を更新し、目的の出力を行う論理回路
を設計する。遺伝的アルゴリズムに従って、PLDの回
路構成を導出する文法ルール(例えば、図5(a)乃至
図5(d))の集合を染色体とし、この染色体(文法ル
ールの集合)を更新していき、最適な回路構成を与える
染色体を導出する。このとき、染色体の長さは、文法ル
ールの数に比例するので、PLDの回路の規模に依存せ
ず、PLDの回路が大規模である場合でも、適度な計算
時間で、回路構成の設計を行うことができる。
Description
【0001】
【発明の属する技術分野】本発明は、回路設計装置およ
び方法に関し、特に、遺伝的アルゴリズムに基づいて、
回路構成を変更していく回路設計装置および方法に関す
る。
び方法に関し、特に、遺伝的アルゴリズムに基づいて、
回路構成を変更していく回路設計装置および方法に関す
る。
【0002】
【従来の技術】従来、設計者は、ロボットなどを制御す
る複雑な論理回路を設計する場合、多くの基本的な論理
素子を経験的に組み合わせて、論理回路を設計してい
た。しかしながら、最近では、遺伝的アルゴリズム(G
A: Genetic Algorithm)に基づいて、経験的な知識を
必要とせずに論理回路を設計する方法が、例えば、樋口
氏らによって、「遺伝的アルゴリズム(北野宏明編、産
業図書)」において、「遺伝的学習によるハードウェア
進化の基礎実験」として紹介されている。
る複雑な論理回路を設計する場合、多くの基本的な論理
素子を経験的に組み合わせて、論理回路を設計してい
た。しかしながら、最近では、遺伝的アルゴリズム(G
A: Genetic Algorithm)に基づいて、経験的な知識を
必要とせずに論理回路を設計する方法が、例えば、樋口
氏らによって、「遺伝的アルゴリズム(北野宏明編、産
業図書)」において、「遺伝的学習によるハードウェア
進化の基礎実験」として紹介されている。
【0003】この方法においては、FPGA(Field Pr
ogrammable Gate Array)に代表される、プログラム可
能な論理回路(PLD: Programmable Logic Device)
の回路構成を、GAに基づいて繰り返し変更し、目的の
出力を行う論理回路を作成する。
ogrammable Gate Array)に代表される、プログラム可
能な論理回路(PLD: Programmable Logic Device)
の回路構成を、GAに基づいて繰り返し変更し、目的の
出力を行う論理回路を作成する。
【0004】PLDは、AND論理演算、OR論理演算
などの基本的な論理計算の種類を動的に選択することが
できる論理セルを複数個有し、各論理セルが実行する論
理計算の種類と、これらの論理セル間の回路結合のパタ
ーンを変更することができる。
などの基本的な論理計算の種類を動的に選択することが
できる論理セルを複数個有し、各論理セルが実行する論
理計算の種類と、これらの論理セル間の回路結合のパタ
ーンを変更することができる。
【0005】GAにおいては、最適化する対象を特徴づ
けるものが遺伝子で表現され、この遺伝子を連結するこ
とで、染色体が生成される。そして、複数の染色体を繰
り返し更新することで、対象を最適な状態へ近づけてい
く。
けるものが遺伝子で表現され、この遺伝子を連結するこ
とで、染色体が生成される。そして、複数の染色体を繰
り返し更新することで、対象を最適な状態へ近づけてい
く。
【0006】従来、PLDにおける論理セルの機能と論
理セル間の回路結合のパターンが、染色体で表現され、
この染色体(PLDの回路構成)をGAに基づいて更新
していき、目的の出力を行う論理回路を作成するように
なされている。
理セル間の回路結合のパターンが、染色体で表現され、
この染色体(PLDの回路構成)をGAに基づいて更新
していき、目的の出力を行う論理回路を作成するように
なされている。
【0007】
【発明が解決しようとする課題】しかしながら、複雑な
制御を行う論理回路を設計する場合、多数の論理演算素
子が必要とされ、これらの論理演算素子間の結合パター
ンも複雑になる。従来の技術では、PLDにおける論理
セルの機能と回路結合のパターンを染色体で表現するた
め、染色体の長さは、論理セルの数に応じて長くなる。
従って、大規模な論理回路を設計する場合、非常に長い
染色体に対してGAに基づく演算を行う必要があるた
め、多くの計算時間を要するという課題を有している。
制御を行う論理回路を設計する場合、多数の論理演算素
子が必要とされ、これらの論理演算素子間の結合パター
ンも複雑になる。従来の技術では、PLDにおける論理
セルの機能と回路結合のパターンを染色体で表現するた
め、染色体の長さは、論理セルの数に応じて長くなる。
従って、大規模な論理回路を設計する場合、非常に長い
染色体に対してGAに基づく演算を行う必要があるた
め、多くの計算時間を要するという課題を有している。
【0008】本発明は、このような状況に鑑みてなされ
たもので、所定の数の文法ルールからなる文法ルールの
集合で、論理セルの機能と結合パターンを生成し、これ
らの文法ルールを染色体で表現することで、染色体の長
さを論理セルの数に依存しないようにし、大規模な論理
回路を設計できるようにするものである。
たもので、所定の数の文法ルールからなる文法ルールの
集合で、論理セルの機能と結合パターンを生成し、これ
らの文法ルールを染色体で表現することで、染色体の長
さを論理セルの数に依存しないようにし、大規模な論理
回路を設計できるようにするものである。
【0009】
【課題を解決するための手段】請求項1に記載の回路設
計装置は、演算を行い、動的に演算機能を変更すること
ができる演算手段と、演算機能を導出する文法ルールを
染色体とする遺伝的アルゴリズムに基づいて、演算手段
の出力が目的の出力に近づくように、演算機能を変更す
る制御手段とを備えることを特徴とする。
計装置は、演算を行い、動的に演算機能を変更すること
ができる演算手段と、演算機能を導出する文法ルールを
染色体とする遺伝的アルゴリズムに基づいて、演算手段
の出力が目的の出力に近づくように、演算機能を変更す
る制御手段とを備えることを特徴とする。
【0010】請求項2に記載の回路設計方法は、演算を
行う、動的に演算機能を変更することができる演算素子
の前記演算機能を導出する文法ルールを染色体とする遺
伝的アルゴリズムに基づいて、前記演算の結果が目的の
値に近づくように、前記演算機能を変更することを特徴
とする。
行う、動的に演算機能を変更することができる演算素子
の前記演算機能を導出する文法ルールを染色体とする遺
伝的アルゴリズムに基づいて、前記演算の結果が目的の
値に近づくように、前記演算機能を変更することを特徴
とする。
【0011】請求項1に記載の回路設計装置において
は、動的に演算機能を変更することができる演算手段
は、演算を行い、制御手段は、演算機能を導出する文法
ルールを染色体とする遺伝的アルゴリズムに基づいて、
演算手段の出力が目的の出力に近づくように、演算機能
を変更する。
は、動的に演算機能を変更することができる演算手段
は、演算を行い、制御手段は、演算機能を導出する文法
ルールを染色体とする遺伝的アルゴリズムに基づいて、
演算手段の出力が目的の出力に近づくように、演算機能
を変更する。
【0012】請求項2に記載の回路設計方法において
は、演算を行う、動的に演算機能を変更することができ
る演算素子の前記演算機能を導出する文法ルールを染色
体とする遺伝的アルゴリズムに基づいて、前記演算の結
果が目的の値に近づくように、前記演算機能を変更す
る。
は、演算を行う、動的に演算機能を変更することができ
る演算素子の前記演算機能を導出する文法ルールを染色
体とする遺伝的アルゴリズムに基づいて、前記演算の結
果が目的の値に近づくように、前記演算機能を変更す
る。
【0013】
【発明の実施の形態】図1は、本発明の回路設計装置の
一実施例の構成例を示している。この構成例は、PLD
1(演算手段)を備える。PLD1は、演算装置2(制
御手段)に接続され、演算装置2の制御信号に従って、
その回路構成を変更し、その回路構成で、ロボット11
に制御信号を出力するようになされている。
一実施例の構成例を示している。この構成例は、PLD
1(演算手段)を備える。PLD1は、演算装置2(制
御手段)に接続され、演算装置2の制御信号に従って、
その回路構成を変更し、その回路構成で、ロボット11
に制御信号を出力するようになされている。
【0014】ロボット11は、PLD1から供給される
制御信号に従って、動作を行うようになされている。設
計者21は、ロボット11の動作を観察し、所定の評価
方法(評価関数)に従って、その動作の評価を行い、入
力装置3を操作して演算装置2に、その評価に対応する
入力を行う。
制御信号に従って、動作を行うようになされている。設
計者21は、ロボット11の動作を観察し、所定の評価
方法(評価関数)に従って、その動作の評価を行い、入
力装置3を操作して演算装置2に、その評価に対応する
入力を行う。
【0015】演算装置2は、所定の数の染色体を保持
し、各染色体から、PLD1の回路構成を導出して、制
御信号としてPLD1に出力するようになされている。
また、すべての染色体について、ロボット11の動作と
設計者21の評価が終了した後、演算装置2は、GAに
基づいて、評価が高い動作を実現した回路構成に対応す
る染色体の子孫が次世代に多く残る確率を高くして、染
色体を更新するようになされている。
し、各染色体から、PLD1の回路構成を導出して、制
御信号としてPLD1に出力するようになされている。
また、すべての染色体について、ロボット11の動作と
設計者21の評価が終了した後、演算装置2は、GAに
基づいて、評価が高い動作を実現した回路構成に対応す
る染色体の子孫が次世代に多く残る確率を高くして、染
色体を更新するようになされている。
【0016】図2は、PLD1の構成例を示している。
この構成例は、複数の論理セル41−1乃至41−Nを
備える。これらの論理セル41−1乃至41−Nは、A
ND論理演算、OR論理演算などの複数の基本的な論理
計算機能を有し、外部から供給される制御信号に従っ
て、動的に、実行する論理計算の種類を変更するように
なされている。
この構成例は、複数の論理セル41−1乃至41−Nを
備える。これらの論理セル41−1乃至41−Nは、A
ND論理演算、OR論理演算などの複数の基本的な論理
計算機能を有し、外部から供給される制御信号に従っ
て、動的に、実行する論理計算の種類を変更するように
なされている。
【0017】論理セル41−1乃至41−Nは、どの論
理セル同士でも結合することができるようになされてお
り、それぞれの論理セル間を結合するか否かは、外部か
ら供給される制御信号で決定される。論理セル間を結合
する場合は、結合スイッチ42−1乃至42−Mのうち
の対応する結合スイッチをオンにする。例えば、論理セ
ル41−Nと論理セル41−1とを結合する場合、結合
スイッチ42−1をオンにする。
理セル同士でも結合することができるようになされてお
り、それぞれの論理セル間を結合するか否かは、外部か
ら供給される制御信号で決定される。論理セル間を結合
する場合は、結合スイッチ42−1乃至42−Mのうち
の対応する結合スイッチをオンにする。例えば、論理セ
ル41−Nと論理セル41−1とを結合する場合、結合
スイッチ42−1をオンにする。
【0018】図3は、演算装置2の構成例を示してい
る。この構成例は、CPU61を備え、このCPU61
は、ROM62に記憶されているプログラムに従って、
各種処理、例えば、GAのプログラムに従って、設計者
21が入力装置3を操作して入力するロボットの動作の
評価に応じて、PLD1の新たな回路構成を算出するよ
うになされている。RAM63は、CPU61が各種処
理をする上において必要なデータ、プログラムなどを適
宜記憶するようになされている。
る。この構成例は、CPU61を備え、このCPU61
は、ROM62に記憶されているプログラムに従って、
各種処理、例えば、GAのプログラムに従って、設計者
21が入力装置3を操作して入力するロボットの動作の
評価に応じて、PLD1の新たな回路構成を算出するよ
うになされている。RAM63は、CPU61が各種処
理をする上において必要なデータ、プログラムなどを適
宜記憶するようになされている。
【0019】設計者21が入力したロボット11の動作
の評価は、入力装置3からインターフェース64を介し
て入力される。また、PLD1に対する制御信号の出力
も、インターフェース64を介して行われる。
の評価は、入力装置3からインターフェース64を介し
て入力される。また、PLD1に対する制御信号の出力
も、インターフェース64を介して行われる。
【0020】次に、図4のフローチャートを参照して、
上記実施例の動作について説明する。
上記実施例の動作について説明する。
【0021】最初に、ステップS1において、演算装置
2は、所定の数の文法ルールを作成する。図5に示すよ
うに、各文法ルールは、左辺に1個のアルファベットを
有し、右辺に各要素がアルファベットである2×2行列
を有する。演算装置2は、この文法ルールから遺伝子を
作成し、遺伝子を所定の数だけ連結したものを染色体と
する。演算装置2は、所定の数の初期染色体を生成す
る。
2は、所定の数の文法ルールを作成する。図5に示すよ
うに、各文法ルールは、左辺に1個のアルファベットを
有し、右辺に各要素がアルファベットである2×2行列
を有する。演算装置2は、この文法ルールから遺伝子を
作成し、遺伝子を所定の数だけ連結したものを染色体と
する。演算装置2は、所定の数の初期染色体を生成す
る。
【0022】例えば、図5(a)のルール1を遺伝子と
する場合、ルール1は、AOCHLと表現される。従っ
て、例えば、図5(a)のルール1、図5(b)のルー
ル2、および図5(c)のルール3を遺伝子で表現し、
これらの遺伝子で始まる染色体を記述すると、図6に示
すように、AOCHLFKHLKHTQJT・・・とな
る。このようにして、所定の長さの染色体を、所定の数
作成する。
する場合、ルール1は、AOCHLと表現される。従っ
て、例えば、図5(a)のルール1、図5(b)のルー
ル2、および図5(c)のルール3を遺伝子で表現し、
これらの遺伝子で始まる染色体を記述すると、図6に示
すように、AOCHLFKHLKHTQJT・・・とな
る。このようにして、所定の長さの染色体を、所定の数
作成する。
【0023】次に、ステップS2において、これらの文
法ルールを利用して、PLD1における論理セル41−
1乃至41−Nの数に対応する大きさを有するアルファ
ベットの行列を生成する。例えば、図7(a)に示すよ
うに、最初に、1個のアルファベット(O)を設定し、
左辺にこのアルファベット(O)を有する文法ルール、
例えば、図5(d)に示すルール4を適用して、アルフ
ァベット(O)を図7(b)に示す2×2行列に変換す
る。次に、この2×2行列の各要素Q、O、T、および
Eに対して、左辺にこれらのアルファベットを有する文
法ルール(図示せず)を適用することで、この2×2行
列は、図7(c)に示す4×4行列に変換される。
法ルールを利用して、PLD1における論理セル41−
1乃至41−Nの数に対応する大きさを有するアルファ
ベットの行列を生成する。例えば、図7(a)に示すよ
うに、最初に、1個のアルファベット(O)を設定し、
左辺にこのアルファベット(O)を有する文法ルール、
例えば、図5(d)に示すルール4を適用して、アルフ
ァベット(O)を図7(b)に示す2×2行列に変換す
る。次に、この2×2行列の各要素Q、O、T、および
Eに対して、左辺にこれらのアルファベットを有する文
法ルール(図示せず)を適用することで、この2×2行
列は、図7(c)に示す4×4行列に変換される。
【0024】同様に、この4×4行列の各要素に文法ル
ールを適用すると、図7(d)に示す8×8行列にな
り、さらに、この行列の要素に文法ルールを適用する
と、図7(e)の16×16行列となる。このようにし
て、アルファベットの行列における行の数(=列の数)
が、PLD1における論理セル41−1乃至41−Nの
数以上になるまで、行列の各成分に文法ルールを適用す
る。従って、所定の数の文法ルールだけで、大規模なア
ルファベットの行列を作成することもできる。
ールを適用すると、図7(d)に示す8×8行列にな
り、さらに、この行列の要素に文法ルールを適用する
と、図7(e)の16×16行列となる。このようにし
て、アルファベットの行列における行の数(=列の数)
が、PLD1における論理セル41−1乃至41−Nの
数以上になるまで、行列の各成分に文法ルールを適用す
る。従って、所定の数の文法ルールだけで、大規模なア
ルファベットの行列を作成することもできる。
【0025】例えば、論理セル41−1乃至41−Nの
数が16(N=16)である場合、図7(e)に示す行
列の大きさで充分であり、このアルファベットの行列を
変換して、論理セルの結合状態と、各論理セルが実行す
る機能を表す論理回路結合行列を作成する。
数が16(N=16)である場合、図7(e)に示す行
列の大きさで充分であり、このアルファベットの行列を
変換して、論理セルの結合状態と、各論理セルが実行す
る機能を表す論理回路結合行列を作成する。
【0026】論理回路結合行列の対角成分は、論理セル
41−1乃至41−Nの機能を表し、論理回路結合行列
の右上半分の成分は、論理セル41−1乃至41−Nの
結合状態を表現する。例えば、論理回路結合行列の第i
行、第j列の成分をAijで表すと、図8に示すよう
に、論理セル41−1乃至41−Nの機能が全部で6個
ある場合、対角成分Aiiは、0乃至5の整数とし、第
i番目の論理セル41−iの機能(AND論理演算、O
R論理演算など)を表現する。
41−1乃至41−Nの機能を表し、論理回路結合行列
の右上半分の成分は、論理セル41−1乃至41−Nの
結合状態を表現する。例えば、論理回路結合行列の第i
行、第j列の成分をAijで表すと、図8に示すよう
に、論理セル41−1乃至41−Nの機能が全部で6個
ある場合、対角成分Aiiは、0乃至5の整数とし、第
i番目の論理セル41−iの機能(AND論理演算、O
R論理演算など)を表現する。
【0027】また、非対角成分Aijは、0もしくは1
とし、第i番目の論理セル41−iと第j番目の論理セ
ル41−jの結合状態を表現する。Aij=1である場
合、Aijは、論理セル41−iと論理セル41−jが
結合することを表し、Aij=0である場合、Aij
は、これらの論理セル41−i,41−jが結合してい
ないことを表す。従って、この行列の右上半分もしくは
左下半分の成分だけで結合状態を表現することができ
る。この構成例においては、行列の右上半分の成分を利
用している。
とし、第i番目の論理セル41−iと第j番目の論理セ
ル41−jの結合状態を表現する。Aij=1である場
合、Aijは、論理セル41−iと論理セル41−jが
結合することを表し、Aij=0である場合、Aij
は、これらの論理セル41−i,41−jが結合してい
ないことを表す。従って、この行列の右上半分もしくは
左下半分の成分だけで結合状態を表現することができ
る。この構成例においては、行列の右上半分の成分を利
用している。
【0028】次に、図7(e)に示すようなアルファベ
ットの行列から、この論理回路結合行列を作成するに
は、例えば、アルファベットの行列の対角成分につい
て、Aからアルファベット順に、0,1,2,3,4,
5,0,1,2,3,・・・と、0乃至5のいずれかに
変換し、非対角成分については、A,B,Cを0に、そ
の他のアルファベットを1に変換する。これにより、図
7(e)に示すアルファベットの行列を、図8に示す論
理回路結合行列に変換することができる。
ットの行列から、この論理回路結合行列を作成するに
は、例えば、アルファベットの行列の対角成分につい
て、Aからアルファベット順に、0,1,2,3,4,
5,0,1,2,3,・・・と、0乃至5のいずれかに
変換し、非対角成分については、A,B,Cを0に、そ
の他のアルファベットを1に変換する。これにより、図
7(e)に示すアルファベットの行列を、図8に示す論
理回路結合行列に変換することができる。
【0029】このようにして、演算装置2は、文法ルー
ルの集合から論理回路結合行列を生成し、この行列を制
御信号として、PLD1に出力する。PLD1は、この
制御信号に従って、回路構成(論理セル41−1乃至4
1−Nの機能および結合状態)を変更する。
ルの集合から論理回路結合行列を生成し、この行列を制
御信号として、PLD1に出力する。PLD1は、この
制御信号に従って、回路構成(論理セル41−1乃至4
1−Nの機能および結合状態)を変更する。
【0030】次にステップS3において、PLD1は、
ステップS2で設定した論理回路に従って、ロボット1
1を動作させる。このロボット11の動作を観察した設
計者21は、ステップS4において、その動作を所定の
評価方法に従って評価し、入力装置3を操作して、その
評価を演算装置2に入力する。
ステップS2で設定した論理回路に従って、ロボット1
1を動作させる。このロボット11の動作を観察した設
計者21は、ステップS4において、その動作を所定の
評価方法に従って評価し、入力装置3を操作して、その
評価を演算装置2に入力する。
【0031】ステップS5において、演算装置2は、設
計者21が入力した評価から、設計者21が満足する動
作をロボット11が行ったか否かを判断し、設計者21
が満足する動作を行った場合は、処理を終了し、設計者
21が満足していない場合、ステップS6に進む。
計者21が入力した評価から、設計者21が満足する動
作をロボット11が行ったか否かを判断し、設計者21
が満足する動作を行った場合は、処理を終了し、設計者
21が満足していない場合、ステップS6に進む。
【0032】ステップS6においては、すべての染色体
に対応して、ロボット11を動作させたか否かを判断
し、すべての染色体についてロボット11を動作させる
まで、ステップS2乃至ステップS5の処理を繰り返
し、これらの処理が終了した後、ステップS7に進む。
に対応して、ロボット11を動作させたか否かを判断
し、すべての染色体についてロボット11を動作させる
まで、ステップS2乃至ステップS5の処理を繰り返
し、これらの処理が終了した後、ステップS7に進む。
【0033】そして、ステップS7において、演算装置
2は、各染色体に対するロボット11の動作に対する設
計者21の評価から、GAに基づいて、選択処理、交叉
処理、突然変異処理の3つの処理を行い、次世代の染色
体を生成する。
2は、各染色体に対するロボット11の動作に対する設
計者21の評価から、GAに基づいて、選択処理、交叉
処理、突然変異処理の3つの処理を行い、次世代の染色
体を生成する。
【0034】選択処理においては、染色体の集団の中か
ら、設計者21の評価に比例した確率で染色体を選択し
て、染色体のペアをつくる。従って、評価の高い(ロボ
ット11の動作を実現する)染色体に対して、多くのペ
アをつくる確率が高くなり、次世代に多くの子孫を残す
確率が高くなる。
ら、設計者21の評価に比例した確率で染色体を選択し
て、染色体のペアをつくる。従って、評価の高い(ロボ
ット11の動作を実現する)染色体に対して、多くのペ
アをつくる確率が高くなり、次世代に多くの子孫を残す
確率が高くなる。
【0035】交叉処理においては、選択処理で選択され
た各ペアに対して、乱数で2つの染色体を交叉する場所
を決定し、その桁以降のすべての桁の値を、2個の染色
体の間で交換する。例えば、左から4桁目で染色体AO
CHLFKHLK・・・と染色体BTTDTCDMTP
・・・を交叉させる場合、染色体BTTDLFKHLK
・・・と、染色体AOCHTCDMTP・・・の2個の
染色体がつくられる。
た各ペアに対して、乱数で2つの染色体を交叉する場所
を決定し、その桁以降のすべての桁の値を、2個の染色
体の間で交換する。例えば、左から4桁目で染色体AO
CHLFKHLK・・・と染色体BTTDTCDMTP
・・・を交叉させる場合、染色体BTTDLFKHLK
・・・と、染色体AOCHTCDMTP・・・の2個の
染色体がつくられる。
【0036】突然変異処理は、染色体において、乱数で
決定した桁のアルファベットを変化させるもので、次世
代の染色体をつくるとき、ある一定の低い確率で行われ
る。突然変異処理を行う場合は、変化させる桁を乱数を
用いて決定し、その桁のアルファベットを変更する。例
えば、染色体JFAIEMJECPにおいて、左から3
桁目(アルファベットA)で突然変異が起きた場合、処
理後の染色体は、例えば、JFBIEMJECPとな
る。
決定した桁のアルファベットを変化させるもので、次世
代の染色体をつくるとき、ある一定の低い確率で行われ
る。突然変異処理を行う場合は、変化させる桁を乱数を
用いて決定し、その桁のアルファベットを変更する。例
えば、染色体JFAIEMJECPにおいて、左から3
桁目(アルファベットA)で突然変異が起きた場合、処
理後の染色体は、例えば、JFBIEMJECPとな
る。
【0037】次世代の染色体を生成した後、ステップS
2に戻り、ステップS2乃至ステップS7の処理を、ス
テップS5において設計者21が、ロボットの動作に満
足するまで繰り返す。
2に戻り、ステップS2乃至ステップS7の処理を、ス
テップS5において設計者21が、ロボットの動作に満
足するまで繰り返す。
【0038】以上のようにして、PLD1の回路構成を
導出する文法ルールの集合を染色体として、GAに基づ
いて文法ルール(染色体)を更新することで、目的の信
号を出力する論理回路を設計する。
導出する文法ルールの集合を染色体として、GAに基づ
いて文法ルール(染色体)を更新することで、目的の信
号を出力する論理回路を設計する。
【0039】図9は、本発明の回路設計回路および方法
の一実施例でMXOR(多重排他的論理和)問題の一例
を解く場合の、適応度と染色体の世代との関係を示して
いる。適応度は、各染色体が表現するPLDの出力が、
目標となる出力にどの程度近いかを表す指標である。こ
のMXOR問題は、64個の論理セルを有するPLDを
用いて、8個のXOR論理素子から構成される論理回路
の入力と出力の関係(16入力、8出力)を実現するこ
とを課題とする。
の一実施例でMXOR(多重排他的論理和)問題の一例
を解く場合の、適応度と染色体の世代との関係を示して
いる。適応度は、各染色体が表現するPLDの出力が、
目標となる出力にどの程度近いかを表す指標である。こ
のMXOR問題は、64個の論理セルを有するPLDを
用いて、8個のXOR論理素子から構成される論理回路
の入力と出力の関係(16入力、8出力)を実現するこ
とを課題とする。
【0040】PLDに所定の入力を行い、この入力に対
するPLDの出力と、8個のXORを用いた場合の出力
(問題の解)との差が小さくなるように、GAを用い
て、PLDの機能を更新していく。
するPLDの出力と、8個のXORを用いた場合の出力
(問題の解)との差が小さくなるように、GAを用い
て、PLDの機能を更新していく。
【0041】この例においては、従来の技術を用いた場
合、95世代目でも適応度が750(最大値)であるの
に対して、本発明の回路設計装置および方法の一実施例
を用いた場合、10世代目で、適応度が780となる回
路構成を表現する染色体が現れ、迅速に回路設計を行う
ことができる。
合、95世代目でも適応度が750(最大値)であるの
に対して、本発明の回路設計装置および方法の一実施例
を用いた場合、10世代目で、適応度が780となる回
路構成を表現する染色体が現れ、迅速に回路設計を行う
ことができる。
【0042】図10は、本発明の回路設計装置および方
法の一実施例で、6マルチプレクサ(6-Multiplexor)
問題の一例を解く場合の、適応度と染色体の世代との関
係を示している。
法の一実施例で、6マルチプレクサ(6-Multiplexor)
問題の一例を解く場合の、適応度と染色体の世代との関
係を示している。
【0043】6マルチプレクサは、4つの入力チャンネ
ルと、2つのマルチプレックス信号チャンネルと、1つ
の出力チャンネルを有し、マルチプレックス信号チャン
ネルの値に従って、4つのうちの1つの入力チャンネル
の値を出力チャンネルに出力する。6マルチプレクサ問
題は、この6マルチプレクサの入力と出力との関係を実
現することを課題とする。
ルと、2つのマルチプレックス信号チャンネルと、1つ
の出力チャンネルを有し、マルチプレックス信号チャン
ネルの値に従って、4つのうちの1つの入力チャンネル
の値を出力チャンネルに出力する。6マルチプレクサ問
題は、この6マルチプレクサの入力と出力との関係を実
現することを課題とする。
【0044】この例においては、PLDに4つの入力チ
ャンネルと、2つのマルチプレックス信号チャンネルに
対応する入力を行い、この入力に対するPLDの出力
と、実際の6マルチプレクサの出力(問題の解)との差
が小さくなるように、GAを用いて、PLDの機能を更
新していく。
ャンネルと、2つのマルチプレックス信号チャンネルに
対応する入力を行い、この入力に対するPLDの出力
と、実際の6マルチプレクサの出力(問題の解)との差
が小さくなるように、GAを用いて、PLDの機能を更
新していく。
【0045】従来の技術を用いた場合、45世代目でも
適応度が0.66(最大値)であるのに対して、本発明
の回路設計装置および方法の一実施例を用いた場合、5
世代目で、適応度が0.98となる回路構成を表現する
染色体が現れ、迅速に回路設計を行うことができる。
適応度が0.66(最大値)であるのに対して、本発明
の回路設計装置および方法の一実施例を用いた場合、5
世代目で、適応度が0.98となる回路構成を表現する
染色体が現れ、迅速に回路設計を行うことができる。
【0046】なお、以上の実施例においては、ロボット
11の制御回路を設計したが、一般の論理回路の設計に
も、本発明を適用することができる。
11の制御回路を設計したが、一般の論理回路の設計に
も、本発明を適用することができる。
【0047】上記実施例において、GAを利用して、論
理回路の全域を設計したが、既に設計されている論理回
路を文法ルールに変換し、その文法ルールをGAの染色
体に組み込むことで、その論理回路を、新たに設計する
論理回路の一部として利用することもできる。この場
合、組み込まれる文法ルールに対しては、GAにおける
交叉処理と突然変異処理を行わず、その設計済みの論理
回路が、新たに設計する論理回路に組み込まれるように
する。
理回路の全域を設計したが、既に設計されている論理回
路を文法ルールに変換し、その文法ルールをGAの染色
体に組み込むことで、その論理回路を、新たに設計する
論理回路の一部として利用することもできる。この場
合、組み込まれる文法ルールに対しては、GAにおける
交叉処理と突然変異処理を行わず、その設計済みの論理
回路が、新たに設計する論理回路に組み込まれるように
する。
【0048】
【発明の効果】以上のように、請求項1に記載の回路設
計装置および請求項2に記載の回路設計方法によれば、
演算機能を導出する文法ルールを染色体とする遺伝的ア
ルゴリズムに基づいて、演算の結果が、目的の値に近づ
くように、演算機能を変更するようにしたので、染色体
の長さは、文法ルールの数に比例し、論理回路の規模に
は依存しないので、大規模な論理回路を迅速かつ簡単に
設計することができる。
計装置および請求項2に記載の回路設計方法によれば、
演算機能を導出する文法ルールを染色体とする遺伝的ア
ルゴリズムに基づいて、演算の結果が、目的の値に近づ
くように、演算機能を変更するようにしたので、染色体
の長さは、文法ルールの数に比例し、論理回路の規模に
は依存しないので、大規模な論理回路を迅速かつ簡単に
設計することができる。
【図1】本発明の回路設計装置の一実施例の構成例を示
すブロック図である。
すブロック図である。
【図2】図1の実施例におけるPLD1の構成例を示す
ブロック図である。
ブロック図である。
【図3】図1の実施例における演算装置2の構成例を示
すブロック図である。
すブロック図である。
【図4】図1の実施例の動作を説明するフローチャート
である。
である。
【図5】図1の実施例で利用される文法ルールの例を示
す図である。
す図である。
【図6】図1の実施例で利用される染色体の例を示す図
である。
である。
【図7】図5に示すような文法ルールに従って、行列を
展開する例を示す図である。
展開する例を示す図である。
【図8】図1の実施例において導出される論理回路結合
行列の例を示す図である。
行列の例を示す図である。
【図9】本発明の一実施例を適用してMXOR問題の一
例を解いたときの、適応度と染色体の世代との関係を示
す図である。
例を解いたときの、適応度と染色体の世代との関係を示
す図である。
【図10】本発明の一実施例を適用して6マルチプレク
サ問題の一例を解いたときの、適応度と染色体の世代と
の関係を示す図である。
サ問題の一例を解いたときの、適応度と染色体の世代と
の関係を示す図である。
1 PLD 2 演算装置 3 入力装置 11 ロボット 21 設計者 41−1乃至41−N 論理セル 42−1乃至42−M 結合スイッチ 61 CPU 62 ROM 63 RAM 64 インターフェース
Claims (2)
- 【請求項1】 演算を行い、動的に演算機能を変更する
ことができる演算手段と、 前記演算機能を導出する文法ルールを染色体とする遺伝
的アルゴリズムに基づいて、前記演算手段の出力が目的
の出力に近づくように、前記演算機能を変更する制御手
段とを備えることを特徴とする回路設計装置。 - 【請求項2】 演算を行う、動的に演算機能を変更する
ことができる演算素子の前記演算機能を導出する文法ル
ールを染色体とする遺伝的アルゴリズムに基づいて、前
記演算の結果が目的の値に近づくように、前記演算機能
を変更することを特徴とする回路設計方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7236512A JPH0981615A (ja) | 1995-09-14 | 1995-09-14 | 回路設計装置および方法 |
EP96306552A EP0763796A3 (en) | 1995-09-14 | 1996-09-10 | Circuit designing device and method using a genetic algorithm |
US08/712,996 US5897628A (en) | 1995-09-14 | 1996-09-10 | Circuit designing method and circuit designing device |
KR1019960039538A KR100432594B1 (ko) | 1995-09-14 | 1996-09-12 | 회로설계소자및회로설계방법 |
US09/170,541 US5926803A (en) | 1995-09-14 | 1998-10-13 | Circuit designing method and circuit designing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7236512A JPH0981615A (ja) | 1995-09-14 | 1995-09-14 | 回路設計装置および方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0981615A true JPH0981615A (ja) | 1997-03-28 |
Family
ID=17001811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7236512A Pending JPH0981615A (ja) | 1995-09-14 | 1995-09-14 | 回路設計装置および方法 |
Country Status (4)
Country | Link |
---|---|
US (2) | US5897628A (ja) |
EP (1) | EP0763796A3 (ja) |
JP (1) | JPH0981615A (ja) |
KR (1) | KR100432594B1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004109916A1 (ja) * | 2003-06-06 | 2004-12-16 | National Institute Of Advanced Industrial Science And Technology | デジタルシステム、デジタルシステムのクロック信号調整方法および、その調整方法で実行する処理プログラムを記録した記録媒体 |
JP2008517736A (ja) * | 2004-10-29 | 2008-05-29 | ゼネラル・エレクトリック・カンパニイ | センサ素子の再構成可能なアレイのための最適化スイッチング構成 |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5909674A (en) * | 1996-12-23 | 1999-06-01 | Philips Electronics North America Corp. | Method for optimizing the layout and charge maps of a flowline of pick and place machines |
US5864833A (en) * | 1996-12-23 | 1999-01-26 | Philips Electronics North American Corp. | Apparatus for optimizing the layout and charge maps of a flowline of pick and place machines |
US6336107B1 (en) * | 1997-07-31 | 2002-01-01 | Matsushita Electric Industrial Co., Ltd | Method and system of automatic arrangement of composing elements |
US6260178B1 (en) * | 1999-03-26 | 2001-07-10 | Philips Electronics North America Corporation | Component placement machine step size determination for improved throughput via an evolutionary algorithm |
US6728666B1 (en) | 1999-09-13 | 2004-04-27 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Evolvable circuit with transistor-level reconfigurability |
US7072814B1 (en) | 1999-09-13 | 2006-07-04 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Evolutionary technique for automated synthesis of electronic circuits |
US6526556B1 (en) | 1999-09-13 | 2003-02-25 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Evolutionary technique for automated synthesis of electronic circuits |
US6768973B1 (en) | 2000-04-12 | 2004-07-27 | Unilever Home & Personal Care Usa, Division Of Conopco, Inc. | Method for finding solutions |
US6757667B1 (en) | 2000-04-12 | 2004-06-29 | Unilever Home & Personal Care Usa, Division Of Conopco, Inc. | Method for optimizing formulations |
US6510547B1 (en) * | 2000-10-20 | 2003-01-21 | Xilinx, Inc. | Method and apparatus for evolving an object using simulated annealing and genetic processing techniques |
GB0105357D0 (en) * | 2001-03-03 | 2001-04-18 | Marconi Comm Ltd | Evolutionary programming of configurable logic devices |
US20020164070A1 (en) * | 2001-03-14 | 2002-11-07 | Kuhner Mark B. | Automatic algorithm generation |
US20030033251A1 (en) * | 2001-08-10 | 2003-02-13 | David Sherlock | Secure multi-function cash dispensing system |
US20040066462A1 (en) * | 2002-10-07 | 2004-04-08 | Mark Medow | Peripheral component interconnect (PCI) card for controlling a motorized zoom lens of a camera |
US20050071302A1 (en) * | 2003-09-29 | 2005-03-31 | Mcguffin Tyson R. | Method and system for mapping genes to characteristics in a genetic optimization process |
GB2408599A (en) * | 2003-11-29 | 2005-06-01 | Ibm | Multi-objective genetic optimization method |
US7171633B1 (en) | 2003-12-12 | 2007-01-30 | Altera Corporation | Estimating quality during early synthesis |
US7100141B1 (en) | 2003-12-23 | 2006-08-29 | Altera Corporation | Technology mapping technique for fracturable logic elements |
SE0402098D0 (sv) * | 2004-08-30 | 2004-08-30 | Abb Ab | A control system |
US8706423B2 (en) * | 2008-08-29 | 2014-04-22 | Jang Partners, Llc | Chemical reaction-type metaheuristic |
DE102010032314A1 (de) * | 2010-07-27 | 2012-02-02 | Volkswagen Ag | Verfahren und Vorrichtung zum modellbasierten Entwurf einer elektronischen Schaltung |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5390282A (en) * | 1992-06-16 | 1995-02-14 | John R. Koza | Process for problem solving using spontaneously emergent self-replicating and self-improving entities |
JP2974900B2 (ja) * | 1993-12-13 | 1999-11-10 | 株式会社 エイ・ティ・アール人間情報通信研究所 | 自律進化型ハードウェア設計システム |
-
1995
- 1995-09-14 JP JP7236512A patent/JPH0981615A/ja active Pending
-
1996
- 1996-09-10 US US08/712,996 patent/US5897628A/en not_active Expired - Lifetime
- 1996-09-10 EP EP96306552A patent/EP0763796A3/en not_active Withdrawn
- 1996-09-12 KR KR1019960039538A patent/KR100432594B1/ko not_active IP Right Cessation
-
1998
- 1998-10-13 US US09/170,541 patent/US5926803A/en not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004109916A1 (ja) * | 2003-06-06 | 2004-12-16 | National Institute Of Advanced Industrial Science And Technology | デジタルシステム、デジタルシステムのクロック信号調整方法および、その調整方法で実行する処理プログラムを記録した記録媒体 |
JP2008517736A (ja) * | 2004-10-29 | 2008-05-29 | ゼネラル・エレクトリック・カンパニイ | センサ素子の再構成可能なアレイのための最適化スイッチング構成 |
Also Published As
Publication number | Publication date |
---|---|
EP0763796A3 (en) | 1998-04-01 |
US5897628A (en) | 1999-04-27 |
KR100432594B1 (ko) | 2004-09-04 |
US5926803A (en) | 1999-07-20 |
EP0763796A2 (en) | 1997-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0981615A (ja) | 回路設計装置および方法 | |
Cui et al. | Adaptive multiple-elites-guided composite differential evolution algorithm with a shift mechanism | |
Gordon et al. | Towards development in evolvable hardware | |
Arumugam et al. | New hybrid genetic operators for real coded genetic algorithm to compute optimal control of a class of hybrid systems | |
Datta et al. | External control in Markovian genetic regulatory networks | |
US20020062296A1 (en) | Method and apparatus to model the variables of a data set | |
Coello et al. | Using genetic algorithms to design combinational logic circuits | |
CN111930007B (zh) | 优化装置和控制优化装置的方法 | |
Saburov et al. | Mathematical models of nonlinear uniform consensus II | |
EP1040582A2 (en) | Binary code converters and comparators | |
JPH06314185A (ja) | 可変論理演算装置 | |
Galán-Marın et al. | Modelling competitive Hopfield networks for the maximum clique problem | |
Wu et al. | A genetic approach for simultaneous design of membership functions and fuzzy control rules | |
CN110516807B (zh) | 半导体产品良品率极值计算方法及其极值计算系统 | |
JPH09179894A (ja) | 回路設計装置および方法 | |
JPH07319703A (ja) | 多数のファジイ論理推論規則の並列処理法及びその回路構成 | |
Feizi et al. | Digital hardware implementation of lightweight cryptography algorithm using neural networks | |
Balandina | Control system synthesis by means of cartesian genetic programming | |
Bhadra et al. | An encoding technique for design and optimization of combinational logic circuit | |
Lee et al. | A gate-level model for morphogenetic evolvable hardware | |
Duo et al. | The application of multi-criterion satisfactory optimization in fuzzy controller design | |
JP3033434B2 (ja) | 板組合せ設計装置 | |
JPH0973441A (ja) | 化学反応装置および方法 | |
Burian | Reduction of fitness calculations in Cartesian Genetic Programming | |
JPH06348674A (ja) | 演算素子結合網 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050912 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050921 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051121 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20051213 |