GAを用いたファジィ制御のチューニング

ファジィ制御の対象は倒立振子である。まず、倒立振子の振り上げ安定化制御をファジィによって行う。その後、GAによってファジィ制御におけるメンバシップ関数やパラメータを調節し、制御のチューニングを行う。

倒立振子

要は箒を手のひらの上で立たせて遊んでいたあれである。本研究での振子およびそれが固定された台車の概念図を図に示す。図を見ればわかるように、振子の回転軸が固定されている台車を左右に動かすことで振子を左右に振らせることが出来る。振子をぶら下がった状態から垂直に立つように振り上げるのが振り上げ制御であり、何も制御しなければ重力によって倒れてしまう振子を立たせたままにするのが安定化制御である。



ファジィ制御

「あいまいさ」を取り入れた制御である。あいまいな幾つかのルールを組み合わせることで、制御を行う。倒立振子の場合の例を挙げると、「倒立点からの振子のずれが大きいときには、そのずれを補正する向きに台車に大きな力を加えよ」や、「倒立点からの振子のずれが小さいときには、そのずれを補正する向きに台車に小さい力を加えよ」といったルールを組み合わせることによって制御を行うということである。このルールの中にある「大きい」、「小さい」といった言葉は具体的な値を示しているわけではなく、「あいまいさ」を含んだものとなっている。例えば、仮に50が大きくて、10は小さいとしてみよう。その際に45は結構大きいとも言えるし、ほんの少し小さいとも言える。この「結構」や「ほんの少し」といった度合いによってそれぞれのルール(この場合だと「大きければ〜せよ」と「小さければ〜せよ」というルール)をどの程度適用するかを決めるわけである。この場合、「大きければ〜せよ」というルールを強く適用し、「小さければ〜せよ」というルールを弱く適用することになる。

GA(遺伝的アルゴリズム)

1つのデータ(制御におけるパラメータ等)を生物でいうところの1個体とみなし、個体群(データの集合体)に対し、遺伝的な操作をとりおこなうことで、優れたもの(有効なパラメータなど)を得ようとするアルゴリズムである。代表的な遺伝的操作としては、再生、交叉、突然変異が挙げられる。再生とは、個体をそのまま再生するものである。その際には、個体群の中の優れた個体をより多く残すようにする。交叉とは、個体群の中の二つの個体を組み合わせるものである。突然変異とは、個体をランダムに改変するものである。以上の操作を繰り返して適用することで、個体群中には優れた個体が多く存在することになり、有効なパラメータを導き出すことが出来ることになる。

前に戻る