arrow-up icon

アニーリングマシンを用いた
学校給食推薦システムの開発

プロジェクトメンバー

お茶の水女子大学 理学部情報科学科
井上優風 様

お茶の水女子大学 人間文化創成科学研究科 理学専攻
秋島遥 様

Image
graphical divider
取り組んだ内容

2022年度の未踏ターゲット事業(通常枠)において、一般家庭向けの献立推薦ウェブアプリの開発に取り組みました。このプロジェクトで、家庭での献立提案においては、カロリーや栄養素の数値よりも、冷蔵庫にある食材の組み合わせから生み出されるレシピの推薦がより重要であることが明らかになりました。その結果を踏まえ、2023年度の未踏ターゲット事業(応用・実用化枠)では、カロリーや栄養素の数値がより重視される給食の領域へと焦点を移し、ウェブアプリの開発を進めました。

組合せ最適化問題の概要

数あるレシピの中から、複数の条件を満たしながら、より良い組み合わせを選択する組合せ最適化問題。児童、生徒の学年に合わせた目標栄養価やカロリー、設定した費用などの条件を満たすような1ヵ月分の学校給食の献立を作成します。

決定変数

レシピ数(i)×日数(r)の2次元の決定変数(レシピiを日にちrに選択するとき1、しないとき0)

決定変数のイメージ

日数(r)
4月1日 4月2日 4月3日 4月4日 4月5日 ・・・
レシピ (i) ごはん q (0 or 1) q (0 or 1) q (0 or 1) q (0 or 1) q (0 or 1)
ぱん q (0 or 1) q (0 or 1) q (0 or 1) q (0 or 1) q (0 or 1)
パスタ q (0 or 1) q (0 or 1) q (0 or 1) q (0 or 1) q (0 or 1)
焼き魚 q (0 or 1) q (0 or 1) q (0 or 1) q (0 or 1) q (0 or 1)
とんかつ q (0 or 1) q (0 or 1) q (0 or 1) q (0 or 1) q (0 or 1)


目的関数
  • 栄養素を理想値に近づける
  • 費用を理想値に近づける
  • 1日の中でのレシピのジャンルを揃える
  • 似ている献立を連続して出さないようにする
  • ユーザーからの評価
制約条件
  • 主食と主菜は1個、副菜、汁物、デザートは0または1個とする
  • 同じレシピが1ヶ月に2回以上出ないようにする
苦労した点

給食の献立決定プロセスについて理解を深めるため、複数の小学校の栄養士の方にヒアリングを行いました。得られた情報をもとに、できるだけ実際の献立作成に近い問題設定と制約条件を慎重に設定しました。制約が多く重みの調整が困難でしたが、グリッドサーチを使って地道に取り組みました。検討段階で栄養士の方から、「このメニューは調理に時間がかかる」、「このメニューは子供が食べるのに時間がかかる」といったフィードバックをいただき、全てをモデルに組み込むことは難しいと悩みましたが、ウェブアプリ上で栄養士の方からフィードバックをもらって次の献立作成に活かすというアイデアに繋がりました。

今後の展望

いずれはサービス化したいと思っていますが、現時点では栄養士の方を含め多くの方に使ってもらってアプリのブラッシュアップを継続していきたいと思っています。また、可能であれば病院などにも展開していきたいです。

嬉しかった点

栄養士の方に実際のウェブアプリを見ていただく際、初めのうちは提案した献立への反応は芳しくありませんでしたが、ヒアリングや改良を重ねていく中で、全体的に肉と魚のバランスが良くなった、とのコメントをいただいたり、1ヶ月の献立の中で何日分かの献立はそのまま採用できる、と言っていただけるようになったことが嬉しかったです。

見ている方に一言

Fixstars Amplifyなどのツールを使うことで、定式化のハードルを下げることができます。

解いてみたい組合せ最適化問題があれば、ぜひイジングマシンを使ってみてください。また、今回開発したウェブアプリケーションは以下でお試しいただけます。ぜひ使ってみてください!
https://menu-recommend.com decoration

*本記事の掲載内容は全て取材時の情報に基づいています

他のインタビューを見る