料理献立作成エキスパートシステムの 最適化に関する研究 理学部 情報科学科 西岡研究室 高田 光子 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 523X 1 487X 2 666X 3 80X 10 74X 11 183X 12 983 13 11.2 X 1 11.9 X 2 8.5 X 3 2.4 X 10 4.9 X 11 4 X 12 33 2 1.4 X 1 0.8 X 2 0.5 X 3 1X 10 0.5 X 11 1.2 X 12 4 X1 X 2 X 3 1 X4 X5 X6 1 X7 X8 X9 1 X 10 X 11 X 12 1 X1 X 4 X i 0 ,1 (i 1,2,,12) 目的関数 f 20X 1 25X 2 50X 3 20X 10 15X 11 20X 12 min 11 動作例(システム内部) 523X 1 487X 2 666X 3 80X 10 74X 11 183X 12 983 523X 1 487X 3 666X 3 80X 10 74X 11 183X 13 783 11.2 X 1 11.9 X 2 8.5 X 3 2.4 X 10 4.9 X 11 4 X 12 33 11.2 X 1 11.9 X 2 8.5 X 3 2.4 X 10 4.9 X 11 4 X 12 13 1.4 X 1 0.8 X 2 0.5 X 3 1X 10 0.5 X 11 1.2 X 12 4 1.4 X 1 0.8 X 2 0.5 X 3 1X 10 0.5 X 11 1.2 X 12 2 X1 X 2 X 3 1 X7 X8 X9 1 X 1 X 2 X 3 1 X 7 X 8 X 9 1 X4 X5 X6 1 X 10 X 11 X 12 1 X 4 X 5 X 6 1 X 10 X 11 X 12 1 X1 X 4 0 12 動作例(出力画面) 調理時間を目的関数とした出力例 X1 0 X2 0 X3 1 X4 1 X5 0 X6 0 X7 0 X8 1 X9 0 X 10 1 X 11 0 X 12 0 13 動作例(出力画面) 費用を目的関数とした出力例 X1 1 X2 0 X3 0 X4 1 X5 0 X6 0 X7 0 X8 0 X9 1 X 10 1 X 11 0 X 12 0 14 まとめ 数理計画法を用いることにより、栄養学的な諸条 件を満たすバランスの良い献立を作成できるよう になった。 個人の好みや献立の組み合わせの適・不適を制 約条件に反映することにより、目的に合った献立 が作成できるようになった。 目的関数を変更することにより調理時間や費用 等の目的に応じた献立を作成できるようになった。 15 今後の課題 料理に変化を持たせるバラエティーに富ん だ献立を作成できるようにする 調理時間、費用以外の要因を最適とする 目的関数を作成できるようにする GUIでの制約条件・目的関数の入力方法 の追加・改良 16
© Copyright 2024 ExpyDoc