JP2024037347A - Information processing system, information processing method, and program - Google Patents
Information processing system, information processing method, and program Download PDFInfo
- Publication number
- JP2024037347A JP2024037347A JP2022142140A JP2022142140A JP2024037347A JP 2024037347 A JP2024037347 A JP 2024037347A JP 2022142140 A JP2022142140 A JP 2022142140A JP 2022142140 A JP2022142140 A JP 2022142140A JP 2024037347 A JP2024037347 A JP 2024037347A
- Authority
- JP
- Japan
- Prior art keywords
- time
- recipe
- unit
- cooking
- user
- 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
- 230000010365 information processing Effects 0.000 title claims abstract description 39
- 238000003672 processing method Methods 0.000 title claims abstract description 6
- 230000009471 action Effects 0.000 claims abstract description 35
- 238000010411 cooking Methods 0.000 claims description 285
- 238000000034 method Methods 0.000 claims description 143
- 230000008569 process Effects 0.000 claims description 129
- 235000012054 meals Nutrition 0.000 claims description 111
- 239000004615 ingredient Substances 0.000 claims description 13
- 230000002123 temporal effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 abstract description 12
- 238000012545 processing Methods 0.000 description 26
- 230000004044 response Effects 0.000 description 22
- 238000010438 heat treatment Methods 0.000 description 21
- 238000002360 preparation method Methods 0.000 description 17
- 238000007726 management method Methods 0.000 description 16
- 230000004048 modification Effects 0.000 description 13
- 238000012986 modification Methods 0.000 description 13
- 230000004913 activation Effects 0.000 description 11
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 4
- 235000021186 dishes Nutrition 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000003542 behavioural effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 235000013305 food Nutrition 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 235000008429 bread Nutrition 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000036578 sleeping time Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】利便性の向上を図ることができる情報処理システム、情報処理方法、およびプログラムを提供することである。【解決手段】実施形態の情報処理システムは、目的取得部と、レシピ提案部とを備える。前記目的取得部は、ユーザの行動予定に応じたレシピの検索目的を取得する。前記レシピ提案部は、前記目的取得部により取得された前記検索目的に基づき、1つ以上のレシピを提案する。【選択図】図7An object of the present invention is to provide an information processing system, an information processing method, and a program that can improve convenience. An information processing system according to an embodiment includes an objective acquisition section and a recipe proposal section. The purpose acquisition unit acquires a recipe search purpose according to a user's action schedule. The recipe proposal unit proposes one or more recipes based on the search purpose acquired by the purpose acquisition unit. [Selection diagram] Figure 7
Description
本発明の実施形態は、情報処理システム、情報処理方法、およびプログラムに関する。 Embodiments of the present invention relate to an information processing system, an information processing method, and a program.
料理の内容に関する検索条件に応じてレシピを提供する情報処理システムが提案されている。このような情報処理システムは、利便性のさらなる向上が期待されている。 An information processing system has been proposed that provides recipes in accordance with search conditions regarding the content of dishes. Such information processing systems are expected to further improve in convenience.
本発明が解決しようとする課題は、利便性の向上を図ることができる情報処理システム、情報処理方法、およびプログラムを提供することである。 The problem to be solved by the present invention is to provide an information processing system, an information processing method, and a program that can improve convenience.
実施形態の情報処理システムは、目的取得部と、レシピ提案部とを備える。前記目的取得部は、ユーザの行動予定に応じたレシピの検索目的を取得する。前記レシピ提案部は、前記目的取得部により取得された前記検索目的に基づき、1つ以上のレシピを提案する。 The information processing system of the embodiment includes a purpose acquisition section and a recipe proposal section. The purpose acquisition unit acquires a recipe search purpose according to a user's action schedule. The recipe proposal unit proposes one or more recipes based on the search purpose acquired by the purpose acquisition unit.
以下、実施形態の情報処理システム、情報処理方法、およびプログラムを、図面を参照して説明する。以下の説明では、同一または類似の機能を有する構成に同一の符号を付す。そして、それら構成の重複する説明は省略する場合がある。本出願で「XXに基づく」とは、「少なくともXXに基づく」ことを意味し、XXに加えて別の要素に基づく場合も含み得る。また「XXに基づく」とは、XXを直接に用いる場合に限定されず、XXに対して演算や加工が行われたものに基づく場合も含み得る。本出願で「XXまたはYY」とは、XXとYYのうちいずれか一方の場合に限定されず、XXとYYの両方の場合も含み得る。これは選択的要素が3つ以上の場合も同様である。XXおよびYYは、任意の要素(例えば任意の情報)である。 Hereinafter, an information processing system, an information processing method, and a program according to embodiments will be described with reference to the drawings. In the following description, components having the same or similar functions are denoted by the same reference numerals. Further, redundant explanations of these configurations may be omitted. In this application, "based on XX" means "based on at least XX," and may include cases where it is based on another element in addition to XX. Furthermore, "based on XX" is not limited to the case where XX is used directly, but may also include the case where it is based on calculations or processing performed on XX. In this application, "XX or YY" is not limited to either XX or YY, but may include both XX and YY. This also applies when there are three or more selective elements. XX and YY are arbitrary elements (for example, arbitrary information).
本出願で「取得」とは、送信要求を送信して能動的に取得する場合に限定されず、他の装置から送信される情報を受動的に受信することで取得する場合も含み得る。また「取得」とは、外部から得られた情報に対して演算または加工などを行い目的の情報を生成することで目的の情報を取得する場合も含み得る。本出願では「データベース」を「DB」と表記する。本出願では「指定」と「設定」という用語について特段の区別を有しない。このため以下の説明において「指定」と「設定」という用語は互いに読み替えられてよい。 In this application, "acquisition" is not limited to actively acquiring information by transmitting a transmission request, but may also include acquiring information by passively receiving information transmitted from another device. Furthermore, "acquisition" may also include acquiring target information by performing calculations or processing on information obtained from an external source to generate target information. In this application, "database" is expressed as "DB". In this application, there is no particular distinction between the terms "designation" and "setting." Therefore, in the following description, the terms "designation" and "setting" may be used interchangeably.
図1は、実施形態の情報処理システム1の全体構成を示す図である。情報処理システム1は、例えば、サーバ200と、端末装置300とを備える。なお、本出願で言う「情報処理システム」は、情報処理システム1に限定されず、サーバ200のみで実現されてもよく、端末装置300の家電管理アプリAPPのみで実現されてもよく、サーバ200と端末装置300の家電管理アプリAPPとにより実現されてもよい。ネットワークNWは、例えば、インターネット、セルラー網、Wi-Fi網、LPWA(Low Power Wide Area)、WAN(Wide Area Network)、LAN(Local Area Network)、またはその他の公衆回線や専用回線などを状況に応じて利用すればよい。
FIG. 1 is a diagram showing the overall configuration of an information processing system 1 according to an embodiment. The information processing system 1 includes, for example, a
(端末装置の構成)
端末装置300は、ユーザUが使用する端末装置である。端末装置300は、例えば、スマートフォンまたはタブレット端末装置のような携帯端末装置であってもよいし、パーソナルコンピュータなどでもよい。端末装置300は、例えば、無線ルータWRおよびモデムMを介してネットワークNWに接続し、サーバ200との間でデータの送受信を行う。端末装置300は、例えば、液晶ディスプレイなどの表示画面301aを含む表示装置301と、ユーザUの入力を受け付け可能な入力装置302とを備える。入力装置302は、例えば、表示装置301の表示画面301aと重ねるように備えられたタッチパネルである。入力装置302は、端末装置300に設けられたカメラやマイクなどを含み得る。
(Configuration of terminal device)
図2に示すように、端末装置300は、例えば、記憶部310、表示制御部311、操作受付部312、検索目的設定部(検索目的受付部)313、調理条件設定部(調理条件受付部)314、レシピ検索要求部315、詳細レシピ要求部316、レシピ登録部317、情報取得部318、およびカレンダ設定部319を備える。記憶部310は、ハードウェア機能部であり、予めインストールされるアプリケーションプログラムPのデータと、端末内情報350とを記憶する。端末装置300に搭載されたCPU(Central Processing Unit)のような1つ以上のハードウェアプロセッサが、アプリケーションプログラムPを実行することにより構築されるソフトウェア機能部のことを、まとめて「家電管理アプリAPP」という。
As shown in FIG. 2, the
端末内情報350には、ユーザUに固有のユーザ識別情報であって端末装置300とサーバ200との間で共有されるユーザ識別情報が含まれる。以下、ユーザ識別情報を、ユーザID(Identifier)という。
The
表示制御部311、操作受付部312、検索目的設定部313、調理条件設定部314、レシピ検索要求部315、詳細レシピ要求部316、レシピ登録部317、情報取得部318、およびカレンダ設定部319は、上記した家電管理アプリAPPに含まれるソフトウェア機能部である。
The
表示制御部311は、例えば、表示装置301に対して、画像や文字などの表示に関するデータを自ら出力、または、他の機能部から受けて出力することにより、当該データに応じた画像や文字などを表示画面301aに表示する。表示制御部311は、例えば、図3に示すホーム画面501を表示画面301aに表示する。
For example, the
操作受付部312は、ユーザUの所定の操作を受け付ける。より詳細には、操作受付部312は、ユーザUが入力装置302に対して行った操作を検出し、検出した操作に応じた制御信号を出力する。例えば、ユーザUが、図3のホーム画面501の画像内に設けられた「レシピ」の文字列を含む操作部51を操作したとする。なお、タッチパネルである入力装置302に対してユーザUが行う操作とは、例えば、タップ操作である。この場合、操作受付部312は、入力装置302において操作部51の位置がタップされたという操作を検出する。操作受付部312は、検出した操作と、操作を検出した際の条件とに応じた制御信号を出力する。
The
検索目的設定部313は、ユーザUの行動予定に応じたレシピの検索目的の指定を受け付ける。例えば、上記検索目的は、ユーザUの行動予定に応じた時間的な条件を含む検索目的である。本実施形態では、検索目的設定部313は、表示制御部311を介して表示画面301aに、図4に示す検索目的入力画面502を表示する。本実施形態では、検索目的設定部313は、図3に示すホーム画面501から、図5に示す概要レシピ一覧表示画面503に画面遷移する間に、検索目的入力画面502を表示させる。ここで、「表示制御部311を介して表示画面301aに・・・を表示する」という処理の記載は、表示制御部311が、他の機能部が出力する何らかのデータを取り込み、取り込んだデータから生成する画像などを表示画面301aに表示するという処理を意味する。
The search
検索目的入力画面502において、例えば、符号53で示す破線で囲む領域が入力部(以下「入力部53」という)である。入力部53は、操作受付部312を介して、ユーザUによって入力部53に入力された内容を受け付ける。入力部53は、ユーザUによるレシピの検索目的の入力を受け付ける。
In the search
例えば、入力部53は、所定時間以内に開始される調理のレシピを検索目的として指定するユーザUの入力を受け付ける。「所定時間」は、例えば30分である。所定時間以内に開始される調理のレシピを検索目的として指定するユーザUの入力は、例えば、「今から作る」のような文字列を伴う操作部によって受け付けられる。なお、「今から作る」のような文字列を伴う操作部は、所定時間以内に調理が終了するレシピを検索目的として指定するユーザUの入力を受け付けるために設けられてもよい。また、入力部53は、上記例に代えて/加えて、調理予定日に関する入力を受け付けてもよいし、調理開始、調理終了、または食事開始の時間に関する入力を受け付けてもよい。調理開始の時間、調理終了の時間、および食事開始の時間は、「ユーザの所定の行動の開始時間または終了時間」の一例である。「所定の行動」は、調理開始や調理終了や食事開始に限定されず、ユーザUの外出、就寝、または別の作業の開始時間などでもよい。なお以下では、「食事開始時間(食事開始日時)」が入力される場合を代表して説明する。このため以下の説明における「食事開始時間(食事開始日時)」は、「調理終了日時(調理終了時間)」、「ユーザの所定の行動の開始時間」、および「ユーザの所定の行動の終了時間」の各々と適宜読み替えられてもよい。
For example, the
本実施形態では、入力部53は、「通常」、「今から作る」、「食事開始日時指定」、「記念日/パーティ」の4つの選択候補と、4つの選択候補の各々に対応する操作部53-1,53-2,53-3,53-4と、「食事開始日時指定」の選択候補が選択された場合に利用される日時入力部53-5と、「決定」の文字列を含む操作部54とを含む。日時入力部53-5は、時間に関する情報(例えば食事開始日時)をレシピの検索目的として受け付ける入力部の一例である。
In the present embodiment, the
操作部53-1,53-2,53-3,53-4の各々は、右横の選択候補に対応して設けられている。操作部53-1,53-2,53-3,53-4は、ユーザUの操作を受けて選択される操作部であり、いずれか1つが選択可能である。図4では、一例として、「食事開始日時指定」に対応する操作部53-3が選択された状態を示す。 Each of the operation units 53-1, 53-2, 53-3, and 53-4 is provided corresponding to the selection candidate on the right side. The operating units 53-1, 53-2, 53-3, and 53-4 are operating units that are selected in response to an operation by the user U, and any one of the operating units can be selected. FIG. 4 shows, as an example, a state in which the operation unit 53-3 corresponding to "specify meal start date and time" is selected.
4つの選択候補において、「今から作る」、「食事開始日時指定」、および「記念日/パーティ」の3つは、ユーザUの行動予定に応じたレシピの検索目的を指定するための選択候補である。これに対して、「通常」の選択候補は、検索目的を指定しないための選択候補である。「今から作る」と「食事開始日時指定」は、例えば、ユーザUの行動予定に応じた時間的な条件である。「食事開始日時指定」は、日時入力部53-5においてユーザUが入力する日時に食事を開始することを検索目的として指定するための選択候補である。「記念日/パーティ」は、ユーザUの行動予定、例えば、誕生日などの記念日やパーティなどの行動予定に応じた特別料理を検索目的として指定するための選択候補である。ここで、特別料理とは、例えば、料理の見た目が豪華である料理や、料理に用いる食材が高価である料理である。特別料理に対応するレシピには、特別料理であることが予め設定されている。 Among the four selection candidates, three of them, "Make it now," "Specify meal start date and time," and "Anniversary/Party" are selection candidates for specifying the recipe search purpose according to user U's activity schedule. It is. On the other hand, "normal" selection candidates are selection candidates for not specifying a search purpose. “Make it now” and “Specify meal start date and time” are, for example, temporal conditions according to user U's activity schedule. “Meal start date and time designation” is a selection candidate for specifying, as a search purpose, to start a meal at the date and time input by the user U in the date and time input section 53-5. “Anniversary/Party” is a selection candidate for specifying a special dish according to the user U's activity schedule, for example, an anniversary such as a birthday, or a party, etc. as a search objective. Here, the special dish is, for example, a dish that looks luxurious or a dish that uses expensive ingredients. A recipe corresponding to a special dish is set in advance to be a special dish.
検索目的設定部313は、操作部54がユーザUによって操作され、当該操作を検出した操作受付部312が出力する制御信号を受けると、入力部53において選択された選択候補を示す情報を検出する。検索目的設定部313は、検出した選択候補が「食事開始日時指定」である場合、更に、日時入力部53-5に入力された日時を示す情報を検出する。検索目的設定部313は、検出した情報を示す内容と、端末内情報350に含まれているユーザIDとを含む検索目的設定指示信号をサーバ200に送信する。
When the
調理条件設定部314は、ユーザUが指定する調理に関する条件、例えば、ユーザUが所有するコンロの個数、オーブンレンジの個数などを示す情報を受け付け、受け付けた情報をサーバ200に送信する。
The cooking
レシピ検索要求部(レシピ取得部)315は、端末内情報350に含まれているユーザIDを含むレシピ検索要求信号をサーバ200に送信する。レシピ検索要求部315は、サーバ200からレシピ検索応答信号を受信し、受信したレシピ検索応答信号に含まれているデータに基づいて、表示制御部311を介して表示画面301aに、例えば、図5に示す概要レシピ一覧表示画面503を表示する。概要レシピ一覧表示画面503は、例えば、複数のレシピの各々のサムネイル画像および名称の一覧を表示する画面である。以下、図5の概要レシピ一覧表示画面503に表示される個々のレシピに関するデータを、後述する詳細レシピデータと区別して示すために、概要レシピデータという。
Recipe search request section (recipe acquisition section) 315 transmits a recipe search request signal including the user ID included in internal
詳細レシピ要求部(レシピ取得部)316は、例えば、ユーザUが、概要レシピ一覧表示画面503の画像内に含まれる「レシピ画像A001」の画像領域に対応する操作部62を操作することにより起動する。操作部62には、レシピA001に予め付与されているレシピIDが対応付けられている。レシピIDとは、レシピの各々を識別可能なレシピ識別情報である。
The detailed recipe request unit (recipe acquisition unit) 316 is activated, for example, when the user U operates the
詳細レシピ要求部316は、例えば、操作部62に対する操作に起因して起動した場合、操作部62に対応付けられたレシピA001のレシピIDと、端末内情報350に含まれているユーザIDとを含む詳細レシピ要求信号をサーバ200に送信する。詳細レシピ要求部316は、サーバ200から詳細レシピ応答信号を受信し、受信した詳細レシピ検索応答信号に含まれる詳細レシピデータに基づいて、表示制御部311を介して表示画面301aに、例えば、図6に示す詳細レシピ表示画面504を表示する。詳細レシピ表示画面504は、例えば、1つのレシピのサムネイル画像、材料リスト、および調理手順などを示す情報を含む。本実施形態では、詳細レシピ表示画面504には、「食事開始日時を設定」の文字列を含む操作部63が含まれる。操作部63は、レシピA001のレシピIDが対応付けられている。操作部63が操作される場合、時間に関する情報(例えば食事開始日時)が入力可能になる。操作部63は、時間に関する情報(例えば食事開始日時)を、調理予定のレシピと関連付けるために受け付ける入力部の一例である。
For example, when the detailed
レシピ登録部317は、ユーザUによって選択されるレシピIDを登録レシピIDとする。例えば、レシピ登録部317は、登録レシピIDと、登録レシピIDに対してユーザUが指定する食事開始日時とを受け付け、受け付けた登録レシピIDと、食事開始日時を示す情報とを含むレシピ登録指示信号をサーバ200に送信する。
The
情報取得部318は、サーバ200から受信する情報、例えば、調理の開始を報知する報知情報や、調理工程の時間計画を示す時間計画情報を受信して取得する。情報取得部318は、取得した情報を、表示制御部311を介して表示画面301aに表示する。
The
カレンダ設定部319は、ユーザUが指定する特定の時間の範囲を示す情報と、ユーザUの外出などの予定を示す情報とを受け付け、受け付けた情報をサーバ200に送信する。ここで、時間の範囲とは、日付が同一の2つの時刻で示される範囲のみならず、日付が異なる2つの時刻で示される範囲も含まれる。
The
(サーバの構成)
サーバ200は、1つまたは複数のサーバ装置(例えばクラウドサーバ)により構成される。サーバ200は、図示しない通信モジュールを備えており、例えば、ネットワークNWに接続する。サーバ200は、ネットワークNW中のルータに含まれる情報処理部など、エッジコンピューティングやフォグコンピューティングを行う情報処理部を含んでもよい。サーバ200は、クラウドサーバに限定されず、ユーザUの住居にあるコンピュータでもよく、家庭内ルータ(例えば無線ルータWR)などでもよい。
(Server configuration)
The
図7に示すように、サーバ200は、例えば、記憶部201、計時部202、DB管理部203、検索目的取得部204、レシピ提案部205、時間計画部206、生活時間取得部207、および報知部208を備える。計時部202、DB管理部203、検索目的取得部204、レシピ提案部205、時間計画部206、生活時間取得部207、および報知部208は、例えば、サーバ200に搭載されたCPUのような1つ以上のハードウェアプロセッサがプログラムを実行することにより実現されるソフトウェア機能部である。サーバ200が備える機能部は、複数のサーバ装置に分かれて備えられていてもよい。また、サーバ200が備える機能部のうち1つ以上の機能部が、サーバ200に代えて、端末装置300に備えられていてもよい。
As shown in FIG. 7, the
記憶部201は、ハードウェア機能部であり、レシピDB251、ユーザ情報DB252、登録レシピDB253、およびカレンダDB254を備える。
The
レシピDB251は、例えば、図8に示すように、レシピID,レシピ名称、レシピ画像、食材リスト、調理手順、調理工程条件、調理時間、および待機時間を対応付けて記憶する。以下、レシピDB251における1つの行のデータ、すなわち、1つのレシピIDに関連付けられているデータをレシピレコードという。なお、本出願において、「レシピ」と記載する場合、原則として、レシピレコードを示しているが、レシピレコードの一部から生成される詳細レシピデータや概要レシピデータを示す場合もある。
For example, as shown in FIG. 8, the
「レシピID」の項目には、レシピレコードごとに付与されるレシピIDが記憶される。「食材リスト」の項目には、レシピの各々において用いられる食材の各々の種類と、食材の各々の分量とが記憶される。「調理手順」の項目は「調理工程内容」と「調理工程時間」の副項目を有している。「調理工程内容」の項目には、レシピレコードごとのレシピの内容、すなわち、調理工程ごとに行う調理の内容を示す情報が記憶される。ここで、調理の内容を示す情報には、具体的な手順を文章で示した内容に加えて、調理工程ごとの種類を示す情報、例えば、「下準備」、「非加熱工程」、「加熱工程」などを示す情報が含まれている。「加熱工程」の調理工程の種類を示す情報には、更に、コンロを使う加熱工程か、オーブンレンジを使う加熱工程かといった、使用する調理機器の違いを示す情報も含まれている。「調理工程時間」の項目には、調理工程ごとの調理時間が記憶される。「レシピ名称」、「レシピ画像」の項目の各々には、料理の名称と、当該料理の一例を撮影した画像データ(サムネイル画像のデータ)とがそれぞれ記憶される。 The “recipe ID” item stores a recipe ID assigned to each recipe record. The "ingredients list" item stores each type of ingredients used in each recipe and the amount of each ingredient. The "cooking procedure" item has sub-items "cooking process content" and "cooking process time." The item "Cooking process content" stores information indicating the content of the recipe for each recipe record, that is, the content of cooking performed for each cooking process. Here, the information indicating the content of cooking includes, in addition to the content indicating specific steps in text, information indicating the type of each cooking process, such as "preparation," "non-heating process," and "heating process." Contains information such as "process". The information indicating the type of cooking process of "heating process" further includes information indicating the difference in cooking equipment used, such as whether the heating process uses a stove or an oven range. The "cooking process time" item stores the cooking time for each cooking process. The "recipe name" and "recipe image" items each store the name of a dish and image data (thumbnail image data) of an example of the dish.
「調理工程条件」の項目には、「調理手順」の「調理工程内容」に示される調理工程における調理の進め方の条件を示す情報が記憶される。調理の進め方の条件を示す情報として、例えば、調理工程に存在する待機時間が記憶される。ここで、待機時間とは、例えば、料理の下ごしらえや、パン生地を発酵させるための時間など、ユーザが調理を先に進めることができない時間を意味する。また、調理の進め方の条件を示す情報として、例えば、「調理手順」の項目に示される調理工程において、工程順にしたがっていれば、調理工程の間に時間を空けてもよいという原則の下で、連続して行わなければならない調理工程の組み合わせを示す情報なども記憶される。なお、レシピID「A021」のように、調理工程条件が存在しない場合、「調理工程条件」の項目は、空欄になる。 The item "Cooking process conditions" stores information indicating the conditions for how to proceed with cooking in the cooking process shown in the "Cooking process contents" of the "Cooking procedure". For example, the waiting time that exists in the cooking process is stored as information indicating the conditions for how to proceed with the cooking. Here, the waiting time refers to a time during which the user cannot proceed with cooking, such as time for preparing food or fermenting bread dough. In addition, as information indicating the conditions for how to proceed with cooking, for example, in the cooking process shown in the item "Cooking procedure", based on the principle that it is okay to leave time between cooking processes as long as the process order is followed, Information indicating combinations of cooking steps that must be performed consecutively is also stored. Note that when there are no cooking process conditions, such as recipe ID "A021," the item "Cooking process conditions" is left blank.
「調理時間」の項目には、「調理手順」の「調理工程時間」の項目に示される調理工程ごとの時間を合計した時間が記憶される。「待機時間」の項目には、「調理工程条件」の項目に示される待機時間を合計した時間が記憶される。なお、レシピID「A021」のように、待機時間が存在しない場合、「待機時間」の項目は、空欄になる。 The "cooking time" item stores the total time for each cooking process shown in the "cooking process time" item of the "cooking procedure". The "waiting time" item stores the total time of the waiting times shown in the "cooking process conditions" item. Note that when there is no waiting time, such as with recipe ID "A021," the "waiting time" item is blank.
ユーザ情報DB252は、例えば、図9に示すように、ユーザIDごとに、ユーザの検索目的を示す情報と、ユーザの調理に関する条件を示す情報とを対応付けて記憶する。
For example, as shown in FIG. 9, the
登録レシピDB253は、例えば、図10に示すように、ユーザIDごとに、食事開始日時と、登録レシピIDと、調理開始日時(調理開始予定日時)と、時間計画情報と、報知日時(報知予定日時)と、報知情報(報知内容)と、報知状態とを対応付けて記憶する。食事開始日時とは、ユーザUが食事を開始する日時であって、例えばユーザUにより指定された日時である。登録レシピIDとは、対応する食事開始日時においてユーザUが食する予定の料理を示すレシピであって、ユーザUにより選択されたレシピを示すレシピIDである。図10の食事開始日時「8月1日19:00」の例のように、1つの食事開始日時に関して、複数の料理を示す複数のレシピIDが対応付けて登録可能である。
For example, as shown in FIG. 10, the registered
調理開始日時(調理開始予定日時)とは、対応する「登録レシピID」の項目に示されたレシピIDのレシピの調理を開始すべき日時である。時間計画情報とは、ユーザUが調理を行う登録レシピの各々について、調理工程ごとの開始日時および終了日時を示す情報である。 The cooking start date and time (scheduled cooking start date and time) is the date and time at which cooking of the recipe with the recipe ID indicated in the corresponding "registered recipe ID" item should start. The time planning information is information indicating the start date and time and end date and time of each cooking process for each registered recipe that the user U cooks.
報知日時(報知予定日時)とは、調理を開始すべきであることをユーザUに報知する日時、言い換えると、調理開始日時の到来を報知する日時である。報知情報とは、対応する報知日時に報知を行う際に、報知に合わせて提示する情報である。以下、報知日時と報知情報の組み合わせを報知条件ともいう。「報知状態」の項目には、報知が既に行われている場合「報知済み」が記憶され、報知が未だ行われていない場合「未報知」が記憶される。 The notification date and time (scheduled notification date and time) is the date and time to notify the user U that cooking should start, in other words, the date and time to notify the arrival of the cooking start date and time. Announcement information is information that is presented along with the announcement when the announcement is made on the corresponding announcement date and time. Hereinafter, the combination of notification date and time and notification information will also be referred to as notification conditions. In the "notification status" item, "notified" is stored if the notification has already been made, and "not notified" is stored if the notification has not been made yet.
カレンダDB254は、例えば、ユーザIDごとのカレンダ情報を記憶する。ここで、カレンダ情報とは、年度ごとの1月から12月までの日付を含む情報であり、更に、ユーザの外出などの予定を示す情報が、時間の範囲に関連付けて記憶されている情報である。
The
サーバ200において、計時部202は、例えば時計であり、他の機能部から要求を受けると、要求を受けた時点の時刻を示す時刻情報を要求元の機能部に出力する。以下、計時部202が出力する時刻情報を、説明の便宜上、現在時刻情報という。
In the
DB管理部203は、レシピDB251、ユーザ情報DB252、登録レシピDB253、およびカレンダDB254に対するデータの記録や変更などの処理を行う。
The
検索目的取得部204は、ユーザUの行動予定に応じたレシピの検索目的を取得する。
本実施形態では、検索目的取得部204は、端末装置300に対するユーザUの入力に基づき、ユーザUの行動予定に応じたレシピの検索目的を取得する。例えば、検索目的取得部204は、端末装置300から検索目的設定指示信号を受信することで、受信した検索目的設定指示信号に基づいて、ユーザUの行動予定に応じたレシピの検索目的を取得する。検索目的取得部204は、ユーザUの行動予定に応じたレシピの検索目的を取得した場合、ユーザ情報DB252に対するデータの記録を行う。なお、後述する変形例で説明するように、検索目的取得部204は、端末装置300に対するユーザUの入力に代えて/加えて、ユーザUの行動予定を推測し、ユーザUの行動予定に関する推測結果に基づいてレシピの検索目的を取得してもよい。検索目的取得部204は、「目的取得部」の一例である。
The search
In the present embodiment, the search
レシピ提案部205は、ユーザUの行動予定に応じたレシピの検索目的が検索目的取得部204により取得された場合、レシピDB251に予め登録された複数のレシピのなかから、例えばユーザUの検索目的に応じて1つ以上のレシピを選択してユーザUに提案する。本出願で「レシピをユーザUに提案する」とは、例えば、選択したレシピを示す情報を端末装置300に送信することを意味する。
When the search
本実施形態では、レシピ提案部205は、端末装置300からレシピ検索要求信号を受信すると、レシピDB251が記憶するデータから概要レシピデータを生成する。レシピ提案部205は、生成した概要レシピデータを含むレシピ検索応答信号を端末装置300に送信する。レシピ提案部205は、端末装置300から詳細レシピ要求信号を受信すると、レシピDB251が記憶するデータから詳細レシピデータを生成する。レシピ提案部205は、生成した詳細レシピデータを含む詳細レシピ応答信号を端末装置300に送信する。
In this embodiment, upon receiving the recipe search request signal from the
時間計画部206は、新たに登録レシピDB253に記録された登録レシピIDに対する時間計画処理を行って時間計画情報を生成する。時間計画処理については、詳しく後述する。
The
生活時間取得部207は、ユーザUが調理を実施できる調理可能時間に関する情報を取得する。本実施形態では、生活時間取得部207は、ユーザUのユーザIDに対応するカレンダ情報をカレンダDB254から検出し、検出したカレンダ情報に示されるユーザUの予定からユーザUが家の中に存在しない時間の範囲を検出する。生活時間取得部207は、検出したユーザUが家の中に存在しない時間の範囲と、ユーザUによって予め設定されるユーザUの睡眠時間帯とに基づいて調理可能時間を算出する。ここで、調理可能時間とは、ユーザが家の中に存在する時間であって、かつ睡眠中でない時間であり、ユーザUが何らかの通知を受けると、調理を実施することが可能な時間である。
The living
報知部208は、検索目的として、または、調理予定のレシピと関連付けるために、食事開始時間が入力された場合、食事開始時間から逆算された調理開始時間の到来に関する報知を行う。例えば、報知部208は、時間計画部206が新たに時間計画情報を生成した場合、新たに生成された時間計画情報と、調理可能時間とに基づいて、食事開始日時ごとの報知日時を算出し、更に、報知情報を生成する。報知部208は、報知日時になると、報知日時に対応する報知情報を情報取得部318に送信する。なお、報知部208は、検索目的として、または、調理予定のレシピと関連付けるために、食事開始日時(食事開始時間)に代えて、ユーザUの別の所定の行動の開始時間または終了時間が入力された場合、入力された開始時間または終了時間に基づいて同様の処理を行い、上記報知情報を生成して送信する。例えば、報知部208は、入力された行動の開始時間または終了時間から逆算されて生成された調理工程の時間計画(時間計画情報)と、調理可能時間とに基づいて報知日時を算出し、上記報知情報を生成する。
When a meal start time is input for search purposes or to associate with a recipe to be cooked, the
報知部208は、1回の食事に関して複数のレシピが登録される場合、複数のレシピの全てについて調理開始時間の到来に関する報知を行うことを抑制する(例えば、1回のみ行う)。
When a plurality of recipes are registered for one meal, the
報知部208は、1回の食事に関して複数のレシピが登録される場合、1回の食事に関して1つのレシピが登録される場合に対して、前記調理開始時間の到来に関する報知内容を変更する。例えば、1回の食事に関して1つのレシピが登録される場合は、「XXの料理を開始しましょう」と報知するのに対して、1回の食事に関して複数のレシピが登録される場合は、単に「料理を開始しましょう」と報知する。これら内容は、詳しく後述する。
The
なお、サーバ200の計時部202、DB管理部203、検索目的取得部204、レシピ提案部205、時間計画部206、生活時間取得部207、および報知部208は、ソフトウェア機能部によって実現することに限られない。これらの機能部の一部または全部は、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、またはFPGA(Field Programmable Gate Array)などのハードウェアによって実現されてもよいし、ソフトウェアとハードウェアとの協働によって実現されてもよい。
Note that the
端末装置300の記憶部310、およびサーバ200の記憶部201は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、EEPROM(Electrically Erasable Programmable ROM)、またはSSD(Solid State Drive)などの組み合わせにより実現される。
The
(情報処理システムによる処理)
図11および図12は、情報処理システム1によって行われる処理の全体の流れを示すシーケンス図である。以下では、端末装置300のユーザUに対してユーザID「U100」が付与されるものとする。以下では、ユーザUによる所定の操作により、カレンダ設定部319と、DB管理部203とによって、カレンダDB254のユーザID「U100」に対応するカレンダ情報に、特定の時間の範囲においてユーザUの外出などの予定を示す情報が記録されているものとする。
(Processing by information processing system)
11 and 12 are sequence diagrams showing the overall flow of processing performed by the information processing system 1. In the following, it is assumed that the user U of the
ユーザUによる所定の操作により、調理条件設定部314と、DB管理部203とによって、ユーザ情報DB252のユーザID「U100」に対応するテーブルの「調理条件」の項目に、調理に関する条件を示す情報が記録された状態になっている。例えば、ユーザ情報DB252のユーザID「U100」に対応するテーブルの「調理条件」の項目に、図9に示すユーザUの調理に関する条件を示す情報が記録されたとする。
Through a predetermined operation by the user U, the cooking
まず、検索目的設定部313は、表示制御部311を介して表示画面301aに、図4の検索目的入力画面502を表示する。ここでは、例えば、ユーザUは、「今から作る」の選択候補に対応する操作部53-2に対して操作を行ったとする。操作受付部312は、当該操作を検出し、検出した操作に応じた制御信号を検索目的設定部313に出力する。これにより、「今から作る」の選択候補が選択された状態になる。
First, the search
続いて、ユーザUによって操作部54が操作されると、操作受付部312は、当該操作を検出し、検出した操作に応じた制御信号を検索目的設定部313に出力する。検索目的設定部313は、当該制御信号を取り込むと、入力部53において選択された選択候補を示す情報を検出する。ここでは、検索目的設定部313は、操作部53-2を示す情報を検出する。検索目的設定部313は、内部の記憶領域に操作部53-1~53-4の各々に関連付けて、選択候補に対応する識別信号を予め記憶させている。検索目的設定部313は、検出した選択候補に対応する識別信号とユーザID「U100」とを含む検索目的設定指示信号をサーバ200に送信する(S11)。
Subsequently, when the
検索目的取得部204は、検索目的設定指示信号を受信し、受信した検索目的設定指示信号に含まれているユーザID「U100」に対応するテーブルを、ユーザ情報DB252において選択する。検索目的取得部204は、図9に示すように、選択したテーブルの「検索目的」の項目に、検索目的設定指示信号に含まれた識別信号に対応する選択候補の内容を記録する(S12)。
The search
次に、レシピ検索要求部315は、ユーザIDを含むレシピ検索要求信号をサーバ200に送信する(S13)。このとき、ユーザUによって料理または食材に関する指定が行われる場合、当該ユーザによって指定される料理または食材を示す情報がレシピ検索要求信号には含まれる。レシピ提案部205は、レシピ検索要求信号を受信すると、図13に示すレシピ検索処理のサブルーチンを開始する(S14)。
Next, the recipe
(レシピ検索処理のサブルーチン)
レシピ提案部205は、受信したレシピ検索要求信号に含まれる検索目的を示す情報を、ユーザ情報DB252から検出する。なお、検索目的を示す情報が「食事開始日時指定」である場合、ユーザ情報DB252の「検索目的」の項目には、ユーザUによって入力された食事開始日時を示す時間情報も記憶される。この場合、レシピ提案部205は、当該時間情報も、「食事開始日時指定」の検索目的と共に検出する(Sa1)。
(Recipe search processing subroutine)
The
レシピ提案部205は、検出した検索目的を示す情報が、「通常」、「今から作る」、「食事開始日時指定」、「記念日/パーティ」のいずれであるかを判定する(Sa2)。レシピ提案部205は、検索目的を示す情報が、「通常」であると判定した場合(Sa2、通常)、レシピDB251に記憶されている順に、全てのレシピID(ユーザUによって料理または食材などの条件指定がある場合は、その条件を満たすレシピID)を検出する。
The
レシピ提案部205は、検出したレシピIDの各々に対応するレシピレコードに基づき概要レシピデータを生成する。レシピ提案部205は、生成した概要レシピデータを含むレシピ検索応答信号を端末装置300に送信する(Sa7)。
The
レシピ提案部205は、検索目的を示す情報が「今から作る」であると判定した場合(Sa2、今から作る)、レシピDB251に記憶された各レシピデータの「調理時間」と「待機時間」の項目に示された時間を合計した合計時間が、予め定められた所定時間(例えば30分)以内のレシピIDをレシピDB251から検出する(Sa4)。図8に示す例の場合、レシピID「A001」については、調理時間と待機時間の合計時間が「20分」になる。レシピID「A011」については、調理時間と待機時間の合計時間が「26時間30分」になる。また、レシピID「A021」については、調理時間と待機時間の合計時間が「50分」になる。そのため、この場合、レシピ提案部205は、レシピID「A001」を検出する。レシピ提案部205は、Sa4の処理において検出したレシピIDに基づいて、Sa7の処理を行う。
When the
なお、レシピ提案部205は、検索目的を示す情報が「今から作る」であると判定した場合、上記例に代えて、「調理時間」が予め定められた所定時間(例えば30分)以内のレシピIDをレシピDB251から検出してもよく、「待機時間」が予め定められた所定時間(例えば0分)以内のレシピIDをレシピDB251から検出してもよい。「待機時間」が0分以内とは、待機時間が存在しない(すなわち、待機時間を要する下ごしらえなどが存在しない)ことを意味する。
Note that when the
レシピ提案部205は、検索目的を示す情報が「食事開始日時指定」であると判定した場合(Sa2、食事開始日時指定)、計時部202から現在時刻情報を取得する。レシピ提案部205は、レシピDB251に記憶された各レシピデータの「調理時間」と「待機時間」の項目に示されている時間を合計した合計時間を算出する。レシピ提案部205は、現在時刻情報が示す時刻に、算出した合計時間を加算した時刻を判定用時刻として算出する。レシピ提案部205は、算出した判定用時刻が、検索目的「食事開始日時指定」と共に、Sa1の処理において検出した時刻情報が示す時刻以前の時刻になるレシピIDをレシピDB251から検出する(Sa5)。例えば、現在時刻情報が示す時刻が「8月1日17:00」であり、日時入力部53-5に入力された日時が「8月1日18:00」である場合、レシピ提案部205は、レシピID「A001」,「A021」を検出する。レシピ提案部205は、Sa5の処理において検出したレシピIDに基づいて、Sa7の処理を行う。
When the
レシピ提案部205は、検索目的を示す情報が「記念日/パーティ」であると判定した場合(Sa2、記念日/パーティ)、レシピDB251に記憶された特別料理に該当するレシピIDを検出する(Sa6)。レシピ提案部205は、Sa6の処理において検出したレシピIDに基づいて、Sa7の処理を行う。レシピ提案部205は、Sa7の処理の後、サブルーチンを終了する。
When the
ここでは、レシピ提案部205は、Sa1の処理において、検索目的を示す情報として「今から作る」を検出するため、Sa4の処理が行われた後、Sa7の処理が行われることになる。
Here, since the
図11に戻り、レシピ提案部205は、レシピ検索処理において生成した概要レシピデータを含むレシピ検索応答信号を端末装置300に送信する(S15)。
Returning to FIG. 11, the
レシピ検索要求部315は、レシピ検索応答信号を受信する。レシピ検索要求部315は、受信したレシピ検索応答信号に含まれている概要レシピデータの各々に基づいて、表示制御部311を介して表示画面301aに概要レシピ一覧表示画面503を表示する(S16)。これにより、図5に示すような形式で、概要レシピデータの各々に含まれているレシピ画像のデータと、レシピ名称とが、一覧表示される。
Recipe
図5に示す例は、検索目的を示す情報が「通常」の場合の例であり、検索目的を示す情報が「今から作る」の場合には、少なくともレシピID「A001」の概要レシピデータを含む概要レシピ一覧表示画面503が表示されることになる。ユーザUが、例えば、レシピID「A001」のレシピ画像領域に対応する操作部62を操作すると、詳細レシピ要求部316は、操作部62に対応付けられているレシピID「A001」(以下、詳細レシピのレシピIDという)を含む詳細レシピ要求信号を生成する。詳細レシピ要求部316は、生成した詳細レシピ要求信号をサーバ200に送信する(S17)。
The example shown in FIG. 5 is an example where the information indicating the search purpose is "normal", and when the information indicating the search purpose is "make it now", at least the summary recipe data with the recipe ID "A001" is A
レシピ提案部205は、受信した詳細レシピ要求信号に含まれる詳細レシピのレシピID「A001」に対応するレシピレコードをレシピDB251から検出する。レシピ提案部205は、読み出した詳細レシピのレシピID「A001」に対応するレシピレコードから詳細レシピデータを生成する。レシピ提案部205は、生成した詳細レシピデータを含む詳細レシピ応答信号を端末装置300に送信する(S18)。
The
詳細レシピ要求部316は、詳細レシピ応答信号を受信する。詳細レシピ要求部316は、受信した詳細レシピ応答信号に含まれている詳細レシピのレシピID「A001」の詳細レシピデータに基づいて、表示制御部311を介して表示画面301aに詳細レシピ表示画面504を表示する(S19)。これにより、図6に示す形式で、詳細レシピのレシピID「A001」の詳細レシピデータが表示される。
Detailed
図12に進み、ユーザUが、詳細レシピ表示画面504に示されたレシピID「A001」の料理を調理することを決めたとする。この場合、ユーザUは、詳細レシピ表示画面504の操作部63を操作する。ここでは、操作部63には、レシピID「A001」が対応付けられている。操作受付部312は、ユーザUの操作部63に対する操作を検出すると、検出した操作に対応するレシピID「A001」を含む制御信号をレシピ登録部317に出力する。レシピ登録部317は、レシピID「A001」を関連付けた所定の食事開始日時設定画面を、表示制御部311を介して表示画面301aに表示する。
Proceeding to FIG. 12, it is assumed that the user U decides to cook the dish with the recipe ID "A001" shown on the detailed
所定の食事開始日時設定画面において、ユーザUが食事開始日時を示す情報を入力して、完了の操作を行うと、操作受付部312が当該操作を検出する。ここでは、ユーザUは、食事開始日時を示す情報として「8月1日12:00」を入力したとする。操作受付部312は、当該操作を検出する際に、入力された食事開始日時を示す情報「8月1日12:00」と、所定の食事開始日時設定画面に関連付けられているレシピID「A001」とを検出する。操作受付部312は、検出した食事開始日時を示す情報「8月1日12:00」と、レシピID「A001」とを含む制御信号をレシピ登録部317に出力する。レシピ登録部317は、当該制御信号から得らえるレシピID「A001」を登録レシピIDとする。レシピ登録部317は、登録レシピID「A001」と、食事開始日時を示す情報「8月1日12:00」とを含むレシピ登録指示信号をサーバ200に送信する(S20)。
When the user U inputs information indicating the meal start date and time and performs a completion operation on a predetermined meal start date and time setting screen, the
DB管理部203は、レシピ登録指示信号を受信すると、ユーザID「U100」に対応するテーブルの「食事開始日時」の項目に、受信したレシピ登録指示信号に含まれる食事開始日時を示す情報「8月1日12:00」を記録し、「登録レシピID」の項目に、受信したレシピ登録指示信号に含まれる登録レシピID「A001」を記録する(S21)。これにより、図10に示す1行目のレコードのうち「食事開始日時」と「登録レシピID」の項目の内容が登録レシピDB253に記録される。
Upon receiving the recipe registration instruction signal, the
DB管理部203は、S21の処理が終了すると、レシピ登録指示信号に含まれる食事開始日時を示す情報「8月1日12:00」を含む起動指示信号を時間計画部206に出力する。時間計画部206は、当該起動指示信号を取り込むと、図14に示す時間計画処理のサブルーチンを開始する(S22)。
When the process of S21 is completed, the
(時間計画処理のサブルーチン)
時間計画部(時間計画出力部)206は、レシピの検索目的として、または、調理予定のレシピに関連付けるために、食事開始時間が入力された場合、食事開始時間から逆算された調理工程の時間計画を生成する。ここでは、調理予定のレシピに関連付けるために食事開始時間が入力された場合について説明する。ただし本実施形態の説明において、「食事開始時間」は、調理予定のレシピに関連付けるために入力された食事開始時間に代えて、レシピの検索目的として入力された食事開始時間でもよい。なお上述したように、食事開始時間は、「ユーザの所定の行動の開始時間または終了時間」の一例である。時間計画部(時間計画出力部)206は、食事開始時間に代えて、調理終了時間、または、外出や就寝、別の作業の開始時間などユーザの所定の行動の開始時間または終了時間が入力された場合、入力された行動の開始時間または終了時間から逆算された調理工程の時間計画を生成する。このため以下の説明における「食事開始時間」は、「調理終了日時」、「ユーザの所定の行動の開始時間」、および「ユーザの所定の行動の終了時間」の各々と適宜読み替えられてもよい。
(Time planning processing subroutine)
When a meal start time is input for the purpose of searching for a recipe or for associating it with a recipe to be cooked, the time planning unit (time plan output unit) 206 provides a time plan for the cooking process calculated backward from the meal start time. generate. Here, a case will be described in which a meal start time is input in order to be associated with a recipe to be cooked. However, in the description of this embodiment, the "meal start time" may be the meal start time input as a recipe search purpose instead of the meal start time input to be associated with the recipe to be cooked. Note that, as described above, the meal start time is an example of "the start time or end time of a user's predetermined action." In place of the meal start time, the time planning section (time plan output section) 206 receives input of the cooking end time, or the start time or end time of a predetermined action of the user, such as going out, going to bed, or starting another task. If so, a time plan for the cooking process is generated by calculating backward from the input start time or end time of the action. Therefore, "meal start time" in the following description may be read as "cooking end date and time,""start time of user's predetermined action," and "end time of user's predetermined action" as appropriate. .
本実施形態では、時間計画部206は、登録レシピDB253において、取り込んだ起動指示信号に含まれるユーザID「U100」に対応するテーブルを選択する。時間計画部206は、選択したテーブルの「食事開始日時」の項目の内容が、取り込んだ起動指示信号に含まれる食事開始日時を示す情報「8月1日12:00」に一致するレコードを検出する。ここでは、時間計画部206は、図10に示す1行目のレコードを検出することになる。時間計画部206は、検出したレコードの「登録レシピID」の項目に記憶された登録レシピID「A001」を読み出す(Sb1)。時間計画部206は、読み出した登録レシピIDの数が、1つであるか、複数であるかを判定する(Sb2)。
In this embodiment, the
(登録レシピIDが1つの場合の処理)
ここでは、時間計画部206が読み出した登録レシピIDは、「A001」の1つであるため、時間計画部206は、1つであると判定する(Sb2、1つ)。時間計画部206は、レシピDB251から登録レシピID「A001」に対応するレシピレコードを検出する。時間計画部206は、検出したレシピレコードの「調理手順」の項目に記憶されている調理手順を示す情報と、「調理工程条件」の項目に記憶されている調理工程条件を示す情報とを取得する(Sb3)。
(Processing when there is only one registered recipe ID)
Here, since the registered recipe ID read by the
時間計画部206は、取得した調理手順を示す情報および調理工程条件を示す情報と、取り込んだ起動指示信号に含まれる食事開始日時を示す情報「8月1日12:00」とに基づいて、登録レシピ「A001」に対する時間計画を生成する。例えば、時間計画部206は、調理手順を示す情報に含まれる調理工程ごとの調理時間と、調理工程条件を示す情報に含まれる待機時間とに基づいて、食事開始日時を示す情報「8月1日12:00」を基準とした調理工程ごとの開始時刻(開始予定時刻)と終了時刻(終了予定時刻)とを算出する。時間計画部206が算出した調理工程ごとの開始時刻と終了時刻と、登録レシピID「A001」が関連付けられた情報とが時間計画情報になる。時間計画部206は、最初に行われる調理工程の開始時刻を、調理開始時刻(調理開始予定時刻)とする(Sb4)。ここでは、図8に示すように、登録レシピID「A001」の調理時間と待機時間の合計時間は20分であることから登録レシピID「A001」の調理開始時刻は、「8月1日11:40」になる。
Based on the acquired information indicating the cooking procedure, the information indicating the cooking process conditions, and the information indicating the meal start date and time "August 1st 12:00" included in the acquired activation instruction signal, the time planning unit 206 A time plan for registered recipe "A001" is generated. For example, the
時間計画部206は、図10に示すように、Sb1の処理において、登録レシピDB253から検出したレコードに対して、以下の処理を行う。時間計画部206は、「調理開始時刻」の項目に、調理開始時刻「8月1日11:40」を記録し、「時間計画情報」の項目に、食事開始日時「8月1日12:00」に対応する時間計画情報を記録する(Sb5)。時間計画部206は、サブルーチンを終了する。
As shown in FIG. 10, the
(登録レシピIDが複数の場合の処理)
Sb1の処理で、時間計画部206が読み出した登録レシピIDの数が、複数である場合の処理について説明する。この処理を説明するために、以下のような場面を想定する。図10に示す登録レシピDB253の「食事開始日時」の項目が「8月1日19:00」であるレコードの「登録レシピID」の項目に、既に、登録レシピID「A012」と「A051」とが記憶されている場合とする。この状態において、DB管理部203が、図12のS21の処理において、新たに登録レシピID「A073」を追加して記録したとする。この場合、時間計画部206は、DB管理部203からユーザID「U100」と、食事開始日時を示す情報「8月1日19:00」とを含む起動指示信号を受ける。
(Processing when there are multiple registered recipe IDs)
A description will be given of a process when the number of registered recipe IDs read out by the
時間計画部206は、図14のSb1の処理において、登録レシピID「A012」,「A051」,「A073」の3つを読み出し、Sb2の処理において「複数」の判定を行う(Sb2、複数)。時間計画部206は、レシピDB251から登録レシピID「A012」,「A051」,「A073」の各々に対応するレシピレコードを検出する。時間計画部206は、検出したレシピレコードの各々から「調理手順」の項目に記憶された調理手順を示す情報と、「調理工程条件」の項目に記憶された調理工程条件を示す情報とを取得する(Sb6)。
The
時間計画部206は、ユーザ情報DB252において、起動指示信号に含まれるユーザID「U100」に対応するテーブルを選択し、選択したテーブルの「調理条件」の項目に記憶された調理に関する条件を読み出して取得する(Sb7)。ここでは、時間計画部206は、図9に示す「コンロ:2個」と「オーブンレンジ:1個」とを調理に関する条件として読み出したとする。
The
時間計画部206は、取得した調理手順を示す情報と、調理工程条件を示す情報と、調理に関する条件とに基づいて、例えば、図15に示すような、3つの登録レシピ「A012」,「A051」,「A073」に対する時間計画を生成する。時間計画部206は、登録レシピ「A012」,「A051」,「A073」の調理手順を示す情報に示されたコンロを用いる加熱工程の調理時間が長い順に並べる。ここでは、例えば、時間計画部206は、図15の符号101の図に示すように、右側から順に、登録レシピ「A073」,「A051」,「A012」に並べたとする。
The
登録レシピ「A073」,「A051」,「A012」の各々の調理工程条件を示す情報において、加熱工程と、非加熱工程とを連続で行わなければならないという条件が示されていないものとする。また、1つの非加熱工程に対する作業のためにユーザUの時間が占有されるため、非加熱工程が並列にならないようにする必要がある。また、調理に関する条件を示す情報には、コンロが2個あることが示されているので、並列してコンロを使う加熱工程の数が、2つ以下になるようにする必要がある。そのため、時間計画部206は、図15の符号102の図に示すように、登録レシピ「A051」の非加熱工程である調理工程1を、加熱工程である調理工程2から分離して、登録レシピ「A073」の非加熱工程である調理工程1-4の前に移動させる。
It is assumed that the information indicating the cooking process conditions of each of the registered recipes "A073", "A051", and "A012" does not indicate a condition that the heating process and the non-heating process must be performed consecutively. Furthermore, since user U's time is occupied by work on one non-heating process, it is necessary to prevent non-heating processes from running in parallel. Furthermore, since the information indicating the cooking conditions indicates that there are two stoves, it is necessary to ensure that the number of heating processes that use the stoves in parallel is two or less. Therefore, as shown in the diagram 102 in FIG. 15, the
時間計画部206は、並列してコンロを使う加熱工程が2つになるように、登録レシピ「A051」の調理工程2の調理時間に重複しないように登録レシピ「A012」のコンロを使う加熱工程である調理工程4を移動させる。登録レシピ「A012」の調理工程3は、オーブンレンジを使う加熱工程であり、他の登録レシピ「A073」と「A051」の任意の調理工程と重複して行うことができる。そのため、時間計画部206は、登録レシピ「A012」の調理工程4の前に調理工程3の調理時間を割り当てる。
The
最後に残った登録レシピ「A012」の非加熱工程である調理工程1-2については、他の登録レシピ「A073」,「A051」の調理工程と重複しないようにする必要がある。そのため、時間計画部206は、登録レシピ「A051」の非加熱工程である調理工程1-2を、登録レシピ「A051」の非加熱工程である調理工程1の前に移動させる。これにより、図15の符号102の図のように、登録レシピ「A073」,「A051」,「A012」の各調理工程の順番が定まることになる。
The cooking process 1-2, which is the non-heating process of the last remaining registered recipe "A012", must not overlap with the cooking processes of the other registered recipes "A073" and "A051". Therefore, the
時間計画部206は、取得した調理手順を示す情報に示されている調理工程ごとの調理時間と、起動指示信号に含まれている食事開始時刻を示す情報「8月1日19:00」から調理工程ごとの開始時刻と、終了時刻とを算出する。時間計画部206が算出した調理工程ごとの開始時刻と終了時刻と、調理工程の各々に対応する登録レシピIDが関連付けられた情報とが時間計画情報になる。時間計画部206は、登録レシピ「A073」の最初に行われる調理工程1の開始時刻「8月1日17:10」を、登録レシピ「A073」の調理開始時刻とする。時間計画部206は、登録レシピ「A051」の最初に行われる調理工程1の開始時刻「8月1日17:00」を、登録レシピ「A051」の調理開始時刻とする。時間計画部206は、登録レシピ「A012」の最初に行われる調理工程1の開始時刻「8月1日16:30」を、登録レシピ「A012」の調理開始時刻とする(Sb8)。
The
時間計画部206は、Sb1の処理において、登録レシピDB253から検出したレコードに対して以下の処理を行う。時間計画部206は、登録レシピID「A012」に対応する「調理開始日時」の項目に、調理開始日時「8月1日16:30」を記録する。時間計画部206は、登録レシピID「A051」に対応する「調理開始日時」の項目に、調理開始日時「8月1日17:00」を記録する。時間計画部206は、登録レシピID「A073」に対応する「調理開始日時」の項目に、調理開始日時「8月1日17:10」を記録する。時間計画部206は、「時間計画情報」の項目に、食事開始日時「8月1日19:00」に対応する時間計画情報を記録する(Sb9)。これにより、登録レシピDB253の食事開始日時「8月1日19:00」に対応するレコードの「食事開始日時」から「時間計画情報」の項目までが、図10に示す状態になる。時間計画部206は、サブルーチンを終了する。
In the process of Sb1, the
図12に戻り、時間計画部206は、取り込んだ起動指示信号を、報知部208に出力する。報知部208は、当該起動指示信号に含まれるユーザID「U100」を含む取得要求信号を生活時間取得部207に出力する。生活時間取得部207は、当該取得要求信号を受けると、受けた取得要求信号に含まれるユーザID「U100」に対応するカレンダ情報をカレンダDB254から検出する。生活時間取得部207は、検出したユーザID「U100」に対応するカレンダ情報から調理可能時間を算出する。生活時間取得部207は、算出した調理可能時間を含む取得応答信号を報知部208に出力する。報知部208は、当該取得応答信号を取り込む(S23)。報知部208は、取得応答情報を取り込むと、報知条件である報知日時と、報知情報とを設定する図16に示す報知条件設定処理のサブルーチンを開始する(S24)。
Returning to FIG. 12, the
(報知条件設定処理)
報知部208は、取り込んだ起動指示信号に含まれる食事開始日時を示す情報に対応する時間計画情報を登録レシピDB253から検出する(Sc1)。
(Notification condition setting process)
The
報知部208は、検出した時間計画情報に待機時間が存在し、かつ待機時間の各々が所定時間以内であるか否かを判定する(Sc2)。ここで、所定時間は、例えば、12時間といった比較的長い時間が予め設定される。比較的長い時間を設定する理由は、例えば、前日に下準備などの調理工程を行うレシピについては、前日に下準備の調理工程が行われる際と、当日に調理が行われる際との両方において、報知を行うのが望ましいためである。
The
例えば、所定時間が12時間であるとする。この場合、図8及び図10に示すレシピID「A011」には、24時間という所定時間以内でない待機時間が存在する。そのため、報知部208は、登録レシピID「A011」に対応する食事開始日時「8月3日19:00」の場合には、Sc2の判定処理において、否である判定を行う(Sc2、No)。これに対して、図10に示す食事開始日時「8月3日19:00」以外の食事開始日時については、報知部208は、Sc2の判定処理の条件を満たすと判定したとする(Sc2、Yes)。この場合、報知部208は、最先の調理開始日時を報知日時とし、対応するレコードの「報知日時」の項目に報知日時を記録する(Sc3)。図10の1行目と、3行目の食事開始日時「8月1日12:00」,「8月2日6:00」の場合には、「調理開始日時」の項目に示される日時が報知日時になる。
For example, assume that the predetermined time is 12 hours. In this case, the recipe ID "A011" shown in FIGS. 8 and 10 has a waiting time that is not within the predetermined time of 24 hours. Therefore, in the case of the meal start date and time "August 3rd 19:00" corresponding to the registered recipe ID "A011", the
これに対して、図10の2行目の食事開始日時「8月1日19:00」の場合には、3つの調理開始日時が存在するため、最先の「8月1日16:30」を報知日時として設定する。このようにすることで、1回の食事に関して複数の調理開始日時が存在する場合に、複数の調理開始日時の各々に対して報知が行われるのではなく、最先の調理開始日時に1度だけ報知が行われることになり、ユーザUの煩わしさを軽減させることができる。なお、複数の登録レシピIDの全てについて報知を行うことを抑制する、すなわち、全てについて報知を行わず、報知の回数を抑制することができれば、ユーザUの煩わしさを軽減させるという効果が得られる。そのため、例えば、最先の調理開始日時のみを報知日時にするのではなく、複数の調理開始日時の一部を選択し、選択した調理開始日時の各々を報知日時にするようにしてもよい。 On the other hand, in the case of the meal start date and time "August 1st 19:00" in the second line of FIG. ” as the notification date and time. By doing this, when there are multiple cooking start dates and times for one meal, the notification will not be made for each of the multiple cooking start dates and times, but once for the earliest cooking start date and time. As a result, the annoyance of the user U can be reduced. Note that if it is possible to suppress notifications for all of the plurality of registered recipe IDs, that is, to suppress notifications for all of them and to suppress the number of notifications, it is possible to reduce the annoyance of the user U. . Therefore, for example, instead of setting only the earliest cooking start date and time as the notification date and time, a portion of a plurality of cooking start dates and times may be selected and each of the selected cooking start dates and times may be set as the notification date and time.
一方、Sc2の判定処理において「No」の判定を行った場合、報知部208は、最先の調理開始日時と、Sc2の処理の所定時間を超える待機時間が終了した後の調理開始日時とを報知日時として設定し、対応するレコードの「報知日時」の項目に報知日時を記録する(Sc4)。なお、報知部208は、時間計画情報から所定時間を超える待機時間が終了した後の調理開始日時を検出するものとする。図10の4行目の食事開始日時「8月2日19:00」の場合、報知部208は、「調理開始日時」の項目に記録されている「8月2日16:30」を最先の調理開始日時とし、例えば、待機時間が終了した後の調理開始日時として「8月3日17:00」を時間計画情報から検出したとする。
On the other hand, when the determination of Sc2 is "No", the
報知部208は、設定された報知日時に対応する登録レシピIDの数が、1つであるか、複数であるかを判定する(Sc5)。なお、報知部208は、Sc4の処理を経由してSc5の判定処理を行う場合、設定された複数の報知日時の各々に対してSc5の判定処理を行う。
The
報知部208は、設定された報知日時に対応する登録レシピIDの数が1つであると判定した場合(Sc5、1つ)、次に、Sc5の判定処理において、設定した報知日時が複数存在するか否かを判定する(Sc6)。例えば、図10の1行目と、3行目の食事開始日時「8月1日12:00」,「8月2日6:00」の場合には、それぞれ、1つの報知日時しか存在せず、また登録レシピとして、登録レシピID「A001」または「A009」の1つしか存在しない。
If the
そのため、報知部208は、食事開始日時「8月1日12:00」,「8月2日6:00」については、Sc5の処理において「1つ」の判定をし、Sc6の処理において「No」の判定をする。この場合、報知部208は、登録レシピIDと予め定められた所定の文字列である「の調理を開始しましょう」とを組み合わせて報知情報を生成し、生成した報知情報を、対応するレコードの「報知情報」の項目に記録する(Sc7)。例えば、1行目の食事開始日時「8月1日12:00」の場合、報知部208は、「A001の調理を開始しましょう」という報知情報を生成する。これにより、ユーザUは、調理を開始する時刻に、いずれのレシピの調理を開始するのかを示す報知を受けることができる。
Therefore, the
これに対して、図10の4行目の食事開始日時「8月3日19:00」の場合には、2つの報知日時「8月2日16:30」,「8月3日17:00」が存在し、各々の報知日時に対応する登録レシピIDは、「A011」の1つである。そのため、報知部208は、食事開始日時「8月3日19:00」については、Sc5の処理において「1つ」の判定をし、Sc6の処理において「Yes」の判定をする。この場合、報知部208は、時間計画情報から2つの報知日時の各々に対応する調理工程を検出し、検出した調理工程に対応する調理工程の種類をレシピDB251から検出する。ここでは、報知部208は、報知日時「8月2日16:30」については、調理工程の種類として「下準備」を検出し、報知日時「8月3日17:00」については、調理工程の種類として「非加熱工程」を検出したとする。
On the other hand, in the case of the meal start date and time "August 3rd 19:00" in the fourth line of FIG. 00'' exists, and the registered recipe ID corresponding to each notification date and time is one of ``A011''. Therefore, for the meal start date and time "August 3rd 19:00", the
報知部208は、報知日時ごとに、報知日時に対応する登録レシピIDと、報知日時に対応する調理工程の種類と、予め定められた所定の文字列である「の調理を開始しましょう」とを組み合わせて報知情報を生成する。報知部208は、報知日時ごとに生成した報知情報を、対応するレコードの「報知情報」の項目に記録する(Sc8)。例えば、報知部208は、報知日時「8月2日16:30」に対して、「A011(下準備)の調理を開始しましょう」という報知情報を生成し、報知日時「8月3日17:00」に対して、「A011(非加熱工程)の調理を開始しましょう」という報知情報を生成する。これにより、ユーザUは、前日に下準備を行うレシピの場合に、前日の下準備の調理を開始するタイミングと、当日の調理を開始するタイミングの2度において報知を受けることができる。なお、Sc2の処理に示した判定処理は、一例であり、短い待機時間であっても、待機時間が存在するごとに報知を受けたい場合、所定時間を短くするなど、ユーザUが必要と思われる回数の報知が行われるように任意の判定処理に置き換えるようにしてもよい。
For each notification date and time, the
一方、報知部208は、Sc5の判定処理において、報知日時に対応する登録レシピIDの数が複数であると判定した場合(Sc5、複数)、登録レシピIDを含めずに、予め定められる所定の文字列「調理を開始しましょう」を報知情報とする。報知部208は、報知情報を、対応するレコードの「報知情報」の項目に記録する(Sc9)。図10の2行目の食事開始日時「8月1日19:00」の場合、1つの報知日時「8月1日16:30」に対して、3つの登録レシピID「A012」,「A051」,「A073」が存在する。そのため、報知部208は、Sc5の処理において「複数」の判定を行い「調理を開始しましょう」という文字列を「報知情報」の項目に記録する。ここで比較例として、Sc9の処理に替えて、Sc7の処理を行うと、最先に調理が開始される登録レシピID「A012」に対応する「A012の調理を開始しましょう」という報知情報となり、「A012」に加えて「A051」,「A073」の調理の開始を知らせる報知情報として不適切な内容になる。そのため、Sc9の処理を採用することにより、ユーザUの勘違いが生じないように抑制することができる。
On the other hand, if the
報知部208は、S23の処理において取り込んだ取得応答信号に含まれる調理可能時間に応じて、新たに記録した報知日時を調整して(Sc10)、サブルーチンを終了する。ここでは、調理可能時間に、8月1日~8月3日の「5:00~23:00」が示されているとする。図10の1行目、2行目、4行目の食事開始日時「8月1日12:00」,「8月1日19:00」,「8月3日19:00」については、報知日時は、調理可能時間の範囲内であるため、報知部208は、調整を行わない。これに対して、図10の3行目の食事開始日時「8月2日6:00」については、報知日時が、調理開始日時と同一の「8月2日4:00」になるため、調理可能時間の範囲外ということになる。そのため、報知部208は、調理開始日時「8月2日4:00」以前の時刻で、直近の調理可能時間である「8月1日23:00」を「報知日時」の項目に記録する。これにより、ユーザUは、調理可能時間の範囲内で、確実に報知を受けることができる。
The
図12に戻り、報知部208は、例えば、数秒程度の一定の間隔で計時部202から現在時刻情報を取得することを繰り返し行う。報知部208は、登録レシピDB253における「報知状態」の項目が「未報知」であって、かつ「報知日時」の項目に示される時刻が取得した現在時刻情報が示す時刻以前であるレコード(以下、該当レコードという)に対して以下の処理を行う。報知部208は、該当レコードに対応するユーザIDと、該当レコードの「報知情報」の項目に記憶される報知情報とを含む報知指示信号を生成し、生成した報知指示信号をネットワークNWに送出する(S25)。端末装置300の情報取得部318は、サーバ200から報知指示信号を受信した場合、報知指示信号に含まれる報知情報を、表示制御部311を介して表示画面301aに表示する(S26)。これにより、ユーザUは、調理開始日時の到来に関する報知を受けることになる。
Returning to FIG. 12, the
例えば、ユーザUが、図3のホーム画面501に設けられた操作部52を操作し、更に、情報取得部318を、時間計画情報を取得させるために起動する所定の操作を行うことにより、情報取得部318は起動する。情報取得部318は、端末内情報350に含まれるユーザID「U100」を含む時間計画取得信号をサーバ200に送信する(S31)。
For example, the user U operates the
時間計画部206は、レシピの検索目的として、または、調理予定のレシピに関連付けるために、食事開始時間が入力された場合、食事開始時間から逆算された調理工程の時間計画を端末装置300の表示画面301aに表示させるための情報を出力する。
When a meal start time is input for the purpose of searching for a recipe or for associating it with a recipe to be cooked, the
本実施形態では、時間計画部206は、時間計画取得信号を受信すると、登録レシピDB253において、時間計画取得信号に含まれるユーザID「U100」に対応するテーブルを選択する。時間計画部206は、選択したテーブルの「時間計画情報」の項目に記録される全ての時間計画情報を読み出す。時間計画部206は、読み出した時間計画情報に含まれるレシピIDに対応するレシピレコードをレシピDB251から検出する。時間計画部206は、検出したレシピレコードの「調理手順」の「調理工程内容」の項目に記憶された調理工程ごとの種類を示す情報を検出し、検出した調理工程ごとの種類を示す情報を、時間計画情報に含まれる調理工程を示す情報に関連付ける。
In this embodiment, upon receiving the time plan acquisition signal, the
時間計画部206は、調理工程ごとの種類を示す情報が関連付けられた時間計画情報に基づいて、調理工程の各々が時間割の形式で表示される画面表示用の画像データを生成する。時間計画部206は、生成した画像データを結合し、結合した画像データと、時間計画取得信号に含まれるユーザID「U100」とを含む時間計画取得応答信号を生成する。時間計画部206は、生成した時間計画取得応答信号を端末装置300に送信する(S32)。
The
情報取得部318は、時間計画取得応答信号を受信すると、受信した時間計画取得応答信号に含まれる画像データを、表示制御部311を介して表示画面301aに表示する(S33)。これにより、例えば、図17に示す時間計画表示画面505が、表示画面301aに表示される。図17の時間計画表示画面505では、食事開始日時が「8月16日」の19:00であることが示され、その前段の18:00に登録レシピID「A081」の下準備以外の調理が行われることが示されており、17:00に登録レシピID「A081」の下準備が行われること、更に、前日の「8月15日」の16:00に登録レシピID「A081」のもう1つの下準備が行われることが示されている。
When the
これにより、例えば、ユーザUは、食事を行う前日と、食事を行う当日とにおいて下準備をする必要があること、食事を行う当日の下準備の後、18:00に開始する調理工程を行うまでの間に、30分程度の空き時間があることを把握することができる。これにより、例えば、ユーザUは、事前に、空き時間に他の事(例えば洗濯など)を行ったりする予定を立てることができる。また、ユーザUが「8月16日」の18時台の調理の画像であって、操作部71として形成された画像を操作したとする。操作受付部312は、当該操作を検出すると、操作に対応する制御信号を情報取得部318に出力する。情報取得部318は、表示制御部311を介して表示画面301aに、下準備以外の複数の調理工程を拡大表示すると共に、複数の調理工程の各々の開始時刻や終了時刻を表示する。これにより、ユーザUは、「8月16日」の18時台に行われる複数の調理工程の詳細を把握することができる。
As a result, for example, the user U knows that it is necessary to make preparations on the day before the meal and on the day of the meal, and that the cooking process starts at 18:00 after the preparation on the day of the meal. You can see that you have about 30 minutes of free time until then. Thereby, for example, the user U can make plans in advance to do other things (such as laundry) during free time. Further, it is assumed that the user U operates an image formed as the
なお、図17の時間計画表示画面505では、8月15日と、8月16日の時間計画のみが表示される。表示画面301aに時間計画表示画面505が表示される状態において、表示画面301aに対してユーザUがスクロールする操作を行うことにより、他の日付の時間計画が表示されることになる。また、S31の処理を行うタイミングは、S22の時間計画処理が終了している状態であれば、任意のタイミングで行うことが可能である。
Note that on the time
(利点)
上記の実施形態では、サーバ200は、ユーザUの行動目的に応じたレシピの検索目的として、「今から作る」、「食事開始日時指定」、「記念日/パーティ」のいずれか1つをユーザUが選択し、ユーザUが選択した検索目的に応じたレシピを検索してユーザUに提供する。そのため、本実施形態では、ユーザUは、検索のためのキーワードを組み合わせたりするような手間を抑制することができ、検索目的を選択するだけで、ユーザUの行動目的に対して適切なレシピを得ることができる。
(advantage)
In the above embodiment, the
このような検索により得られたレシピの料理を調理する際に、検索した時点と調理する時点とに時間差がある場合に、調理をする時点で、再度、検索するのは効率が悪い。そのため本実施形態では、検索して得られたレシピに対して、当該レシピが示す料理を食べ始める時刻、すなわち、食事開始日時を関連付けて登録できるようにしている。これにより、本実施形態では、食事開始日時に間に合うように調理を開始する時間を逆算により算出し、算出した時刻にユーザUに調理を開始することを報知する。そのため、例えば、下準備が間に合わずに、料理を食事開始日時に提供することができないといった状況になることを抑制することができる。これにより、利便性の向上を図ることが可能になる。 When cooking a dish using a recipe obtained through such a search, if there is a time difference between the time of the search and the time of cooking, it is inefficient to search again at the time of cooking. Therefore, in this embodiment, the time when the user starts eating the dish indicated by the recipe, that is, the meal start date and time, can be registered in association with the recipe obtained through the search. Thereby, in this embodiment, the time to start cooking is calculated by backward calculation in time for the meal start date and time, and the user U is notified that cooking will start at the calculated time. Therefore, for example, it is possible to prevent a situation in which food cannot be served on the meal start date and time due to insufficient preparation. This makes it possible to improve convenience.
(第1変形例)
上記の実施形態では、図3のホーム画面501から図4の検索目的入力画面502を経て図5の概要レシピ一覧表示画面503が表示画面301aに表示される。第1変形例では、図3のホーム画面501において、操作部51がユーザUに操作された場合、レシピ検索要求部315が起動して、図18に示す入力部53を含む概要レシピ一覧表示画面503aが表示されてもよい。この場合、レシピ検索要求部315が、検索目的設定部313を含むことになる。
(First modification)
In the above embodiment, the summary recipe
また、検索目的設定部313の起動は、以下のように行われてもよい。例えば、図5、図6などに示される設定用(設定項目の選択用)の操作部81が表示画面301aに表示された状態において、操作部81をユーザUが操作すると、設定用の画面が表示画面301aに表示される。設定用の画面において、所定の操作をユーザUが行うことにより、図4の検索目的入力画面502が表示画面301aに表示されてもよい。ここで、所定の操作とは、例えば、設定用の画面において、設定項目の選択用の複数の選択肢が示されており、複数の選択肢のなかで入力部53を表示させるための選択肢を選択する操作である。
Further, the search
検索目的設定部313は、概要レシピ一覧表示画面503よりも先に、図4の検索目的入力画面502を表示画面301aに表示してもよい。検索目的設定部313は、概要レシピ一覧表示画面503の上に、入力部53の部分をダイアログボックスのような形式で表示するようにしてもよい。検索目的設定部313は、概要レシピ一覧表示画面503がスクロール操作されても、入力部53が表示画面301a上の一定の位置に留まるように入力部53をフローティングの操作部として表示してもよい。
The search
(第2変形例)
第2変形例では、表示制御部311は、食材または料理の種類を含むレシピの検索条件を受け付けるための入力画面509(図19参照)の一部として、ユーザUの行動に応じた検索目的の入力を受け付けるための入力部53aを表示させる。なお、表示制御部311は、入力画面509の一部として入力部53aを表示させることに代えて、入力画面509と重畳して(例えばフローティング状態で)入力部53aを表示させてもよい。
(Second modification)
In the second modified example, the
例えば、表示画面301aに図5の概要レシピ一覧表示画面503が表示されている状態において、検索窓の形状の操作部61をユーザUが操作すると、レシピ検索要求部315は、レシピ検索画面を表示画面301aに表示する。ここで、レシピ検索画面とは、レシピの検索条件を受け付けるための入力画面である。この場合に、レシピ検索要求部315は、図19に示すレシピ検索画面506を表示画面301aに表示してもよい。図19のレシピ検索画面506は、例えば、図4に示す入力部53から操作部54を除いた入力部53aを含む。ユーザUは、入力部53aにおいて、ユーザUの行動予定に応じた検索目的に関する所望の選択候補を選択した上で、例えば、検索窓の領域61aに料理の種類または食材の種類などを示す任意の文字列を入力するか、または、符号65で示す範囲に示される料理の種類や食材の種類などを示す検索項目を選択して、所定の検索開始の操作を行う。これにより、レシピ検索要求部315は、任意の文字列、または、検索項目で形成される検索条件に、更に、ユーザUの行動予定に応じた検索目的を含めて検索条件を生成することができる。
For example, when the user U operates the search window-shaped
(第3変形例)
第3変形例では、調理条件設定部314は、ユーザUの調理の技量に関する情報、例えば、技量を直接的に示す「初心者」、「普通」、「熟練者」といった情報や、技量に応じた調理の速さを示す「ゆっくり」、「普通」、「速い」といった情報を受け付けてもよい。この場合、調理条件設定部314は、「技量取得部(技量情報取得部)」の一例に該当し得る。
(Third modification)
In the third modification, the cooking
調理条件設定部314は、受け付けたユーザUの調理の技量を示す情報を、ユーザ情報DB252のユーザUに対応するテーブルに設ける「技量」の項目に記録する。レシピ提案部205が図13に示すレシピ検索処理においてレシピDB251の調理時間を用いる際と、時間計画部206が図14に示す時間計画処理においてレシピDB251の調理時間を用いる際とにおいて、ユーザ情報DB252の調理の技量を示す情報に基づいて、以下のようにして、調理時間を変更してもよい。例えば、レシピ提案部205および時間計画部206は、調理時間に、調理の技量を示す情報に応じた所定の係数を乗算して得られる時間を調理時間とする。例えば、調理の技量を示す情報が「初心者」または「ゆっくり」である場合、調理時間が長くなる係数(1よりも大きな係数)を乗算し、調理の技量を示す情報が「熟練者」または「速い」である場合、調理時間が短くなる係数(1よりも小さな係数)を乗算し、調理の技量を示す情報が「普通」である場合、調理時間を変更しない係数(例えば1)を乗算してもよい。これにより、ユーザUの調理の技量に応じて調理時間を変更することができ、より正確な(柔軟な)レシピの検索や、調理に関する時間計画を行うことが可能になる。なお、検索目的設定部(技量取得部)313が、図4に示す検索目的入力画面502において、技量を示す情報の選択候補を表示するようにして、検索目的入力画面502を通じて、ユーザUの技量を示す情報を取得するようにしてもよい。
The cooking
(第4変形例)
上記の実施形態では、サーバ200の検索目的取得部204は、端末装置300の検索目的設定部313を介して、ユーザUが選択する検索目的を示す情報を取得する。第4変形例では、検索目的取得部204は、以下のようにして検索目的を示す情報を取得してもよい。例えば、ネットワークNWには、ユーザUが所有する家電機器(例えばオーブンレンジなどの調理用家電機器)が接続されている。端末装置300および家電機器は、ユーザUから受けた操作を示す操作情報をサーバ200に送信する。この操作情報には、例えば、端末装置300がサーバ200を介して調理用家電機器を操作することを示す操作情報なども含まれ得る。そのため、これらの操作情報は、ユーザUの行動履歴を示すことになる。サーバ200は、受信した操作情報を受信した時系列順に、記憶部201に蓄積する。この状態において、検索目的取得部204は、操作情報に基づいて、ユーザUの行動予定に応じた検索目的を推測し、推測した検索目的を取得してもよい。例えば、検索目的取得部204は、ユーザUが平日の夕方にレシピを検索した後、すぐに調理用家電機器を操作することを検出した頻度が閾値以上であるとする。この場合、検索目的取得部204は、ユーザUが平日の夕方にレシピを検索する場合の検索目的が、上記した「今から作る」に対応する検索目的であると推測することができる。
(Fourth modification)
In the above embodiment, the search
(第5変形例)
第5変形例では、図4の検索目的入力画面502に更に「調理開始日時指定」という選択項目を設け、更に、日時入力部53-5と同様の、日時入力部を設けるようにして、以下のような処理を行ってもよい。ユーザUによって「調理開始日時指定」の選択候補が選択され、日時入力部に調理開始日時が入力される。この場合、サーバ200のレシピ提案部205は、図13のSa2の処理において、検索目的を示す情報が「調理開始日時」であることを判定する。レシピ提案部205は、レシピDB251に記憶された各レシピデータの「調理時間」と「待機時間」の項目に示された時間を合計した合計時間を算出する。レシピ提案部205は、調理開始日時に合計時間を加算して得られる時刻が調理開始日時に含まれる「月」と「日」の部分によって示される日付以内の時刻になるレシピIDをレシピDB251から検出する。その後、Sa7の処理を行う。これにより、例えば、待機時間が長く、調理開始日時に調理を開始すると当日に調理が完了しないレシピが除外される。そのため、ユーザUは、調理開始日時に調理を開始して当日に調理が完了するレシピを得ることができる。
(Fifth modification)
In the fifth modified example, the search
(第6変形例)
第6変形例では、図4の検索目的入力画面502に更に「調理日指定」という選択項目を設け、更に、日付を入力する日付入力部を設けるようにして、以下のような処理を行ってもよい。ユーザUによって「調理日指定」の選択候補が選択され、日付入力部に調理日を示す日付が入力される。この場合、サーバ200のレシピ提案部205は、図13のSa2の処理において、検索目的を示す情報が「調理日」であることを判定する。レシピ提案部205は、計時部202から現在時刻情報を取得する。レシピ提案部205は、レシピDB251に記憶された各レシピデータの「調理時間」と「待機時間」の項目に示された時間を合計した合計時間を算出する。レシピ提案部205は、現在時刻情報が示す時刻に合計時間を加算して得られる時刻が、調理日以内となるレシピIDをレシピDB251から検出する。その後、Sa7の処理を行う。これにより、例えば、待機時間が長く、調理日の当日に調理が完了しないレシピが除外される。そのため、ユーザUは、調理日として設定した当日に調理が完了するレシピを検索結果として得ることができる。
(Sixth variation)
In the sixth modification, the search
(第7変形例)
上記の実施形態では、1つの食事開始日時に対して、複数のレシピを登録する場合、1つずつ登録させるようにしている。そのため、レシピが1つ登録されるごとに、時間計画部206および報知部208は、それぞれ時間計画処理および報知条件設定処理を行うことになる。第7変形例では、レシピ登録部317は、複数のレシピを、例えば、晩御飯というグループに登録し、晩御飯というグループに1つの食事開始日時を関連付けた上で、DB管理部203を介してサーバ200の登録レシピDB253に記録させる。これにより、登録レシピDB253において、1つの食事開始日時に対して、一度に複数のレシピが記録されるので、時間計画部206および報知部208は、1つの食事開始日時に対して一度だけ時間計画処理や報知条件設定処理を行えばよくなる。そのため、サーバ200の処理負荷を軽減することができる。
(Seventh modification)
In the above embodiment, when multiple recipes are registered for one meal start date and time, they are registered one at a time. Therefore, each time one recipe is registered,
(その他の変形例)
上記の実施形態において、時間計画部206が、図12のS22の時間計画処理を行わず、報知部208が、例えば、図15の符号101の図に示すように、3つの登録レシピID「A012」,「A051」,「A073」の調理が開始される際に、調理時間が最も長い、登録レシピID「A073」についてのみ、報知を行うようにしてもよい。これにより、報知回数が減少するため、ユーザUの煩わしさを軽減することが可能になる。
(Other variations)
In the above embodiment, the
上記の実施形態では、検索目的として「今から作る」が選択された場合、レシピ提案部205は、図13に示すレシピ検索処理において、予め定められる所定時間を用いてSa4の処理を行っている。これに対して、例えば、図4の検索目的入力画面502において、「今から作る」の選択候補の下に、上記所定時間を設定または変更するための所定時間入力部を設け、ユーザUが当該所定時間入力部に入力する時間を、所定時間としてSa4の処理で用いてもよい。
In the above embodiment, when "make it now" is selected as the search purpose, the
上記の実施形態において、図4の検索目的入力画面502の日時入力部53-5に対する入力操作、および図6の詳細レシピ表示画面504の操作部63に対する操作後の入力操作により、ユーザUに対して、食事開始日時を入力させるようにしている。これに対して、食事開始日時に替えて、調理終了日時を入力させるようにしてもよい。この場合、図4の検索目的入力画面502には、「食事開始日時指定」に替えて「調理終了日時指定」が表示され、図6の操作部63には「調理終了日時を設定」の文字列が含まれることになる。調終了始日時の場合、図13のSa5の処理、および図12のS20~S24の処理において、「食事開始日時」を「調理終了日時」と読み替えた処理が行われる。
In the above embodiment, the user U can be notified by the input operation on the date and time input section 53-5 of the search
以上説明した少なくともひとつの実施形態によれば、情報処理システムは、ユーザの行動目的に応じたレシピの検索目的を取得することにより、ユーザの行動目的に対して適切なレシピを提供することができる。これにより、利便性の向上を図ることができる。 According to at least one embodiment described above, the information processing system can provide a recipe appropriate for the user's behavioral purpose by acquiring the recipe search purpose according to the user's behavioral purpose. . Thereby, convenience can be improved.
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。 Although several embodiments of the invention have been described, these embodiments are presented by way of example and are not intended to limit the scope of the invention. These embodiments can be implemented in various other forms, and various omissions, substitutions, and changes can be made without departing from the gist of the invention. These embodiments and their modifications are included within the scope and gist of the invention as well as within the scope of the invention described in the claims and its equivalents.
1…情報処理システム、200…サーバ、201…記憶部、202…計時部、203…DB管理部、204…検索目的取得部、205…レシピ提案部、206…時間計画部、207…生活時間取得部、208…報知部、300…端末装置、310…記憶部、311…表示制御部、312…操作受付部、313…検索目的設定部、314…調理条件設定部、315…レシピ検索要求部、316…詳細レシピ要求部、317…レシピ登録部、318…情報取得部、319…カレンダ設定部 DESCRIPTION OF SYMBOLS 1... Information processing system, 200... Server, 201... Storage unit, 202... Time measurement unit, 203... DB management unit, 204... Search purpose acquisition unit, 205... Recipe proposal unit, 206... Time planning unit, 207... Life time acquisition unit Section, 208...Notification section, 300...Terminal device, 310...Storage section, 311...Display control section, 312...Operation reception section, 313...Search purpose setting section, 314...Cooking condition setting section, 315...Recipe search request section, 316... Detailed recipe request section, 317... Recipe registration section, 318... Information acquisition section, 319... Calendar setting section
Claims (17)
前記目的取得部により取得された前記検索目的に基づき、1つ以上のレシピを提案するレシピ提案部と、
を備えた情報処理システム。 a purpose acquisition unit that acquires a recipe search purpose according to the user's action schedule;
a recipe proposal unit that proposes one or more recipes based on the search purpose acquired by the purpose acquisition unit;
An information processing system equipped with
請求項1に記載の情報処理システム。 The search purpose includes temporal conditions according to the user's action schedule,
The information processing system according to claim 1.
請求項1に記載の情報処理システム。 further comprising a display control unit that displays on a display screen an input unit for accepting input of the search purpose;
The information processing system according to claim 1.
請求項3に記載の情報処理システム。 The display control unit displays the input unit as part of an input screen for accepting recipe search conditions including types of ingredients or dishes, or in a manner overlapping with the input screen.
The information processing system according to claim 3.
請求項3に記載の情報処理システム。 The input unit is capable of accepting input regarding the scheduled cooking date.
The information processing system according to claim 3.
請求項3に記載の情報処理システム。 The input unit is capable of accepting input regarding a cooking start time, a cooking end time, or a meal start time.
The information processing system according to claim 3.
請求項1に記載の情報処理システム。 The purpose acquisition unit estimates the user's schedule based on the user's action history, and acquires the search purpose based on the guessed result.
The information processing system according to claim 1.
前記報知部は、前記検索目的として、または、調理予定のレシピと関連付けるために、前記ユーザの所定の行動の開始時間または終了時間が入力された場合、前記開始時間または前記終了時間から逆算された調理開始時間の到来に関する報知を行う、
請求項1に記載の情報処理システム。 further comprising a notification unit that notifies the user,
When the start time or end time of a predetermined action of the user is input as the search purpose or to associate with the recipe to be prepared, the notification unit calculates the time from the start time or the end time. Announcement of the arrival of cooking start time,
The information processing system according to claim 1.
請求項8に記載の情報処理システム。 When a plurality of recipes are registered for one meal, the notification unit suppresses notification regarding the arrival of the cooking start time for all of the plurality of recipes.
The information processing system according to claim 8.
請求項8に記載の情報処理システム。 The notification unit changes the notification content regarding the arrival of the cooking start time when a plurality of recipes are registered for one meal, or when one recipe is registered for one meal.
The information processing system according to claim 8.
前記報知部は、前記ユーザの前記調理可能時間に応じて前記調理開始時間の到来に関する報知を行う、
請求項8に記載の情報処理システム。 further comprising a living time acquisition unit that acquires information regarding cooking available time during which the user can cook;
The notification unit provides notification regarding the arrival of the cooking start time according to the cooking available time of the user.
The information processing system according to claim 8.
請求項1に記載の情報処理システム。 When the start time or end time of a predetermined action of the user is input as the search purpose or to associate with the recipe to be cooked, the time plan of the cooking process calculated backward from the start time or end time. further comprising a time planning output unit that outputs information for displaying on the display screen;
The information processing system according to claim 1.
前記レシピ提案部は、前記検索目的と、前記技量に関する情報とに基づき、前記1つ以上のレシピを提案する、
請求項1に記載の情報処理システム。 further comprising a skill acquisition unit that acquires information regarding the cooking skill of the user,
The recipe suggestion unit proposes the one or more recipes based on the search purpose and the information regarding the skill.
The information processing system according to claim 1.
ユーザの行動予定に応じたレシピの検索目的を取得し、
取得した前記検索目的に基づき、1つ以上のレシピを提案する、
ことを含む情報処理方法。 The computer is
Obtain the recipe search purpose according to the user's action schedule,
Suggesting one or more recipes based on the obtained search purpose;
Information processing methods that include
ユーザの行動予定に応じた1つ以上のレシピを取得するレシピ取得部と、
前記レシピ取得部により取得された前記1つ以上のレシピを表示画面に表示させる表示制御部と、
を実現させるプログラム。 to the computer,
a recipe acquisition unit that acquires one or more recipes according to the user's action schedule;
a display control unit that displays the one or more recipes acquired by the recipe acquisition unit on a display screen;
A program that makes this possible.
請求項15に記載のプログラム。 The display control unit displays on the display screen an input unit for receiving an input of a recipe search purpose according to the user's action schedule.
The program according to claim 15.
請求項15に記載のプログラム。 When the start time or end time of the predetermined action of the user is input, the display control unit causes the display screen to display a notification regarding the arrival of a cooking start time calculated backward from the start time or end time.
The program according to claim 15.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022142140A JP2024037347A (en) | 2022-09-07 | 2022-09-07 | Information processing system, information processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022142140A JP2024037347A (en) | 2022-09-07 | 2022-09-07 | Information processing system, information processing method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024037347A true JP2024037347A (en) | 2024-03-19 |
Family
ID=90300438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022142140A Pending JP2024037347A (en) | 2022-09-07 | 2022-09-07 | Information processing system, information processing method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2024037347A (en) |
-
2022
- 2022-09-07 JP JP2022142140A patent/JP2024037347A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10614428B2 (en) | Recipe selection system with bidirectional calendar interface | |
CN109493254B (en) | Dish making, sorting and dish urging method and device and dish processing system | |
US20170316488A1 (en) | Systems and Methods of Food Management | |
KR20180018548A (en) | Recipe System | |
US20220148703A1 (en) | Food providing system, food providing method, and program | |
JP5514968B1 (en) | Product information provision system | |
US20200344086A1 (en) | Method for Food Management, Kitchen Appliance and Food Preparation System | |
JP2016126430A (en) | Recommended menu proposal system | |
US20230169118A1 (en) | Information presenting method, recording medium, information presenting system, and terminal device | |
US20210216603A1 (en) | Recipe suggestion apparatus, recipe suggestion method, and non-transitory computer readable medium for recipe suggestion | |
JP6641460B2 (en) | Information processing apparatus, information processing method, and program | |
JP2016031642A (en) | Information providing system, server, terminal device, information providing method, and control program | |
CN110020781A (en) | The determination method and device of priority, storage medium, electronic device | |
JP2024037347A (en) | Information processing system, information processing method, and program | |
JP6646857B2 (en) | Information distribution method, server device and network system | |
JP7253184B2 (en) | Communication device, communication method, program, and communication system | |
WO2021024884A1 (en) | Server device, cooking apparatus, system, method, and program | |
CN108008662A (en) | Information processing method and information processing system | |
JP2012238192A (en) | Order management system, order management device, order management method, and program | |
JP2018124600A (en) | Information processing apparatus and questionnaire delivery program | |
JP2017027426A (en) | Management device and meal management system | |
JP6217722B2 (en) | Table management apparatus and program | |
JP2024034786A (en) | Information processing system, information processing method, and program | |
KR102195058B1 (en) | Method for providing restaurant recommendation service and server using the same | |
JP6890747B2 (en) | Information processing equipment, information processing methods, programs |