JP2007133581A - 調理手順生成装置、調理手順生成方法及び調理手順生成プログラム - Google Patents
調理手順生成装置、調理手順生成方法及び調理手順生成プログラム Download PDFInfo
- Publication number
- JP2007133581A JP2007133581A JP2005324998A JP2005324998A JP2007133581A JP 2007133581 A JP2007133581 A JP 2007133581A JP 2005324998 A JP2005324998 A JP 2005324998A JP 2005324998 A JP2005324998 A JP 2005324998A JP 2007133581 A JP2007133581 A JP 2007133581A
- Authority
- JP
- Japan
- Prior art keywords
- recipe
- intermediate product
- cooking
- cooking procedure
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 150
- 238000010411 cooking Methods 0.000 title claims abstract description 111
- 239000013067 intermediate product Substances 0.000 claims abstract description 161
- 230000007420 reactivation Effects 0.000 claims abstract description 7
- 230000008859 change Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 description 33
- 238000010586 diagram Methods 0.000 description 10
- 238000004519 manufacturing process Methods 0.000 description 8
- 238000010025 steaming Methods 0.000 description 7
- 235000020639 clam Nutrition 0.000 description 5
- 241000237519 Bivalvia Species 0.000 description 4
- 238000002360 preparation method Methods 0.000 description 4
- 235000015067 sauces Nutrition 0.000 description 4
- 241000238557 Decapoda Species 0.000 description 3
- 239000012467 final product Substances 0.000 description 3
- 239000000047 product Substances 0.000 description 3
- 241000238413 Octopus Species 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 239000011265 semifinished product Substances 0.000 description 2
- 241000208317 Petroselinum Species 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 235000021156 lunch Nutrition 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 235000015927 pasta Nutrition 0.000 description 1
- 235000011197 perejil Nutrition 0.000 description 1
- 101150069548 ppan gene Proteins 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000004576 sand Substances 0.000 description 1
- 238000002791 soaking Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 235000013311 vegetables Nutrition 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】並列性の高いスケジューリングを行うことのできる調理手順生成装置、調理手順生成方法及び調理手順生成プログラムを提供すること。
【解決手段】入力されたレシピに基づいて調理手順を生成する調理手順生成装置において、調理手順の1作業単位分の単位レシピであって、前記単位レシピを開始するのに必要な第1の中間成果物と、調理に必要な資源と、調理に必要な時間と、調理によって生成される第2の中間成果物とが記述された開始条件付部分レシピを少なくとも1つ含むレシピが記述されたレシピデータベース(105)と、前記第2の中間成果物と前記第1の中間成果物の再活性化に関する知識が記述されたデータを保持する中間成果物データベース(109)とを備えた。
【選択図】 図1
【解決手段】入力されたレシピに基づいて調理手順を生成する調理手順生成装置において、調理手順の1作業単位分の単位レシピであって、前記単位レシピを開始するのに必要な第1の中間成果物と、調理に必要な資源と、調理に必要な時間と、調理によって生成される第2の中間成果物とが記述された開始条件付部分レシピを少なくとも1つ含むレシピが記述されたレシピデータベース(105)と、前記第2の中間成果物と前記第1の中間成果物の再活性化に関する知識が記述されたデータを保持する中間成果物データベース(109)とを備えた。
【選択図】 図1
Description
本発明は、調理手順のスケジューリング生成作業を支援する調理手順生成装置、調理手順生成方法及び調理手順生成プログラムに関する。
レシピは、料理の手順を示したものであるが、上から順に書いてあることを実行した場合でも料理が出来上がるような書き方になっていない場合が多い。また、そのような書き方になっている場合でも、複数の料理を同時に並行して調理する際には、どのような手順で調理を行えばよいのか経験の浅い調理者にはわからない。
この問題を解決するために、特許文献1では、基本的な調理手順スケジューリングに関して、料理ごとに調理作業を不可分な作業単位に分割した作業モジュールについて、作業主体が調理器であって作業種類が同じ作業モジュールを並行して調理可能に割付ける。このため、調理器で複数の作業モジュールを並行して実行することができる。しかし、すべての作業単位に対する順序を変更することができないので、スケジューリングの自由度は低い。また、特許文献1では、料理の中間成果物に関する概念がないので、その再利用をすることや、手順毎に使用する資源の変更を行うことができない。
また、特許文献2は、学校給食や社員食堂等のように決められた献立を大量調理するにあたり、大量調理を円滑に行うための調理作業工程表を効率良く作成するためのものであって、下処理工程及び調理工程で使用する使用機器の制約を考慮した各工程の配置換え(マッピング)を行っている。しかし、特許文献2では、特許文献1と同様に調理手順を変更することもなく、更に、料理の中間成果物に関する概念がないので、その再利用をすることや、手順毎に使用する資源の変更を行うことができない。また、並列して実行する複数の料理のスケジューリングの作成を行うこともできない。
特開2003−141234号公報
特開2005−250857号公報
上記のように従来技術では、料理を行う上でレシピに記入される調理手順は、作業の順序に従って行っていくことが前提となっているので、調理時間等の観点からすれば、好適なスケジュールを作成できるとは限らない。
本発明は、並列性の高いスケジューリングを行うことのできる調理手順生成装置、調理手順生成方法及び調理手順生成プログラムを提供することを目的とする。
本発明の局面に係る発明は、入力されたレシピに基づいて調理手順を生成する調理手順生成装置において、調理手順の1作業単位分の単位レシピであって、前記単位レシピを開始するのに必要な第1の中間成果物と、調理に必要な資源と、調理に必要な時間と、調理によって生成される第2の中間成果物とが記述された開始条件付部分レシピを少なくとも1つ含むレシピが記述されたレシピデータベースと、前記第2の中間成果物と前記第1の中間成果物の再活性化に関する知識が記述されたデータを保持する中間成果物データベースとを具備することを特徴とする。
本発明の他の局面に係る発明は、調理手順の1作業単位分の単位レシピであって、前記単位レシピを開始するのに必要な第1の中間成果物と、調理によって生成される第2の中間成果物とが少なくとも記述された開始条件付部分レシピを少なくとも1つ含むレシピを入力するレシピ入力部と、料理に使用可能な資源に関する情報を記述した資源データベースと、入力された前記レシピと前記資源データベースの記述に基づき調理手順を生成する手順生成部とを備えたことを特徴とする。
なお、本発明は装置の発明に限らず、装置が実行する方法の発明としても成立するものとし、更に、当該方法をコンピュータで実行可能なプログラムの発明としても成立する。
なお、本発明は装置の発明に限らず、装置が実行する方法の発明としても成立するものとし、更に、当該方法をコンピュータで実行可能なプログラムの発明としても成立する。
本発明によれば、必要最小限の順序しか規定しないため、並列性の高い好適なスケジュールを作成することができる。
図面を参照して本発明の実施の形態を説明する。本発明では、レシピの記述にあたり、1つの調理手順で生成された半完成品(本明細書及び以下の実施形態において、「中間成果物」と称する)の記述を導入し、レシピの調理手順と中間成果物の記述から複数の料理のスケジューリングの作成を支援するようにしている。なお、半完成品は、詳細は後述するように、例えば、砂抜きをしたアサリ、みじん切りしたパセリなどが相当する。なお、全ての調理の結果として生成された完成品(最終成果物)についても、説明の便宜上、本明細書では、中間成果物と称する。
図1は、本発明の一実施形態に係る調理手順生成装置の概略構成を示す図である。本実施形態に係る調理手順生成装置は、レシピ入力部101と、手順生成部102と、中間成果物登録部103と、スケジュール出力部104と、資源データベース(DB)105と、中間成果物入力部106と、中間成果物検索部107と、レシピデータベース(DB)108と、中間成果物データベース(DB)109とを備えている。なお、図1では、調理手順生成装置を1つの装置として記載しているが、各構成要素がネットワークを介して接続されて、1つのシステムとして構成されていても良く、例えば、当該システムをサーバ・クライアントモデルで構築することも可能である。
上記の構成において、レシピ入力部101は、レシピを記述する部分であって、ユーザがこのレシピ入力部101を介してレシピを入力する。手順生成部102は、入力されたレシピに基づいて、資源DB105とレシピDB108を参照して調理手順を生成する。中間成果物登録部103は、レシピ中の中間成果物(詳細は後述する)を登録する。スケジュール出力部104は、手順生成部102で生成されたレシピの手順を出力する。資源DB105は、調理に必要となる資源(例えば調理者や調理道具)について記述されたデータを保持している。図2は、資源DB105に蓄積される資源の記述例を示す図である。図2に記述されている資源は、調理者(cook)1人、まな板(board)1個、包丁(knife)1本、シンク(sink)1つ、ボール(bowl)2個、フライパン(pan)2個、パスタ鍋(ppan)1個、コンロ(heat)2個、ざる(sieve)1個となっている。中間成果物入力部106は、中間成果物を活用するレシピを検索するために中間成果物或いはその集合を検索要求として入力する。中間成果物検索部107は、中間成果物入力部106から検索要求として入力された中間成果物を活用できるレシピを検索する。
レシピDB108は、入力されたレシピを蓄積する。図4は従来のレシピの記述例を示す図である。これに対して、本実施形態では、例えば、図3に示すようなレシピが記述される。なお、図3と図4に記述されたレシピは、ほぼ一致している。しかし、図3における具体的な記述例として、例えば、部分レシピ301の記述例は、
lr([xprawn,xclam],
[['ワイン蒸し準備', [cook,pan,heat], [2]],
['ワイン蒸し', [pan,heat], [5]]], [wine-steamed], []).
となっている。なお、上記の「部分レシピ」とは、本明細書では、詳細は後述する「開始条件付部分レシピ」と同じ意味を持つ用語として使用するが、全体のレシピに対して、調理手順の1作業単位分のレシピ(例えば、野菜を切る、洗う、いためるなどの個々の作業であって、「単位レシピ」と称する場合もある)をいうものとする。上記の記述例において、各記載の詳細は以下の通りである。
lrは、1つの単位レシピを示す識別子である。また、lrに続く[xprawn, xclam]は当該単位レシピを開始するために必要な材料(本明細書では「中間成果物」と称する)を示し、[]の場合は、必要な中間成果物が不要であることを示し、この場合には、殻と背ワタをとったえび(xprawn)と砂抜きをしたあさり(xclam)が必要であることを示す。
2行目と3行目の記述は、調理方法を示しており、それぞれ、'ワイン蒸し準備'と'ワイン蒸し'を行うことが記載されている。この調理方法は、調理に必要な資源と、調理に要する時間と、調理による成果物(中間成果物)が記述される。具体的には、
'ワイン蒸し準備' では、cook, pan, heatの3つの資源を利用し、調理に2分間要することを示している。次に、'ワイン蒸し'には、pan, heatの2つの資源を利用し、調理に5分かかることを表す。そして、'ワイン蒸し'により、wine-steamedという中間成果物が生成されたことを示す。
lr([xprawn,xclam],
[['ワイン蒸し準備', [cook,pan,heat], [2]],
['ワイン蒸し', [pan,heat], [5]]], [wine-steamed], []).
となっている。なお、上記の「部分レシピ」とは、本明細書では、詳細は後述する「開始条件付部分レシピ」と同じ意味を持つ用語として使用するが、全体のレシピに対して、調理手順の1作業単位分のレシピ(例えば、野菜を切る、洗う、いためるなどの個々の作業であって、「単位レシピ」と称する場合もある)をいうものとする。上記の記述例において、各記載の詳細は以下の通りである。
lrは、1つの単位レシピを示す識別子である。また、lrに続く[xprawn, xclam]は当該単位レシピを開始するために必要な材料(本明細書では「中間成果物」と称する)を示し、[]の場合は、必要な中間成果物が不要であることを示し、この場合には、殻と背ワタをとったえび(xprawn)と砂抜きをしたあさり(xclam)が必要であることを示す。
2行目と3行目の記述は、調理方法を示しており、それぞれ、'ワイン蒸し準備'と'ワイン蒸し'を行うことが記載されている。この調理方法は、調理に必要な資源と、調理に要する時間と、調理による成果物(中間成果物)が記述される。具体的には、
'ワイン蒸し準備' では、cook, pan, heatの3つの資源を利用し、調理に2分間要することを示している。次に、'ワイン蒸し'には、pan, heatの2つの資源を利用し、調理に5分かかることを表す。そして、'ワイン蒸し'により、wine-steamedという中間成果物が生成されたことを示す。
中間成果物DB109は、中間成果物の保存や再活性化に関する知識が記述されたデータを保持する。図5は、中間成果物DB109に格納される中間成果物に関する記述例を示す図である。図5に示すように、中間成果物DB109には、生成される中間成果物、その中間成果物を生成するために必要な中間成果物、資源及び時間の順に記述されている。ここで、例えば、中間成果物502に記載のwine-steamedという中間成果物を生成するためには、中間成果物502に記載のxprawn及びxclamが必要である。すなわち、wine-steamedという中間成果物を生成するための開始条件としてxprawn及びxclamが用意されている必要がある。このため、中間成果物(上記したように最終成果物も含む)を生成するための本発明の一実施形態における部分レシピを、特に「開始条件付部分レシピ」と呼ぶ。この場合において、中間成果物DB109に記述されたwine-steamedの部分レシピでは、wine-steamedの生成に必要な中間成果物はxprawn, xclam、必要とする資源はcook, pan, heat、作業時間は2分であり、さらにpan, heatを5分間使用することが記述されている。なお、作業時間については、このように、資源の属性(例えば、人の熟練度やなべの種類や容量)に依存しない場合は、所要時間をそのまま指定することになるが、資源の属性によって、変化するものとして記述できるようにしておくことが好ましい。また、開始条件付部分レシピの粗さは、該レシピに使用される資源が極大になるように決定される。
図6は、上記の中間成果物DB109に記述された部分レシピをツリー形式で示した図である。図6に示すように、中間成果物として、xprawn、xocto、xclam、xparsley、xchili、xgarlic、hotwater、wine-steamed、sauce、xspa、ebitakoasarispaがあるものとする(ebitakoasarispaは最終成果物である)。ここで、xprawn、xocto、xclam、xparsley、xchili、xgarlic、hotwaterは、他の中間成果物を利用することなく生成することが可能である。すなわち、利用する中間成果物データがヌルデータになる。ところが、中間成果物wine-steamedを得るためには、xprawn、xclamを利用し、更に、中間成果物sauceを得るためには、xocto、xchili、xgarlic、wine-steamedを利用する。従って、例えば、中間成果物sauceを得るためには、xocto、xchili、xgarlic、wine-steamedを用意しておく必要があるので、中間成果物xocto、xchili、xgarlic、wine-steamedの生成手順の後に、中間成果物sauceを生成する必要がある。このように、中間成果物DB109では、ある中間成果物を生成するために必要な中間成果物を定義する(すなわち、条件を定める)必要があるので、該中間成果物を生成するためのレシピを上記のように、「開始条件付部分レシピ」と称している。
図7を参照して、上記のように構成された本発明の一実施形態に係る調理手順生成装置の動作の流れを説明する。図7は、本実施形態に係る調理手順生成装置の動作の流れを示すフローチャートである。
レシピ入力部101を介して、レシピの入力を行う(ステップ701)。この場合において、レシピはユーザにより入力されても良いし、装置がネットワークに接続されているのであれば、ネットワークを介して所望のレシピを入力しても良い。レシピが入力されると、レシピ中に記述されている資源が資源DB105から選択される(ステップ702)。例えば、部分レシピ301の記述に対しては、調理者、シンク、フライパンの記述が資源DB105から選択される。
レシピ入力部101を介して、レシピの入力を行う(ステップ701)。この場合において、レシピはユーザにより入力されても良いし、装置がネットワークに接続されているのであれば、ネットワークを介して所望のレシピを入力しても良い。レシピが入力されると、レシピ中に記述されている資源が資源DB105から選択される(ステップ702)。例えば、部分レシピ301の記述に対しては、調理者、シンク、フライパンの記述が資源DB105から選択される。
レシピに記述された資源が選択されたら、レシピDB108を参照して、手順生成部102によりスケジュールが生成される(ステップ703)。手順生成部102は、このスケジュール生成処理において、ステップ702で選択した資源の重複が起こらないように、かつレシピに記述された手順に従って中間成果物生成のためのスケジュール作成を行う。更に、手順生成部102は、中間成果物の待ち合わせが発生しないように、資源、手順のすべての組み合わせを行い最短のスケジュールを生成する。なお、この場合において、組み合わせを行う回数、レシピスケジュール時間、スケジュール生成時間などの制限を設けることもできる。そして、スケジュールの生成が終わると、レシピDB108にレシピが登録される。
図8を参照して、ステップ703のスケジュールの生成処理の手順を詳細に説明する。図8は、ステップ703のスケジュール生成処理のフローチャートである。スケジュールの生成処理では、まず、入力されたレシピおよび資源について、手順ごとに中間成果物を生成するか、資源が空いているかを確認しながら、スケジュールを生成する。なお、新たに中間成果物を生成する必要がない場合には、前に生成したスケジュールを確認し、最短となるスケジュールを生成する。また、中間成果物が必要な場合でも、不要な場合と同様に資源の空きを確認し、最短となるスケジュールを生成する。具体的には、以下の通りである。なお、以下の処理は、全て手順生成部102で実行される。
まず、レシピ中の任意の部分レシピを選択する(ステップ801)。そして、ステップ801で入力された部分レシピに係る手順を解析し、中間成果物が必要かどうかの確認を行う(ステップ802)。ここで、中間成果物が必要の場合(ステップ802のY)はステップ803に進む。また、中間成果物が不要の場合(ステップ802のN)は、ステップ804の処理に進み資源の空き状況が確認される(ステップ804)。
中間成果物が必要の場合、当該部分レシピで必要とする中間成果物が生成されているか確認を行う(ステップ803)。この部分レシピを実行する手順において、必要とする資源が生成されている場合はステップ804の処理に進み資源の空き状況が確認される(ステップ804)。また、必要とする資源が生成されていない場合はステップ807に進む。また、ステップ804において、資源に空きがある場合はステップ805に進む。なお、ステップ804において、資源が他の手順により利用されている場合はステップ807に進む。
そして、当該部分レシピに係る手順で中間成果物を生成するのに必要な資源と中間成果物を元に、中間成果物のスケジューリングを行う(ステップ805)。最終的に、ステップ805で生成された中間成果物のスケジュールを元に、これまでに生成されたスケジュールを参照して最短のスケジュールを生成する(ステップ806)。ここで、部分レシピのスケジューリングがステップ805およびステップ806で成功すれば、当該部分レシピをスケジューリング対象から除去し、そうでなければ部分レシピをスケジューリング対象に残したまま、他の部分レシピを選択する(ステップ807)。なお、ステップ801で選択できる部分レシピがないとき、すなわち、スケジューリング対象の部分レシピがなくなったときに1つのスケジュール候補が作成されたことになる。
スケジュール候補を複数作成するためには、上記の手順にプログラミング言語Prologなどで採用されているバックトラッキングと呼ばれる技術を適用すればよい。すなわち、1つのスケジュール候補が生成されたとき、それをスケジューリング結果として記録した後、異なるスケジュールの生成が可能な時点まで処理を後戻りし、ステップ801での部分レシピの選択の順番やステップ805でのスケジューリングを変更して処理をやり直す。そして、異なるスケジュールを生成できなくなった時点で処理を終了し、生成されたスケジュールの中で最短のものを出力すれば良い。ただし、すべてのスケジュール候補を生成しなくても良く、事前に定められた個数のスケジュール候補を生成したとき、あるいは、事前に定められた処理時間を経過したときに処理を終了し、それまでのスケジュールの中で最短のものを出力してもよい。
図3の部分レシピ301の例にとって上記の手順を具体的に説明する。
まず、入力された部分レシピ301の手順が選択される(ステップ801)。ステップ802において、中間成果物[xprawn, xclam]が必要であることが識別され、それらの中間成果物がそれまでに作成されたスケジュールで完成しているかを調査する(ステップ803)。作成されていれば、使用する資源、この場合は[cook, pan, heat]に空きがあるかを調査し(ステップ804)、資源が競合しないように部分レシピ301の手順をスケジューリングする(ステップ805)。そして、これまで生成されているスケジュールを参照して、再度これまでの手順についてスケジューリングを行う(ステップ806)。
部分レシピ301に対するスケジュールの生成が終了(又は中断)したら、部分レシピ301を除いた他のスケジューリング対象の中から次の部分レシピを選択して(ステップ807)、ステップ801からステップ806の処理を繰り返す。
まず、入力された部分レシピ301の手順が選択される(ステップ801)。ステップ802において、中間成果物[xprawn, xclam]が必要であることが識別され、それらの中間成果物がそれまでに作成されたスケジュールで完成しているかを調査する(ステップ803)。作成されていれば、使用する資源、この場合は[cook, pan, heat]に空きがあるかを調査し(ステップ804)、資源が競合しないように部分レシピ301の手順をスケジューリングする(ステップ805)。そして、これまで生成されているスケジュールを参照して、再度これまでの手順についてスケジューリングを行う(ステップ806)。
部分レシピ301に対するスケジュールの生成が終了(又は中断)したら、部分レシピ301を除いた他のスケジューリング対象の中から次の部分レシピを選択して(ステップ807)、ステップ801からステップ806の処理を繰り返す。
図9は、図3の部分レシピ301のスケジュールの生成前までに生成されたスケジュールの例を示す図である。図9では中間成果物を必要としない部分レシピについてスケジュールを行った結果となっている。
図10は、図3の部分レシピ301のみについて生成されたスケジュールの例を示す図である。この場合において、スケジュールを生成した結果、部分レシピ301のワイン蒸し準備では調理者、鍋、コンロを利用して2分間で準備を行い、ワイン蒸しは鍋とコンロで5分間作業を行うスケジュールが記載されている。
図10は、図3の部分レシピ301のみについて生成されたスケジュールの例を示す図である。この場合において、スケジュールを生成した結果、部分レシピ301のワイン蒸し準備では調理者、鍋、コンロを利用して2分間で準備を行い、ワイン蒸しは鍋とコンロで5分間作業を行うスケジュールが記載されている。
図11は、図9に示すスケジュールのすぐ後に図10に示すスケジュールを追加して、再度スケジュールを生成した場合の例を示す図である。なお、図9の開始状態(すなわち、時間が0分の時点)では、図10で必要とする中間成果物[xclam]が生成されていないため、[xclam]が生成された後(すなわち、開始から25分以降)に図7に示す手順が追加されることになる。
上記のようにして、スケジュールの生成が終わると、図7の中間成果物の登録処理に進む(ステップ704)。中間成果物の登録処理では、レシピ中に記述された中間成果物と、中間成果物が生成される過程(部分レシピ)とが、中間成果物DB109に登録される。 そして、最終的に作成されたスケジュールが出力されて(ステップ705)、処理が終了する。このときの出力結果の例を図12に示す。図12に示す表では、その縦に列として資源が並べられており、横に行として時間が並べられている。そして、図12に示すように、資源を利用して生成される中間成果物について必要とする時間が出力される。
図4に示すようなこれまでに利用されている記述方法記述方法では、レシピ手順の生成を行う場合、1つの手順が完成すると次の手順に移行し作業を行い、次の手順が終了すると、さらに次の手順に移行し作業を行うといった手順になる。ここで、経験が浅い調理者には順番に作業を行うという認識があるため、当然、の手順401を行った後に、手順402を行うことになる。しかし、図12から明らかなように、手順402を先に行うことでアサリの砂抜きを行っている間に手順401を行うことで時間の短縮を図ることができる。
本発明の一実施形態においては、上記のような部分レシピを入力して、資源の重複を解消し、中間成果物を生成しながらレシピのスケジューリングを行うようにしたので、ユーザにとって最適なスケジュールを提供することが出来る。
本発明の一実施形態においては、上記のような部分レシピを入力して、資源の重複を解消し、中間成果物を生成しながらレシピのスケジューリングを行うようにしたので、ユーザにとって最適なスケジュールを提供することが出来る。
上記の実施形態では、あるレシピを入力した場合における最適なスケジュールを作成するための手順について説明したが、例えば、中間成果物がある場合におけるレシピを検索することも可能である。図13に本実施形態に係る装置を利用した中間成果物をキーとしたレシピ検索のフローチャートを示す。
まず、中間成果物入力部106から検索要求となる中間成果物が入力される(ステップ1301)と、中間成果物検索部107により、中間成果物の検索処理が実行される(ステップ1302)。 この中間成果物検索部107の中間成果物検索処理では、中間成果物DB109を参照して、中間成果物入力部106から入力された中間成果物をキーにして、それが生成される過程(部分レシピ)を取得する。そして、取得した部分レシピを元に資源DB105の中で必要とされる資源を選択する。これらの結果を取得後、手順生成部102は、スケジュール生成処理を行う(ステップ1303)。なお、このスケジュール生成処理はステップ203の手順生成処理と同様の処理により実行される。そして、中間成果物DB109より取得した部分レシピと資源DB105より選択した資源とにより生成されたスケジュール(レシピを含む)が出力される(ステップ1304)。
まず、中間成果物入力部106から検索要求となる中間成果物が入力される(ステップ1301)と、中間成果物検索部107により、中間成果物の検索処理が実行される(ステップ1302)。 この中間成果物検索部107の中間成果物検索処理では、中間成果物DB109を参照して、中間成果物入力部106から入力された中間成果物をキーにして、それが生成される過程(部分レシピ)を取得する。そして、取得した部分レシピを元に資源DB105の中で必要とされる資源を選択する。これらの結果を取得後、手順生成部102は、スケジュール生成処理を行う(ステップ1303)。なお、このスケジュール生成処理はステップ203の手順生成処理と同様の処理により実行される。そして、中間成果物DB109より取得した部分レシピと資源DB105より選択した資源とにより生成されたスケジュール(レシピを含む)が出力される(ステップ1304)。
具体例として、「えび、たこ、アサリの下ごしらえが終わったもの [xgarlic, xocto, wine-steamed, xchili]」を中間成果物入力部106の入力とした例について、ステップ1302の中間成果物検索処理について説明する。ステップ1302の中間成果物検索処理では、中間成果物DB109から中間成果物[xgarlic, xocto, wine-steamed, xchili]をキーとして検索する。その結果、中間成果物xgarlic, xocto, wine-steamed, xchiliに関して、それらを作成する手順を取得する。そして、取得した手順と、資源DB105より選択した必要な資源により、レシピのスケジュールを生成する。スケジュールの生成は前述した図8の処理と同様であるので、図示及び説明を省略する。
このときの出力結果の例を図14に示す。図14は、「えび、たこ、アサリの下ごしらえが終わったものすなわち、[xgarlic, xocto, wine-steamed, xchili]」を入力したときの中間成果物検索の出力例を示す図である。
上記のように、本発明の実施形態では、中間成果物を基にそれらを生成するためのスケジュールも出力することができる。これは料理の下ごしらえを事前に行っておきたいときに有効である。また、図13のステップ1302において、レシピDB108を通してレシピを検索する機能を中間成果物検索部107に追加してもよい。その場合は、検索結果としてスケジュールの他に中間成果物が記載されているレシピも提示する。
上記のように、本発明の実施形態では、中間成果物を基にそれらを生成するためのスケジュールも出力することができる。これは料理の下ごしらえを事前に行っておきたいときに有効である。また、図13のステップ1302において、レシピDB108を通してレシピを検索する機能を中間成果物検索部107に追加してもよい。その場合は、検索結果としてスケジュールの他に中間成果物が記載されているレシピも提示する。
ここで、図15のレシピがレシピDB108に登録されているものとする。ステップ1301でスパゲッティ料理としてxspaを入力すると、ステップ1302の中間成果物検索処理でレシピebitakoasarispa, umeshisospaが検索できる。検索した結果についてはレシピと中間成果物生成のためのスケジュールを表示する。また、中間成果物xspaは、中間成果物DB109に記載されているため、必要とする資源情報が、中間成果物DB109に蓄積されている。なお、新たにumeshisospaについてスケジュールの生成を行う場合は、中間成果物DB109中のxspaを利用したスケジュールを生成し、その結果を提示するようにしてもよい。
このように、本実施形態では、中間成果物から、その中間成果物を基にレシピの検索を行い、レシピとそのレシピのスケジュールを出力することができる。その際、検索要求として入力した中間成果物が完成している時点からのスケジュールを得ることができるので、中間成果物を事前に下ごしらえしてあった場合や、事情により料理を中断し、その中断時点から料理を再開する場合に有効である。例えば、図16に調理を中断した場合の例を示す。図16は、調理が中断された場合のスケジュールを示す図である。
図16では、25〜30分の間に調理が一時的に中断されている。中間成果物の生成を行った後、資源やレシピの切れ目を中間成果物をより用いることで、調理手順の切れ目を判定することが可能となる。中断後に調理を再開する場合には、生成された中間成果物により検索を行うことで再度スケジュールの生成を行うことが出来る。また、各部分レシピで生成される中間成果物により、異なるレシピを検索し提示することも可能となる。
上記のように、本発明の実施形態によれば、レシピの記述を行う上で、前の手順で生成された中間成果物を用いることにより、並列性の高いスケジューリングを行うことができる。すなわち、レシピの記述にあたり、中間成果物の記述を導入し、レシピの調理手順と中間成果物の記述から複数の料理のスケジューリングの作成を支援するようにしている。従って、本発明によれば、必要最小限の順序しか規定しないため、従来の記述方法より並列性の高い好適なスケジュールを作れる。また、割り込みが入った際、中間成果物をどうしたらよいか、再開時にはどうしたらよいかがわかる。更に、何らかの理由で予定より短い調理時間しか許されなくなったとき、できるだけ無駄を出さずにメニュー変更することが可能となる。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
101…レシピ入力部
102…手順生成部
103…中間成果物登録部
104…スケジュール出力部
105…資源データベース
106…中間成果物入力部
107…中間成果物検索部
108…レシピデータベース
109…中間成果物データベース
102…手順生成部
103…中間成果物登録部
104…スケジュール出力部
105…資源データベース
106…中間成果物入力部
107…中間成果物検索部
108…レシピデータベース
109…中間成果物データベース
Claims (11)
- 入力されたレシピに基づいて調理手順を生成する調理手順生成装置において、
調理手順の1作業単位分の単位レシピであって、前記単位レシピを開始するのに必要な第1の中間成果物と、調理に必要な資源と、調理に必要な時間と、調理によって生成される第2の中間成果物とが記述された開始条件付部分レシピを少なくとも1つ含むレシピが記述されたレシピデータベースと、
前記第2の中間成果物と前記第1の中間成果物の再活性化に関する知識が記述されたデータを保持する中間成果物データベースとを具備することを特徴とする調理手順生成装置。 - 請求項1に記載の調理手順生成装置において、前記中間成果物データベースは、1作業単位で生成される前記第2の中間成果物と、第2の中間成果物を生成するために必要な前記第1の中間成果物、資源及び時間に係るデータを更に保持する。
- 調理手順の1作業単位分の単位レシピであって、前記単位レシピを開始するのに必要な第1の中間成果物と、調理によって生成される第2の中間成果物とが少なくとも記述された開始条件付部分レシピを少なくとも1つ含むレシピを入力するレシピ入力部と、
調理に使用可能な資源に関する情報を記述した資源データベースと、
入力された前記レシピと前記資源データベースの記述に基づき調理手順を生成する手順生成部とを備えたことを特徴とする調理手順生成装置。 - 請求項3に記載の調理手順生成装置において、前記開始条件付部分レシピは、該レシピを実施するために必要な資源の記述を含むことを特徴とする調理手順生成装置。
- 請求項3に記載の調理手順生成装置において、前記開始条件付部分レシピは、該レシピを実施するために必要な時間の記述を含み、前記時間の記述として、所要時間そのものを指定する場合と、資源の属性に基づいて変化するものとを記述できることを特徴とする調理手順生成装置。
- 請求項3に記載の調理手順生成装置において、前記開始条件付部分レシピに含まれる手順の粗さは、該開始条件付部分レシピに必要とされる資源集合が変化しない極大であることを特徴とする調理手順生成装置。
- 請求項3に記載の調理手順生成装置において、前記第1の中間成果物と前記第1の中間成果物の再活性化に関する知識を記述した中間成果物データベースを更に具備することを特徴とする調理手順生成装置。
- 請求項7に記載の調理手順生成装置において、前記第1の中間成果物によるレシピ検索を行う中間成果物検索部を更に具備することを特徴とする調理手順生成装置。
- 請求項1又は請求項7に記載の調理手順生成装置において、前記再活性化に関する知識は、生成される前記第2の中間成果物、前記第2の中間成果物を生成するために必要な前記第1の中間成果物、資源及び時間を含み、
前記再活性化に関する知識を参照して、前記第1の中間成果物から前記第1の中間成果物に関する部分レシピを取得する中間成果物検索部を更に具備することを特徴とする調理手順生成装置。 - 調理手順の1作業単位分の単位レシピであって、前記単位レシピを開始するのに必要な第1の中間成果物と、調理によって生成される第2の中間成果物とが少なくとも記述された開始条件付部分レシピを少なくとも1つ含むレシピを入力し、
入力された前記レシピと料理に使用可能な資源に関する情報を記述した資源データベースの記述に基づき調理手順を生成することを特徴とする調理手順生成方法。 - 入力されたレシピに基づいて調理手順を生成する調理手順生成プログラムにおいて、
調理手順の1作業単位分の単位レシピであって、前記単位レシピを開始するのに必要な第1の中間成果物と、調理によって生成される第2の中間成果物とが少なくとも記述された開始条件付部分レシピを少なくとも1つ含むレシピを入力し、
入力された前記レシピと料理に使用可能な資源に関する情報を記述した資源データベースの記述に基づき調理手順を生成することを特徴とする調理手順生成プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005324998A JP2007133581A (ja) | 2005-11-09 | 2005-11-09 | 調理手順生成装置、調理手順生成方法及び調理手順生成プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005324998A JP2007133581A (ja) | 2005-11-09 | 2005-11-09 | 調理手順生成装置、調理手順生成方法及び調理手順生成プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007133581A true JP2007133581A (ja) | 2007-05-31 |
Family
ID=38155199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005324998A Pending JP2007133581A (ja) | 2005-11-09 | 2005-11-09 | 調理手順生成装置、調理手順生成方法及び調理手順生成プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007133581A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009187338A (ja) * | 2008-02-07 | 2009-08-20 | Sharp Corp | 調理支援装置及び調理システム |
JP2011203950A (ja) * | 2010-03-25 | 2011-10-13 | Glocal-Food:Kk | 調理作業時間を配分する調理支援システム |
-
2005
- 2005-11-09 JP JP2005324998A patent/JP2007133581A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009187338A (ja) * | 2008-02-07 | 2009-08-20 | Sharp Corp | 調理支援装置及び調理システム |
JP2011203950A (ja) * | 2010-03-25 | 2011-10-13 | Glocal-Food:Kk | 調理作業時間を配分する調理支援システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2007128305A (ja) | 調理支援装置 | |
JP5769900B2 (ja) | シーケンスプログラム部品作成プログラムおよびシーケンスプログラム部品作成装置 | |
JP6400558B2 (ja) | シーケンス制御プログラミング装置、シーケンス制御プログラミング方法及び作業システム | |
CN110852913A (zh) | 一种数字菜谱的制作方法及电子设备 | |
Ali | Next-generation ETL Framework to Address the Challenges Posed by Big Data. | |
JP2007133581A (ja) | 調理手順生成装置、調理手順生成方法及び調理手順生成プログラム | |
JP2009277220A5 (ja) | ||
JP2015161994A (ja) | 調理スケジュール構成装置、調理スケジュール構成方法及びプログラム | |
JP6570775B1 (ja) | 工程決定支援装置、工程決定支援方法、工程決定支援プログラムおよび記憶媒体 | |
WO2006027882A1 (ja) | 3次元モデル自動構築システム | |
JP2008123131A (ja) | 調理レシピ抽出装置および方法、並びに調理レシピ抽出プログラム | |
JP5058063B2 (ja) | 制御システム開発支援装置 | |
JP2007133582A (ja) | 調理手順生成装置、調理手順生成方法、及び調理手順生成プログラム | |
JP2021149557A (ja) | スケジューリングプログラム、スケジューリング装置およびスケジューリング方法 | |
JP7304744B2 (ja) | 3次元モデル作成装置、3次元モデル作成方法、およびプログラム | |
CN110825770A (zh) | 一种电子菜谱的生成方法及电子设备 | |
JP2003058677A (ja) | ワークフロー作成方法及びその装置 | |
CN113450894A (zh) | 结构化数据、电子菜谱生成方法及设备 | |
CN110795459A (zh) | 一种数字菜谱的生成方法及菜谱创作设备 | |
JP2013161152A (ja) | 製品モジュール化プロセス装置、製品モジュール化方法及びプログラム | |
JP2010244110A (ja) | ソフトウエア設計支援装置及びコンピュータプログラム | |
JP2015095035A (ja) | パラメータ設定支援システムおよびパラメータ設定支援方法ならびにパラメータ設定支援プログラム | |
CN110825774A (zh) | 一种数字菜谱的生成方法及菜谱创作设备 | |
JP2017224078A (ja) | パーツデータ作成装置、パーツデータ作成方法、及び、パーツデータ作成プログラム、並びに、シートデータ作成装置、シートデータ作成方法、及び、シートデータ作成プログラム | |
JP4327162B2 (ja) | 3次元形状データから形状情報を取得するシステム、その方法、及びコンピュータソフトウエアプログラム |