(57)【要約】  多機能ロボット等の状態に基づくタスクの実行制限を満たすとともに作業全体の実行効率を向上する。情報処理装置は、対象物体に対する作業を含む複数のタスクの実行順序を、各タスクで用いられる作業器具の状態の遷移に基づいて決定する決定部（３５）を備える。
2020071236.tif 000002
【特許請求の範囲】
【請求項１】
対象物体に対する作業を含む複数のタスクの実行順序を、各タスクで用いられる作業器具の状態の遷移に基づいて決定する決定部を備える情報処理装置。
【請求項２】
前記作業器具の状態は、前記作業器具の衛生状態である請求項１に記載の情報処理装置。
【請求項３】
前記決定部は、さらに前記対象物体の状態の遷移に基づいて、前記複数のタスクの前記実行順序を決定する請求項１に記載の情報処理装置。
【請求項４】
前記対象物体の状態は、前記対象物体の衛生状態である請求項３に記載の情報処理装置。
【請求項５】
タスクごとの前記作業器具の状態の遷移を記憶する状態遷移記憶部と、
前記複数のタスクに関する情報を記憶するタスク情報記憶部と、
をさらに備え、
前記決定部は、前記状態遷移記憶部に記憶された前記タスクごとの作業器具の状態の遷移と、前記タスク情報記憶部に記憶された前記複数のタスクに関する情報とに基づいて、前記複数のタスクの前記実行順序を決定する
請求項１に記載の情報処理装置。
【請求項６】
タスクごとの前記作業器具の状態の遷移と、前記タスクごとの前記対象物体の状態の遷移とを記憶する状態遷移記憶部と、
前記複数のタスクに関する情報を記憶するタスク情報記憶部と、
をさらに備え、
前記決定部は、前記状態遷移記憶部に記憶された前記タスクごとの前記作業器具の状態の遷移及び前記タスクごとの前記対象物体の状態の遷移と、前記タスク情報記憶部に記憶された前記複数のタスクに関する情報とに基づいて、前記複数のタスクの前記実行順序を決定する
請求項３に記載の情報処理装置。
【請求項７】
前記作業器具の初期の状態を記憶する初期状態記憶部をさらに備え、
前記決定部は、前記初期状態記憶部に記憶された前記作業器具の前記初期の状態からの前記状態の遷移を管理する
請求項１に記載の情報処理装置。
【請求項８】
前記決定部により決定された前記実行順序に基づいて前記複数のタスクの実行を制御する制御部をさらに備える請求項１に記載の情報処理装置。
【請求項９】
前記制御部による制御の途中で前記複数のタスクにタスクが追加された場合に、
前記決定部は、追加されたタスクを含めて前記実行順序を再度決定し、
前記制御部は、前記決定部により再度決定された実行順序に基づいて前記実行を継続して制御する
請求項８に記載の情報処理装置。
【請求項１０】
前記対象物体は食品であり、前記作業器具は調理器具及びロボットのアームであり、前記複数のタスクには、レシピに含まれる調理作業と、前記調理器具及び前記アームの洗浄とが含まれ、前記状態には複数の段階があり、前記遷移は、前記調理器具、前記アーム及び前記食品のうちの少なくとも２つの接触により発生する請求項１に記載の情報処理装置。
【請求項１１】
対象物体に対する作業を含む複数のタスクの実行順序を、各タスクで用いられる作業器具の状態の遷移に基づいて決定することを含むスケジューリング方法。
【請求項１２】
対象物体に対する作業を含む複数のタスクの実行順序を、各タスクで用いられる作業器具の状態の遷移に基づいて決定することをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、スケジューリング方法及びプログラムに関する。
【背景技術】
【０００２】
近年、ロボットは調理などの分野で様々な自動化を実現しているが、現状では限定的な内容を専用に設計された機械が繰り返し行うことが一般的である。例えば、調理分野では、芋の皮むきや、鶏肉の加工、すしのシャリの製造などに関して専用機が存在する。【０００３】
将来的にロボットを導入する場合、コストの点から複数の専用機の導入ではなく単一の多機能ロボットの導入が期待される。ただし、多機能ロボットには、あるタスクの実行後の状態で次にタスクを実行するときに制限がある場合がある。【０００４】
例えば、調理タスクを実施するロボットの場合、ロボットアームが鶏のから揚げを作るために鶏肉をカットしたあとに、盛り合わせのレタスをちぎると、生の鶏肉に潜むカンピロバクターやサルモネラなどの病原体がレタスに付着してしまい食中毒の原因となる。また生肉や、猫の糞が混じった土にはトキソプラズマという寄生虫が含まれ、この寄生虫に妊婦が感染すると胎児の脳や目に障害が生じることがある。したがって、ある調理タスクの実行後の状態で次の調理タスクを実行する場合、ロボットアームの洗浄、ビニール手袋の取り替えなどを行う必要があるという制限がある。【０００５】
なお、調理に関する技術として、料理人が使用している鍋やフライ返しの運動軌跡を画像処理の手法で検出し、さらに鍋の温度や火力の強さ、料理の主材料や調味料の使用量と調理開始時刻と調理時間を記録することで、料理人の調理法を再現する技術がある。【０００６】
また、人とロボットの協調作業において、現在の物品の位置と、人とロボットそれぞれの作業工程の順序及び各工程における取扱物品を記録する作業手順とを参照し、人が物品を置いたときに、物品を置いたことにより発生する余計な時間を算出する技術がある。この技術によれば、物品の置き場所によって生じる無駄な時間の発生を防ぐことができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特表２００５−５０４２５９号公報
【特許文献２】特開２００９−２９７８８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
多機能ロボットにおいて、あるタスクの実行後の状態で次にタスクを実行するときの制限にしたがうと、作業全体の実行効率が悪くなる。例えば、１つの調理タスクごとにロボットアームの洗浄、ビニール手袋の取り替えなどを行うと調理に時間がかかり、調理の効率が悪くなる。【０００９】
そこで、本開示では、多機能ロボット等の状態に基づくタスクの実行制限を満たすとともに作業全体の実行効率を向上することができる情報処理装置、スケジューリング方法及びプログラムを提案する。
【課題を解決するための手段】
【００１０】
上記の課題を解決するために、本開示に係る一形態の情報処理装置は、対象物体に対する作業を含む複数のタスクの実行順序を、各タスクで用いられる作業器具の状態の遷移に基づいて決定する決定部を備える。【００１１】
（作用）本開示に係る一形態の情報処理装置によれば、対象物体に対する作業を含む複数のタスクの実行順序を、作業器具の状態の遷移に基づいて決定する。したがって、不適切な状態遷移が発生しないように複数のタスクの順番を決定することができ、タスクの実行制限を満たすことができる。その結果、多機能ロボットのタスクの実行制限を満たすとともに多機能ロボットのタスクの作業時間を短縮することができる。
【図面の簡単な説明】
【００１２】
【図１】本開示の一実施形態に係る調理ロボットの概略構成例を示すブロック図である。
【図２】本開示の一実施形態に係る調理制御部の機能構成を示す図である。
【図３】ロボットアームと調理器具の衛生管理のための状態遷移を示す図である。
【図４】ロボットアームと調理器具の状態遷移表の一例を示す図である。
【図５】食品の衛生管理のための状態遷移を示す図である。
【図６】加熱を要さない食品の状態遷移表の一例を示す図である。
【図７】加熱を要する食品の状態遷移表の一例を示す図である。
【図８】ロボットアーム及び調理器具の現在の衛生状態を表す衛生状態テーブルの一例を示す図である。
【図９】食品の現在の衛生状態を表す衛生状態テーブルの一例を示す図である。
【図１０】ハヤシライスの材料の一例を示す図である。
【図１１】ハヤシライスのレシピの一例を示す図である。
【図１２】中華風サラダの材料の一例を示す図である。
【図１３】中華風サラダのレシピの一例を示す図である。
【図１４】作業タスクごとに変化する衛生状態を管理するための衛生状態テーブルの一例を示す図である。
【図１５】本開示の一実施形態に係る調理制御動作の流れを示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下に、本開示の実施形態について図面に基づいて詳細に説明する。なお、以下の各実施形態において、同一の部位には同一の符号を付することにより重複する説明を省略する。
【００１４】
また、以下に示す項目順序に従って本開示を説明する。
１．一実施形態
１．１  調理ロボットの構成
１．２  調理制御部の機能構成
１．３  衛生状態遷移
１．４  衛生状態管理
１．５  作業タスクに応じた管理
１．６  調理制御動作
１．７  作用・効果
【００１５】
１．一実施形態
以下、本開示の一実施形態に係る情報処理装置、スケジューリング方法及びプログラムについて、図面を参照して詳細に説明する。本実施形態では、ロボットアーム及び調理器具と食物の衛生状態の遷移を管理することで、多機能ロボットが衛生的で効率よく調理するスケジュールを作成する。
【００１６】
１．１  調理ロボットの構成
図１は、本実施形態に係る調理ロボットの概略構成例を示すブロック図である。図１に示すように、調理ロボット１は、例えば、ＣＰＵ（Central  Processing  Unit）１２、ＤＲＡＭ（Dynamic  Random  Access  Memory）１３、フラッシュＲＯＭ（Read  Only  Memory）１４、ＰＣ（Personal  Computer）カードインタフェース（Ｉ／Ｆ）１５、無線通信部１６及び信号処理回路１１が内部バス１７を介して相互に接続されることにより形成されたコントロール部１０と、この調理ロボット１の動力源としてのバッテリ１８とを備える。
【００１７】
また、調理ロボット１は、調理作業を実現するための稼働機構として、アームの関節部分などの可動部２６と、この可動部２６を駆動するためのアクチュエータ２７とを備える。
【００１８】
さらに、調理ロボット１は、移動距離や移動速度や移動方向などの情報を取得するためのセンサ（以下、内界センサという）として、自機の向きや動きの加速度を検出するための慣性計測装置（Inertial  Measurement  Unit：ＩＭＵ）２０と、アクチュエータ２７の駆動量を検出するエンコーダ（又はポテンショメータ）２８とを備える。なお、内界センサとしては、これらの他にも、加速度センサや角速度センサ等を用いることができる。
【００１９】
さらにまた、調理ロボット１は、自機の周囲の地形や自機の周囲に存在する物体までの距離や方向などの情報を取得するセンサ（以下、外界センサという）として、外部の状況を撮像するＣＣＤ（Charge  Coupled  Device）カメラ１９と、自機に対して特定の方向に存在する物体までの距離を測定するＴｏＦ（Time  of  Flight）センサ２１とを備える。なお、外界センサとしては、これらの他にも、ＬＩＤＡＲ（Light  Detection  and  Ranging又はLaser  Imaging  Detection  and  Ranging）センサ、ＧＰＳ（Global  Positioning  System）センサ、磁気センサ、Ｂｌｕｅｔｏｏｔｈ（登録商標）やＷｉ−Ｆｉ（登録商標）などの無線通信部１６における電波強度の測定部（以下、電波強度センサという）等を用いることができる。
【００２０】
なお、調理ロボット１には、外部から受けた物理的な圧力を検出するためのタッチセンサ２２や、外部音を集音するためのマイク２３や、周囲へ音声等を出力するためのスピーカ２４や、ユーザ等へ各種情報を表示するための表示部２５などが設けられてもよい。
【００２１】
以上の構成において、ＩＭＵ２０、タッチセンサ２２、ＴｏＦセンサ２１、マイク２３、スピーカ２４及びエンコーダ（又はポテンショメータ）２８などの各種センサ、表示部、アクチュエータ２７、ＣＣＤカメラ（以下、単にカメラという）１９及びバッテリ１８は、それぞれコントロール部１０の信号処理回路１１と接続されている。
【００２２】
信号処理回路ｌ０は、上述の各種センサから供給されるセンサデータや画像データ及び音声データを順次取り込み、これらをそれぞれ内部バス１７を介してＤＲＡＭ１３内の所定位置に順次格納する。また、信号処理回路１１は、これとともにバッテリ１８から供給されるバッテリ残量を表すバッテリ残量データを順次取り込み、これをＤＲＡＭ１３内の所定位置に格納する。
【００２３】
このようにしてＤＲＡＭ１３に格納された各センサデータ、画像データ、音声データ及びバッテリ残量データは、ＣＰＵ１２が調理ロボット１の動作制御を行う際に利用されるとともに、必要に応じて、無線通信部１６を介して外部のサーバ等へ送信される。なお、無線通信部１６は、Ｂｌｕｅｔｏｏｔｈ（登録商標）やＷｉ−Ｆｉ（登録商標）などの他、無線ＬＡＮ（Local  Area  Network）や移動体通信網等の所定のネットワークを介して外部のサーバ等と通信を行なうための通信部であってよい。
【００２４】
ＣＰＵ１２は、例えば、調理ロボット１の電源が投入された初期時、不図示のＰＣカードスロットに装填されたメモリカード２９又はフラッシュＲＯＭ１４に格納された制御プログラムをＰＣカードインタフェース１５を介して又は直接読み出し、これをＤＲＡＭ１３に格納する。
【００２５】
また、ＣＰＵ１２は、上述のように信号処理回路１１よりＤＲＡＭ１３に順次格納される各センサデータ、画像データ、音声データ及びバッテリ残量データに基づいて自機及び周囲の状況や、ユーザからの指示及び働きかけの有無などを判断する。
【００２６】
そして、ＣＰＵ１２は、上述の判断結果やＤＲＡＭ１３に格納されている調理制御プログラムに基づいて、その後の行動を決定するとともに、当該決定結果に基づいて必要なアクチュエータ２７を駆動させることにより、調理作業を実行する。
【００２７】
その際、ＣＰＵ１２は、必要に応じて音声データを生成し、これを信号処理回路１１を介して音声信号としてスピーカ２４に与えることにより当該音声信号に基づく音声を外部に出力させたり、表示部２５に各種情報を表示させたりする。
【００２８】
このようにして、調理ロボット１は、自機及び周囲の状況や、ユーザからの指示及び働きかけに応じて自律的に調理するように構成されている。
【００２９】
なお、以上で説明した調理ロボット１の構成は、単なる一例に過ぎず、目的や用途に応じて種々の調理ロボット１を適用することが可能である。
【００３０】
１．２  調理制御部の機能構成
つづいて、調理制御部の機能構成について説明する。調理制御部は、調理制御プログラムがＣＰＵ１２により実行されることで実現される。図２は、調理制御部の機能構成を示す図である。図２に示すように、調理制御部３０は、衛生状態ＤＢ３１と、レシピＤＢ３２と、状態遷移表３３と、衛生状態テーブル３４と、衛生状態テーブル初期化部３５と、状態遷移制御部３６と、制御部３７とを備える。
【００３１】
衛生状態ＤＢ３１は、ロボットアーム４０と調理器具４の初期の衛生状態を記憶する。初期の衛生状態は通常洗浄済みの清浄な状態である。常に調理器具４とロボットアーム４０が正常な状態とみなせる場合は、衛生状態ＤＢ３１はなくてもよい。
【００３２】
レシピＤＢ３２は、レシピ情報を格納したデータベース（ＤＢ）である。調理制御部３０が外部のＷｅｂサイトなどからレシピ情報を引き出す場合は、レシピＤＢ３２はなくてもよい。
【００３３】
状態遷移表３３は、ロボットアーム４０と調理器具４と食品２に関し衛生状態の状態遷移を定義した表である。
【００３４】
衛生状態テーブル３４には、レシピに記載された食品２と、レシピで調理に用いる調理器具４と、ロボットアーム４０の衛生状態を管理するテーブルが含まれる。また、衛生状態テーブル３４には、食品２、調理器具４及びロボットアーム４０の衛生状態と調理の作業タスクとの対応を示すテーブルが含まれる。
【００３５】
衛生状態テーブル初期化部３５は、衛生状態ＤＢ３１とレシピＤＢ３２と状態遷移表３３から衛生状態テーブル３４を作成して初期化する。
【００３６】
状態遷移制御部３６は、衛生状態テーブル３４に示された作業タスクの指令を制御部３７へ送信する。
【００３７】
制御部３７は、状態遷移制御部３６から受信した作業タスクの指令に基づいてロボットアーム４０を制御することで調理作業を実行する。制御部３７は、１つの作業タスクが完了すると状態遷移制御部３６へ通知する。完了が通知された制御部３７は、衛生状態テーブル３４に示された次の作業タスクの指令を状態遷移制御部３６へ送信する。
【００３８】
１．３  衛生状態遷移
つづいて、ロボットアーム４０、調理器具４、食品２の衛生管理のための状態遷移について説明する。図３は、ロボットアーム４０と調理器具４の衛生管理のための状態遷移を示す図である。図３に示すように、ロボットアーム４０と調理器具４の衛生状態には、状態１ｗ、状態２ｗ、状態３ｗ、状態５ｗ及び状態７ｗがある。ここで、ｗは、ｋｉｔｃｈｅｎｗａｒｅのｗに基づき用いられている。
【００３９】
状態１ｗは、洗浄済み状態であり、洗剤などで洗浄された状態である。状態２ｗは、通常状態であり、食品２を扱うのに適した状態で、有害な細菌やウィルスの付着がない状態である。この状態は、加熱しない食品２を扱うことができる状態である。この状態は、ロボットアーム４０の長期保管には向かないが、短時間に食品２を扱うことができる状態である。状態１ｗにおいて、例えば、洗浄済み食品２に接触すると、衛生状態は状態２ｗに遷移する。
【００４０】
状態３ｗは、物体付着状態であり、有害な細菌やウィルスによる汚染がないが砂糖や塩、しょうゆなどの調味料や、小麦粉など粉、果汁など液体、軽微な埃や塵が付着している状態である。状態２ｗにおいて、例えば、粉末や液体の調味料に接触したり、粉をまぶした食品２に接触すると、衛生状態は状態３ｗに遷移する。ロボットアーム４０が、ドーナッツを触った後、皮をむいたリンゴなどに触った後はこの状態となる。
【００４１】
状態５ｗは、細菌付着状態であり、有害なウィルスや細菌に汚染された状態である。状態２ｗにおいて、例えば、細菌又はウィルス又は寄生虫に汚染された食品２に接触したり、汚染された調理器具４又は食器３に接触したりすると、衛生状態は状態５ｗに遷移する。生の鶏肉に接触した後はこの状態になる。
【００４２】
状態７ｗは、高度汚染状態であり、食品２を使うのに不適な状態である。状態７ｗは、洗剤など化学物質が付着したり、生ゴミなど不潔な物に接触したり、砂や泥が付着したりしている状態である。状態３ｗ又は状態５ｗにおいて、例えば、洗剤やゴミなどに接触し化学物質や細菌などにより汚染したり、異物が付着すると、衛生状態は状態７ｗに遷移する。ロボットアーム４０がキッチンのゴミを片づけたり、洗剤を扱ったり、家庭菜園で栽培された泥付き野菜を洗浄した後にこの状態になる。状態３ｗ及び状態５ｗでは、加熱により汚染を除去できるが、状態７ｗでは、加熱により汚染を除去できない。
【００４３】
なお、図３は状態遷移の一部を示し、図３に示されていない状態遷移もある。例えば、洗浄済み状態（状態１ｗ）から細菌付着状態（状態５ｗ）、物体付着状態（状態３ｗ）、高度汚染状態（状態７ｗ）への遷移がある。
【００４４】
図４は、ロボットアーム４０と調理器具４の状態遷移表３３の一例を示す図である。図４において、縦軸は状態遷移前の状態を表し、横軸は作業工程を表す。作業工程には、「保守」、「調理」、「食品を洗浄」、「食品に接触」、「ロボットアームと調理器具に接触」がある。「ロボットアームと調理器具に接触」は、対象がロボットアーム４０の場合は調理器具４への接触を表し、対象が調理器具４の場合はロボットアーム４０への接触を表す。表の中は状態遷移後の状態を表す。表中の「−」は状態が遷移せず変化しないことを表す。「／」は作業工程を禁止することを表す。調理器具は例えば包丁やまな板である。
【００４５】
例えば、洗浄済み状態（状態１ｗ）の調理器具４を洗浄又は交換することは禁止されている。また、洗浄済み状態（状態１ｗ）の調理器具４を加熱しても調理器具４の衛生状態は洗浄済み状態のままである。また、洗浄済み状態（状態１ｗ）の調理器具４を用いて未洗浄状態の食品２を洗浄すると調理器具４の衛生状態は通常状態（状態２ｗ）に遷移する。また、洗浄済み状態（状態１ｗ）の調理器具４が物体付着状態（状態３ｗ）のロボットアーム４０と接触すると調理器具４の衛生状態は物体付着状態（状態３ｗ）に遷移する。
【００４６】
複数台のロボットアーム４０が存在し協働するときも同様の表で衛生状態が管理される。ロボットアーム４０と調理器具４は等しくこの状態遷移表３３により衛生状態が管理される。
【００４７】
図５は、食品２の衛生管理のための状態遷移を示す図である。図５に示すように、食品２の衛生状態には、状態０ｆ、状態２ｆ、状態４ｆ、状態５ｆ及び状態６ｆがある。ここで、ｆは、ｆｏｏｄのｆに基づき用いられている。
【００４８】
状態０ｆは、未洗浄状態であり、店舗で購入してきた生野菜などの状態である。状態０ｆは、軽微な水洗いなどの洗浄で飲食に適する状態２ｆになる状態である。
【００４９】
状態２ｆは、通常状態であり、ユーザがそのまま食べることができる状態である。例えば、チーズやお刺身などの状態が状態２ｆである。状態２ｆにおいて、例えば、細菌又はウィルス又は寄生虫に汚染された調理器具４又は食器３に接触すると、衛生状態は状態５ｆに遷移する。
【００５０】
状態４ｆは、未洗浄かつ細菌付着状態であり、未洗浄で細菌が付着している状態である。例えば、スーパーではなく家庭菜園で作られた土付きの野菜などの状態が状態４ｆである。状態４ｆの食品２は、例えば洗浄により状態５ｆに遷移する。
【００５１】
状態５ｆは、細菌付着状態であり、細菌や寄生虫が付着している状態である。例えば、生の鶏肉の状態が状態５ｆである。状態５ｆの食品２をそのまま飲食に供すると食中毒が発生する可能性がある。
【００５２】
状態６ｆは、加熱済み状態である。例えば、火を通した鶏肉の状態が状態６ｆである。状態５ｆにおいて、例えば加熱すると、衛生状態は状態６ｆに遷移する。
【００５３】
なお、図５は状態遷移の一部を示し、図５に示されていない状態遷移もある。例えば、未洗浄状態（状態０ｆ）から未洗浄かつ細菌付着状態（状態５ｆ）への遷移がある。
【００５４】
図６は、加熱を要さない食品２の状態遷移表３３の一例を示す図である。図６に示すように、加熱を要さない食品２の初期状態は、状態０ｆ又は状態２ｆである。加熱を要さない食品２は、調理後の最終状態が状態２ｆである。加熱を要さない食品２の作業工程には、「調理工程」と「接触工程」がある。例えば、お刺身、生野菜が加熱を要さない食品２である。未洗浄状態の食品２は、加熱が禁止され、細菌付着状態又は高度汚染状態の調理器具４又はロボットアーム４０との接触が禁じられている。
【００５５】
図７は、加熱を要する食品２の状態遷移表３３の一例を示す図である。図７に示すように、加熱を要する食品２は、最終状態が状態６ｆである。加熱を要する食品２の作業工程には、「調理工程」と「接触工程」がある。例えば、豚肉、鮭の切り身、ゴボウなどが加熱を要する食品２である。加熱を要する食品２の初期状態は、状態０ｆ、状態２ｆ、状態４ｆ又は状態５ｆである。
【００５６】
１．４  衛生状態管理
つづいて、ロボットアーム４０、調理器具４及び食品２の衛生状態管理について説明する。ロボットアーム４０、調理器具４及び食品２の衛生状態は、衛生状態テーブル３４を用いて管理される。図８は、ロボットアーム４０及び調理器具４の現在の衛生状態を表す衛生状態テーブル３４の一例を示す図である。図８に示すように、この衛生状態テーブル３４は、品名と現在状態を対応付ける。品名は、「ロボットアーム」か調理器具４の名前である。現在状態は、ロボットアーム４０又は調理器具４の現在の衛生状態である。
【００５７】
ロボットアーム４０と調理器具４の衛生状態は、衛生状態テーブル初期化部３５が、調理開始時に、前回終了時の状態を衛生状態ＤＢ３１から読み出す。ロボットアーム４０と調理器具４は、通常は清潔な状態に洗浄が完了されている。読みだされた衛生状態は衛生状態テーブル３４に記録される。
【００５８】
図９は、食品２の現在の衛生状態を表す衛生状態テーブル３４の一例を示す図である。図９は、図１０に示すハヤシライスの材料と、図１１に示すハヤシライスのレシピと、図１２に示す中華風サラダの材料と、図１３に示す中華風サラダのレシピに基づいて作成される場合を示す。
【００５９】
図９に示すように、この衛生状態テーブル３４は、レシピと品名と現在状態と完了状態を食品ごとに対応付ける。レシピは、食品２が使用されるレシピである。品名は、食品２の名前である。現在状態は、食品２の現在の衛生状態である。完了状態は、調理完了時の食品２の衛生状態である。
【００６０】
衛生状態テーブル初期化部３５は、レシピＤＢ３２からレシピを取得する。あるいは、衛生状態テーブル初期化部３５は、手動入力を受け付けることでレシピを取得してもよいし、ネットワーク経由で外部からレシピを取得してもよい。
【００６１】
ロボットアーム４０、調理器具４及び食品２の現在の衛生状態を表す衛生状態テーブル３４の値は、作業タスクの実行により随時変化する。これらの衛生状態テーブル３４の値は、基本的に状態を表す数字が大きくなる方向へ変化する。
【００６２】
１．５  作業タスクに応じた管理
つづいて、作業タスクに応じた衛生管理と時間管理について説明する。図９に示したように、ハヤシライスでは全材料が状態６ｆの加熱済み状態になるため、調理の途中で状態５ｆの細菌付着状態を経由しても衛生上問題がない。
【００６３】
一方、中華風サラダの水菜は加熱をしない食品、すなわち最終状態が状態２ｆの通常状態であるため、調理中いかなる時も状態５ｆの細菌付着状態になっては困る。具体的には、牛肉に触れたロボットアーム４０がそのまま水菜に触れると水菜に細菌が付着するため衛生上問題がある。調理制御部３０は、このような衛生状態の遷移が発生しないように食品２の衛生状態遷移を制御する。例えば、牛肉切り落としに触れたあとの状態５ｗのロボットアーム４０は図６より水菜への接触が禁止される。このため、水菜に牛肉由来の細菌が付着せず衛生が保たれる。
【００６４】
ロボットアーム４０が短い時間で調理をこなすためには複数の料理の調理を同時並行で進めることが求められる。図１１及び図１３に示したレシピでは、ハヤシライスの調理において１５分ほど煮込み作業が生じるため、この時間を利用して中華風サラダを調理すると、全体の調理時間が短くなる。また、中華風サラダに含まれるもやしは完了状態が状態６ｆであるため、状態５ｗのロボットアーム４０で触れても問題がない。したがって、調理制御部３０は、必要があれば、状態５ｗでももやしを扱う。
【００６５】
衛生状態テーブル初期化部３５は、食品２の衛生状態が状態遷移表３３にしたがって適正に遷移するように、かつ、時間や水使用量やその他要求事項を満たすように調理計画を立てる。この調理計画は、既存のオペレーションズ・リサーチ（operational  research，ＯＲ）技術を用いて、目的関数に応じて最適化を行うことで作成される。
【００６６】
例えば、目的関数を時間に設定することで、最短時間での調理計画が作成される。図１４は、作業タスクごとに変化する衛生状態を管理するための衛生状態テーブル３４の一例を示す図である。図１４では、目的関数は時間である。
【００６７】
図１４において、縦軸は食品２、ロボットアーム４０及び調理器具４を示し、横軸は作業タスクを示し、表の中は食品２の衛生状態を示す。食品同士は調理が進むにつれて材料が混ぜ合わされるため、表のセルを結合することで食品２の混合状態が表される。
【００６８】
なお、ここでは、ロボットアーム４０は調味料に直接触れず清潔なカップやスプーンを介して計量するか料理へ投入するものとし、調味料自体の衛生状態を変化させないものとする。そのため、調理制御部３０は、調味料の衛生状態を管理しない。
【００６９】
また、一部の調理器具４や計量器具は、ロボットアーム４０が把持する柄の部分と、調味料や食品が接触する先端で衛生状態が異なるため、調理制御部３０は、柄と先端を別々に管理する。この管理により、柄の部分の衛生状態は食品には伝播しないし、先端部分の衛生状態はロボットアーム４０に伝播しないようにできる。
【００７０】
図１４において、左から３列目は、調理開始時点の初期状態を表し、ロボットアーム４０及び調理器具４はすべて洗浄され清潔な１ｗ状態である。食品２はそれぞれ状態が異なる。図１４では、３列目から調理の工程が右に進むにつれて衛生状態が変化する。４列目の作業タスク「Ａ）バターをフライパンで熱し溶かす」が実施されると、衛生状態は、３列目の初期状態から４列目の状態に遷移する。
【００７１】
この作業タスクでは、ロボットアーム４０が包丁でバターを切り出す。バターはフライパン上で溶かされ衛生状態が「６ｆ．加熱済み」に変化する。１３行目のロボットアーム４０と１４行目の包丁は、３列目で状態１ｗだったが状態２ｆのバターに触れたため図４により４列目の状態２ｗに変化する（１３行４列目及び１４行目４列目を参照）。１５行目のフライパンは、解けたバターに触れたため状態１ｗから図４により状態２ｗへ変化する（１５行４列目を参照）。
【００７２】
５列目の作業タスク「Ｂ）玉ねぎを水洗いし皮をむきスライスする」が実施されると、衛生状態は、４列目の状態から５列目の状態に遷移する。この調理タスクでは、玉ねぎは水洗いで図７より状態が０ｆから２ｆへ変化する。まな板は包丁による玉ねぎのスライス時に玉ねぎに触れることで図４より状態が１ｗから２ｗへ変化する（１６行５列目参照)。
【００７３】
調理制御部３０は、ロボットアーム４０と調理器具４については図４に示した状態遷移表３３を参照し、食品２については図６及び図７に示した状態遷移表３３を参照しながら、図１４に示した衛生状態テーブル３４を作成することで、適切な衛生管理を実現する。例えば、調理制御部３０は、１１列目の作業タスク「水菜を水洗いし水を切り４ｃｍに切る」の前に１０列目の作業タスク「ロボットアームを洗浄」を実行するよう制御することで、牛肉由来（６列目の作業タスクＣ）の細菌が加熱されずユーザが食べる水菜に付着することを防ぐ。
【００７４】
また、９列目の作業タスク「Ｇ）もやしを水洗いし熱湯で３０秒ゆで、ざるに上げて粗熱をとる」では、もやしは最終的に加熱されるため、細菌が付着した状態である状態５ｗのロボットアーム４０で、もやしを扱うことが許されている。このため、調理制御部３０は、無駄な洗浄を減らすことができ、調理の効率を向上することができる。
【００７５】
また、調理制御部３０は、複数のレシピ毎に順番に調理を行うのではなく、調理やロボットアーム４０の洗浄にかかるコスト及び衛生を勘案した上で複数のレシピの調理を並行に行うことで、総調理時間を短縮することができる。例えば、ハヤシライスの調理には、８列目に１５分煮込む作業タスクＥがあるが、調理制御部３０は、作業タスクＥと次の１３列目の作業タスクＦの間に集中的に、中華風サラダの作業タスクを挿入することで、総調理時間を短縮する。
【００７６】
なお、複数台のロボットアーム４０が協働する場合は、図１４に示した衛生状態テーブル３４が共有される。また、ロボットアーム４０が調理中に追加の指令や割り込み作業があってもよい。例えば、調理制御部３０は、図１４に示した衛生状態テーブル３４を調理途中に書き換えて、途中の段階で調理の工程を変更できる。
【００７７】
１．６  調理制御動作
つぎに、本実施形態に係る調理制御動作について説明する。図１５は、本実施形態に係る調理制御動作の流れを示すフローチャートである。図１５に示すように、調理制御部３０は、ユーザから料理の指示を受け付け（ステップＳ１）、レシピを取得する（ステップＳ２）。そして、調理制御部３０は、衛生状態ＤＢ３１と状態遷移表３３を読み出す（ステップＳ３）。
【００７８】
そして、調理制御部３０は、レシピと衛生状態ＤＢ３１と状態遷移表３３に基づいて、衛生状態テーブル３４を作成する（ステップＳ４）。衛生状態テーブル３４には、食品２、調理器具４及びロボットアーム４０の衛生状態を管理するテーブルと、作業タスクごとに変化する衛生状態を管理するためのテーブルが含まれる。そして、調理制御部３０は、衛生状態テーブル３４に基づいて、ロボットアーム４０を制御する（ステップＳ５）。
【００７９】
１．７  作用・効果
以上のように、本実施形態によれば、調理制御部３０は、レシピと衛生状態ＤＢ３１と状態遷移表３３に基づいて衛生状態テーブル３４を作成する。そして、調理制御部３０は、衛生状態テーブル３４に基づいてロボットアーム４０を制御するので、適正な衛生管理を行うことができる。
【００８０】
また、本実施形態では、調理制御部３０は、最終的に加熱される食品２については細菌付着状態のロボットアーム４０や調理器具４による接触を許すことで、ロボットアーム４０や調理器具４の洗浄を減らすことができる。
【００８１】
また、本実施形態では、調理制御部３０は、複数のレシピ毎に順番に調理を行うのではなく、複数のレシピの調理を並行に行うように制御することで、総調理時間を短縮することができる。
【００８２】
なお、本実施形態では、調理ロボット１を制御する場合について説明したが、本開示の技術は、他の作業を行うロボットや器具の動作を制御する場合にも同様に適用することができる。例えば、化学薬品を調合するロボットや薬を調製するロボットなどにも、本実施形態を適用することが可能である。
【００８３】
また、本実施形態では、料理を完成させるまでの作業タスクをスケジューリングする場合を例示したが、これに限られず、例えば、料理を完成後、調理に使用した食器３や調理器具４やロボットアーム４０を状態１ｗに洗浄するまでの作業タスクをスケジューリングするように構成することも可能である。さらに、本実施形態において、衛生管理の対象として、シンクや調理台などを含めることも可能である。
【００８４】
以上、本開示の実施形態について説明したが、本開示の技術的範囲は、上述の実施形態そのままに限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。また、異なる実施形態及び変形例にわたる構成要素を適宜組み合わせてもよい。
【００８５】
また、本明細書に記載された各実施形態における効果はあくまで例示であって限定されるものでは無く、他の効果があってもよい。
【００８６】
なお、本技術は以下のような構成も取ることができる。
（１）
対象物体に対する作業を含む複数のタスクの実行順序を、各タスクで用いられる作業器具の状態の遷移に基づいて決定する決定部を備える情報処理装置。
（２）
前記作業器具の状態は、前記作業器具の衛生状態である前記（１）に記載の情報処理装置。
（３）
前記決定部は、さらに前記対象物体の状態の遷移に基づいて、前記複数のタスクの前記実行順序を決定する前記（１）又は（２）に記載の情報処理装置。
（４）
前記対象物体の状態は、前記対象物体の衛生状態である前記（３）に記載の情報処理装置。
（５）
タスクごとの前記作業器具の状態の遷移を記憶する状態遷移記憶部と、
前記複数のタスクに関する情報を記憶するタスク情報記憶部と、
をさらに備え、
前記決定部は、前記状態遷移記憶部に記憶された前記タスクごとの作業器具の状態の遷移と、前記タスク情報記憶部に記憶された前記複数のタスクに関する情報とに基づいて、前記複数のタスクの前記実行順序を決定する
前記（１）〜（４）の何れか１項に記載の情報処理装置。
（６）
タスクごとの前記作業器具の状態の遷移と、前記タスクごとの前記対象物体の状態の遷移とを記憶する状態遷移記憶部と、
前記複数のタスクに関する情報を記憶するタスク情報記憶部と、
をさらに備え、
前記決定部は、前記状態遷移記憶部に記憶された前記タスクごとの前記作業器具の状態の遷移及び前記タスクごとの前記対象物体の状態の遷移と、前記タスク情報記憶部に記憶された前記複数のタスクに関する情報とに基づいて、前記複数のタスクの前記実行順序を決定する
前記（３）又は（４）に記載の情報処理装置。
（７）
前記作業器具の初期の状態を記憶する初期状態記憶部をさらに備え、
前記決定部は、前記初期状態記憶部に記憶された前記作業器具の前記初期の状態からの前記状態の遷移を管理する
前記（１）〜（６）の何れか１項に記載の情報処理装置。
（８）
前記決定部により決定された前記実行順序に基づいて前記複数のタスクの実行を制御する制御部をさらに備える前記（１）〜（７）の何れか１項に記載の情報処理装置。
（９）
前記制御部による制御の途中で前記複数のタスクにタスクが追加された場合に、
前記決定部は、追加されたタスクを含めて前記実行順序を再度決定し、
前記制御部は、前記決定部により再度決定された実行順序に基づいて前記実行を継続して制御する
前記（８）に記載の情報処理装置。
（１０）
前記対象物体は食品であり、前記作業器具は調理器具及びロボットのアームであり、前記複数のタスクには、レシピに含まれる調理作業と、前記調理器具及び前記アームの洗浄とが含まれ、前記状態には複数の段階があり、前記遷移は、前記調理器具、前記アーム及び前記食品のうちの少なくとも２つの接触により発生する前記（１）〜（９）の何れか１項に記載の情報処理装置。
（１１）
対象物体に対する作業を含む複数のタスクの実行順序を、各タスクで用いられる作業器具の状態の遷移に基づいて決定することを含むスケジューリング方法。
（１２）
対象物体に対する作業を含む複数のタスクの実行順序を、各タスクで用いられる作業器具の状態の遷移に基づいて決定することをコンピュータに実行させるためのプログラム。
【符号の説明】
【００８７】
１  調理ロボット
２  食品
３  食器
４  調理器具
１０  コントロール部
１１  信号処理回路
１２  ＣＰＵ
１３  ＤＲＡＭ
１４  フラッシュＲＯＭ
１５  ＰＣカードインタフェース
１６  無線通信部
１７  内部バス
１８  バッテリ
１９  ＣＣＤカメラ
２０  ＩＭＵ
２１  ＴｏＦセンサ
２２  タッチセンサ
２３  マイク
２４  スピーカ
２５  表示部
２６  可動部
２７  アクチュエータ
２８  エンコーダ（ポテンショメータ）
２９  メモリカード
３０  調理制御部
３１  衛生状態ＤＢ
３２  レシピＤＢ
３３  状態遷移表
３４  衛生状態テーブル
３５  衛生状態テーブル初期化部
３６  状態遷移制御部
３７  制御部
４０  ロボットアーム
【図１】
2020071236.tif 000003
【図２】
2020071236.tif 000004
【図３】
2020071236.tif 000005
【図４】
2020071236.tif 000006
【図５】
2020071236.tif 000007
【図６】
2020071236.tif 000008
【図７】
2020071236.tif 000009
【図８】
2020071236.tif 000010
【図９】
2020071236.tif 000011
【図１０】
2020071236.tif 000012
【図１１】
2020071236.tif 000013
【図１２】
2020071236.tif 000014
【図１３】
2020071236.tif 000015
【図１４】
2020071236.tif 000016
【図１５】
2020071236.tif 000017
【国際調査報告】
2020071236.tif 000018
2020071236.tif 000019
2020071236.tif 000020
2020071236.tif 000021