...

福祉車両の走行支援情報提供システムの開発

by user

on
Category: Documents
21

views

Report

Comments

Transcript

福祉車両の走行支援情報提供システムの開発
筑波大学大学院博士課程
システム情報工学研究科修士論文
福祉車両の走行支援情報提供システムの開発
武藤 裕美
(知能機能システム専攻)
指導教官 安信 誠二
2002 年 2 月
概要
高齢化などにより、日常生活や社会参加に不可欠な「身体の移動」の困難な人が多くなり、
福祉車両が注目を集めている。しかし、操作の支援なしで走行操作を行うのが不安であるよ
うな人の場合、何らかの形で走行操作支援を行う必要がある。
本論文では人間の支援者のように、状況に柔軟に応じて操作支援を行う、走行支援情報提
供システムを提案、開発する。手法として、ファジィ理論を取り入れる。ファジィ理論は言
語知識をルール化し組み込み、多目的評価を行うことができるという特徴がある。開発する
システムは、言語知識が組み込まれているので、推論過程が把握しやすく、また、多目的評
価により柔軟に状況に対応できるシステムとなる。ジョイステックを用いた車庫入れシミュ
レーション実験を行い、その有効性を確認する。
目次
第 1 章 序論
1
第 2 章 ファジィ理論とファジィ制御
2.1 ファジィ集合 . . . . . . . . . . . . . . . . . . . .
2.1.1 ファジィ集合の記述 . . . . . . . . . . . .
2.1.2 ファジィ集合の演算 . . . . . . . . . . . .
2.2 ファジィ推論 . . . . . . . . . . . . . . . . . . . .
2.2.1 min-max 重心法 (マムダニの推論法) . . .
2.2.2 product-sum 重心法 (代数積-加算重心法)
2.2.3 簡略推論法 . . . . . . . . . . . . . . . . .
2.3 ファジィ制御 . . . . . . . . . . . . . . . . . . . .
2.3.1 状態評価ファジィ制御 . . . . . . . . . . .
2.3.2 予見ファジィ制御方式 . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
3
3
4
10
14
14
17
18
19
19
22
.
.
.
.
24
24
24
25
26
第 4 章 支援
4.1 支援の概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 走行支援 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.1 人間の走行支援 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
27
28
28
第5章
5.1
5.2
5.3
5.4
31
32
34
34
35
35
41
第 3 章 福祉車両
3.1 福祉車両利用の背景 . . . . .
3.2 福祉車両の種類 . . . . . . . .
3.2.1 対象とする電動車椅子
3.3 支援の必要性 . . . . . . . . .
走行支援情報提供システム
自動車の走行特性 . . . . .
駐車制御 . . . . . . . . . .
状況判断部 . . . . . . . .
目標設定部 . . . . . . . .
5.4.1 戦略目標 . . . . . .
5.4.2 戦術目標 . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
i
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5.5
第6章
6.1
6.2
6.3
支援情報提供部 . . . . . . .
5.5.1 操作候補決定 . . . .
5.5.2 提供情報の種類決定
5.5.3 支援情報決定 . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
44
44
48
53
ジョイスティックを用いた実験と考察
実験条件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
実験結果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
考察 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
56
56
58
58
第 7 章 結論
63
謝辞
64
参考文献
65
ii
図目次
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
2.10
2.11
2.12
2.13
2.14
2.15
2.16
従来集合とファジィ集合 . . . . . . . . . .
S 型メンバーシップ関数 . . . . . . . . . .
Z 型メンバーシップ関数 . . . . . . . . . .
π 型メンバーシップ関数 . . . . . . . . . .
列挙型メンバーシップ関数 . . . . . . . . .
ベクトル型メンバーシップ関数 . . . . . .
ファジィ集合の例 . . . . . . . . . . . . . .
ファジィ論理和,論理積 . . . . . . . . . .
ファジィ代数和,代数積 . . . . . . . . . .
ファジィ限界和,限界積 . . . . . . . . . .
ファジィ補演算 . . . . . . . . . . . . . . .
min-max 重心法(マムダニ法)の推論過程
product-sum 重心法の推論過程 . . . . . .
簡略化推論法の推論過程 . . . . . . . . . .
状態評価ファジィ制御方式の概要 . . . . .
予見ファジィ制御方式の概要 . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4
7
7
9
10
10
11
12
13
13
14
17
18
19
20
23
3.1
電動車椅子概観 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
4.1
4.2
人間の行為にいたるまでのプロセス . . . . . . . . . . . . . . . . . . . . . . .
人間の走行支援のモデル . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
30
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.10
走行支援情報提供システムの構成 . . . . . . . . . .
アッカーマン・ジャントウ旋回 . . . . . . . . . . .
本研究で扱う車庫環境 . . . . . . . . . . . . . . . .
状況判断の例 . . . . . . . . . . . . . . . . . . . . .
戦略選択に用いるファジィ集合 . . . . . . . . . . .
切り返し動作の例 . . . . . . . . . . . . . . . . . . .
幅寄せ動作の例 . . . . . . . . . . . . . . . . . . . .
経路決定のファジィ推論に用いられるファジィ集合
戦術目標の算出例 . . . . . . . . . . . . . . . . . . .
戦術目標到達のための操作候補 . . . . . . . . . . .
32
33
34
35
36
37
39
42
42
45
iii
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5.11 予見ファジィ制御の推論過程 . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.12 操作候補の決定に用いたメンバシップ関数 . . . . . . . . . . . . . . . . . . .
5.13 支援情報の種類決定に用いたメンバシップ関数 . . . . . . . . . . . . . . . . .
6.1
6.2
6.3
6.4
6.5
6.6
6.7
6.8
6.9
6.10
6.11
6.12
6.13
6.14
6.15
実験風景 . . . . . . . . . . . . . . . . . . . . .
シミュレーション画面 . . . . . . . . . . . . .
シミュレーションで用意した車庫の形状 . . .
実験結果:初期値 1(245,167,2.47)、被験者 (a) .
実験結果:初期値 1(245,167,2.47)、被験者 (b) .
実験結果:初期値 1(245,167,2.47)、被験者 (c) .
実験結果:初期値 1(245,167,2.47)、被験者 (d) .
実験結果:初期値 2(112,238,2.90)、被験者 (a) .
実験結果:初期値 2(112,238,2.90)、被験者 (b) .
実験結果:初期値 2(112,238,2.90)、被験者 (c) .
実験結果:初期値 2(112,238,2.90)、被験者 (d) .
実験結果:初期値 3(-129,196,-3.14)、被験者 (a)
実験結果:初期値 3(-129,196,-3.14)、被験者 (b)
実験結果:初期値 3(-129,196,-3.14)、被験者 (c)
実験結果:初期値 3(-129,196,-3.14)、被験者 (d)
iv
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
45
47
52
56
57
58
60
60
60
60
61
61
61
61
62
62
62
62
第1章
序論
高齢化の進行と共に、日常生活や社会参加に不可欠な「身体の移動」の困難な人の数が非
常に多くなり、高齢者や障害者の移動を助ける手段として、福祉車両が注目され、公共福祉
等、種々の対策が試みられている。しかし、認知、判断が衰えた高齢者や、身体障害者の中に
は、操作の支援なしで走行操作を行うには不安が残る人も多いと考えられる。その場合、何
らかの形で支援を行う者が必要となる。人間の介護者が不足している場合、福祉車両自体に
走行の支援機能を搭載することが望ましい。
本論文で構築する走行支援情報提供システムは、人間の支援者の代わりに走行支援を行う
システムである。支援を行う際に重要なのは、被支援者である操作者が受け取りやすい操作
支援情報を提供することである。また、人間の操作者による曖昧な車両操作に柔軟に対応す
る必要がある。つまり、システムが結論を出した過程が、被支援者である操作者に把握しや
すく、かつ、システム自体が多目的である状況に柔軟に対応するようなシステムでなくては
ならない。よって、従来の制御手法である、設定した目標値を守るように制御指令を決定す
る PID 制御や、最適制御、また、結果を出した過程を把握しにくいニューラルネットワーク
[1] や、遺伝的アルゴリズムなどのような学習法よりも、人間の言語知識を元に推論ルールを
作成することができ、かつ、多目的評価の行えるファジィ制御手法が本研究のシステムには
適していると考え、導入した。
本論文では、人間の操作支援のモデル化を行い、それに基づいて支援システムを構成する。
その後、状態評価ファジィ推論と、予見ファジィ制御の組み合わせによって最適と思われる
操作候補を導き出し、その推論過程で得られた情報や使用した知識を支援情報として利用す
る。状態評価ファジィ推論を用いて、それらの支援情報を状況に応じて柔軟に提供するシス
テムを開発する。
本論文の構成は次の通りである。
第 1 章は序論である。
第 2 章はシステムに用いている状態評価ファジィ推論と予見ファジィ制御の基本となるファ
ジィ理論について簡単に述べる。
第 3 章は本研究の対象である、福祉車両利用の背景と、福祉車両の種類、ならびに走行支援
の必要性について述べる。
第 4 章は、支援の概念について考察し、人間の操作支援のモデル化とそれに基づいた走行操
作支援情報提供システムの構成の考え方について述べる。
第 5 章は第 4 章の人間の支援者による走行支援モデルに基づいて、走行支援情報提供システ
ムを構築する。
1
第 6 章は第 5 章で構築したシステムを用いて車庫入れシミュレーションの走行操作支援実験
を行い、実験条件とその結果、および考察を述べる。
第 7 章は結論である。
2
第2章
ファジィ理論とファジィ制御
ファジィ理論の研究は、1965 年にカリフォルニア大学のザデー (L. A. Zadeh) 教授が、人
間の主観的な思考や判断過程をモデル化し、これを定量的に取り扱う表現手段として「ファ
ジィ集合 (Fuzzy Sets)」を提唱したことに端を発する [2]。ファジィ理論はマムダニ (E. A.
Mamdani) によってはじめて制御分野へ適用されて、スチームエンジン実験装置の制御 [3] で
その有効性が示された。その後、制御分野をはじめ人工知能、エキスパートシステム、デー
タベース、パターン認識、最適化、画像処理、経済、経営などの分野に適用され、あいまい
さの処理に重要な役割を果たすようになってきた。
ファジィ理論に関する著書はたくさんあるが、本論文で用いるファジィ制御の予備知識と
して、ファジィ理論の概念や数学的基礎を述べる必要がある。そこで、本章では、ファジィ
理論の中でも人間の言葉のあいまいさをコンピュータで取り扱う概念としてのファジィ集合、
メンバシップ関数の記述、ファジィ集合の演算、非ファジィ化と、人間の経験に基づく大局
的意志決定を代行する方法であるファジィ推論について述べる。最後にファジィ推論により
熟練者の技法を組み込んだファジィ制御について文献 [4][5] を中心に適時さまざまな文献を引
用しながら簡単に述べる。
2.1
ファジィ集合
ファジィ集合は、1965 年にザデー教授により人間の持つ言葉の意味のあいまいさ (fuzziness)
を数学的に取り扱うため提案 [2] された概念である。従来集合の考え方では、その言葉の意味
するところに、ある要素が属するか属さないかの、1 または 0 の二値で定義していた。これに
対してファジィ集合では、ある要素がその言葉に属する度合(メンバシップ値)を、0.0 から
1.0 の間の連続値に拡張して定義している。このファジィ集合により、シンボル(文字,記号)
記述している言葉の意味として、人間が主観的に持っている概念を、数学的に(コンピュー
タによって)扱うことができる。当然のことながら、このファジィ理論によって人間の主観
が全て取り扱える訳ではない。
「快適」,
それでは、室温(ここでは、0◦C から 40◦C を考える)に対して持っている「寒い」,
「暑い」といった言葉を例として、その意味について考えてみよう。
従来集合によれば、「室温が快適である」は、例えば 15◦C から 25◦C の間であると定義し、
「室温が寒い」とは、15◦C 未満であると明確に定義する (図 2.1(a))。そのため、14.9◦C は、
15◦C から 0.1◦C 低いだけで「快適」でなく「寒い」と取り扱わざるを得ない。
しかし人間は室温を寸分違わず明確に分けていない。「26◦C は、快適というよりも暑い方
3
だ」,
「30◦C は、ほとんど暑いといえる」といった、あいまいな判断をしている。すなわち、
境界が不明確であり、あいまいさを持っている。この人間のあいまいさを持って物を促える概
念を、各要素に対してその概念に属する度合いを 0.0 から 1.0 の間の連続値をとるメンバシッ
プ関数 µ(x) を用いて定義するのが、ファジィ集合の考え方である。たとえば気温が 30◦C の
場合には、快適が 0.5,暑いが 1.0,寒いが 0.25 という、各度合いの値を得ることができる (図
2.1(b))。ここで、気温を 10◦C 刻みの値で測定したとすると、0◦C から 40◦C の測定値の全体
図 2.1: 従来集合とファジィ集合
V は {0◦C,10◦C,20◦C,30◦C,40◦C} の 5 個の有限集合となる。このとき図 2.1(b) に示した「快
適」のファジィ命題を定義するファジィ集合 M は、
M = 0.25/0 + 0.5/10 + 1.0/20 + 0.5/30 + 0.25/40
(2.1)
と各要素について、度合い/要素値の和として表わすことができる。
ここで、快適のメンバシップ関数 µM (x) とすると、ある要素 xi における度合いは µM (xi )
P
となり、 記号を用いて形式的に、
M=
5
X
µM (xi )/xi
(2.2)
i=1
と表わすことができる。
R
さらに、室温の測定値が 0◦C から 40◦C まで連続的に測定できるような時、積分記号
を
用い、M は次のように書かれる。
Z
M=
µM (x)/x
(2.3)
P
R
V
ただし、これら
や積分記号
は、単なる表記法であり、実際に積算や積分を実行するも
のではない。
このようにしてファジィ集合により、人間が室温に関して持っている主観を数値として定
量化し、コンピュータにより扱うことができる。
2.1.1
ファジィ集合の記述
ファジィ集合は、一般には (2.1)~(2.3) 式のように記述される。しかし、これらの記述法で
は、あまりにも自由度が多すぎ、実システムに適用しようとした場合、どのようなメンバシッ
4
プ関数を設定してよいのか判断に迷う場合が多くなる。そのため、ここでは以下に示すよう
な関数を定義し、言葉の意味をファジィ集合により記述するのに用いている [4]。
ファジィ集合とは、ある状態量に対する言葉の意味を定義するものである。そこで、ここ
では、その言葉の意味を、要素となる状態量が適合(満足)する度合に応じて要素の区間を
定義していく。具体的には、
1. 最大に適合する区間を、メンバシップ値が 1.0 の区間、
2. 普通に適合する区間を、メンバシップ値が 0.5 の区間、
3. 多少不満だが適合すると考えてもよい区間を、メンバシップ値が 0.25 の区間、
として考え、そのファジィ集合を定義している。
次に、ファジィ集合のメンバシップ関数を記述するため、右上から左下へ下降する関数(S
の字を左右に引き伸ばした形状から、S 関数と呼ぶ)、左上から右下へ下降する関数(同様に
Z 関数と呼ぶ)、これらを重ね合わせた凸型の関数(π 関数と呼ぶ)を定義する。
各関数のパラメータの内、 as と az は最大適合(適合度=1.0)区間を表し、bs と bz はメ
ンバシップ値が 1.0 から 0.5 に低下する区間の長さを表す。さらに、2bs, 2bz 離れると、メン
バシップ値が 0.25 まで低下しているとしている。
ファジィ制御等では、三角形メンバシップ関数を使用することも多い。この場合は、形式
的に区間 bs と bz の値として負の値を与えることにより関数を切り替えるようにしている。
また、ファジィ集合の用途によっては、最大適合区間だけを拡大したいという要求もある
ため、さらにパラメータ cs, cz により最大適合区間を、メンバシップ関数の広がりとは別に、
明確に定義することを可能としている。
ここで、パラメータ cs と cz を記述しないときには、それぞれ as と az と同じとする。パ
ラメータ bs と bz を 0 とした場合には、傾きが無限大を意味し、特にステップ状の関数とし
て扱う。また、パラメータ bs と bz を記述しない時には、その値が 0 であるとする。
5
(1) 左下がり関数(S 関数) (図 2.2)
S 関数には、そのパラメータ数に応じて、S1,S2,S3 の三つの関数がある。これらの区別
は、パラメータの数を見れば自明であり、通常 S 関数として総称して用いる。
(ⅰ)S1 関数(図 2.2(a))
S1(x,as) = 1.0
x ≥ as
= 0.0
x < as
(ⅱ)S2 関数(図 2.2(b),(c))
S2(x,as,bs) = 1.0
x ≥ as
= bs/(as + bs − x)
bs > 0
かつ
x < as
= 1.0 − (as − x)/(2|bs|)
bs < 0
かつ
= 0.0
bs < 0
かつ
as − 2|bs| < x < as
= S1(x,as)
bs = 0
x ≤ as − 2|bs|
(ⅲ)S3 関数(図 2.2(d),(e))
x ≥ as
S3(x, as, bs, cs) = 1.0
= S2(x, as, bs)
x < cs
(2) 右下がり関数(Z 関数) (図 2.3)
Z 関数は、S 関数を左右対象にしたものである。したがって、そのパラメータ数に応じて、
Z1,Z2,Z3 の三つの関数がある。これらの区別も、パラメータの数を見れば自明であり、通
常 Z 関数として総称して用いる。
(ⅰ)Z1 関数 (図 2.3(a))
Z1(x, az) = 1.0
x ≤ az
= 0.0
x > az
(ⅱ)Z2 関数 (図 2.3 (b),(c))
x ≤ az
Z2(x, az, bz) = 1.0
= bz/(x − az + bz)
bz > 0
かつ
x > az
= 1.0 − (x − az)/(2|bz|)
bz < 0
かつ
az < x < az + 2|bz|
= 0.0
bz < 0
かつ
az + 2|bz| ≤ x
= Z1(x, az)
bz = 0
6
図 2.2: S 型メンバーシップ関数
図 2.3: Z 型メンバーシップ関数
7
(ⅲ)Z3 関数 (図 2.3(d),(e))
x ≤ cz
Z3(x, az, bz, cz) = 1.0
= Z2(x, az, bz)
x > cz
(3) 凸形関数 (π 関数) (図 2.4)
π 関数は、S 関数と Z 関数を組み合わせたものである。したがって、そのパラメータ数に
応じて、3 × 3 の九つの関数 π11 から π33 がある。しかし、以下に示すように各関数は、パ
ラメータを補充することにより、左右対象な場合である π11,π22,π33 で表現できる。した
がって、基本的には、これらの三つの関数を用いることとし、その形状を図 2.4 に示す。これ
らの区別も、パラメータの数を見れば自明であり、通常 π 関数として総称して用いる。
(ⅰ)π11 関数(図 2.4(a),(b))
π11(x, as, az) = min{S1(x, as), Z1(x, az)}
(ⅱ)π12 関数
π12(x, as, az, bz) = min{S1(x, as), Z2(x, az, ba)}
= π22(x, as, az, 0, bz)
(ⅲ)π13 関数
π13(x, as, az, bz, cz) = min{S1(x, as), Z3(x, az, bz, cz)}
= π33(x, as, az, 0, bz, as, cz)
(ⅳ)π21 関数
π21(x, as, az, bs) = min{S2(x, as, bs), Z1(x, az)}
= π22(x, as, az, bs, 0)
(ⅴ)π22 関数(図 2.4(c),(d),(e))
π22(x, as, az, bs, bz) = min{S2(x, as, bs), Z2(x, az, bz)}
(ⅵ)π23 関数
π23(x, as, az, bs, bz, cz) = min{S2(x, as, bs), Z3(x, az, bz, cz)}
= π33(x, as, az, bs, bz, cz)
(ⅶ)π31 関数
π31(x, as, az, bs, cs) = min{S3(x, as, bs, cs), Z1(x, az)}
= π33(x, as, az, bs, 0, cs, az)
8
(ⅷ)π32 関数
π32(x, as, az, bs, bz, cs) = min{S3(x, as, bs, cs), Z2(x, az, bz)}
= π33(x, as, az, bs, bz, cs, az)
(ⅸ)π33 関数(図 2.4(f))
π33(x, as, az, bs, bz, cs, cz) = min{S3(x, as, bs, cs), Z3(x, az, bz, cz)}
図 2.4: π 型メンバーシップ関数
(4) 列挙型関数 (図 2.5)
この関数記述法は、度合と要素値を組み合わせて列挙している(2.1)式を直接記述しよう
とする方法である。ここで、”/ ”はグレードと要素の組み合わせの記号であり、”+ ”は ”,”
と同様に単なる句切り記号として用いている。
µ(x) = {x : y1 /x1 + y2 /x2 + · · · + yM /xM }
9
図 2.5: 列挙型メンバーシップ関数
(5) ベクトル型関数 (図 2.6)
ファジィ集合を実際に演算しようとした時、上記列挙型関数で各要素の値 (x1 , · · · , xM ) を
任意の値ではなく、最小値 x0 と最大値 xN を N 等分割した値として与える場合も多い。この
場合には、第 i 番目の要素 xi は、
xi = x0 + i × (xN − x0 )/N
により特定できる。したがって、N + 1 個の各要素に対するグレード値をベクトルとして簡
潔に記述できる。
µ(x) = [x : x0 , xN , N ] < g0 , g1 , · · · , gN >
図 2.6: ベクトル型メンバーシップ関数
2.1.2
ファジィ集合の演算
ファジィ集合は、メンバシップ関数でその特性が定義されているため、通常のクリスプ集
合の、0 か 1 かの二値論理ではなく、0.0 から 1.0 の連続した値をとる無限値論理に基づいて
いる。そのため、演算方法も多種多様の定義が可能である。ここでは、0 ℃から 100 ℃を定義
域とする水温を例として、各演算に関する具体例を示そう。
演算に使用するファジィ集合の例として、図 2.7 に示すような、
10
「水温が中位」
:
M=
Z
µM (x)/x
µM (x) = π(x, 35, 45, −25, −25)
「水温が高い」
:
H=
Z
µH (x)/x
µH (x) = π(x, 80, 90, −12.5, −10)
の二つのファジィ命題を用いる。
これらのファジィ集合を、0 ℃から 100 ℃を 10 分割した要素に対するグレードを、列挙型
関数として記述すると、
µM (x) = {x : 0.3/0 + 0.5/10 + 0.7/20 + 0.9/30 + 1.0/40 + 0.9/50 +
0.7/60 + 0.5/70 + 0.3/80 + 0.1/90 + 0.0/100}
µH (x) = {x : 0.0/0 + 0.0/10 + 0.0/20 + 0.0/30 + 0.0/40 + 0.0/50 +
0.1/60 + 0.6/70 + 1.0/80 + 1.0/90 + 0.5/100}
となる。ここで、水温の全体集合を、
[水温] = [x : 0, 100, 10]
と略記することにしよう。これにより、各ファジィ集合は、11 個のグレードを用いてベクト
ル型関数で以下のように表わせる。
µM (x) = [水温] < 0.3, 0.5, 0.7, 0.9, 1.0, 0.9, 0.7, 0.5, 0.3, 0.1, 0.0 >
µH (x) = [水温] < 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.1, 0.6, 1.0, 1.0, 0.5 >
図 2.7: ファジィ集合の例
[Ⅰ]積和演算
11
従来集合ではファジィ集合におけるグレードに相当する値は、0 か 1 の二値だけである。そ
のため、積和演算は単純な AND,OR の演算となる。これに対して、ファジィ集合では、0.0
から 1.0 まで連続したグレードを持ち、無限値論理として考えることもできる。そのため、積
和演算 (and,or) について、ベクトル型で数値を、図にてその形状を示そう。
(a) 論理和 (max),論理積 (min) (図 2.8)
この演算では、各要素のグレードについてそれぞれ、最大値 (max) および最小値 (min) を
求める。
論理和 (max):「水温が中位」or「水温が高い」= M ∪ H
R
R
= µM (x) ∨ µ(x)/x = max{µ(x), µ(x)}/x
µM ∪H (x)=[水温] < 0.3,0.5,0.7,0.9,1.0,0.9,0.7,0.5,1.0,1.0,0.5 >
論理積 (min):「水温が中位」and「水温が高い」= M ∩ H
R
R
= µM (x) ∧ µ(x)/x = min{µ(x), µ(x)}/x
µM ∩H (x)=[水温] < 0.0,0.0,0.0,0.0,0.0,0.0,0.1,0.5,0.3,0.1,0.0 >
図 2.8: ファジィ論理和,論理積
(b) 代数和,代数積 (図 2.9)
この演算では、各要素のグレードについてそれぞれ、代数和および代数積(乗算)を求める。
代数和:
「水温が中位」or「水温が高い」= M +̇H
R
= {µM (x) +µH (x) − µM (x)・µH (x)}/x
µM +̇H (x)=[水温] < 0.3,0.5,0.7,0.9,1.0,0.9,0.73,0.8,1.0,1.0,0.5 >
代数積:
「水温が中位」and「水温が高い」= M・H
R
= µM (x)・µH (x)/x
µM ・H (x)=[水温] < 0.0,0.0,0.0,0.0,0.0,0.0,0.07,0.3,0.3,0.1,0.0 >
12
図 2.9: ファジィ代数和,代数積
(c) 限界和,限界積 (図 2.10)
この演算では、各要素のグレードについてそれぞれ、加算を行い、1.0 以下の部分を限界和、
1.0 より飛び出た部分を限界積としている。
限界和:
「水温が中位」or「水温が高い」=M ⊕ H
R
= min{(µM (x) +µH (x)), 1}/x
µM ⊕H (x)=[水温] < 0.3,0.5,0.7,0.9,1.0,0.9,0.8,1.0,1.0,1.0,0.5 >
限界積:
「水温が中位」and「水温が高い」=M ¯ H
R
= max{(µM (x) +µH (x)) − 1, 0}/x
µM ¯H (x)=[水温] < 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.1,0.3,0.1,0.0 >
図 2.10: ファジィ限界和,限界積
[Ⅱ]補演算
従来集合では、補演算は、各要素の 0 と 1 を逆にすることになる。これに対して、ファジィ
集合では、一般的にはメンバシップ関数を 1.0 から引く演算を行なうことにより、否定を表わ
13
す補演算を行なう(図 2.11)。
R
「水温が中位ではない」=~M = 1 − µM (x)/x
µ~M (x)=[水温] < 0.7,0.5,0.3,0.1,0.0,0.1,0.3,0.5,0.7,0.9,1.0 >
図 2.11: ファジィ補演算
2.2
ファジィ推論
ファジィ制御で用いられるファジィ推論は、ファジィ論理に基づく一般のファジィ推論よ
りも簡略化された推論法である。その理由は
1. ファジィ推論のための入力情報がファジィ集合でなく実数値であること
2. ファジィ制御ではファジィ推論の計算速度を速める必要があること
である。このためにファジィ制御のためのファジィ推論法として、何種類かの方法が提案さ
れている。ここでは、ファジィ制御のための代表的なファジィ推論法を紹介する。
2.2.1
min-max 重心法 (マムダニの推論法)
この推論は、ロンドン大学のマムダニ教授が最初にファジィ制御で用いた方法で、推論手
順が簡単でわかりやすいので、ファジィ制御で最も広く使われている。
いま、次のような n 個の制御規則が与えられているものとする。
規則1 : if x1 is A11 and x2 is A12 then y is B1
規則2 : if x1 is A21 and x2 is A22 then y is B2
..
.
規則 i : if x1 is Ai1 and x2 is Ai2 then y is Bi
..
.
規則 n : if x1 is An1 and x2 is An2 then y is Bn
ここで、x1 , x2(前件部変数)は制御対象の状態変数であり、ファジィ制御装置(Fuzzy Logic
Controller,FLC)の入力変数である。Ai1 , Ai2 , Bi (i = 1 ∼ n) は言葉変数(ファジィラベル)
であり、それぞれ全体集合 X1 , X2 , Y におけるファジィ集合である。
14
いま、FLC の入力として「x1 is A∗1 and x2 is A∗2 」が与えられたとき、この入力情報と n 個
の制御規則から、推論結果「y is B ∗ 」を求める方法を示す。ここで、A∗1 , A∗2 , B ∗ はファジィ
集合とする。
i 番目の規則のファジィ関係 Ri は、マムダニの定義に従えば、
Ri = (Ai1 × Ai2 ) × Bi
µRi (x1 , x2 , y) = {µAi1 (x1 ) ∧ µAi2 (x2 )} ∧ µBi (y)
と定義される。ここで、∧ は min 演算、∨ は max 演算を表す。n 個の制御規則全体のファジィ
関係 R は、個々のファジィ集合の和集合(OR)として表されるので、
R = R1 ∪ R2 ∪ · · · ∪ Rn
となる。
推論結果である出力のファジィ集合 B ∗ は、推論の合成規則より、
B ∗ = (A∗1 × A∗2 ) ◦ R
µB ∗ (y) = ∨x1 ,x2 {µA∗1 (x1 ) ∧ µA∗2 (x2 ) ∧ µR (x1 , x2 , y)}
で与えられる。
ファジィ制御では、FLC への入力として確定した値(非ファジィ値)が使われるのが一般
的である。そこで、入力として非ファジィ値 x∗1 , x∗2 が与えられたとする。この場合
(
1
(x1 = x∗1 )
µA∗1 (x1 ) =
0
(x1 6= x∗1 )
µA∗2 (x2 ) =
(
1
0
(x2 = x∗2 )
(x2 6= x∗2 )
と考えれば、出力 B ∗ のメンバシップ関数は、
µB ∗ (y) = ∨x1 ,x2 {µA∗1 (x1 ) ∧ µA∗2 (x2 ) ∨ µR (x1 , x2 , y)}
= µR (x∗1 , x∗2 , y)
= {µA11 (x∗1 ) ∧ µA12 (x∗2 ) ∧ µB1 (y)} ∨ {µA21 (x∗1 ) ∧ µA22 (x∗2 ) ∧ µB2 (y)} ∨ · · ·
∨{µAi1 (x∗1 ) ∧ µAi2 (x∗2 ) ∧ µBi (y)} ∨ · · · ∨ {µAn1 (x∗1 ) ∧ µAn2 (x∗2 ) ∧ µBn (y)}
となる。ここで、
wi = µAi1 (x∗1 ) ∧ µAi2 (x∗2 )
15
とおくと、結局、出力 B ∗ は
µB ∗ (y) = {w1 ∧ µB1 (y)} ∨ {w2 ∧ µB2 (y)} ∨ · · · ∨ {wn ∧ µBn (y)}
= ∨ni=1 wi ∧ µBi (y)
= ∨ni=1 µBi∗ (y)
で求められる。wi は、FLC の入力 x∗1 , x∗2 が i 番目の規則にどの程度マッチングしているのか
を表す適合度と呼ばれている。
推論結果である出力 B ∗ はファジィ集合の形で求められるが、これを実際の制御対象の操
作量として入力することはできない。ファジィ制御では、操作量として確定した値(非ファ
ジィ)を求める必要がある。そのため、B ∗ の代表値を求める方法として、重心法がよく使わ
れている。出力 B ∗ の重心点 y ∗ は、
R
yµB ∗ (y)dy
∗
y = R
µB ∗ (y)dy
で与えられる。この操作を非ファジィ化と呼び、重心法のほかに面積法、最大値法などがある。
以上が、FLC への入力 x∗1 , x∗2 が与えられたとき、FLC の出力(操作量)を求める方法で、
マムダニ推論法と呼ばれるものである。
この推論手順を整理すると、
手順 1) 各規則の適合度 wi を計算する
wi = µAi1 (x∗1 ) ∧ µAi2 (x∗2 )
(i = 1 ∼ n)
手順 2) 各規則の後件部の推論結果 µBi∗ を計算する
µBi∗ (y) = wi ∧ µBi (y)
手順 3) 各規則の推論結果 Bi∗ を統合して、規則全体の推論結果 B ∗ を計算する
µB ∗ (y) = ∨ni=1 µBi∗ (y)
手順 4) 推論結果 B ∗ の重心を計算する
R
yµB ∗ (y)dy
y = R
µB ∗ (y)dy
∗
となる。この推論法は、x∗1 と x∗2 があたえられてから y ∗ を求めるまでに、手順 1),2)で
min(= ∧) を、手順 3)で max(= ∨) を、最後に重心法で代表値 y ∗ を求めていることから、
min-max 重心法と呼ばれている。
図 2.12 に、制御規則が二個の場合の推論過程を示している。図に示すように、後件部のファ
ジィ集合が前件部の適合度によって頭切りされていることから、頭切り法と呼ばれることが
ある。
16
図 2.12: min-max 重心法(マムダニ法)の推論過程
2.2.2
product-sum 重心法 (代数積-加算重心法)
min-max 重心法では、適合度や推論結果を求める式に、非線形性の強い min 演算や max
演算が使われているため、適合度の値や重心の値がなめらかに変化しない場合がある。また、
min-max 重心法は必ずしも人間の直感に合った方法でないことが指摘されている。
そこで、水本は、min のところを product(代数積,掛算)に、max のところを sum(代
数和,加算)に置き換えた product-sum 重心法を提案している。この推論手順を以下に示す。
手順 1) 各規則の適合度 wi を計算する
wi = µAi1 (x∗1 ) ∧ µAi2 (x∗2 )
(i = 1 ∼ n) 手順 2) 各規則の後件部の推論結果 Bi∗ を計算する
µBi∗ (y) = wi × µBi (y)
手順 3) 各規則の推論結果 Bi∗ を統合して、規則全体の推論結果 B ∗ を計算する
µB ∗ (y) =
n
X
µBi∗ (y)
i=1
手順 4) 推論結果 B ∗ の重心を計算する
R
yµB ∗ (y)dy
y = R
µB ∗ (y)dy
∗
(2.4)
図 2.13 に、制御規則が二個の場合の推論過程を示している。
product-sum 重心法の特長は、手順 3)において、各規則から推論された結果 B ∗ をすべ
て足し加えているため、全体の推論結果 B ∗ にすべての規則が寄与している点にある。一方、
min-max 重心法では、手順3)で max を取っているため、各規則から推論された結果 Bi∗ の
17
一部または全部が無視される場合が起こる。ファジィ制御の推論法としてどちらが望ましい
かは一概には言えない。
水本は、product-sum 重心法の方が min-max 重心法よりも良い制御結果を示すことがある
と報告している。いずれにしても、制御規則の構成や制御対象によってどちらが望ましいか
を検討する必要がある。
図 2.13: product-sum 重心法の推論過程
2.2.3
簡略推論法
この方法は、前田、村上や菅野によって提案されたものであり、ファジィ推論の高速化と
簡略化を主眼とした推論法である。制御規則の後件部がファジィ集合ではなく、定数で与え
られる場合を考える。つまり、制御規則は次のように与えられるものとする。
規則1 : if x1 is A11 and x2 is A12 then y is b1
規則2 : if x1 is A21 and x2 is A22 then y is b2
..
.
規則 i : if x1 is Ai1 and x2 is Ai2 then y is bi
..
.
規則 n : if x1 is An1 and x2 is An2 then y is bn
ここで、 bi (i = 1~n) は実数値(非ファジィ値)であり、例えば、2.2.1 小節の制御規則の
後件部のファジィ集合 Bi のメンバシップ関数が最大値を取るときの台集合の値に対応する。
いま、入力の非ファジィ値 x∗1 , x∗2 が与えられたとき、推論結果の出力 y ∗ (非ファジィ値)を
求める手順を以下に示す。
手順 1) 各規則野適合度 wi を計算する
wi = µAi1 (x∗1 ) × µAi2 (x∗2 )
この場合、×(代数積)の代わりに min を使うこともできる。
18
手順 2) 推論結果の出力 y ∗ を次式で計算する
y∗ =
n
X
wi · bi
i=1
n
X
wi
i=1
上式は後件部の定数 bi を適合度 wi で荷重平均したものである。この方法は、 product-sum
重心法の特別な場合に相当する。すなわち、式 (2.4) における後件部のファジィ集合 Bi をシ
ングルトン
(
1
(y = bi )
µBi (y) =
0
(y 6= bi )
に置き換えた場合に相当する。図 2.14 に、制御規則が 2 個の場合の推論過程を示している。
図 2.14: 簡略化推論法の推論過程
2.3
ファジィ制御
熟練者の制御に対する知的活動を、(1) その経験則に含まれる言葉(命題)の意味をファジィ
集合によって定量化し、(2) その構造を制御知識(If-then ルール)として記述する、ことに
より計算機化しようとするのがファジィ制御である。
2.3.1
状態評価ファジィ制御
状態評価ファジィ制御では、人間による運転を制御対象システム自体のモデルを作成する
ことなく、過去の操作経験に基づく状況の総合判断としてアルゴリズム化する方式である。例
として、二つの観測データ x と y から制御指令 u を決定するような対象を考えると、「もし
19
(If)x が Ai(高い)であり、 y が Bi(高い)であるならば、
(then)∆u を Ci(減らす)す
る。」といった制御則により制御指令を決定する。ここで、「x が Ai 」,
「y が Bi 」,
「 ∆u を
Ci する」といった命題は、その意味がファジィ集合により定義されたファジィ命題である。
この状態評価ファジィ制御の制御則を一般的に示すと、
If x is Ai and y is Bi then ∆u is Ci ( i = 1~n )
なる If-then ルールで記述できる。このルールを用いて対象システムから観測したデータに基
づきファジィ推論することにより、制御指令を決めていく(図 2.15)。
図 2.15: 状態評価ファジィ制御方式の概要
以下に状態評価ファジィ制御の推論過程を順に挙げていく。
20
(1) 前件部評価演算
ファジィコントローラでは、まず、各制御則の前件部(If 部)に含まれているファジィ命題
の評価を行う。過去や現時点で観測したシステム状態 x(t) が、「温度が高い」「圧力が低い」
といった人間の概念(主観)に基づき定義した各ファジィ集合
Z
Mij = µMij (x)/x
v
に、どの程度適合しているかの命題適合度 mij を求める。
mij = µMij (x(t))
ここで、i はルール番号を、j はルール i 内の命題番号を示す。
この命題適合度の算出に当たっては、観測したシステム状態 x(t) が確定値(シングルトン)
であるとし、メンバシップ関数 µMij の値を適合度としている。
次に、ルールの前件部に記述された各命題の適合度をファジィ演算(ここでは論理積演算
を使用)を行い前件部適合度 ri を求める。
ri = mi1 ∩ · · ∩miK
=
min (mij )
j=1,K
(2) 各ルール後件部の演算
この前件部適合度と後件部に記述された「燃料を減らす」といった操作命題(ファジィ集
合:µui (z))をファジィ演算(ここでは代数積を使用)を行い、各ルールの操作指令の候補値
(Wi )を求める。
Z
Wi =
µW i (z)/z
ZZ
=
µui (z) ∗ ri /z
21
(3) 後件部の統合化
さらに、複数の制御則より求まった制御指令候補値をファジィ演算(ここでは論理和を使
用)により統合化し、制御指令の推論結果( Z )を得る。
Z
Z =
µz (z)/z
Z
Z
max µW i (z)/z
=
Z i=1,N
(4) 非ファジィ化
運転支援用の表示であれば、このファジィ集合のままでもよいが、通常の制御を実行する
ためには、非ファジィ化し一つの制御指令値とする必要がある。ここでは、求まった制御指
令ファジィ集合 Z の重心を次式のように計算し、最終的制御指令としての燃料変化量 u0 を
決めている。
R
µz (z) · zdz
u0 = R
µz (z)dz
この状態評価ファジィ制御方式は、対象システムの状況に応じて、最適だと考えられる制
御指令をリアルタイムに推論するという特徴を持つ。従って、各種センサを用いて断片的に
入手できる制御対象の状態量を利用することにより、対象の状態変化に応じたうまい運転が
可能である。
2.3.2
予見ファジィ制御方式
ここでは、対象システムの特性に関する熟練者の「深い知識」を用いて、対象システムの
モデルによりその動きを予見・予測し、システムの制御目的を多次元的評価することを特徴
とする予見ファジィ制御方式 [4] について述べる。
予見ファジィ制御方式は熟練者の運転を
多目的ファジィ評価: 多数の制御目的の満足度を、ファジィ集合を用いて表現し評価
知識工学: システムの状況を見ながら「もし~の条件なら~する」といった制御知識を利用
システム・モデル: 制御対象の動特性をシミュレーション
これら三つを有機的に結合することによりアルゴリズム化する方式である。
この方式は、(1) 制御対象のシステム状態の観測値をもとに、制御則に記述された制御指令
の候補値についてコンピュータシミュレーションを行い、(2) その結果により制御目的となる
被評価量を予見・予測し、(3) その制御目的をファジィ推論により評価し、(4) 最適な制御指
令を決定する。
ここで用いる制御則は、対象システムの特性を把握したオペレータの経験則「もし (If) 制御
指令 u を Ci とした場合、評価指標 x は Ai であり、評価指標 y は Bi であるならば、(then)
22
制御指令 u を Ci とする。」から作成する。この制御則に基づき最も望ましい状況に制御でき
る制御指令を選択していく(図 2.16)。この予見ファジィ制御の制御則を一般的に示すと、
If( u is Ci → x is Ai and y is Bi ) then u is Ci ( i = 1~n )
となる。
図 2.16: 予見ファジィ制御方式の概要
予見ファジィ制御方式が、状態評価ファジィ制御方式と大きく異なる点は、前件部で評価
する x,y の値が、現在の時点で制御指令を Ci とし実行した場合に、制御目的がどうなるか
を予見(予測)したシミュレーション結果であることである。もちろん、制御目的が出力し
ようとしている制御指令 Ci に依存しない場合もあり、すべてが依存しなければ、現在の状態
量の目標値への追従性だけが制御目的であり、状態評価ファジィ制御方式に一致する。この
ような特徴を持つ予見ファジィ制御は、制御を実行するコンピュータが制御目的を常に考慮
しながら制御指令を決定するため、人間にとって制御状況が分かりやすく、安心して用いる
ことができるシステムの構築が可能である。
23
第3章
福祉車両
本章では福祉車両利用の背景、福祉車両の種類、ならびに走行支援の必要性について述べる。
3.1
福祉車両利用の背景
総務庁統計局の平成 11 年 10 月 1 日現在推計人口によると、人口自然増加は年間 21 万人
で、人口自然増加率は 0.16%と戦後最低を記録した。しかしながら、65 歳以上人口は前年度
と比較して 67.9 万人増加し、2118.6 万人となり、その全人口に占める割り合い (高齢化率) も
0.5%上昇し、16.7%になった。
人口増加率は低下を続け、その一方で高齢化は進んでいる。2000 年時点では、15 歳以上 65
歳未満の生産年齢人口が 65 歳以上の老年人口をの約 4 倍であるのに対し、2010 年には、約 3
倍になると予測されている。このことから、日常生活や社会参加に必要不可欠な「身体の移
動」の困難な高齢者や障害者の数が非常に多くなると予想されている。
現在高齢者や障害者の移動を助ける手段として福祉車両が注目され、公共福祉等、種々の
対策が試みられている。その中の一つとして、タウンモビリティという試みがある。
タウンモビリティとは、障害、病気、高齢で、常時または一時的にスムーズな移動が難し
い人々に電動車椅子を無料で提供し、ショッピングセンターを含めた町の諸施設を利用できる
ようにするシステムである。このシステムは英国ミルトンキーンズでショップモビリティと
いう名の下で始まり、現在事業数は 270 を超えたといわれている。英国は福祉国家で、障害
者の生活環境は日本より格段に整備されているが、この取り組みにより商店街の売り上げ増
等、かなりの経済効果が確認されている。
タウンモビリティーは、一例に過ぎないが、今後、高齢者や障害者のように、移動を困難
とする人にとって、福祉車両の導入による、移動手段数の拡大は、高齢者を自立させるだけ
でなく、街の自主的なバリアフリー化、活性化、高齢者や障害者の雇用促進にもつながると
いえよう。
3.2
福祉車両の種類
福祉車両には、用途、機能に応じて種々のものがあるが、典型的な 5 種類の福祉車両とそ
の特徴を以下に示す。
• 体の不自由な人が自分で運転する車両
24
— 電動車椅子
— 運転補助装置付車
• 家族などが身体の不自由な人と一緒に外出したり、送迎に使用する車両
— 介助型電動車椅子
— 助手席回転シート車・シートリフトアップ車・車椅子仕様車
• 医療施設、福祉施設などが身体の不自由な人を送迎する車両
— 車椅子仕様車
— ストレッチャー仕様車
• 公共交通機関などで使用される福祉車両
— 低床バス
— 福祉タクシー
• 寝たきりの人などにデイケア・サービスを行う車両
— 入浴巡回車
3.2.1
対象とする電動車椅子
本研究では高齢者の自立した生活を促すという観点から、電動車椅子を対象とする。電動
車椅子は歩行者扱いとなり、その運転に免許は必要ない。以下に電動車椅子の概観と仕様を
示す (図 3.1、表 3.1)。
図 3.1: 電動車椅子概観
表 3.1: 電動車椅子の仕様
全長
1.10m
ホイールベース
0.80m
25
車幅
0.55m
最小旋回半径
0.95m
3.3
支援の必要性
3.1 節で述べたように、高齢化はこの先もすすみ、高齢者の自立は免れないばかりか、介護
が必要な場合においても、介護者不足という問題が浮上することが予想される。これらのこ
とから高齢者や障害者による、福祉車両の利用はさらに増えると考えられる。しかし、認知、
判断力の衰えた高齢者や身体障害者も多く、福祉車両の操作を独りで行うには不安がある場
合には、それを補助することが必要となる。また、介護を行う人間が不足している場合には、
福祉車両自体にその補助機能を搭載することが望ましい。補助機能としては、(1) 人間の誤操
作を補正する機能と (2) 操作者の代わりに周囲に注意を払い、車両 (走行) 操作に関する支援
情報を提示する機能の二つの機能が考えられる。本研究では後者の、人間の支援者の代わり
に、走行操作の支援情報を提供するシステムを考える。
26
第4章
支援
本章では支援の概念について考察し、人間の操作支援をモデル化と、それに基づいた走行操
作支援情報提供システムの構成の考え方について述べる。
4.1
支援の概念
飯島 [6] によると支援とは「他者の意図を持った行為に対する働きかけであり、その意図を
理解し、その行為の質の改善、維持または行為の達成を目指すもの」である。このとき働き
かけを行うものを支援者と呼び、支援を受ける行為者を被支援者と呼ぶ。支援の一般的な特
徴 [7] を以下に示す。
(a) 意図的である 支援とは何者かが行為の質の維持や改善の意図ないし目標をもって、意識的に実
行する行為である。
(b) 二次的である 支援があらためて問題になるような場面では、支援を受けるべき、何らかの主体
による何らかの行為がすでに進行中である。支援を試みるものは、白紙の上にまっ
たく新しい行為を設計するわけにはいかない。
「常に正しい解を導く」方法やそれを体現したシステムは支援するのではなく代
行するのである。
(c) 知識に依存する 支援は支援者の知識や経験によって巧みにも稚拙にも行われる。なんらかの調査
研究にもとづき、支援のための知識を拡充することによって、よりよい支援を実
現できるはずである。さらに支援は被支援者の知識にも依存する。そのため、あ
る被支援者に適切な支援が他の被支援者には適切でないということが起こりうる。
ここで重要なのは操作の主体は被支援者であるということである。支援は被支援者にとっ
てわかりやすくかつ被支援者の変動する行為に柔軟に対応できなくてはならない。そのうえ、
その性質を保証し維持する仕掛けが望まれる。このことを踏まえ、4.2 節では、走行支援に関
して、支援者とはどうあるべきかを考察し、モデル化する。
27
4.2
走行支援
車両の走行支援には大きく分けて、二つのアプローチがあると考えられる。一つは、人間
の誤操作に対しての補正機能を、車両自体に搭載するというやり方で、もう一つは、教習所
の教官のように、操作者に対して操作の支援情報を提供するというやり方である。本研究で
は 4.2.1 節の概念に基づき、操作の主体はあくまでも被支援者である操作者 (以下、操作者) に
あると考え、あたかも人間の支援者が傍にいて支援情報を提供するような、支援システムを
構成する。
4.2.1
人間の走行支援
支援者に求められるスキル
走行支援が必要な理由は、ハンドル操作等に不安があるからである等も考えられるが、認
知判断力の不足などにより、現在の操作による将来状態の予測ができなかったり、逆に、目
標状態のためにどのような操作をすればよいかがわからないから、などといったことが考え
られる。支援を行う際に留意するべき点は、節より、ひとつは、操作者の操作に対し、柔軟
に対応することである。人間である操作者の操作の反応誤差は自動システムと比べ、大きい
量となると考えられる。支援の性質上、支援は二次的なものであるから、その誤差を許容で
きなくてはならない。その上で、操作者にとって受け入れやすい支援情報を提供しなくては
ならない。
そこで走行操作支援を行う人間には次のようなスキルが求められる。
1. 周囲の状況把握能力とその判断力
2. 車両の将来状態の予測能力
3. 目標にたどりつくことができる操作技術能力
4. 操作者の操作への柔軟な対応力
5. 操作者が受け取りやすい支援情報の提供能力。
これらのスキルを支援情報提供システムに導入する。
人間の行為の解析
本研究はシステムを人間の走行支援に即して、構成する。人間がある行為を行う場合に、以
下のような基本プロセスで行っていると考えられる (図 4.1)。
1. 状況認識
2. 状況判断
3. 目標決定
4. 手段の決定
28
5. 操作の実行
図 4.1: 人間の行為にいたるまでのプロセス
この際、目標や手段は、その人間が持つ経験的知識に基づいて決定される。
人間の走行支援のモデル
ここでは前述の基本プロセスに従って、人間の走行支援をモデル化する。支援者は、周囲
の状況と車両の状況、操作の状況を把握し、経験的知識をもとに戦略をたてる。その戦略を
に基づいて、目標を設定し、目標に到達できる操作を考える。その結果、そのとき一番良い
と思われる操作を、操作者の状況に応じて、支援情報として提供する。
目標には大局的な目標と局所的な目標がある。大局的な目標とは戦略に基づいて設定する
目標であり、局所的な目標とはその大局的な目標に到達するために、車両の走行特性を考え
合わせた上で、途中に設定する目標である。本研究では、大局的な目標を戦略目標とする。局
所的な目標を決めるための走行特性上考えられる操舵角、進行方向、操舵方法の組み合わせ
を戦術とし、局所的な目標を戦術目標とする。
目標に到達する最もよい操作は、現在の車両の状況と操作の状況から、数秒後の状態を予
測し、最もよい状態となる操作である。
操作候補が決定されれば、そのときの操作者の操作の状況や、車両の状況に応じて、支援
者は支援情報を考える。そのとき、操作者に提供する走行支援情報を納得して受け入れても
らう必要がある。どういった考えのもと、現在の走行支援情報を決定したかという、操作候補
を決定するまでの過程で用いられた考えを提供する場合もある。駐車制御の例を用いて、支
援情報の例をあげると、「車庫に寄せるので、ハンドルを一度左に切って、そのあと右に切っ
て前進してください。」となる。このとき、” 車庫に寄せる” が戦略で、その戦略を理想的に達
成した状態が戦略目標である。また、” ハンドルを一度左にきって、その後右に切って前進”
が戦術、戦術の中には操舵角、進行方向の情報が含まれる、その戦術を行った場合に到達す
29
るであろう状態が戦術目標である。これらの情報を毎回すべて提供するわけではなく、その
ときの状況に応じて、操舵角に関する情報のみや、進行方向に関する情報のみの場合がある。
提供間隔や、一つ前に提供した情報が何であるかなどによっても、次に提供する情報を変化
させて、操作者により受け取りやすい情報提供を行っていると考えられる。
(図 4.2)
図 4.2: 人間の走行支援のモデル
30
第5章
走行支援情報提供システム
第 4 章の人間の支援者による走行支援モデルに基づいて、走行支援情報提供システムを開発
する。このシステムを切り返し動作など、制御が困難な駐車制御に対して適用する。
戦略設定、戦略目標設定、戦術目標設定、操作候補決定、提供情報の種類決定はすべてファ
ジィ推論を用いて行う。理由は人間の支援者がモデルであるためである。ファジィ制御理論
の利点をあげる。
• 人間の言語知識をルールに直すことで、システムに導入できる点
• 多目的評価ができる点
• 人間の言語知識を用いてるため、推論過程を把握しやすい点
• 人間のあいまいさを定量的に扱う点
4.2 節で考察したように、人間の支援者は走行支援を行う際、自分の持つ経験的知識から、
戦略を決め、目標を設定し、操作候補を決定した上で、支援情報を提供していると考えられ
る。このとき、支援者は自分の持つ経験的知識を言語知識として持ち合わせている。走行操
作を行うだけなら、自分の持つ感覚だけで、操作を行うこともありうる。しかし、支援する
場合は、自分の考えた操作を操作者に理解してもらわなくてはならない。支援情報を操作者
に提供する場合、その多くは言語情報として提供される。その際、言語知識として、いった
ん自分の操作候補決定までを自覚し、その言語知識を元に、言語情報である支援情報を決定
していると考えられる。
また、多くの場合の人間の支援情報提供法と同じように、本研究において、システムの出
力である提供支援情報は音声による言語情報とする。
以上のことを考察すると、本研究のシステムを構築するに当たり、PID 制御や最適制御手
法により操作候補を決定する方法や、教師データを与えて、学習させることにより、目標や、
操作候補を決定するニューラルネットワークを用いる方法、遺伝的アルゴリズムを用いる方
法よりも、推論過程を把握しやすく、また言語情報に直しやすいファジィ推論を用いる方法
が適していると考えられる。
以下に、本研究における走行支援情報提供システムの構成をしめす (図 5.1)。
31
図 5.1: 走行支援情報提供システムの構成
5.1
自動車の走行特性
前輪操舵の四輪自動車が、遠心力の発生を無視できる十分遅い速度で運動すると仮定する
と、旋回において各々のタイヤにはコーナリングフォースの発生を必要としない。つまり、こ
の状態で各車輪は横滑りせずに路面と点接触して単純に転がっている。各車輪は車体に取り付
けられており、円旋回するには車輪それぞれの回転中心軸の延長線上に旋回中心を持たねばな
らない。後輪の回転中心軸は一本の車軸上にあるから、この延長線と前の内輪,外輪のそれぞ
れの回転中心軸の延長線が一点で交わる必要がある。この交点が旋回中心 O である。このよ
うな関係を満たす幾何学的な考え方にアッカーマン・ジャントウ (Ackermann − Jeantaud)
の操舵機構がある [8]。図 5.2 にアッカーマン・ジャントウ操舵機構による旋回の幾何学的関
係を示す。
現在位置を後車軸の中央の絶対座標 (x,y)(以下自動車の位置と呼ぶ) とし、車体の傾きを x
32
図 5.2: アッカーマン・ジャントウ旋回
軸と車両の進行方向とのなす角 θ(以下自動車の向きと呼ぶ)とし、操舵角 (以下自動車の舵
φ +φ
角と呼ぶ) を前輪操舵角である φL と φR の平均 φ = L 2 R とし、前輪の平均速度 (以下自
動車の速度と呼ぶ) を v と表すこととする。また、前輪と後輪の距離 (ホールベース) を L、車
幅 を W 、車軸からバンパーまでの距離 b とする。図 5.2 の車両モデルに対して、アッカーマ
ン旋回理論に基づく運動学における拘束条件式は式 (5.1) のように表される [9]。本式は、コ
ンピュータで自動車の動きをシミュレートしたり、将来の状態を予測する際に用いられる。
dx
= v cos φ cos θ
dt
dy
= v cos φ sin θ
dt
v
dθ
= sin φ
dt
L
(5.1)
また、自動車の最大舵角を φmax とすると、自動車の車両重心の最小旋回半径 Rmin は式
(5.2) と表すことができる。
Rmin =
L
tan φmax
(5.2)
自動車が旋回半径 R で旋回するとき、自動車の四隅のうち最も内側を通る点と最も外側を
通る点の旋回半径 Rin , Rout は、それぞれ次式で与えられる。
p
Rin = (R − J sin β)2 + (J cos β)2
(5.3)
p
Rout = (R + J sin β) + (L + J cos β)2
(5.4)
自動車の状態は、自動車の位置,向き,速度,舵角により定義する。ただし向きと舵角は
−π から π の範囲で表すものとする。
33
式 (5.1) に従って自動車が運動するとき、直線は半径無限大の円の円弧であると仮定するな
らば、その軌跡は様々な半径を持つ円の円弧の組み合わせとなる。このとき半径は最小旋回
半径より小さくなることはない。
5.2
駐車制御
本研究で扱う車庫環境は、普段駐車制御が行われる典型的な車庫を考慮し、図 6.3 に示すよ
うな環境である。
図 5.3: 本研究で扱う車庫環境
前提条件
• 車庫の形状は既知である。
• 自動車は低速で走行する。
• 動的障害物は存在しない。
以上のような環境と前提条件の下で、駐車制御とは、図の灰色で示される車庫へ車両後方か
ら侵入し、車両と障害物が接触することなしに、車庫に車両を完全に収めることと定義する。
5.3
状況判断部
目標に向かって走行する場合、人間は、目標にむかっているか、目標に到達しているか、障
害物にぶつからないか、といったことを把握しながら運転している。そこで、状況判断部で
は、目標への到達と障害物への接触について、監視し、新たな目標が必要であるかどうかを
判断する。その結果、必要であれば、目標設定指令を出力する。
このとき、システムは式 (5.1) を用いて、数秒後の車両の状態を予測する。目標には目標通
過ラインを設定し、現在状態と目標通過ラインとの関係、また、予測した将来状態と障害物
との関係から、判断を行う。将来状態が以下の場合であるとき、目標設定指令が出力される。
• 目標通過ラインを超えた場合(図 5.4(a))
34
• 走行予定距離を越えても、目標通過ラインに達しない場合(図 5.4(b))
• 障害物との接触が予想される場合(図 5.4(c)
図 5.4: 状況判断の例
5.4
目標設定部
目標設定部は、状況判断部から目標設定指令を受け、自動車の走行特性や最終目標との相
対関係を考慮した目標を設定する。また、現在状態から算出した戦術目標までの走行予定距
離を求める。
目標設定は以下の手順を踏んで行う。
1. 最終目標と現在状態との差により戦略を決定する
2. 戦略に従って可動領域を考慮した戦略目標を設定する
3. 戦略目標と現在状態との差によりおおまかな経路を決定する
4. 経路に基づいて自動車の走行特性を考慮した戦術目標を算出する
戦略や大まかな経路に関しては、車庫入れが苦手な人にたいする教示本 [10] を参考にルー
ルを作成する。
5.4.1
戦略目標
戦略は現在状態と最終目標との相対関係により決定される。システムは、最終目標の位置
を原点とし、最終目標の向きを y 軸とするような座標系により現在状態を把握しているため、
現在の自動車の位置 (xnow , ynow ) と向き θnow により、現在状態と最終目標の相対関係を評価
できる。そこで、あらかじめ与えられたルールを用い、xnow , ynow , θnow を入力とする状態評
価ファジィ推論により、人間の駐車に用いられる戦略「水平にする」,「車庫に寄せる」,「切
り返して車庫に入れる」,「(直接)車庫に入れる」,「制御を終了する」から、現在の状況に
最適な戦略を選択する。以下に本システムにおいて用いた戦略決定に関するルールと推論に
用いるファジィ集合を示す。
35
• If xnow is V eryF ar and θnow is V eryV ert then 戦略 = 水平にする .
• If xnow is V eryF ar and θnow is Hori then 戦略 = 車庫に寄せる .
• If xnow is F ar and θnow is V ert then 戦略 = 水平にする .
• If xnow is F ar and θnow is V eryHori then 戦略 = 車庫に寄せる .
• If xnow is N ear and θnow is V ert then 戦略 = 水平にする .
• If xnow is N ear and θnow is V eryHori then 戦略 = 切り返して車庫に入れる .
• If xnow is V eryN ear and θnow is V eryHori
then 戦略 = 切り返して車庫に入れる .
• If xnow is V eryN ear and θnow is Downward then 戦略 = 水平にする .
• If xnow is V eryN ear and ynow is Big and θnow is U pward
then 戦略 = 車庫に入れる .
• If xnow is V eryN ear and ynow is Small and θnow is U pward
then 戦略 = 制御を終了する .
図 5.5: 戦略選択に用いるファジィ集合
戦略目標とは、現在状態を基に自動車の走行特性と可動領域を考慮し、各戦略の理想的な
達成状態に最も近い状態である。そこで各戦略毎に理想的な達成状態を定義し、戦略目標の
36
設定法を定める。ただし、戦略「制御を終了する」は制御の終了判定を行うことのみに用い
る戦略であるため、理想的な達成状態の定義は必要ない。
車庫に入れる
戦略「車庫に入れる」は、直接車庫に入れられるような状態で選択され、最終目標である
車庫に入れることを目的とする。よって、この戦略の理想的な達成状態とは最終目標状態で
ある。戦略が選択される条件を考慮すると、自動車の走行特性のみを考慮することにより到
達可能であるため、戦略目標は最終目標と同一のものとする。
切り返して車庫に入れる
戦略「切り返して車庫に入れる」は、最終目標と現在状態の向きの差が 90 度程度であり、
x 軸方向の誤差が少ない場合選択され、切り返し動作(図 5.6)により車庫に入れることを目
的とする。よって、この戦略の理想的な達成状態とは、その地点から直接車庫に入れること
ができるような切り返し点である。図 5.6 に示す切り返し点1,切り返し点2のうち、各切り
返し点を車庫までの走行距離と障害物までの距離により評価し、高い評価を得るものを理想
的な達成状態とし、これにより戦略目標を設定する。
図 5.6: 切り返し動作の例
車庫の角と自動車が接触せずに車庫に侵入するためには、車庫に侵入する旋回運動の旋回
中心2 (xo2 , yo2 ) は、車庫の角から少なくとも Rin だけ離れている必要がある。ここで Rin
とは、式(5.3)において、R = Rmin としたときの Rin の値である。そこで、切り返し点1
37
(xt1 , yt1 ) θt1 は、現在状態 (xnow , ynow ) θnow から、以下のようにして求めることができる。
|θnow | ≤ π/2 のとき
xo2 = Rmin
yo2 = yedag1 −
|θnow | > π/2 のとき
xo2 = −Rmin
q
2
Rin
− (xedag1 − xo2
)2
yo2
q
2 − (x
2
= yedag2 − Rin
edag2 − xo2 )
yo1 = ynow + Rmin cos θnow
p
xo1 = xo2 − 4R2 − (yo1 − yo2 )2
yo1 = ynow + Rmin cos(θnow − π)
p
xo1 = xo2 + 4R2 − (yo1 − yo2 )2
xt1 = xo2 + Rmin cos θ2
xt1 = xo1 + Rmin cos θ2
yt1 = yo2 + Rmin sin θ2
yt1 = yo1 + Rmin sin θ2
θt1 = θ2 − π/2
θt1 = θ2 + π/2
θ2 = arctan((yo1 − yo2 )/(xo1 − xo2 ))
θ2 = arctan((yo1 − yo2 )/(xo1 − xo2 ))
ただし、(xedag1 , yedag1 ),(xedag2 , yedag2 ) は、車庫の入り口の角(図 5.6 の 車庫の角1,2)の
座標値である。
状態 (xt1 , yt1 ) θt1 取ったときに自動車が障害物に接したり、越えたりしてはいけない。切
り返し点1がこの条件を満たさないとき、理想的な達成状態は切り返し点2とする。
切り返し点2 (xt2 , yt2 ) θt2 は、式(5.3)を用いて次式で与えられる。
|θnow | ≤ π/2 のとき
xt2 = Rmin
yt2 = yedag1 −
θt2 = 0
q
|θnow | > π/2 のとき
xt2 = −Rmin
2 − (x
2
Rin
edag1 − Rmin ) + Rmin
yt2 = yedag2 −
θt2 = π
q
2 − (x
2
Rin
edag2 + Rmin ) + Rmin
ただし、(xedag1 , yedag1 ),(xedag2 , yedag2 ) は、車庫の入り口の角(図 5.6 の車庫の角1,2)の
座標値であり、Rin は R = Rmin の時の式(5.3)の値である。
切り返し点1が理想的な達成状態として選択された場合は、戦略目標を切り返し点1とし、
切り返し点2が選択された場合は、次に述べる幅寄せ動作により、切り返し点2に最も近づ
いた状態を戦略目標とする。
車庫に寄せる
切り返して車庫へ入れる場合、最終目標の向きに対して垂直で車庫に寄った状態を経由し
て駐車を行うと、駐車を効率よく容易に行える [10]。よって、この状態を戦略「車庫に寄せ
る」の理想的な達成状態とする。この戦略が選択される条件を考慮すると、現在状態から理
想的な達成状態へは幅寄せ動作により接近する。その例を図 5.7 に示す。
切り返し動作において、経路を最短にする切り返し動作の旋回中心2 (xokm2 , yokm2 ) は次
38
図 5.7: 幅寄せ動作の例
式で与えられる。
|θnow | ≤ π/2 のとき
xokm2 = Rmin
yokm2 = yedag1 −
q
|θnow | > π/2 のとき
xokm2 = −Rmin
2
Rin
− (xedag1 − xokm2
)2
yokm2 = yedag2 −
q
2 − (x
2
Rin
edag2 − xokm2 )
ここで、Rin は式(5.3)において、R = Rmin として求められる。
車庫に寄せる際、自動車は最小旋回半径で旋回するため、旋回中心1 (xokm1 , yokm1 ) は車
庫の壁1,2から、式(5.4)において R = Rmin としたときの Rout だけ離れている必要があ
る。この条件を満たし、旋回中心2 (xokm2 , yokm2 ) を中心とする円弧と接する円弧を持つ切
り返し動作の旋回中心1の座標 (xokm1 , yokm1 ) は、
|θnow | ≤ π/2 のとき
|θnow | > π/2 のとき
yokm1 = ywall + Rout
yokm1 = ywall + Rout
q
q
2
2
xokm1 = xokm2 − 4Rmin
− (yokm1 − yokm2 )2 xokm1 = xokm2 + 4Rmin
− (yokm1 − yokm2 )2
であり、この円弧に接し向きが車庫に対して垂直である状態 (xt , yt ) θt は、
|θnow | ≤ π/2 のとき
|θnow | > π/2 のとき
xt = xokm1
xt = xokm1
yt = yokm1 − Rmin
yt = yokm1 − Rmin
θt = 0
θt = π
である。ここで、ywall とは壁1,2の y 座標値である。これを戦略「車庫に寄せる」の理想
的な到達状態とする。
39
現在の旋回中心をそれぞれ (xon1 , yon1 ),(xon2 , yon2 ) とする。動作後の x 座標値が xt かつ向
きが θt となるように幅寄せ動作を行うと仮定すると、旋回半径が最小旋回半径であることを
利用し、幅寄せ後の y 座標値は現在状態 (xnow , ynow ) θnow から、以下の計算により求めるこ
とができる。



θnow − π
θ0 = θnow + π



θnow
(θnow > π/2)
(θnow < −π/2)
(それ以外)
xon1 = xnow − Rmin sin θ0
xon2 = xnow + Rmin sin θ0
yon1 = ynow + Rmin cos θ0
yon2 = ynow − Rmin cos θ0
leg1 = xt − xon1
leg2 = xt − xon2
θ1 = arcsin(leg1 /2Rmin )
θ2 = arcsin(leg2 /2Rmin )
yup = yon1 − 2Rmin cos θ1 + Rmin
ydown = yon2 + 2Rmin cos θ2 − Rmin
ただし |leg1 | > 2Rmin ならば |yup | = ∞,|leg2 | > 2Rmin ならば |ydown | = ∞ である。幅寄
せ後の y 座標値は ydown ≤ y ≤ yup となるため、ydown ≤ yt ≤ yup であるならば、現在状態
から理想的な到達状態である (xt , yt ) θt に到達可能であるので、戦略目標を (xt , yt ) θt とす
る。yt が [ydown , yup ] 内に収まらないのであれば、ydown と yup のうち yt に近い方の値を用い、
(xt , ydown ) θt または (xt , yup ) θt を戦略目標として設定する。
水平にする
幅寄せ動作によって車庫に近づいたり、切り返し動作によって車庫に侵入するためには、車
庫の向きに対して自動車の向きがおおよそ 90 度である必要がある。そこで、戦略「水平にす
る」により、現在の向きから可能な限り車庫に対して 90 度にすることを目的とする。この戦
略の理想的な達成状態は、向きが車庫の向きに対して垂直な状態であり、戦略目標は以下の
ように求める。
θnow ≥ 0 ならば θ0 = θnow ,θnow < 0 ならば θ0 = θnow + π とする。θ0 ≤ π/2 ならば右
いっぱいに、θ0 > π/2 ならば左いっぱいにハンドルを切って前進した状態を式(5.1)の数値
積分により求める。ここで数値積分は、自動車の向きが車庫の向きに対して 90 度になるか、
または障害物までの距離が安全距離を下回るまで行う。こうして求めた状態を (xt1 , yt1 ) θt1 と
する。同様に、θ0 ≤ π/2 ならば左いっぱいに、θ0 > π/2 ならば右いっぱいにハンドルを切っ
て後進した状態を求め、これを (xt2 , yt2 ) θt2 とする。求めた状態状態から以下のルールに従っ
て戦略目標を設定する。
• θt1 , θt2 ともに垂直であるならば、現在状態の向きとの差が小さい方を戦略目標とする。
• θt1 が垂直で、θt2 が垂直でないならば、(xt1 , yt1 ) θt1 を戦略目標とする。
40
• θt2 が垂直で、θt1 が垂直でないならば、(xt2 , yt2 ) θt2 を戦略目標とする。
• θt1 , θt2 ともに垂直でないならば、現在状態の向きとの差が大きい方を戦略目標とする。
5.4.2
戦術目標
自動車の特性に主眼をおき、
「もし現在状態が~で戦略目標が~ならば、戦術目標を~とす
る」という人間の知識を利用し、実際に自動車を制御するために設定される目標が戦術目標
である。よって戦術目標は、位置,向きに加え、速度の符号で表される進行方向(前進また
は後進)により定義する。戦略目標と現在状態の相対関係を評価するために、戦略目標の位
置を原点とし、戦略目標の向きを y 軸とするような座標系を用い、現在状態と戦略目標との x
軸方向の差 δx と y 軸方向の差 δy ,向きの差 δe を求める。自動車の走行特性を考慮するため
に、δx を横軸、δe を縦軸に取る δx - δe 平面を考える。決定される大まかな経路は、この平
面上で δe 軸に対して対照である。戦略目標へ到達する経路は、δx, δy, δe を入力とする状態
推定ファジィ推論を用いて決定する。この経路をたどって戦略目標へ到達すると仮定し、自
動車の軌跡が円を描くという大まかな自動車の走行特性を利用し、戦術目標を算出する。
以下に状態推定ファジィ推論に用いるルールとファジィ集合を示す。ただし、ルール中の
x, y は任意の値を、(x, y, θ) は戦略目標との誤差を表すものとする。
Rule1: If δx is Xsmall and δy is P Y and δe is ZO
then ハンドルを左と右に切って (0.0,y ,0.0) に前進で到達 .
Rule2: If δx is Xsmall and δy is N Y and δe is ZO
then ハンドルを左と右に切って (0.0,y ,0.0) に後進で到達 .
Rule3: If δx is Xsmall and δe is P S
then ハンドルを左と右に切って (0.0,y ,0.0) に前進で到達 .
Rule4: If δx is Xsmall and δe is N S
then ハンドルを左と右に切って (0.0,y ,0.0) に後進で到達 .
Rule5: If δe is P B then ハンドルを右に最大に切り (x,y ,0.0) に前進で到達 .
Rule6: If δe is N S then ハンドルを右に最大に切り (x,y ,0.0) に後進で到達 .
Rule7: If δx is Xbig and δe is P S
π/2) に前進で到達 .
then ハンドルを左に最大に切り (Rmin ,y ,
Rule8: If δx is Xbig and δe is N S
then ハンドルを右に最大に切り (Rmin ,y ,− π/2) に後進で到達 .
Rule9: If δx is Xmid and δe is P M
π/2) に前進で到達 .
then ハンドルをまっすぐにし (Rmin ,y ,
41
Rule10: If δx is Xmid and δe is N M
then ハンドルをまっすぐにし (Rmin ,y ,− π/2) に後進で到達 .
Rule11: If δx is Xvs and δy is Y big and δe is ZO
then ハンドルをまっすぐにし (0.0,0.0,0.0) に前進または後進で到達 .
Rule12: If δx is Xvs and δy is Y mid and δe is ZO
then ハンドルをまっすぐにし (0.0,Rmin ,0.0) に前進で到達 .
図 5.8: 経路決定のファジィ推論に用いられるファジィ集合
戦術目標の算出例として Rule1 が選択された際の戦術目標 (xt , yt ) θt vt の算出法を示す。
ここで、(xstr , ystr ) θstr は現在目指している戦略目標の状態である。
図 5.9: 戦術目標の算出例
42
δxt = (1 − cos δe)Rmin /2 + δx/2
δyt = δy + Rmin (sin δet − sin δe)
δet = arccos((1 + cos δe)/2 − δx/2Rmin )
xt = δxt cos(θstr − π/2) − δyt sin(θstr − π/2) + xstr
yt = δxt sin(θstr − π/2) + δyt cos(θstr − π/2) + ystr
θt = δet + θstr
vt > 0
障害物への接触が予想されることに起因する目標設定指令には、障害物に接触するであろ
う進行方向の情報が含まれている。そこで、このような情報が含まれている場合において、算
出した戦術目標の進行方向と障害物に接触するであろう進行方向を比較する。戦術目標の進
行方向と障害物に接触するであろう進行方向が異なる場合は、算出した戦術目標は変更しな
い。一方、戦術目標の進行方向と障害物に接触するであろう進行方向が同一である場合は、以
下の式により算出される状態を戦術目標とする。これにより、障害物への接触を避けるよう
な戦術目標の設定が可能である。
前進で障害物へ接触する場合
δxt = δx − Rmin cos(δe + π/2)
δyt = δy − Rmin sin(δe + π/2)
δet = δe
xt = δxt cos(θstr − π/2) − δyt sin(θstr − π/2) + xstr
yt = δxt sin(θstr − π/2) + δyt cos(θstr − π/2) + ystr
θt = δet + θstr
vt < 0
後進で障害物へ接触する場合
δxt = δx + Rmin cos(δe + π/2)
δyt = δy + Rmin sin(δe + π/2)
δet = δe
xt = δxt cos(θstr − π/2) − δyt sin(θstr − π/2) + xstr
yt = δxt sin(θstr − π/2) + δyt cos(θstr − π/2) + ystr
θt = δet + θstr
vt > 0
43
5.5
支援情報提供部
支援情報提供部は操作候補の決定、提供情報の種類決定、支援情報決定の三つの過程から
なる。
操作候補の決定とは、車両の現在状態から、操作候補で操作した将来の状態を予測し、予
測した結果 (戦術目標との差、障害物との距離) を、ファジィ多目的評価により評価し、その
とき最適だと思われる操作候補 (操舵角、操舵の仕方、速度) を決定することとする。
提供情報の種類決定とは、前回の情報提供後の経過時間、決定された最適と思われる操作
候補、現在の車両の状況、操作者の操作、目標設定部で設定された戦略と目標を元に、提供
する情報の種類 (ハンドル操作、進行方向等) を決定することとする。
支援情報決定は、決定された提供情報種類に従って、操作候補決定で決定された最適と思
われる操作候補の情報と操作者の操作を元に、提供する支援情報を決定する。
決定された支援情報は言語情報として音声提供する。
5.5.1
操作候補決定
操作候補決定に用いる予見ファジィ制御は、人間の「こう操作したらうまく目標に近づき
そうだ」という経験に基づいた予測制御と同様の制御を実現できる。各操作候補を、障害物
に衝突することなく、設定された戦術目標に向かっ安全に到達するという、評価基準について
評価し、最も評価の高い候補を最適な操作候補 (操舵角、操舵の仕方、速度) とし、出力する。
予見時間とは、現在状態から目標設定部において設定された戦術目標に到達するまでにか
かるであろうおおよその時間である。あらかじめ与えられた各操作候補について、予見時間
だけ実行すると仮定したときの制御結果を、自動車の走行特性(5.1)により予見する。操作
候補が予見時間内に障害物と接触する場合、障害物に接触する前の状態をその候補の予見結
果とする。
予見後の状態と戦術目標との距離偏差 (dp),向きの偏差 (dθ)、および障害物と予見後の車
体の前または後,左,右との距離偏差 (dbump, dlef t, dright) を算出する。これらを被評価値
とし、この被評価値を ”Good”や ”V eryGood”といったメンバシップ関数をもつファジィ集
合により評価する。各被評価値のメンバシップ関数への適合度を、その候補の各目的に対す
る評価値(目的評価値)とする。各目的評価値のうち最も低いものを、その制御指令候補の
現在状態に対する評価値(操作候補評価値)とする。操作候補評価値が最も高いものは、現
在状態に対して最適であると考える。
例として、図 5.10 のように、u1, u2, u3 といった 3 つの操作候補があると仮定する。この三
つの操作候補を予見ファジィ制御に入力し、目的評価し、それぞれにおける指令評価値の中
で最も高い評価を得られた u1 を操作候補としている (図 5.11)。
ここで用いている予見ファジィ制御方式は、対象システムである自動車の走行特性に関す
る理論的知識を考慮し、
「もし、現在のシステム状態でこの操作候補(u = Ci )を出力したな
らば、このように動く (x, y) θ から、対象システム本来の制御目的(Ai ,Bi )を満足した制
御ができそうだ。」という多次元的目的評価の集まりからなる運転知識を経験則として用い
44
図 5.10: 戦術目標到達のための操作候補
図 5.11: 予見ファジィ制御の推論過程
る。これを ”If ( u = Ci → x is Ai and y is Bi ) then u = Ci ”の形式の制御則とし、操作候
補(u = Ci )を仮定したシステムの動き(x, y, θ の値)を予見・予測し、ファジィ推論を行
う [11]。ここで、u は操作量、Ai ,Bi ,Ci は x,y ,u のとるファジィ集合で定義される値で
ある。自動車を対象とする予見ファジィ制御は、「もし(If)ハンドルを右に切って、目標に
到達でき、障害物に衝突しない状況ならば、(then)ハンドルを右に切る。」といった制御則
に基づき、目標到達精度や、障害物回避といった安全性などの対象システム本来の制御目的
を実時間で評価し、適切な操作候補を選択する。
以下に操作候補の決定に関する予見ファジィ制御ルールとファジィ集合を示す。
• If( u = ハンドルを現在のまま保持 →
dp is Good and dθ is V eryGood and
dbump is Good and dlef t is V eryGood and dright is V eryGood)
45
then u = ハンドルを現在のまま .
• If( u = ハンドルをまっすぐにする →
dp is Good and dθ is V eryGood and
dbump is Good and dlef t is Good and dright is Good)
then u = ハンドルをまっすぐにする .
• If( u = ハンドルを右に少し切る →
dp is Good and dθ is V eryGood and
dbump is Good and dlef t is V eryGood and dright is V eryGood)
then u = ハンドルを右に少し切る .
• If( u = ハンドルを左に少し切る →
dp is Good and dθ is V eryGood and
dbump is Good and dlef t is V eryGood and dright is V eryGood)
then u = ハンドルを左に少し切る .
• If( u = ハンドルを右に少し切り、その後左に少し切る →
dp is V eryGood and dθ is V eryGood and
dbump is Good and dlef t is V eryGood and dright is Good)
then u = ハンドルを右に少し切り、その後左に少し切る .
• If( u = ハンドルを左に少し切り、その後右に少し切る →
dp is V eryGood and dθ is V eryGood and
dbump is Good and dlef t is Good and dright is V eryGood)
then u = ハンドルを左に少し切り、その後右に少し切る .
• If( u = ハンドルを右に切り、その後左に切り、最後にまっすぐにする →
dp is Good and dθ is V eryGood and
dbump is Good and dlef t is V eryGood and dright is Good)
then u = ハンドルを右に切り、その後左に切り、最後にまっすぐにする .
• If( u = ハンドルを左に切り、その後右に切り、最後にまっすぐにする →
dp is Good and dθ is V eryGood and
dbump is Good and dlef t is Good and dright is V eryGood)
then u = ハンドルを左に切り、その後右に切り、最後にまっすぐにする .
• If( u = ハンドルを右に大きく切る →
dp is Good and dθ is V eryGood and
dbump is Good and dlef t is V eryGood and dright is Good)
then u = ハンドルを右に大きく切る .
46
• If( u = ハンドルを左に大きく切る →
dp is Good and dθ is V eryGood and
dbump is Good and dlef t is Good and dright is V eryGood)
then u = ハンドルを左に大きく切る .
図 5.12: 操作候補の決定に用いたメンバシップ関数
得られる操作候補は以下となる。
• 操舵角
— 相対的にゼロ
— 絶対的にゼロ
— 相対的に右
— 相対的に左
— 右
— 左
— 右いっぱい
— 左いっぱい
• 操舵の仕方
— さらに
— 途中で反転
47
— そのまま
• 速度
— 前進
— 後進
5.5.2
提供情報の種類決定
提供情報の種類決定は、人間のこの間隔で、この状況なら、こういった情報を提供したら
よさそうだという知識に基づいて、決定される。
提供情報の種類は「提供しない」、「ハンドル操作」、「進行方向」、「戦術」、「戦略」、「ハン
ドルをまっすぐする」、「停止」の 7 種類に分類される。
提供しない
「提供しない」は「情報を提供しないこと」である。前回の情報を提供中である場合や、最
後に提供した情報提供後の経過時間が短い (提供してからそれほど時間がたっていない) 場合
は、「提供しない」が選択される。これは、操作者の混乱を招かないために、情報過多になら
ないように、受け取りやすい間隔で提供するという意図からである。
ハンドル操作
「ハンドル操作」は「最適な操作候補にもとづくハンドル操作を提供すること」である。」
支援情報の基本となるのが「ハンドル操作」である。最後に提供した情報提供後の経過時間
が適切もしくは長い場合で、とくに特別な状況でない場合に選択される。よって、通常最も
選択される。
進行方向
「進行方向」は「最適な操作候補にもとづく進行方向を提供すること」である。「ハンドル
操作」の次に基本となるのが、この「進行方向」である。操作候補の速度と現在の車両の速度
が違う場合に選択される。ただし、現在の車両の速度が 0 すなわち、停車中の場合は、最後
に提供した情報提供後の経過時間が長いとき (空白の時間が長すぎるとき) だけ、選択される。
戦術
「戦術」は「操舵の仕方と速度をを提供すること」である。最後に提供した情報提供後の経
過時間が適切か、長い場合で、現在すべき操作の詳しい情報提供が必要であると判断した場合
48
に選択される。具体的には、車両の停車時間が長い (操作者が操作を迷っている、次の操作が
わからないと考えられる) 場合、もしくは、事前の提供情報が停止だった場合に選択される。
戦略
「戦略」は「目標設定部で設定した戦略 (車庫に寄せる等) を提供すること」である。最後
に提供した情報提供後の経過時間が提供可能状態である場合で、戦略が変化した (保持してい
る戦略と現在の戦略が違う) 場合、もしくは、操作者が現在の戦略を要求した場合、選択され
る。戦略提供には、現在の戦略を操作者に提供することで、支援情報を操作者が受け入れや
すくなるようにするという、意図がある。
ハンドルをまっすぐにする
「ハンドルをまっすぐにする」は「操舵角の絶対値を 0 にする支援情報を提供すること」で
ある。最後に提供した情報提供後の経過時間が提供可能状態である場合で、目標までの距離が
近い場合に選択される目標に近づいた場合、次の目標に対応しやすくするという意図がある。
停止
「停止」とは「停止 (速度を 0 にする) をうながす情報を提供すること」である。最後に提
供した情報提供後の経過時間が提供可能状態である場合で、戦術目標が変化した (現在保持し
ている戦術目標と現在の戦術目標が違う)、つまりそれまでの戦術目標に到達もしくは失敗し
たと考えられる場合、選択される。
以下にファジィ命題知識、ルール、ファジィ集合を示す。
• 前回の情報提供後の経過時間 (現在時刻-最後に提供した情報の時間)telapse
• 操作候補の速度 vc
• 現在の車両の速度 vnow
• 停車時間 tstop
• 戦略変化 (保持している戦略と現在の戦略との相違)Strategy
• 人間の操作入力 (戦略問い合わせ)hinput
• 戦術目標までの距離 dist
• 前回の提供情報 ilast
• 戦術目標の変化 (保持している戦術目標と現在の戦術目標との相違)T acticalT arget
49
• If telapse is W rong then 提供情報 = 提供しない .
• If telapse is Short and Strategy is Same and hinput is N o
and dist is F ar and ilast is iOther and T acticalT arget is Same
then 提供情報 = 提供しない .
• If telapse is Good and vnow is Zero and tstop is Long
and Strategy is Same and hinput is N o and dist is F ar
and ilast is iOther and T acticalT arget is Same
then 提供情報 = 戦術 .
• If telapse is Over and vnow is Zero and tstop is Long
and Strategy is Same and hinput is N o and ilast is iOther
and T acticalT arget is Same
then 提供情報 = 戦術 .
• If telapse is Good and vc is Back and vnow is Zero
and tstop is Short and Strategy is Same and hinput is N o
and dist is F ar and ilast is iOther and T acticalT arget is Same
then 提供情報 = 提供しない .
• If telapse is Good and vc is F orward and vnow is Zero
and tstop is Short and Strategy is Same and hinput is N o
and dist is F ar and ilast is iOther and T acticalT arget is Same
then 提供情報 = 提供しない .
• If telapse is Over and vc is Back and vnow is Zero
and tstop is Short and Strategy is Same and hinput is N o
and ilast is iOther and T acticalT arget is Same
then 提供情報 = 進行方向 .
• If telapse is Over and vc is F orward and vnow is Zero
and tstop is Short and Strategy is Same and hinput is N o
and ilast is iOther and T acticalT arget is Same
then 提供情報 = 進行方向 .
• If telapse is Good and vc is Back and vnow is Back
and tstop is Short and Strategy is Same and hinput is N o
and dist is F ar and ilast is iOther and T acticalT arget is Same
then 提供情報 = ハンドル操作 .
• If telapse is Good and vc is F orward and vnow is F orward
and tstop is Short and Strategy is Same and hinput is N o
50
and dist is F ar and ilast is iOther and T acticalT arget is Same
then 提供情報 = ハンドル操作 .
• If telapse is Over and vc is Back and vnow is Back
and tstop is Short and Strategy is Same and hinput is N o
and dist is F ar and ilast is iOther and T acticalT arget is Same
then 提供情報 = ハンドル操作 .
• If telapse is Over and vc is F orward and vnow is F orward
and tstop is Short and Strategy is Same and hinput is N o
and dist is F ar and ilast is iOther and T acticalT arget is Same
then 提供情報 = ハンドル操作 .
• If telapse is Good and vc is Back and vnow is F orward
and tstop is Short and Strategy is Same and hinput is N o
and dist is F ar and ilast is iOther and T acticalT arget is Same
then 提供情報 = 進行方向 .
• If telapse is Good and vc is F orward and vnow is Back
and tstop is Short and Strategy is Same and hinput is N o
and dist is F ar and ilast is iOther and T acticalT arget is Same
then 提供情報 = 進行方向 .
• If telapse is Over and vc is Back and vnow is F orward
and tstop is Short and Strategy is Same and hinput is N o
and dist is F ar and ilast is iOther and T acticalT arget is Same
then 提供情報 = 進行方向 .
• If telapse is Over and vc is F orward and vnow is Back
and tstop is Short and Strategy is Same and hinput is N o
and dist is F ar and ilast is iOther and T acticalT arget is Same
then 提供情報 = 進行方向 .
• If telapse is P ossible and Strategy is Same and hinput is Input
and dist is F ar and ilast is iOther and T acticalT arget is Same
then 提供情報 = 戦略 .
• If telapse is P ossible and Strategy is Change and dist is F ar
and ilast is iOther and T acticalT arget is Same
then 提供情報 = 戦略 .
51
• If telapse is P ossible and dist is N ear and ilast is iOther
and T acticalT arget is Same
then 提供情報 = ハンドルまっすぐ .
• If telapse is P ossible and ilast is iOther and T acticalT arget is Change
then 提供情報 = 停止 .
• If telapse is P ossible and ilast is iStop and T acticalT arget is Change
then 提供情報 = 戦術 .
図 5.13: 支援情報の種類決定に用いたメンバシップ関数
52
5.5.3
支援情報決定
決定された支援情報の種類に対し、決定された最適な操作候補を元に、以下のように提供
する支援情報を決定する。
提供しない
情報無。
ハンドル操作
表 5.1 に示す。
表 5.1: ハンドル操作
操舵角候補
操作者の操作 (操舵角)
支援情報
相対的にゼロ
「そのままで」
絶対的にゼロ
「まっすぐ」
相対的に右
左
真ん中
右
「少し戻す」
「少し右に」
「さらに右に」
相対的に左
右
真ん中
左
「少し戻す」
「少し左に」
「さらに左に」
右
「右に」
左
「左に」
右いっぱい
「右いっぱいに」
左いっぱい
「左いっぱいに」
進行方向
表 5.2 に示す。
表 5.2: 進行方向
速度候補
支援情報
前進
「前進」
後進
「後進」
53
戦術
表 5.3 に示す。
表 5.3: 戦術
速度候補
操舵角候補
前進
相対的にゼロ
絶対的にゼロ
相対的に右
操舵の仕方候補
操作者の操作 (操舵角)
左
真ん中
右
右
真ん中
左
相対的に左
右
左
右いっぱい
左いっぱい
後進
反転
反転
相対的にゼロ
絶対的にゼロ
相対的に右
左
真ん中
右
右
真ん中
左
相対的に左
右
左
右いっぱい
左いっぱい
反転
反転
54
支援情報
「そのままで前進」
「まっすぐ前進」
「少し戻す前進」
「少し右に前進」
「さらに右に前進」
「少し戻す前進」
「少し左に前進」
「さらに左に前進」
「一度右にその後左に前進」
「一度左にその後右に前進」
「右いっぱいに前進」
「左いっぱいに前進」
「そのままで後進」
「まっすぐ後進」
「少し戻して後進」
「少し右に後進」
「さらに右に後進」
「少し戻して後進」
「少し左に後進」
「さらに左に後進」
「一度右にその後左に後進」
「一度左にその後右に後進」
「右いっぱいに後進」
「左いっぱいに後進」
戦略
表 5.4 に示す。
表 5.4: 戦略
戦略
支援情報
水平にする
「水平にする」
車庫に寄せる
「車庫に寄せる」
切り返して車庫に入れる
「切り返して車庫に入れる」
車庫に入れる
「車庫に入れる」
車庫入れ完了
「車庫入れ完了」
ハンドルまっすぐ
支援情報は「まっすぐ」。
停止
支援情報は「停止」。
障害物にぶつかる恐れがあり、危険な場合
障害物との距離が近くなったら、他の支援情報が選択されていたとしても、優先的に「危
険です」という音声情報を提示する。
以上のように決定された支援情報を音声で操作者の方に提供する。操作者への支援情報の
提供法は画面に表示する方法なども考えられる。この場合、操作者が画面に注目することで、
周囲状況の認知ミスなどにつながり、危険であると思われることから、音声を用いることに
した。
55
第6章
ジョイスティックを用いた実験と考察
第 5 章で構築した走行支援情報提供システムを用いて、車庫入れシミュレーションの走行操
作支援実験を行った。本章では、実験条件とその結果、および考察を述べる。
6.1
実験条件
車庫と車両はシミュレーションとして用意し、画面を見ながらジョイスティックを操作する
という形で、実験を行った。実験風景を図 6.1 に、シミュレーション画面を図 6.2 に示す。
図 6.1: 実験風景
シミュレーションで用意した車両の仕様は第 3 章で紹介した電動車椅子と同じである (表
6.1)。車両の状態である位置、向き、速度、舵角と障害物までの距離は、常に測定可能であ
るとした。速度は低速という前提の下、±0.13m/s 一定とし、符号により前進と後進を区別
する。
56
図 6.2: シミュレーション画面
表 6.1: シミュレーションで用意した車両の仕様
全長
ホイールベース
車幅
最小旋回半径
1.10m
0.80m
0.55m
0.95m
シミュレーションで用意した車庫を図 6.3 に示す。障害物である車庫の壁は線分の集合とし
て認識し、壁以外の障害物は存在しないものとした。
また、車の初期値を 3 種類用意し、複数の被験者に実験をしてもらった。用意した初期値
のパターンは以下の 3 つ。(順番に横座標 (x[cm])、縦座標 (y[cm])、向き (rad))
• 初期値 1 (245, 167, 2.47)
• 初期値 2 (112, 238, 2.90)
• 初期値 3 (−129, 196, −3.14)
あらかじめ被験者には指示の種類と意味を説明し、システムが提供した支援情報通りに操
作を行うよう指示をした。
57
図 6.3: シミュレーションで用意した車庫の形状
6.2
実験結果
実験結果を図 6.4~6.15 に示す。初期値 1 では被験者 4 人とも、ほぼ 130sec 前後で車庫入
れを完了した。初期値 2 では一番早かったのが被験者 (a) で 91.30sec、一番かかったのは被験
者 (d) で 188.0sec であった。初期値 3 では被験者 4 人とも、ほぼ 60sec 以内で車庫入れを完了
した。
実験後、被験者に感想を求めたところ、次のような回答が得られた。
• よいと思われる点
— 提供された支援情報に従うことでスムーズに車庫入れ操作が行えた。
— 適切なタイミングで支援情報が提供されたので、よかった。
— 戦略を提供されたので、システムの意図が理解できた。
• 不満に思う点
— 戦略を提供する声と、通常の支援情報を提供する声が同じなのでわかりづらい。
— 情報提供のタイミングが早い。
— 情報提供のタイミングが遅い。
6.3
考察
図 6.4、6.8、6.9、6.12、6.13 は提供された支援情報に対して、比較的誤操作や反応誤差が
少なく、スムーズに車庫入れを完了している例である。軌跡により、操作者が迷うことなく
操作しているのがわかる。
58
図 6.6、6.10、6.11 は切り返しを 2 度行っているが、これは被験者が左に切って後進する際
に操作が遅れ、車庫に衝突する可能性が生じたため、再度切り返しの支援情報が提示された
結果である。
図 6.8~6.11 の初期値 2 においては、一度後退して車を水平にしている。通常の人間の操作
を考えると、
「水平にする」には左前に前進することも考えられるが、本システムは車体の向
きの誤差が少ない方を選択する知識に基づいて目標を選択する (目標に到達するのに必要な操
舵角の量が少ない方を選択する) ため、後進が選ばれたと考えられる。
図 6.12~6.15 に示す初期値 3 の軌跡は、それぞれ被験者の反応特性が違うため描く弧も様々
である。しかし、この回で反応誤差の大きかった、被験者 (d) に対しても柔軟に支援情報が
対応して、車庫入れを無事完了していることがわかる。
6.2 節の実験結果から、走行支援情報提供システムの支援に従えば、操作者は車両を車庫に
入れることができることを確認した。また反応特性が違うと考えられる被験者 4 人が 3 種類
の違う初期値で車庫入れを成功していることから、人間のあいまいな操作による反応誤差に
対しても、システムが柔軟に対応していることがわかる。
被験者の主観的な評価に対して考察すると、支援情報の提供するタイミングが良いと思う
人と、不満に思う人とがいた。この評価の違いは人によって、反応特性が違うため、生じてい
ると考えられる。情報を提供するタイミングは、支援情報提供部の支援情報の種類決定推論
により、決定される。よって、この問題を解決するためには、推論における、時間評価のメン
バーシップの値を変えたシステムを複数用意し、多数の被験者に実験を行ってもらい、信頼
性の評価を行い、情報を提供するタイミングや、将来状態の予見時間を調整する必要がある。
59
図 6.4: 実験結果:初期値 1(245,167,2.47)、被験者 (a)
図 6.5: 実験結果:初期値 1(245,167,2.47)、被験者 (b)
図 6.6: 実験結果:初期値 1(245,167,2.47)、被験者 (c)
図 6.7: 実験結果:初期値 1(245,167,2.47)、被験者 (d)
60
図 6.8: 実験結果:初期値 2(112,238,2.90)、被験者 (a)
図 6.9: 実験結果:初期値 2(112,238,2.90)、被験者 (b)
図 6.10: 実験結果:初期値 2(112,238,2.90)、被験者 (c)
図 6.11: 実験結果:初期値 2(112,238,2.90)、被験者 (d)
61
図 6.12: 実験結果:初期値 3(-129,196,-3.14)、被験者 (a)
図 6.13: 実験結果:初期値 3(-129,196,-3.14)、被験者 (b)
図 6.14: 実験結果:初期値 3(-129,196,-3.14)、被験者 (c)
図 6.15: 実験結果:初期値 3(-129,196,-3.14)、被験者 (d)
62
第7章
結論
本論文では、認知、判断が衰えた高齢者や障害者の移動を助ける補助機能として、福祉車
両の走行支援情報提供システムを提案、開発した。人間のような支援をするシステムを構築
するために、人間の支援者をモデル化し、状態評価ファジィ推論と予見ファジィ制御手法を
導入した。その推論過程で得られる情報や使用した知識を利用して、状況に応じて柔軟に支
援情報を提供する走行支援情報提供システムを開発した。ジョイスティックを用いた車庫入れ
シミュレーション実験により、状況に応じて、柔軟に支援情報を提供することを確認し、そ
の有効性を確認した。
本システムでは、駐車環境だけに限定した知識を用いたため、今後はその他の様々な環境
に対しても、知識ベースを獲得し、汎用的なシステムにする必要がある。また、支援情報の
信頼性をあげるために、複数の操作者を被験者とした実験により信頼性の評価を行うことで、
支援情報を決定する際のファジィ集合の調整をする必要がある。これらが今後の課題である。
63
謝辞
本研究を行うにあたり、ご多忙の中、多大なる御指導を承りました機能工学系安信誠二教
授に心より感謝致します。また、機能工学系末竹規哲講師には数々の御助言をいただきまし
た。最後に、筑波大学機能工学系知的制御システム研究室関係者、両親、祖父母、友人の皆
様には、様々な形で御指導、御協力を頂きましたことを深く感謝致します。
64
参考文献
[1] 山本, 大庭, 毛利. ニューラルネットワークと補助ルールによる四輪自動車の自律車庫入
れ動作計画と制御. 日本機械学会論文集(C編), Vol. 62, No. 598, pp. 2172—2177, 1996.
[2] Lotif. A. Zadeh. Fuzzy sets. Infomation and Control, Vol. 8, pp. 338—353, 1965.
[3] E. A. Mamdani. Application of fuzzy algorithms for control of simple dynamic plant.
Proc. IEE, Vol. 121, No. 12, pp. 1585—1588, 1974.
[4] 安信誠二. ファジィ工学. 昭晃堂, 1991.
[5] 日本ファジィ学会(編). 講座ファジィ第五巻ファジィ制御. 日刊工業新聞社, 1992.
[6] 飯島. 支援の定義. オフィスオートメーション学会支援基礎論研究部会報告書「『支援』
概念の基礎づけに向けて」(1995)第1部第2章, 1995.
[7] 小橋. なぜ支援について考えたいのか. オフィスオートメーション学会支援基礎論研究部
会報告書「『支援』概念の基礎づけに向けて」(1995)第1部第1章, 1995.
[8] 樋口監修, 自動車工学編集委員会編著(編). 自動車工学. 山海堂, 1988.
[9] 高野. 自律移動ロボットの機構と移動制御技術. 日本ロボット学会誌, Vol. 5, No. 5, pp.
52—58, 1987.
[10] JAF MATE, editor. 運転レッスン車庫入れ編, 第 36 巻. (株)JAF MATE 社, 1998.
[11] 安信. 予見ファジィ制御 (predictive fuzzy control). 日本ファジィ学会誌, Vol. 3, No. 3,
p. 520, 1991.
[12] 齋藤, 安信. 予見ファジィ制御を用いた狭領域での四輪自動車の車庫入れ制御. 第 14 回
ファジィシステムシンポジウム 講演論文集, pp. 59—60, 1998.
[13] 関村. 自動車の走行特性を考慮した知的運転支援システムの評価. 筑波大学大学院修士課
程理工学研究科修士論文, 1999.
[14] 齋藤. 人間の制御戦略に基づいた自動車の知的制御システム. 筑波大学大学院修士課程理
工学研究科修士論文, 2000.
65
[15] 安信, 宮本, 井原. 予見 fuzzy 制御方式による列車自動運転. システムと制御, Vol. 28,
No. 10, pp. 605—613, 1984.
[16] 安信, 南山. 階層型途中目標設定による予見ファジィ自動車制御システム. 電気学会産業
計測制御研究会資料, pp. 13—18, 1997.
66
Fly UP