Transcript PowerPoint97
料理献立作成エキスパートシステムの 最適化に関する研究
理学部 情報科学科 西岡研究室 高田 光子 1
はじめに
複数食分の料理献立を、対象者の嗜好だ けでなく栄養のバランス等を考慮して提案 する 対象者の年齢・性別に応じて栄養摂取量 は異なるため、それに応じたさまざまな制 約条件を生成し、数理計画法により解を求 める 2
数理計画問題
すべての制約条件を満足する解の中で 目的関数の最適値を与える解を求める 目的関数 :制御変数と問題の目的との関係を与える数式 制約条件 :制御変数がとりうる値を制限する数式 実行可能解 :制約条件を満たす解 最適解 :実行可能解のうち目的関数を最大(最小)にする解 数理計画問題の解法を数理計画法という 3
数理計画問題・数理計画法の分類
線形計画法: 目的関数とすべての制約条 件が線形式で表される 整数計画法: 制御変数の値が整数値の みをとる 0-1計画法: 制御変数の値が0か1のみ をとる 4
システムの概略
年齢・性別を入力 主食、主菜、副菜、汁物の順に料理メニューからそれぞ れ候補を選択する 制約条件と目的関数を作成し、数理計画法を用いて最適 解を求める 最適解を用いて栄養のバランスの良い献立を出力 5
データ形式
dish( 料理番号 , 種類 , パターン , 漢字料理名 , カロリー( kcal ) , たんぱく質量( g ) , 塩分量( g ) , 調理時間(分) , 費用(円)) 種類 パターン 1:和食 2:洋食 3:中華 1:主食 2:主菜 3:副菜 4:汁物 6
動作例(年齢・性別入力画面)
7
動作例(献立の候補の選択画面)
8
動作例(献立の候補の選択画面)
9
動作例(組み合わせの選択画面)
10
動作例(システム内部)
制約条件 783 523
X
1 13 2 1 .
11 .
2
X
1 4
X
1 487
X
11 .
9
X
0 .
8
X
2 2 2 666
X
8 .
5
X
0 .
5
X
3 3 3 1
X
10 80
X
2 .
4
X
10 0 .
10 5
X
4 11 74 .
9
X
11
X
11 1 .
2 183
X
12
X
12 4
X
12 4
X
1
X i
X
0 , 2 1 (
i X
3 1 , 2 1
X X
7
X
10
X
8
X
11
X
9
X
12 1 1
X
4 1
X X
5 4
X
6 1 , , 12 ) 目的関数 983 33
f
20
X
1 25
X
2 50
X
3 20
X
10 15
X
11 20
X
12 min 11
動作例(システム内部)
523
X
1 487
X
2 666
X
3 80
X
10 74
X
11 11 523
X
1 .
2
X
1 487
X
11 .
9
X
2 3 666 8 .
5
X X
3 3 2 80 .
4
X X
10 10 74
X
11 4 .
9
X
11 183
X
12 183
X
13 4
X
12 983 33 783 11 .
2
X
1 1 .
4
X
1 11 .
9
X
0 .
8
X
2 2 0 .
5
X
8 .
5
X
3 3 1
X
2 .
4 10
X
10 0 .
5
X
4 .
9 11
X
11 1 .
2
X
4
X
12 12 4 1 .
4
X
1 0 .
8
X
2 0 .
5
X
3 1
X
10 0 .
5
X
11 1 .
2
X
12 2 13
X
1
X
1
X
4
X
4
X
1
X
2
X
2
X
5
X
X
4 5
X
3
X
3 1
X
6
X
0 6 1 1 1
X
7
X
7
X
10
X
10
X
8
X
8
X
11
X
11
X
9
X
9 1
X
12
X
12 1 1 1 12
動作例(出力画面)
調理時間を目的関数とした出力例
X
1 0
X
4 1
X
7 0
X
10 1
X
2 0
X
5 0
X
8 1
X
11 0
X
3
X
6 1 0
X
9 0
X
12 0 13
動作例(出力画面)
費用を目的関数とした出力例
X X
4 1 1 1
X
7 0
X
10 1
X
2 0
X
5 0
X
8 0
X
11 0
X
3 0
X X
9 6 0 1
X
12 0 14
まとめ
数理計画法を用いることにより、栄養学的な諸条 件を満たすバランスの良い献立を作成できるよう になった。 個人の好みや献立の組み合わせの適・不適を制 約条件に反映することにより、目的に合った献立 が作成できるようになった。 目的関数を変更することにより調理時間や費用 等の目的に応じた献立を作成できるようになった。 15
今後の課題
料理に変化を持たせるバラエティーに富ん だ献立を作成できるようにする 調理時間、費用以外の要因を最適とする 目的関数を作成できるようにする GUIでの制約条件・目的関数の入力方法 の追加・改良 16