ファジィ制御器の設計(2)
高木・菅野のファジィ推論を用いて実際にファジィ制御器を設計します。例として、角を曲がるときの自動車のハンドルの操作モデルを考えます(菅野道夫:“ファジィ制御”、pp.102-107、日刊工業新聞社(1988))。

上図に示すような曲がり角における車の状態について、運転者の制御情報を、
x1 = 車から曲がり角の入り口までの距離
x2 = 車から道の右端までの距離
x3 = 道の進行方向に対する車の向き
x4 = 車から道の左端までの距離
とします。これらが前件部に事実として入力される値となります。車速を一定とし、ハンドルの切り角を出力とする場合、制御規則の前件部、及び後件部は以下のように表されます。これは人間にハンドル操作をさせて、うまく角を曲がれた時の入出力データから定められたものです。
ハンドル操作モデルの前件部 |
|
ハンドル操作モデルの後件部 |
ルール |
x1 |
x2 |
x3 |
x4 |
1 |
- |
- |
Out |
Very small |
2 |
- |
- |
Forward |
Very small |
3 |
Small |
Small |
Out |
- |
4 |
Small |
Small |
Forward |
- |
5 |
Small |
Small |
In |
- |
6 |
Small |
Big |
Out |
- |
7 |
Small |
Big |
Forward |
- |
8 |
Small |
Big |
In |
- |
9 |
Medium |
Small |
Out |
- |
10 |
Medium |
Small |
Forward |
- |
11 |
Medium |
Small |
In |
- |
12 |
Medium |
Big |
Out |
- |
13 |
Medium |
Big |
Forward |
- |
14 |
Medium |
Big |
In |
- |
15 |
Big |
Small |
Out |
- |
16 |
Big |
Small |
Forward |
- |
17 |
Big |
Small |
In |
- |
18 |
Big |
Big |
Out |
- |
19 |
Big |
Big |
Forward |
- |
20 |
Big |
Big |
In |
- |
|
|
ルール |
b |
a1 |
a2 |
a3 |
a4 |
1 |
3.000 |
0.000 |
0.000 |
-0.045 |
-0.004 |
2 |
3.000 |
0.000 |
0.000 |
-0.030 |
-0.090 |
3 |
3.000 |
-0.041 |
0.004 |
0.000 |
0.000 |
4 |
0.303 |
-0.026 |
0.061 |
-0.050 |
0.000 |
5 |
0.000 |
-0.025 |
0.070 |
-0.075 |
0.000 |
6 |
3.000 |
-0.066 |
0.000 |
-0.034 |
0.000 |
7 |
2.990 |
-0.017 |
0.000 |
-0.021 |
0.000 |
8 |
1.500 |
0.025 |
0.000 |
-0.050 |
0.000 |
9 |
3.000 |
-0.017 |
0.005 |
-0.036 |
0.000 |
10 |
0.053 |
-0.038 |
0.080 |
-0.034 |
0.000 |
11 |
-1.220 |
-0.016 |
0.047 |
-0.018 |
0.000 |
12 |
3.000 |
-0.027 |
0.000 |
-0.044 |
0.000 |
13 |
7.000 |
-0.049 |
0.000 |
-0.041 |
0.000 |
14 |
4.000 |
-0.025 |
0.000 |
-0.100 |
0.000 |
15 |
0.370 |
0.000 |
0.000 |
-0.007 |
0.000 |
16 |
-0.900 |
0.000 |
0.034 |
-0.030 |
0.000 |
17 |
-1.500 |
0.000 |
0.005 |
-0.100 |
0.000 |
18 |
1.000 |
0.000 |
0.000 |
-0.013 |
0.000 |
19 |
0.000 |
0.000 |
0.000 |
-0.006 |
0.000 |
20 |
0.000 |
0.000 |
0.000 |
-0.100 |
0.000 |
|
前件部のファジィ集合は変数x1について(Small,Medium,Big)と一つのファジィ集合で表すのではなく場合分けをして考えています。x2では(Small,Big)、x3では(In,Out,Forward)と場合分けをしていますが、x4では(Very small)のときだけを考えています。なお、上の表で横線をひいてあるところは、Anyと読む箇所で、ここでは常に適合度を1として考えます。以下にそれぞれの変数におけるファジィ集合を示します。これらのパラメータも、道と車の幾何学的配置から発見的に定めたものです。
以下のアプレットでは上記した制御規則を用いてハンドルの制御を行っています。
自動車のハンドル制御シミュレーション2
戻る
次へ