Transcript 03k1033 藤田
After-school monitor N03k1033 Takashi Fujita マイアプローチ 子供の帰宅を知らせるafter-school monitor スケジュール管理をし、予定通りの帰宅時間 であれば、そのままEメールなどで報告する 例外があれば、推測結果を報告 セルフラーニングできるようにする 予定通りの帰宅 YES 安全メール NO 推測する 推測結果をメール 過去のデータベース と照らし合わせる 表示方法 例) 公園 ○○君の家 池・川 学校 25% 10% 5% 60% 過去のデータベースを照らし合わせて可能性 を 子供はどこで遊んでいるか 男子の年齢別 6~8 no 場所 男子の年齢別9~12 人数 % no 場所 1 公園 116 40.0% 1 家の中 2 家の中 111 38.3% 2 3 外 26 9.0% 4 児童館 19 5 学校 18 場所 % 137 46.0% 公園 91 30.5% 3 外 29 9.7% 6.6% 4 学校 29 9.7% 6.2% 5 池・川 12 4.0% 女子の年齢別6~8 no 人数 女子の年齢別9~12 人数 % no 場所 1 家の中 114 39.7% 1 家の中 2 公園 104 36.2% 2 3 外 29 10.1% 4 家の近所 20 5 学校 20 人数 % 141 49.6% 公園 82 28.9% 3 外 25 8.8% 7.0% 4 学校 20 7.0% 7.0% 5 家の近所 16 5.6% 子供はどこで遊んでいるかⅡ 男女ともに「家の中」が過半数を超えている 次に多いのが「公園」である 男女の違いとして、男の子は「池・川」にいくこ とがある ファジィ集合 fuzzy =ぼやけた、あいまいな、はっきりしない あいまいな言葉の意味を通学的に扱うため に、通常の集合を拡張したもの 例)「変数Xが5ぐらい」という集合は下図に示すようにX=5でピーク値1を持 つメンバシップ関数μ(X)によって定義される メンバシップ関数 全変数空間の要素が対象とするファジィ集合 に属する度合いを与えるもの。この度合いの ことをメンバシップグレードと呼び、0と1の間 の値で表される。 ファジィ集合 確率論とファジィ推論の違い ファジィネス(F) ファジィ集合に基礎 ファジィには制約なし ランダムネス(R) 集合論に基礎を置く 確率論には強い規制あり (確率は全部足したら1) ファジー推論の手法 直接法と間接法の2つに分けることができる 一般的に、簡便で且つ比較的良好な推論結果を導く ことが出来る直接法(max-min 法)にて解を求めるこ とが多い ファジィ推論方式の分類 推論方式 前件部 後件部 ファジィ集合 ファジィ集合 ファジィ集合 関数(定数) ファジィ集合 ファジィ集合 直接法 間接法 ファジィ推論の直接法の手続き ① ルールを記述 ② 度合いをメンバーシップ関数で表す ③ 入力に対する各ルールの推論結果を求 める ④ ③から最終的な結果(操作量)を求める(非 ファジィ化) ルールの記述 If-then を用いて記述するファジィルールは以下のよ うに示される。 if x1 is A11 & ...& xm is Am1 then y is B1 if x1 is A1n & ...& xm is Am n then y is Bn 前件部 また Am n , Bn 後件部 はそれぞれ前件部、後件部におけるファジィ集合である。 使用技術 JESS ・ ルールエンジンのためのJavaプラットフォーム Watchport/V2 USBデジタルカメラ 参考文献 http://www.isc.meiji.ac.jp/~sakai/edu/lec/fu zzy/index.htm http://www.cybernet.co.jp/matlab/support/ manual/r13/toolbox/fuzzy/fuzzyfor.shtml エージェントアプローチ人工知能 家から公園までの所要時間を考慮 近くに池・川があるばあいも考慮 学校までの所要時間は?←あてにならん 寄り道する可能性も考慮 外で遊んでいる場合、日照時間も考慮する。 日が落ちているのにサッカーする?? ファジー推論 ファジー推論のアルゴリズムを持つ制御システム JESS JESSの基本文法 ・ファクト ・テンプレート ・ルール ・変数 ・その他 ファクト ファクトとはデータ(シンボル、文字、数字)のリスト 例) (num 1 2 3) (num 2 1 3) (cat dog mouse lion) (movie "Star Wars") (duck) 順序付けされたリスト 次にこれらファクトとそれらが格納されるfact listに関するコマンド ・assert - ファクトをfact listに入れる。 - 例 (assert (num 1 2 3)) ・facts - fact listに入っているファクトの一覧を見る。 - 例 (facts) ・retract - fact listから、インデックスで指定したファクトを消去する。- 例 (retract 1) ・reset - fact listに入っているファクトを全て消去する。- 例 (reset) ・clear - fact listに入っているファクトとknowledge baseに入っているルールを全 て消去する。- 例 (clear) ・deffacts - 複数のファクトをまとめて定義する。- 例 (deffacts database (stock A 2.0) (stock B 5.0) (stock C 6.0)) テンプレート 順序付けされていないリストを使ったファクト 作り 例) (deftemplate user (slot name) (slot age) (slot address) )