JPWO2017175353A1 - Information processing apparatus, information processing method, and program - Google Patents

Information processing apparatus, information processing method, and program Download PDF

Info

Publication number
JPWO2017175353A1
JPWO2017175353A1 JP2017551733A JP2017551733A JPWO2017175353A1 JP WO2017175353 A1 JPWO2017175353 A1 JP WO2017175353A1 JP 2017551733 A JP2017551733 A JP 2017551733A JP 2017551733 A JP2017551733 A JP 2017551733A JP WO2017175353 A1 JPWO2017175353 A1 JP WO2017175353A1
Authority
JP
Japan
Prior art keywords
recipe
user
ingredient
information
ingredients
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.)
Granted
Application number
JP2017551733A
Other languages
Japanese (ja)
Other versions
JP6279823B1 (en
Inventor
有紀 内田
有紀 内田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Rakuten Group Inc
Original Assignee
Rakuten Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Rakuten Inc filed Critical Rakuten Inc
Application granted granted Critical
Publication of JP6279823B1 publication Critical patent/JP6279823B1/en
Publication of JPWO2017175353A1 publication Critical patent/JPWO2017175353A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

ユーザに対して充実したレシピ提示を行いたい。このために選択された食材を示す食材情報を取得し、取得した食材情報で示される食材により作成可能なレシピを第1レシピとして抽出する。また取得した食材情報で示される食材と追加食材により作成可能なレシピを第2レシピとして抽出する。そして第2レシピのうちで、少なくとも第1レシピに含まれないという条件を含む選定条件に合致するレシピを第3レシピとして選定する。第1レシピと第3レシピとについて提示制御を行う。I want to present a rich recipe to the user. For this purpose, the ingredient information indicating the ingredient selected is acquired, and a recipe that can be created by the ingredient indicated by the acquired ingredient information is extracted as the first recipe. Further, a recipe that can be created from the ingredients indicated by the acquired ingredient information and the additional ingredients is extracted as the second recipe. Then, a recipe that matches a selection condition including a condition that at least the second recipe is not included in the first recipe is selected as the third recipe. Presentation control is performed for the first recipe and the third recipe.

Description

本発明は情報処理装置、情報処理方法、プログラムに関し、特にユーザに対するレシピの提示処理についての技術分野に関する。   The present invention relates to an information processing apparatus, an information processing method, and a program.

特開2006−277410号公報JP 2006-277410 A 特開2010−211747号公報JP 2010-2111747 A

一般のユーザ(レシピ提供者)の投稿などによって蓄積された料理のレシピを提供するサービスが知られている。
特許文献1には、ユーザが入力した手元にある食材に基づいてレシピで使用する一部の食材を代替食材に置換して作成可能なレシピを提供する技術について記載されている。
特許文献2には、ユーザに対して先に提案したメイン料理のレシピにおけるメイン食材と被らない食材を利用したサブ料理のレシピを提供する技術について記載されている。
There is known a service for providing recipes of dishes accumulated by posting by a general user (recipe provider).
Patent Document 1 describes a technique for providing a recipe that can be created by replacing some ingredients used in a recipe with alternative ingredients based on the ingredients at hand input by the user.
Patent Document 2 describes a technique for providing a user with a recipe for a sub dish that uses a main ingredient and a ingredient that is not worn in the main dish recipe previously proposed to the user.

ところでレシピ提供サービスでは、レシピ閲覧を求めるユーザ(レシピ利用者)に対して提供されるレシピ、つまりユーザが作る料理を選ぼうとしている際に選択可能なレシピとして、十分な数の選択肢を提供できていない場合がある。
また、該ユーザが入力していない食材をあまり多く使うレシピはユーザにとって参考とならない蓋然性が高い。
By the way, in the recipe providing service, a sufficient number of choices can be provided as recipes provided to the user (recipe user) who wants to view the recipe, that is, a recipe that can be selected when the user is trying to select a dish to be made. There may not be.
In addition, a recipe that uses a lot of ingredients that the user has not input has a high probability of not being helpful to the user.

特許文献1に記載の技術は「ユーザが入力した食材のみで作成可能なレシピを提供する」ものであり、提示されるレシピは入力した食材の範囲に比例するため提供されるレシピの種類は限定的となる。また提供されるレシピの種類を増やすためには多数の食材を入力する必要がありユーザ(レシピ利用者)にとって煩雑である。
特許文献2に記載の技術は「レシピを再検索する際に先に入力した食材から選択されたメイン料理と同種の料理が提案されないために、メイン料理におけるメイン食材を特定して当該メイン食材とかぶらない食材を利用したサブ料理のレシピを提供する」ものであり、提示されるメイン料理のレシピとサブ料理のレシピの組み合わせが同系統の料理のレシピとなることは避けられる。しかし特許文献1と同様に提示されるレシピは入力した食材の範囲に比例するため、提供されるレシピの種類は限定的となる。
The technique described in Patent Document 1 is “providing a recipe that can be created only with ingredients input by a user”, and the recipes to be presented are proportional to the range of input ingredients, so the types of recipes provided are limited. It becomes the target. Further, in order to increase the types of recipes provided, it is necessary to input a large number of ingredients, which is complicated for the user (recipe user).
The technique described in Patent Document 2 is that “a main dish selected from the ingredients previously input when re-searching the recipe is not proposed, so that the main ingredient in the main dish is identified and the main ingredient is selected. "Providing recipes for sub dishes using non-fogging ingredients", and it is possible to avoid the combination of the main recipe recipe and the sub recipe recipe being presented as a recipe for the same type of dish. However, since the recipe presented in the same manner as in Patent Document 1 is proportional to the range of input ingredients, the types of recipes provided are limited.

そこで本発明は、レシピ閲覧を求めるユーザ(レシピ利用者)に対して追加となる食材を抑制しつつ十分な数量のレシピの選択肢を提供可能とするサービスを実現することを目的とする。   Therefore, an object of the present invention is to realize a service that can provide a sufficient number of recipe options while suppressing additional ingredients for a user (recipe user) who requests recipe browsing.

本発明に係る情報処理装置は、選択された食材を示す食材情報を取得する食材情報取得部と、前記食材情報取得部が取得した食材情報に基づいて提示レシピを選択する提示レシピ選択部と、前記提示レシピ選択部が選択した提示レシピについて提示制御を行う提示制御部と、を備える。前記提示レシピ選択部は、前記食材情報取得部が取得した食材情報で示される食材により作成可能なレシピを第1レシピとして抽出する第1レシピ抽出処理と、前記食材情報取得部が取得した食材情報で示される食材と追加食材により作成可能なレシピを第2レシピとして抽出する第2レシピ抽出処理と、前記第2レシピのうちで、少なくとも前記第1レシピに含まれないという条件を含む選定条件に合致するレシピを第3レシピとして選定する第3レシピ選定処理と、前記第1レシピと前記第3レシピを前記提示レシピとする選択処理を行う。
この場合、例えばレシピ閲覧を求めるレシピ利用者によるユーザ操作などにより選択された食材により作成可能な料理のレシピ(第1レシピ)が提示されるが、さらに追加する食材を想定した場合に作成可能なレシピのうちで選定されたレシピ(第3レシピ)も、ユーザ端末等において提示される。つまり第1レシピよりもバリエーションが豊かな状態で各種レシピを提示する。
なお「選択された食材」は、例えばユーザ操作により検索のために入力された食材、自動処理で選択された食材、ランダム選択されたものなどが想定される。
また食材情報が示す「食材」とは食材の種類や食材の量が想定される。
The information processing apparatus according to the present invention includes a food material information acquisition unit that acquires food material information indicating a selected food material, a presentation recipe selection unit that selects a presentation recipe based on the food material information acquired by the food material information acquisition unit, A presentation control unit that performs presentation control for the presentation recipe selected by the presentation recipe selection unit. The presentation recipe selection unit includes a first recipe extraction process for extracting a recipe that can be created from the ingredients indicated by the ingredient information acquired by the ingredient information acquisition unit as a first recipe, and the ingredient information acquired by the ingredient information acquisition unit. In the selection condition including the second recipe extraction process for extracting the recipe that can be created by the ingredients and additional ingredients shown in the above as the second recipe, and the condition that at least the first recipe is not included in the second recipe A third recipe selection process for selecting a matching recipe as a third recipe, and a selection process for using the first recipe and the third recipe as the presentation recipe are performed.
In this case, for example, a recipe for cooking (first recipe) that can be created by ingredients selected by a user operation by a recipe user who requests recipe browsing is presented, but can be created when additional ingredients are assumed. The recipe (third recipe) selected from the recipes is also presented on the user terminal or the like. That is, various recipes are presented in a state with more variations than the first recipe.
As the “selected food”, for example, a food input for a search by a user operation, a food selected by automatic processing, a food selected at random, or the like is assumed.
The “foodstuff” indicated by the foodstuff information is assumed to be the type of foodstuff and the amount of foodstuff.

上記した情報処理装置においては、前記提示レシピ選択部は、前記第1レシピ抽出処理で抽出された第1レシピを提示レシピとして、前記提示制御部によって端末装置で提示させた場合において、所定の条件に基づいて前記第2レシピ抽出処理及び前記第3レシピ選定処理を行って、前記第3レシピを提示レシピとし、前記提示制御部によって端末装置で提示させることが考えられる。
つまり一旦はレシピ利用者に対して第1レシピとして抽出されたレシピを提示するが、第1レシピの提示のみでそのレシピ利用者が満足しているか否か(例えば好ましいレシピがなくて作る料理を決められないでいるか否か)を所定の条件、例えば経過時間の条件や、提示したうちの個別のレシピの詳細情報のリクエスト数などの条件により推定する。そして提示に満足していない(例えば料理を決められていない)と推定したときに第3レシピを提示する。
In the information processing apparatus described above, when the presentation recipe selection unit presents the first recipe extracted in the first recipe extraction process as a presentation recipe on the terminal device by the presentation control unit, a predetermined condition is set. It is conceivable that the second recipe extraction process and the third recipe selection process are performed on the basis of the first recipe, the third recipe is set as a presentation recipe, and the presentation control unit presents it on the terminal device.
In other words, the recipe extracted once as the first recipe is presented to the recipe user, but whether or not the recipe user is satisfied only by presenting the first recipe (for example, a dish made without a preferred recipe) Whether or not it is determined) is estimated based on a predetermined condition, for example, an elapsed time condition or a condition such as the number of requests for detailed information of individual recipes presented. The third recipe is presented when it is estimated that the presentation is not satisfied (for example, cooking has not been decided).

上記した情報処理装置においては、前記提示レシピ選択部は、前記第1レシピ抽出処理で抽出された第1レシピについて、料理種別の偏り傾向の判定を行い、偏り傾向に応じて設定された条件に基づいて前記第2レシピ抽出処理及び前記第3レシピ選定処理を行うことが考えられる。
つまり第1レシピとして抽出されたレシピについて、例えば料理ジャンルや料理名の種類が少ない場合に、所定の条件に応じて、第3レシピも提示するようにする。
In the information processing apparatus described above, the presented recipe selection unit determines the tendency of the dish type bias for the first recipe extracted in the first recipe extraction process, and sets the condition set according to the bias tendency. Based on this, it is conceivable to perform the second recipe extraction process and the third recipe selection process.
That is, for the recipe extracted as the first recipe, for example, when there are few types of cooking genres and cooking names, the third recipe is also presented according to a predetermined condition.

上記した情報処理装置においては、前記提示レシピ選択部は、前記第3レシピ選定処理において、前記第1レシピに含まれず、かつ前記第1レシピと異なる属性を有するという選定条件に合致するレシピを第3レシピとして選定することが考えられる。
異なる属性であることを第3レシピの選定条件とすることで、第1レシピに対して料理のバリエーションを増やす方向で第3レシピを選定する。
ここでいう属性とは、例えば料理種別の属性、又は調理工程の属性、又は味覚属性であることが考えられる。
料理種別の属性とは、例えば日本料理、中華料理、フランス料理等のジャンルや、ハンバーグステーキ、カレー、ラーメン等の料理名種別の属性などである。
調理工程の属性とは、例えば「焼く」「煮る」「蒸す」「揚げる」など調理作業にかかる属性である。
味覚属性とは、例えば「辛い」「甘い」「すっぱい」「甘辛」「味噌味」「醤油味」「塩味」などの味に関する情報の属性である。
In the information processing apparatus described above, the presentation recipe selection unit selects a recipe that matches a selection condition that is not included in the first recipe and has an attribute different from that of the first recipe in the third recipe selection process. It is possible to select as 3 recipes.
The third recipe is selected in a direction to increase the variation of the dish with respect to the first recipe by setting the different attribute as the selection condition of the third recipe.
The attribute here may be, for example, an attribute of a cooking type, an attribute of a cooking process, or a taste attribute.
The attribute of the dish type includes, for example, a genre such as Japanese food, Chinese food, French food, and the attribute of the dish name type such as hamburger steak, curry, ramen.
The attribute of the cooking process is an attribute related to cooking work such as “baking”, “boiling”, “steaming”, and “frying”.
The taste attribute is an attribute of information related to taste such as “spicy”, “sweet”, “sour”, “sweet and spicy”, “miso taste”, “soy sauce taste”, and “salt taste”.

上記した情報処理装置においては、前記提示レシピ選択部は、前記追加食材として、前記食材情報取得部が取得した食材情報で示される食材と組み合わされやすい食材を選択して前記第2レシピ抽出処理を行うことが考えられる。
追加食材として、例えばレシピ利用者が選択した食材との組み合わせを考慮して選択し、第2レシピ抽出処理として第2レシピを抽出する。
In the information processing apparatus described above, the presentation recipe selection unit selects the second recipe extraction process by selecting an ingredient that is easily combined with the ingredient indicated by the ingredient information acquired by the ingredient information acquisition unit as the additional ingredient. It is possible to do it.
For example, a combination with the ingredients selected by the recipe user is selected as the additional ingredients, and the second recipe is extracted as the second recipe extraction process.

上記した情報処理装置においては、前記提示レシピ選択部は、前記追加食材として、前記第1レシピが該当しない料理種別において利用されやすい食材を選択して前記第2レシピ抽出処理を行うことが考えられる。
追加食材は、第2レシピ抽出のために選択するのであるが、レシピ利用者が選択できるレシピ(料理)の幅を広げるためには、多様な料理種別のレシピが抽出できるとよい。そこで、第1レシピにおいて存在しない料理種別で利用されやすい食材を用いることで、第1レシピには含まれていないジャンルのレシピが抽出できる可能性を高めるようにする。
In the information processing apparatus described above, it is conceivable that the presentation recipe selection unit performs the second recipe extraction process by selecting an easy-to-use ingredient in a dish type that does not correspond to the first recipe as the additional ingredient. .
The additional ingredients are selected for extracting the second recipe, but in order to widen the range of recipes (cooking) that can be selected by the recipe user, it is preferable that recipes of various cooking types can be extracted. Therefore, the possibility of extracting a genre recipe that is not included in the first recipe is increased by using ingredients that are not easily used in the first recipe.

上記した情報処理装置においては、前記提示レシピ選択部は、端末装置を用いて食材を選択してレシピ提示要求を行ったユーザ(レシピ利用者)の購入履歴情報から、現在が購入時期にあたる食材を推定する処理を行い、推定された食材を前記追加食材として前記第2レシピ抽出処理を行うことが考えられる。
追加食材を用いた第2レシピ(第3レシピ)は、ユーザ(レシピ利用者)が食材を用意しやすいなどの点で作りやすいものが望ましい。但し追加食材は、そのレシピ利用者がストックしているか否かは不明である。ただし該レシピ利用者がストックしていなくても、該レシピ利用者がそろそろ購入すると推定される食材であれば、そのレシピ利用者にとっても都合がよいことが想定される。そこで、ユーザの意思に基づかない追加食材として、ユーザが時期的に買いやすい食材を選択する。
In the information processing apparatus described above, the presenting recipe selection unit selects the ingredients that are currently in the purchase period from the purchase history information of the user (recipe user) who selects the ingredients using the terminal device and makes a recipe presentation request. It is conceivable to perform an estimation process and perform the second recipe extraction process using the estimated food as the additional food.
It is desirable that the second recipe (third recipe) using the additional ingredients is easy to make in that the user (recipe user) can easily prepare the ingredients. However, it is unclear whether additional ingredients are stocked by the recipe user. However, even if the recipe user does not stock, it is assumed that the recipe user is convenient for the recipe user as long as the recipe user is expected to purchase soon. Therefore, as the additional food not based on the user's intention, a food that is easy for the user to purchase is selected.

上記した情報処理装置においては、前記提示レシピ選択部は、端末装置を用いて食材を選択してレシピ提示要求を行ったユーザ(レシピ利用者)の購入履歴情報に基づいて、各食材についての当該ユーザの購入価格上限を設定し、現在の価格が当該ユーザの購入価格上限以下である食材を前記追加食材として前記第2レシピ抽出処理を行うことが考えられる。
追加食材を用いた第2レシピ(第3レシピ)は、ユーザ(レシピ利用者)がその追加食材を買いに行かなければ作れないレシピである可能性がある。一方で食材は時期によって価格が変動するが、一般にユーザは常に食材の価格を許容することはなく、各種食材について購入価格範囲(上限)を持っている。例えば「キャベツは250円以上となったら買わない」などである。そこで現在の価格が、ユーザ(レシピ利用者)の購入履歴における購入価格上限以下にある食材を追加食材として選択する。
In the information processing apparatus described above, the presentation recipe selection unit selects the ingredients using the terminal device and based on the purchase history information of the user (recipe user) who made the recipe presentation request, It is conceivable to set a user's purchase price upper limit, and to perform the second recipe extraction process using a food whose current price is equal to or lower than the user's purchase price upper limit as the additional food.
There is a possibility that the second recipe (third recipe) using the additional ingredients is a recipe that cannot be made unless the user (recipe user) goes to buy the additional ingredients. On the other hand, although the price of food varies depending on the time, in general, the user does not always allow the price of food, and has a purchase price range (upper limit) for various foods. For example, “Cabbage will not be bought if it exceeds 250 yen”. Therefore, an ingredient whose current price is below the purchase price upper limit in the purchase history of the user (recipe user) is selected as an additional ingredient.

本発明に係る情報処理方法は、選択された食材を示す食材情報を取得する食材情報取得ステップと、前記食材情報取得ステップで取得した食材情報で示される食材により作成可能なレシピを第1レシピとして抽出する第1レシピ抽出ステップと、前記食材情報取得ステップで取得した食材情報で示される食材と追加食材により作成可能なレシピを第2レシピとして抽出する第2レシピ抽出ステップと、前記第2レシピのうちで、少なくとも前記第1レシピに含まれないという条件を含む選定条件に合致するレシピを第3レシピとして選定する第3レシピ選定ステップと、前記第1レシピ抽出ステップで抽出した第1レシピと、前記第3レシピ選定ステップで選定した第3レシピとについて提示制御を行う提示制御ステップとを行う。
この情報処理方法により、情報処理装置によって充実したレシピ提供が可能となる。
本発明に係るプログラムは、上記各ステップに相当する手順を情報処理装置に実行させるプログラムである。これにより上述の情報処理装置の処理を実現する。
The information processing method according to the present invention uses, as a first recipe, a recipe that can be created from a food material information acquisition step that acquires food material information indicating a selected food material, and a food material that is indicated by the food material information acquired in the food material information acquisition step. A first recipe extracting step for extracting, a second recipe extracting step for extracting a recipe that can be created from the ingredients indicated by the ingredient information acquired in the ingredient information acquiring step and the additional ingredients as a second recipe; and Among them, a third recipe selection step for selecting a recipe that matches at least a selection condition including a condition not included in the first recipe as a third recipe, a first recipe extracted in the first recipe extraction step, A presentation control step of performing presentation control for the third recipe selected in the third recipe selection step is performed.
By this information processing method, a rich recipe can be provided by the information processing apparatus.
The program according to the present invention is a program that causes an information processing apparatus to execute a procedure corresponding to each of the above steps. Thereby, the processing of the information processing apparatus described above is realized.

本発明によれば、レシピ利用者たるユーザに対して、追加となる食材の数や種類を抑制しつつ、十分な数量のレシピの選択肢を提示でき、レシピ提供サービスの使用性を向上させることができる。   According to the present invention, it is possible to present a sufficient quantity of recipe options while suppressing the number and types of additional ingredients for a user who is a recipe user, thereby improving the usability of a recipe providing service. it can.

本発明の実施の形態のシステム構成の説明図である。It is explanatory drawing of the system configuration | structure of embodiment of this invention. 実施の形態のレシピ管理サーバの機能構成の説明図である。It is explanatory drawing of a function structure of the recipe management server of embodiment. 実施の形態の情報処理装置のブロック図である。It is a block diagram of the information processor of an embodiment. 実施の形態のレシピデータベースの説明図である。It is explanatory drawing of the recipe database of embodiment. 実施の形態の食材データベースの説明図である。It is explanatory drawing of the foodstuff database of embodiment. 実施の形態のレシピ提供に関する処理のフローチャートである。It is a flowchart of the process regarding the provision of a recipe of an embodiment. 第1,第2の実施の形態のレシピ管理サーバの処理のフローチャートである。It is a flowchart of the process of the recipe management server of 1st, 2nd embodiment. 第1の実施の形態のレシピ選択処理のフローチャートである。It is a flowchart of the recipe selection process of 1st Embodiment. 実施の形態の追加食材設定処理のフローチャートである。It is a flowchart of additional food setting processing of an embodiment. 実施の形態の追加食材設定処理のフローチャートである。It is a flowchart of additional food setting processing of an embodiment. 実施の形態の第3レシピ選定処理のフローチャートである。It is a flowchart of the 3rd recipe selection process of embodiment. 第2の実施の形態のレシピ選択処理のフローチャートである。It is a flowchart of the recipe selection process of 2nd Embodiment. 第2の実施の形態のレシピ追加判定処理のフローチャートである。It is a flowchart of the recipe addition determination process of 2nd Embodiment. 第3の実施の形態のレシピ管理サーバの処理のフローチャートである。It is a flowchart of a process of the recipe management server of 3rd Embodiment. 第3の実施の形態の閾値時間設定処理のフローチャートである。It is a flowchart of the threshold time setting process of 3rd Embodiment. 第4の実施の形態のレシピ管理サーバの処理のフローチャートである。It is a flowchart of a process of the recipe management server of 4th Embodiment.

以下、実施の形態を次の順序で説明する。
<1.全体構成>
<2.ハードウエア構成>
<3.DB>
<4.端末とサーバ間の処理の流れ>
<5.第1の実施の形態>
[5−1:レシピ管理サーバの処理]
[5−2:レシピ選択処理]
[5−3:追加食材設定処理]
[5−4:第3レシピ選定処理]
<6.第2の実施の形態>
<7.第3の実施の形態>
<8.第4の実施の形態>
<9.まとめ>
<10.プログラム及び記憶媒体>
Hereinafter, embodiments will be described in the following order.
<1. Overall configuration>
<2. Hardware configuration>
<3. DB>
<4. Flow of processing between terminal and server>
<5. First Embodiment>
[5-1: Processing of Recipe Management Server]
[5-2: Recipe selection process]
[5-3: Additional food setting process]
[5-4: Third recipe selection process]
<6. Second Embodiment>
<7. Third Embodiment>
<8. Fourth Embodiment>
<9. Summary>
<10. Program and Storage Medium>

<1.全体構成>
実施の形態におけるシステム全体構成を図1により説明する。実施の形態のシステムはレシピ利用者たるユーザに対して料理レシピ(以降では単にレシピという)を提供するサービスを実現するシステムとしている。
本例のシステムは図1に示すように、レシピ管理サーバ1、ユーザ端末3、EC(electronic commerce:電子商取引)サーバ4が、通信ネットワーク2を介して相互に通信可能な状態で接続されている。
レシピ管理サーバ1は、レシピデータベース50、ユーザデータベース51、検索データベース52、食材データベース53にアクセス可能とされている。
ECサーバ4はユーザデータベース51、商品データベース54にアクセス可能とされている。
なお、以下「データベース」については「DB」と表記する。
<1. Overall configuration>
The overall system configuration in the embodiment will be described with reference to FIG. The system of the embodiment is a system that realizes a service for providing a cooking recipe (hereinafter simply referred to as a recipe) to a user who is a recipe user.
In the system of this example, as shown in FIG. 1, a recipe management server 1, a user terminal 3, and an EC (electronic commerce) server 4 are connected via a communication network 2 in a state where they can communicate with each other. .
The recipe management server 1 can access a recipe database 50, a user database 51, a search database 52, and an ingredient database 53.
The EC server 4 can access a user database 51 and a product database 54.
Hereinafter, “database” is referred to as “DB”.

レシピ管理サーバ1は、ユーザから投稿されるレシピを管理し、またユーザからの要求に応じてレシピを提供する(ユーザ端末3において提示させる)処理を行う情報処理装置である。具体的な構成に関しては後述する。
このレシピ管理サーバ1が、本発明請求項の情報処理装置の実施の形態に相当する。
The recipe management server 1 is an information processing apparatus that manages a recipe posted by a user and performs a process of providing a recipe according to a request from the user (displayed on the user terminal 3). A specific configuration will be described later.
This recipe management server 1 corresponds to an embodiment of an information processing apparatus according to the claims of the present invention.

通信ネットワーク2の構成は特に限定されるものではなく、例えば、インターネット、イントラネット、エキストラネット、LAN(Local Area Network)、CATV(Community Antenna TeleVision)通信網、VPN(Virtual Private Network:仮想専用網)、電話回線網、移動体通信網、衛星通信網などが想定される。
また通信ネットワーク2の全部又は一部を構成する伝送媒体についても多様な例が想定される。例えばIEEE(Institute of Electrical and Electronics Engineers)1394、USB(Universal Serial Bus)、電力線搬送、電話線などの有線でも、IrDA(Infrared Data Association)のような赤外線、ブルートゥース(登録商標)、802.11無線、携帯電話網、衛星回線、地上波デジタル網などの無線でも利用可能である。
The configuration of the communication network 2 is not particularly limited. For example, the Internet, an intranet, an extranet, a LAN (Local Area Network), a CATV (Community Antenna TeleVision) communication network, a VPN (Virtual Private Network), A telephone line network, a mobile communication network, a satellite communication network, etc. are assumed.
Various examples of transmission media constituting all or part of the communication network 2 are also envisaged. For example, IEEE (Institute of Electrical and Electronics Engineers) 1394, USB (Universal Serial Bus), power line carrier, telephone line, etc., infrared, IrDA (Infrared Data Association), Bluetooth (registered trademark), 802.11 wireless It can also be used wirelessly, such as mobile phone networks, satellite lines, and digital terrestrial networks.

ユーザ端末3は、レシピをレシピ管理サーバ1に投稿するユーザ(レシピ提供者)や、レシピ管理サーバ1が管理するレシピ情報を検索し閲覧するユーザ(レシピ利用者)などが使用する端末である。
以下では、ユーザ端末3を用いてレシピ利用者としてレシピの検索や閲覧を行っているユーザを表す場合は「レシピ利用者」と表記する。またレシピを投稿するユーザを表す場合は「レシピ提供者」と表記する。「ユーザ」はこれらの両者を含む場合に用いる。なお、「レシピ利用者」と「レシピ提供者」は必ずしも異なる個々の人物を示すものではない。レシピ利用者が、あるときはレシピ投稿者となることは当然に想定される。
The user terminal 3 is a terminal used by a user (recipe provider) who submits a recipe to the recipe management server 1 or a user (recipe user) who searches and browses recipe information managed by the recipe management server 1.
Below, when representing the user who is searching and browsing a recipe as a recipe user using the user terminal 3, it is described as “recipe user”. In addition, in the case of representing a user who submits a recipe, it is described as “recipe provider”. “User” is used when both of them are included. Note that “recipe user” and “recipe provider” do not necessarily indicate different individual persons. Of course, it is assumed that a recipe user will be a recipe contributor in some cases.

ユーザ端末3では、必要に応じて各種の送受信処理や表示処理などが実行される。また、ユーザ端末3は、例えば、通信機能を備えたPC(Personal Computer)やフィーチャーフォンやPDA(Personal Digital Assistant)、或いは、スマートフォンやタブレット端末などのスマートデバイスなどである。   In the user terminal 3, various transmission / reception processes and display processes are executed as necessary. The user terminal 3 is, for example, a PC (Personal Computer), a feature phone, a PDA (Personal Digital Assistant) having a communication function, or a smart device such as a smartphone or a tablet terminal.

ECサーバ4は、商品の取引に関する各種サービスを提供する情報処理装置である。各種サービスとしては、例えば、電子商取引で扱っている商品群の中からユーザが所望する商品を検索して提示する商品検索サービスや、商品提供者が販売したい商品を管理する商品管理サービスがある。また例えば、ユーザ情報を管理し必要に応じて提示するユーザ情報管理サービスや、商品提供者の情報を管理し必要に応じて提示する商品提供者情報管理サービスや、商品の売買が成立した際の代金のやりとりを仲介する決済処理サービスなどもある。
ECサーバ4は、ユーザ端末3へ各種サービスを実現するためのウェブページデータを生成し、送信する処理を行う。
更に、ECサーバ4は、レシピ管理サーバ1からの要求に応じて各種情報をレシピ管理サーバ1へ送信する処理を行う。
The EC server 4 is an information processing apparatus that provides various services related to merchandise transactions. Examples of the various services include a product search service for searching for and displaying a product desired by a user from a product group handled in electronic commerce, and a product management service for managing a product that a product provider wants to sell. In addition, for example, a user information management service that manages user information and presents it as necessary, a product provider information management service that manages information of a product provider and presents it as necessary, There are also payment processing services that mediate the exchange of payments.
The EC server 4 performs processing for generating and transmitting web page data for realizing various services to the user terminal 3.
Further, the EC server 4 performs a process of transmitting various information to the recipe management server 1 in response to a request from the recipe management server 1.

図2は、1又は複数の情報処理装置で構成されるレシピ管理サーバ1としての機能構成、およびレシピ管理サーバ1がアクセスするDBを示している。
レシピ管理サーバ1は、食材情報取得部1a、提示レシピ選択部1b、提示制御部1c、レシピ管理部1dを備えている。
なお食材情報取得部1a、提示レシピ選択部1b、提示制御部1c、レシピ管理部1dとしての各機能は、情報処理装置においてCPU(例えば後述する図3のCPU101)でプログラムに応じて実行される処理により実現される機能である。但し以下説明する全部又は一部の各構成の処理をハードウエアにより実現してもよい。
また各機能をソフトウエアで実現する場合に、各機能がそれぞれ独立したプログラムで実現される必要はない。1つのプログラムにより複数の機能の処理が実行されてもよいし、1つの機能が複数のプログラムモジュールの連携で実現されてもよい。
FIG. 2 shows a functional configuration as a recipe management server 1 configured by one or a plurality of information processing apparatuses, and a DB accessed by the recipe management server 1.
The recipe management server 1 includes an ingredient information acquisition unit 1a, a presentation recipe selection unit 1b, a presentation control unit 1c, and a recipe management unit 1d.
In addition, each function as the foodstuff information acquisition part 1a, the presentation recipe selection part 1b, the presentation control part 1c, and the recipe management part 1d is performed according to a program in CPU (for example, CPU101 of FIG. 3 mentioned later) in information processing apparatus. This is a function realized by processing. However, all or a part of the processing described below may be realized by hardware.
Further, when each function is realized by software, each function need not be realized by an independent program. Processing of a plurality of functions may be executed by one program, or one function may be realized by cooperation of a plurality of program modules.

レシピ管理部1dは、レシピ提供サービスとして必要な情報管理を行う機能としている。
例えばレシピ管理部1dは、レシピ提供者が投稿したレシピに対して、レシピが属するカテゴリ情報とレシピに使用する食材情報とを紐付けて管理する。具体的には、あるレシピ提供者が投稿した「野菜カレー」のレシピは、料理種別「カレー」に属するレシピであり、使用食材情報として、「じゃがいも」、「人参」、「タマネギ」、「ブロッコリー」、「トマト」、「ほうれん草」が紐付けられる。
The recipe management unit 1d has a function of performing information management necessary as a recipe providing service.
For example, the recipe management unit 1d manages the recipe posted by the recipe provider in association with the category information to which the recipe belongs and the ingredient information used for the recipe. Specifically, a recipe of “vegetable curry” posted by a recipe provider is a recipe that belongs to the cooking type “curry”, and the ingredients used are “potato”, “carrot”, “onion”, “broccoli” ”,“ Tomato ”,“ Spinach ”.

なお、料理種別としてはカテゴリのレベルが複数段階に設定される。例えば「和食」「洋食」などの大分類としての種別、「日本料理」「中華料理」「イタリア料理」「フランス料理」「タイ料理」という地域レベルの種別、「カレー」「ハンバーグ」「ラーメン」などの料理名に応じたレベルの種別、さらには「ビーフカレー」「チキンカレー」「キーマカレー」などの細かいレベルの種別などがある。
以下では説明上、あくまで一例ではあるが、次のように料理種別のレベル(分類の階層)が設定されているとする。
大分類レベル:「日本料理」「中華料理」などの地域別のレベル
中分類レベル:「カレー」「ハンバーグ」等の料理名単位のレベル
細分類レベル:「ビーフカレー」「チキンカレー」等の料理名内の詳細なレベル
レシピ管理部1dは、各レシピについて、このような各レベルでの種別管理も行う。
Note that the category level is set in a plurality of stages as the dish type. For example, classifications such as “Japanese” and “Western”, “Japanese”, “Chinese”, “Italian”, “French”, “Thai”, “curry”, “hamburger”, “ramen” There are types of levels corresponding to the names of dishes such as “Beef Curry”, “Chicken Curry”, and “Kemah Curry”.
In the following description, for the sake of explanation, it is only an example, but it is assumed that the level of the dish type (classification hierarchy) is set as follows.
Major classification level: Levels by region such as “Japanese cuisine” and “Chinese cuisine” Medium classification level: Levels of dishes such as “Curry” and “Hamburg” Subclassification level: Cuisine such as “Beef curry” and “Chicken curry” Detailed Level in Name The recipe management unit 1d also performs type management at each level for each recipe.

なお、料理種別のレベルは多様であり、例えば下記(A)に示すように中分類は肉料理、魚料理、野菜料理のような主たる食材の分類としてもよいし、下記(B)のように、大分類は「主食」「おかず」「副菜」などとしてもよい。
(A)大分類:和食(その他:洋食など)
中分類:肉料理
細分類:肉じゃが/牛肉のしぐれ煮など
中分類:魚料理
細分類:鯖の味噌煮/鮭のちゃんちゃん焼きなど
中分類:野菜料理
細分類:焼き野菜のロースト/きんぴらごぼうなど
(B)大分類:主食(その他:おかず/副菜など)
中分類:肉料理
細分類:ハンバーグ/コロッケなど
中分類:魚料理
細分類:タコのフリット/タラのムニエルなど
中分類:野菜料理
細分類:ポトフ/野菜のトマト煮など
There are various types of dishes, for example, as shown in the following (A), the middle classification may be a classification of main ingredients such as meat dishes, fish dishes, and vegetable dishes, or as shown in (B) below. The major classification may be “main staple”, “side dish”, “side dish”, and the like.
(A) Major classification: Japanese food (Others: Western food, etc.)
Middle classification: Meat dishes
Subcategory: Meat potato / beef simmered
Middle classification: Fish dishes
Subcategory: Miso-boiled crab
Middle classification: Vegetable dishes
Subcategory: Roasted baked vegetables / Kinpira burdock, etc. (B) Large category: staple food (others: side dishes / side dishes, etc.)
Middle classification: Meat dishes
Subcategory: Hamburger / croquette etc.
Middle classification: Fish dishes
Subcategory: Octopus frit / Tara Meuniere, etc.
Middle classification: Vegetable dishes
Subcategory: Potov / Vegetable vegetable tomato

また、レシピ管理部1dは、カテゴリ(料理種別)ごとに使用頻度の高い通常食材を管理する。具体的には、「カレーライス」のカテゴリに対して、同カテゴリに属するレシピの使用食材に頻出する「じゃがいも」、「人参」、「タマネギ」、「牛肉」、「豚肉」、「チキン」を通常食材として設定する。尚、食材に加えて調味料(「塩」や「胡椒」など)やそれに準ずるもの(例えば「カレールー」など)を、通常食材として設定してもよい。
また、レシピ管理部1dは、食材毎に、組み合わされて使用されやすい食材を管理する。例えば各種のレシピにおいて「じゃがいも」と「にんじん」が同時に用いられている例が多い場合、「じゃがいも」と「にんじん」を組み合わせられやすい食材として管理する。
レシピ管理部1dは、これらの管理を、食材DB53を用いて行う。
In addition, the recipe management unit 1d manages normal ingredients that are frequently used for each category (dish type). Specifically, for the category of “curry and rice”, “potato”, “carrot”, “onion”, “beef”, “pork”, and “chicken” that frequently appear in the ingredients used in recipes belonging to the category. Usually set as an ingredient. In addition to foodstuffs, seasonings (such as “salt” and “pepper”) and the like (such as “carrero”) may be set as normal foodstuffs.
Moreover, the recipe management part 1d manages the foodstuffs which are easy to be combined and used for every foodstuff. For example, when there are many examples where “potato” and “carrot” are used at the same time in various recipes, “potato” and “carrot” are managed as easy-to-combine ingredients.
The recipe management unit 1d performs these managements using the food DB 53.

またレシピ管理部1dは、レシピごとに投稿された作成レポートを管理する。作成レポートは、ユーザが実際にレシピを利用して料理を行った際に感じた料理のおいしさや手軽さなどを記したレポートである。作成レポートは、レシピDB50の各レシピに紐付けられて管理される。   The recipe management unit 1d manages a creation report posted for each recipe. The created report is a report describing the deliciousness and ease of cooking that the user feels when cooking using the recipe. The creation report is associated with each recipe in the recipe DB 50 and managed.

食材情報取得部1aは、選択された食材を示す食材情報を例えばユーザ端末3から取得する処理を行う。食材情報とは、食材の種別又は量の少なくとも一方を示す情報である。この食材情報はレシピ検索のためのキーとなる情報である。
レシピ利用者は、レシピを探したいときにはユーザ端末3を用いてレシピ管理サーバ1が提供するウェブページを閲覧し、レシピ検索を行う。そのときに料理の種別(カテゴリ)や食材を入力して検索要求を行う。食材情報取得部1aは、そのようなレシピ利用者の操作により検索要求とともに送信されてきた食材情報を取得する。
なお、実施の形態の処理では、主に食材を検索キーとしてレシピを抽出し、レシピ利用者に提示する処理に特徴を有するものであるため、カテゴリを指定しての検索要求については言及しない。以下では、食材が指定された場合の検索要求に関して述べていく。
また、必ずしも食材情報はレシピ利用者の指定入力によるものとは限らない。例えばユーザ端末3におけるアプリケーションプログラム等により、ランダムに食材を選択したり、あるいは自動的に現在レシピ利用者がストックしている食材を指定したりして、レシピ検索要求を送信してくるようなことも考えられる。そのような場合も送信されてきた食材情報に基づいてレシピ管理サーバ1が後述する処理を行うことができる。
The food material information acquisition unit 1a performs processing for acquiring food material information indicating the selected food material from the user terminal 3, for example. Ingredient information is information which shows at least one of the classification or quantity of ingredients. This ingredient information is key information for recipe search.
The recipe user browses a web page provided by the recipe management server 1 using the user terminal 3 to search for a recipe and searches for a recipe. At that time, a search request is made by inputting the type (category) and ingredients of the dish. The food material information acquisition unit 1a acquires the food material information transmitted together with the search request by the operation of the recipe user.
Note that the processing of the embodiment is characterized mainly by processing for extracting a recipe using food as a search key and presenting it to a recipe user, and therefore, a search request specifying a category is not mentioned. In the following, a search request when a food is specified will be described.
In addition, the food material information is not always based on the designation input by the recipe user. For example, a recipe search request is transmitted by selecting an ingredient at random by an application program in the user terminal 3 or automatically specifying an ingredient currently stored by a recipe user. Is also possible. Also in such a case, the recipe management server 1 can perform the process described later on the basis of the transmitted ingredient information.

提示レシピ選択部1bは、食材情報取得部1aが取得した食材情報に基づいて提示レシピを選択する処理を行う。
即ち提示レシピ選択部1bは、レシピ利用者が指定した検索条件(食材情報)に応じて、レシピDB50に記憶されたレシピからレシピ利用者に提示するレシピを検索する検索処理を実行する。そしてユーザ端末3において提示するレシピを決定する。
詳しくは後述するが、この提示レシピ選択の処理において提示レシピ選択部1bは、食材情報取得部が取得した食材情報で示される食材により作成可能なレシピを第1レシピとして抽出する第1レシピ抽出処理を行う。
また提示レシピ選択部1bは食材情報取得部1aが取得した食材情報で示される食材と追加食材により作成可能なレシピを第2レシピとして抽出する第2レシピ抽出処理を行う。
また提示レシピ選択部1bは第2レシピのうちで、少なくとも第1レシピに含まれないという条件を含む選定条件に合致するレシピを第3レシピとして選定する第3レシピ選定処理を行う。そして提示レシピ選択部1bは第1レシピ抽出処理で抽出した第1レシピと、第3レシピ選定処理で選定した第3レシピを提示レシピとする選択処理を行う。
The presentation recipe selection part 1b performs the process which selects a presentation recipe based on the foodstuff information which the foodstuff information acquisition part 1a acquired.
That is, the presented recipe selection unit 1b executes a search process for searching for a recipe to be presented to the recipe user from the recipe stored in the recipe DB 50 in accordance with the search condition (food material information) specified by the recipe user. And the recipe shown in the user terminal 3 is determined.
As will be described in detail later, in this presentation recipe selection process, the presentation recipe selection unit 1b extracts a recipe that can be created from the ingredients indicated by the ingredient information acquired by the ingredient information acquisition unit as a first recipe. I do.
Moreover, the presentation recipe selection part 1b performs the 2nd recipe extraction process which extracts the recipe which can be created with the foodstuff shown with the foodstuff information which the foodstuff information acquisition part 1a acquired, and an additional foodstuff as a 2nd recipe.
Moreover, the presentation recipe selection part 1b performs the 3rd recipe selection process which selects the recipe which matches the selection conditions including the conditions that it is not contained in a 1st recipe at least among 2nd recipes as a 3rd recipe. And the presentation recipe selection part 1b performs the selection process which makes the 3rd recipe selected by the 1st recipe extracted by the 1st recipe extraction process and the 3rd recipe selection process a presentation recipe.

提示制御部1cは、提示レシピ選択部1bが選択した提示レシピについてユーザ端末3において提示されるようにする提示制御を行う。具体的には、レシピ利用者の指定した検索条件(食材情報)に応じて検索等の処理により抽出されたレシピを一覧表示するウェブページデータを生成し、ユーザ端末3に送信して、一覧提示されるようにする。
また、提示制御部1cは、レシピ利用者の操作に応じた種々のウェブページデータを送信する処理を実行する。種々のウェブページデータとしては、例えばログイン画面のウェブページデータやレシピ詳細ページのウェブページデータや作成レポート投稿ページのウェブページデータなどである。
これらのウェブページのデータは、例えば、HTML(Hyper Text Markup Language)やXHTML(Extensible Hyper Text Markup Language)などの構造化文書ファイルである。構造化文書ファイルには、レシピ名や使用食材、或いは調理手順としてのテキストデータや料理画像等の画像データと、それらの配置や表示態様(文字色やフォントや大きさや装飾など)が記述されている。
The presentation control unit 1c performs presentation control so that the presentation recipe selected by the presentation recipe selection unit 1b is presented on the user terminal 3. Specifically, web page data for displaying a list of recipes extracted by processing such as search according to a search condition (food information) designated by the recipe user is generated, transmitted to the user terminal 3, and presented as a list To be.
Moreover, the presentation control part 1c performs the process which transmits the various web page data according to a recipe user's operation. Examples of various web page data include web page data on a login screen, web page data on a recipe detail page, and web page data on a creation report posting page.
The data of these web pages is a structured document file such as HTML (Hyper Text Markup Language) or XHTML (Extensible Hyper Text Markup Language). The structured document file describes recipe names, ingredients used, image data such as text data and cooking images as cooking procedures, and their arrangement and display mode (character color, font, size, decoration, etc.). Yes.

レシピ管理サーバ1には、他にも、各種情報を送受信する機能や、レシピ利用者のログイン操作に対する認証処理などを実現するために必要な各部が設けられている。認証処理は、ユーザ端末3から送信されたログイン情報としてのユーザID(Identification)とパスワードを、ユーザDB51に記憶された認証情報と照合する処理である。
In addition, the recipe management server 1 is provided with various units necessary for realizing a function for transmitting and receiving various types of information and an authentication process for a login operation of a recipe user. The authentication process is a process for collating the user ID (Identification) and password as login information transmitted from the user terminal 3 with the authentication information stored in the user DB 51.

<2.ハードウエア構成>
図3は、図1に示したレシピ管理サーバ1、ユーザ端末3、ECサーバ4のハードウエア、及び、レシピDB50、ユーザDB51、検索DB52、食材DB53、商品DB54のハードウエアを例示する図である。それぞれのサーバや端末、DBにおけるコンピュータ装置のCPU(Central Processing Unit)101は、ROM(Read Only Memory)102に記憶されているプログラム、または記憶部108からRAM(Random Access Memory)103にロードされたプログラムに従って各種の処理を実行する。RAM103にはまた、CPU101が各種の処理を実行する上において必要なデータなども適宜記憶される。
<2. Hardware configuration>
FIG. 3 is a diagram illustrating hardware of the recipe management server 1, the user terminal 3, and the EC server 4 shown in FIG. 1, and hardware of the recipe DB 50, the user DB 51, the search DB 52, the food DB 53, and the product DB 54. . A CPU (Central Processing Unit) 101 of a computer device in each server, terminal, or DB is loaded into a RAM (Random Access Memory) 103 from a program stored in a ROM (Read Only Memory) 102 or a storage unit 108. Various processes are executed according to the program. The RAM 103 also appropriately stores data necessary for the CPU 101 to execute various processes.

CPU101、ROM102、およびRAM103は、バス104を介して相互に接続されている。このバス104には、入出力インターフェース105も接続されている。
入出力インターフェース105には、入力部106、出力部107、記憶部108、通信部109が接続されている。
入力部106はキーボード、マウス、タッチパネルなどにより構成される。
出力部107はLCD(Liquid Crystal Display)、CRT(Cathode Ray Tube)、有機EL(Electroluminescence)パネルなどよりなるディスプレイ、並びにスピーカなどにより構成される。
記憶部108はHDD(Hard Disk Drive)やフラッシュメモリ装置などにより構成される。
通信部109はネットワーク1を介しての通信処理や機器間通信を行う。
入出力インターフェース105にはまた、必要に応じてメディアドライブ110が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア111が適宜装着され、リムーバブルメディア111に対する情報の書込や読出が行われる。
The CPU 101, ROM 102, and RAM 103 are connected to each other via a bus 104. An input / output interface 105 is also connected to the bus 104.
An input unit 106, an output unit 107, a storage unit 108, and a communication unit 109 are connected to the input / output interface 105.
The input unit 106 includes a keyboard, a mouse, a touch panel, and the like.
The output unit 107 includes a display made up of an LCD (Liquid Crystal Display), a CRT (Cathode Ray Tube), an organic EL (Electroluminescence) panel, etc., and a speaker.
The storage unit 108 includes an HDD (Hard Disk Drive), a flash memory device, or the like.
A communication unit 109 performs communication processing and communication between devices via the network 1.
A media drive 110 is also connected to the input / output interface 105 as necessary, and a removable medium 111 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is appropriately mounted, and information can be written to the removable medium 111. Reading is performed.

このようなコンピュータ装置では、通信部109による通信によりデータやプログラムのアップロード、ダウンロードが行われる。またリムーバブルメディア111を介したデータやプログラムの受け渡しが可能である。
CPU101が各種のプログラムに基づいて処理動作を行うことで、レシピ管理サーバ1、ユーザ端末3、ECサーバ4等としての必要な情報処理や通信が実行される。
なお、レシピ管理サーバ1等を構成する情報処理装置は、図3のようなコンピュータ装置が単一で構成されることに限らず、複数のコンピュータ装置がシステム化されて構成されてもよい。複数のコンピュータ装置は、LAN等によりシステム化されていてもよいし、インターネット等を利用したVPN等により遠隔地に配置されたものでもよい。
In such a computer device, data and programs are uploaded and downloaded by communication by the communication unit 109. Data and programs can be exchanged via the removable medium 111.
When the CPU 101 performs processing operations based on various programs, necessary information processing and communication as the recipe management server 1, the user terminal 3, the EC server 4, and the like are executed.
In addition, the information processing apparatus which comprises the recipe management server 1 grade | etc., Is not restricted to a single computer apparatus as shown in FIG. 3, and a plurality of computer apparatuses may be systematized. The plurality of computer devices may be systemized by a LAN or the like, or may be arranged at a remote place by a VPN using the Internet or the like.

<3.DB>
各DBについて説明する。
レシピDB50は、レシピ提供者から投稿されたレシピの情報が記憶されるDBである。具体的には、図4に示すように、それぞれのレシピを識別可能なレシピIDに対して、レシピを投稿したレシピ提供者を特定するユーザIDと、投稿日時情報と、レシピが属するカテゴリ(料理種別)情報と、レシピの使用食材情報と、レシピの調理手順と、料理画像(完成した料理の画像や調理途中の料理の画像)などの画像情報と、レシピを実際に利用した(料理を作成した)他のユーザ(レシピ利用者)によって投稿された作成レポートを特定する作成レポートIDと、が紐付けられて記憶される。
また、レシピの詳細ページのURL(Uniform Resource Locator)情報がレシピIDに紐付けられて記憶されてもよい。
<3. DB>
Each DB will be described.
The recipe DB 50 is a DB that stores information on recipes posted from recipe providers. Specifically, as shown in FIG. 4, for a recipe ID that can identify each recipe, a user ID that identifies the recipe provider who posted the recipe, post date information, and a category (cooking) to which the recipe belongs. Type) information, recipe ingredients information, recipe cooking procedures, image information such as cooking images (completed cooking images and cooking images), and the actual use of the recipe (create a dish) And a creation report ID specifying a creation report posted by another user (recipe user) is stored in association with each other.
Further, URL (Uniform Resource Locator) information of the recipe details page may be stored in association with the recipe ID.

更に、レシピDB50には、各レシピに対して投稿された作成レポートの情報が記憶される。作成レポートの情報としては、レポート内容を示すテキストデータや投稿者を識別可能なユーザIDや投稿日時情報などが記憶される。   Further, the recipe DB 50 stores information on creation reports posted for each recipe. As the information of the created report, text data indicating the report content, a user ID that can identify the poster, and posting date / time information are stored.

ユーザDB51は、ユーザのログイン情報が記憶されるDBである。具体的には、それぞれのユーザを識別可能なユーザIDとログインパスワードが紐付けられて記憶される。また、ログイン履歴などの各種履歴情報が記憶されてもよい。
また、ユーザDB51には、ユーザごとの購入履歴情報が記憶される。例えば各種食材を電子商取引により購入した際の履歴情報が蓄積されている。
またユーザDB51には、ユーザ毎のレシピ閲覧履歴、レシピ投稿履歴なども記憶される。
The user DB 51 is a DB that stores user login information. Specifically, a user ID that can identify each user and a login password are stored in association with each other. Various history information such as login history may be stored.
The user DB 51 stores purchase history information for each user. For example, history information when various foods are purchased by electronic commerce is accumulated.
The user DB 51 also stores recipe browsing history, recipe posting history, and the like for each user.

検索DB52は、検索キーワードと対応した検索結果が記憶されるDBである。具体的には、「カレー」や「ハンバーグ」などの料理名や「きのこ」や「トマト」などの材料名などの検索キーワードに応じて、複数のレシピが検索結果として紐付けられて記憶される。
例えばレシピ利用者の検索要求に応じて検索処理が実行され、その結果抽出された検索結果が検索キーワードに紐付けられて検索DB52に記憶される。このように紐付けが行われることで、検索要求があった際に新たな検索処理を実行せずに済む機会が増える。
なお、予め定期的に検索キーワードを用いた検索処理を実行しておき、その結果抽出された検索結果が検索キーワードに紐付けられて検索DB52に記憶されるようにしてもよい。
The search DB 52 is a DB that stores search results corresponding to search keywords. Specifically, multiple recipes are linked and stored as search results according to search keywords such as dish names such as “curry” and “hamburg” and ingredient names such as “mushroom” and “tomato”. .
For example, a search process is executed in response to a search request from a recipe user, and the search result extracted as a result is stored in the search DB 52 in association with a search keyword. By performing the association in this way, there is an increased chance of not performing a new search process when a search request is made.
Note that a search process using a search keyword may be periodically performed in advance, and the search result extracted as a result may be associated with the search keyword and stored in the search DB 52.

食材DB53は食材に関する情報が記憶されるDBである。
図5に例を示すが、食材DB53は、組み合わせられやすい食材の情報や、各種の料理種別毎に使用されやすい食材の情報が取得できる構成とされている。
例えば図示のように、「じゃがいも」「にんじん」「キャベツ」等の対象食材毎に、組み合わせられやすい食材の情報が登録されている。例えば「じゃがいも」に対しての「タマネギ」「にんじん」等である。
「組み合わせられやすい」とは、1つの料理に使用されることが多いという意味であり、この「組み合わせられやすい」食材の情報は、レシピDB50に登録されているレシピに基づいて生成すればよい。例えば「じゃがいも」を対象とした場合に、登録されているレシピの中で、じゃがいもとともに使われている食材のうちで、該当レシピ数が上位となる食材を「組み合わせられやすい食材」と判定して登録すればよい。
もちろん登録されているレシピに限らず、一般的な認識に基づいてこのような情報を生成し、登録しておくものでも良い。
また、検索時に同時に指定される頻度が高い食材を、組み合わせられやすい食材とすることも考えられる。
The food DB 53 is a DB that stores information on food.
Although an example is shown in FIG. 5, the food DB 53 is configured to be able to acquire information on foods that can be easily combined and information on foods that are easily used for various types of dishes.
For example, as shown in the figure, information on ingredients that can be easily combined is registered for each target ingredient such as “potato”, “carrot”, and “cabbage”. For example, “onion” and “carrot” for “potato”.
“Easy to be combined” means that it is often used for one dish, and information on the ingredients that are “easy to be combined” may be generated based on recipes registered in the recipe DB 50. For example, when targeting potatoes, among the recipes registered with potatoes, the ingredients with the highest number of corresponding recipes are judged as “easy to combine” Just register.
Of course, it is not limited to registered recipes, and such information may be generated and registered based on general recognition.
It is also conceivable that foods that are frequently specified at the time of search are made easy to combine.

また食材DB53における料理種別毎の使用食材の情報としても、図示のように対象の料理種別毎に、使用されやすい食材が登録される。料理種別としては前述したように各種のレベル(例えば大分類レベル〜細分類レベル)があるため、各レベルについて登録されれば良い。例えば「日本料理」「中華料理」という大分類レベルでそれぞれ使用されやすい食材、「カレー」「ラーメン」等の中分類レベルでそれぞれ使用されやすい食材などが登録される。
使用されやすい食材の情報は、例えばレシピDB50に登録されているレシピに基づいて生成すればよい。例えば「カレー」については、料理種別(中分類レベル)が「カレー」とされているレシピを収集し、それらの中で各食材の使用頻度(使用しているレシピ数)を確認し、上位となる食材を「使用されやすい食材」と判定して登録すればよい。
もちろん登録されているレシピに限らず、一般的な認識に基づいてこのような情報を生成し、登録しておくものでも良い。
In addition, as the information on the used ingredients for each dish type in the ingredient DB 53, easy-to-use ingredients are registered for each target dish type as shown in the figure. As described above, since there are various levels (for example, a large classification level to a fine classification level) as cooking types, it is only necessary to register for each level. For example, foods that are easy to use at large classification levels such as “Japanese cuisine” and “Chinese cuisine”, and foods that are easy to use at medium classification levels such as “curry” and “ramen” are registered.
What is necessary is just to produce | generate the information of the foodstuffs which are easy to use based on the recipe registered into recipe DB50, for example. For example, for “curry”, collect recipes with “Curry” as the dish type (medium classification level), check the frequency of use of each ingredient (the number of recipes used) among them, What is necessary is just to determine and register as a "food which is easy to be used".
Of course, it is not limited to registered recipes, and such information may be generated and registered based on general recognition.

商品DB54は、ECサーバ4が電子商取引において扱う各種商品の情報が記憶されている。例えば各仮想店舗の商品についての価格、在庫、商品画像等の各種情報が登録されている。
本実施の形態に関しては、レシピ管理サーバ1はECサーバ4を介して商品DB54の情報を参照することで、例えば現在の食材の価格を把握することができる。
The product DB 54 stores information on various products handled by the EC server 4 in electronic commerce. For example, various types of information such as prices, stocks, product images, and the like for products of each virtual store are registered.
With respect to the present embodiment, the recipe management server 1 can grasp the price of the current food, for example, by referring to the information in the product DB 54 via the EC server 4.

以上の各DB(50〜54)は、レシピ管理サーバ1又はECサーバ4がアクセス可能とされていればどのような形態で実現されていてもよい。例えばレシピ管理サーバ1と同一システム内の記憶部に各DB(レシピDB50、ユーザDB51、検索DB52、食材DB53)のすべてが形成されていてもよいし、これら各DBの一部又は全部が別体、遠隔地等のコンピュータシステムに設けられていてもよい。もちろん各DBが一つの装置(例えば一つのHDD等)内に形成されている必要はない。また各DBのそれぞれが、それぞれ1つのDBとして構成される必要もない。例えばユーザDB51として記憶される情報が、複数のユーザDB(例えばログイン用のユーザDBと取引用のユーザDBなど)により記憶管理されてもよい。上記した各DBは、実施の形態の処理に関連する情報の記憶部を、それぞれ1つのDBの形態で例示したものに過ぎない。
Each of the above DBs (50 to 54) may be realized in any form as long as the recipe management server 1 or the EC server 4 is accessible. For example, all of the DBs (recipe DB 50, user DB 51, search DB 52, and food DB 53) may be formed in the storage unit in the same system as the recipe management server 1, or a part or all of these DBs are separated. It may be provided in a computer system such as a remote place. Of course, each DB does not need to be formed in one device (for example, one HDD). Each DB does not need to be configured as one DB. For example, information stored as the user DB 51 may be stored and managed by a plurality of user DBs (for example, a login user DB and a transaction user DB). Each of the above-described DBs is merely an example of a storage unit for information related to the processing of the embodiment in the form of one DB.

<4.端末とサーバ間の処理の流れ>
レシピ管理サーバ1とユーザ端末3が実行する処理の流れの一例について、図6を参照して説明する。
ここでは、レシピ管理サーバ1が提供する各種サービスを受けるために、レシピ利用者がユーザ端末3を用いてログイン操作を行い、レシピを検索する例を説明する。
<4. Flow of processing between terminal and server>
An example of the flow of processing executed by the recipe management server 1 and the user terminal 3 will be described with reference to FIG.
Here, an example will be described in which a recipe user performs a login operation using the user terminal 3 to search for a recipe in order to receive various services provided by the recipe management server 1.

ユーザ端末3はステップS101において、レシピ利用者によるログイン画面表示操作に応じたログイン画面情報要求処理を実行する。
ログイン画面情報要求処理によりユーザ端末3からレシピ管理サーバ1へログイン画面情報要求が送信されると、レシピ管理サーバ1はステップS201において、ログイン画面情報送信処理を実行する。
これにより、例えば、レシピ管理サーバ1から受信したレシピサイトのログイン画面情報(ウェブページデータ)に応じたウェブページがユーザ端末3上に表示される。
In step S101, the user terminal 3 executes a login screen information request process in accordance with a login screen display operation by the recipe user.
When a login screen information request is transmitted from the user terminal 3 to the recipe management server 1 by the login screen information request process, the recipe management server 1 executes a login screen information transmission process in step S201.
Thereby, for example, a web page corresponding to the login screen information (web page data) of the recipe site received from the recipe management server 1 is displayed on the user terminal 3.

次に、ユーザ端末3はステップS102において、レシピ利用者の入力操作に応じたログイン情報(ユーザIDとログインパスワード)をレシピ管理サーバ1へ送信するログイン情報送信処理を実行する。   Next, in step S <b> 102, the user terminal 3 executes login information transmission processing for transmitting login information (user ID and login password) corresponding to the recipe user's input operation to the recipe management server 1.

ユーザ端末3からレシピ管理サーバ1へログイン情報が送信されると、レシピ管理サーバ1はステップS202において認証処理を実行し、続くステップS203において認証結果通知処理を実行する。
具体的には、レシピ管理サーバ1は、ユーザ端末3上で入力されたユーザIDとパスワードをユーザDB51に記憶された情報と比較して当該レシピ利用者のログイン可否を判定し、当該ログイン可否情報を認証結果としてユーザ端末3へ通知する。尚、認証結果をユーザ端末3へ返すと共に、レシピサイトのトップページのウェブページデータを送信してもよい。これにより、ユーザ認証がなされると共に、ユーザ端末3上にレシピサイトのトップページが表示される。
尚、図6に示す一連の流れは、ステップS202の認証処理においてログイン可と判定された場合を示している。ステップS202においてログイン不可と判定した場合は、ユーザ端末3は再度ステップS102の処理を実行し、これに応じてレシピ管理サーバ1はステップS202の処理を実行する。
When the login information is transmitted from the user terminal 3 to the recipe management server 1, the recipe management server 1 executes an authentication process in step S202, and executes an authentication result notification process in the subsequent step S203.
Specifically, the recipe management server 1 compares the user ID and password input on the user terminal 3 with the information stored in the user DB 51 to determine whether or not the recipe user can log in, and the login permission information. To the user terminal 3 as an authentication result. In addition, while returning an authentication result to the user terminal 3, you may transmit the web page data of the top page of a recipe site. Thereby, user authentication is performed and the top page of the recipe site is displayed on the user terminal 3.
Note that a series of flows shown in FIG. 6 shows a case where it is determined that login is possible in the authentication processing in step S202. If it is determined in step S202 that login is not possible, the user terminal 3 executes the process of step S102 again, and the recipe management server 1 executes the process of step S202 accordingly.

続いて、ユーザ端末3はステップS103において、レシピを検索するためにレシピ利用者が入力したレシピ検索条件をレシピ管理サーバ1へ送信する検索条件送信処理を実行する。
この処理では、例えば、レシピ利用者によって指定された使用食材などが、検索結果を抽出するための情報(食材情報)として、レシピ管理サーバ1へ伝達される。
Subsequently, in step S103, the user terminal 3 executes a search condition transmission process for transmitting the recipe search condition input by the recipe user to the recipe management server 1 in order to search for a recipe.
In this process, for example, used ingredients designated by the recipe user are transmitted to the recipe management server 1 as information (food ingredient information) for extracting the search results.

レシピ検索条件を受信したレシピ管理サーバ1は、ステップS204で検索条件としての食材情報を取得する。
そしてレシピ管理サーバ1はステップS205で提示レシピ選択処理を行う。詳しくは後述するが、この提示レシピ選択処理では、取得した食材情報を検索キーとし、検索DB52に記憶された情報に基づいてレシピの検索を行い、結果を抽出する検索処理を含む。そして検索により抽出されたレシピの全部又は一部を提示すべきレシピとして選択する。
The recipe management server 1 that has received the recipe search condition acquires food material information as the search condition in step S204.
And the recipe management server 1 performs a presentation recipe selection process by step S205. As will be described in detail later, this presentation recipe selection process includes a search process in which the retrieved food information is used as a search key, a recipe is searched based on the information stored in the search DB 52, and the result is extracted. Then, all or a part of the recipe extracted by the search is selected as a recipe to be presented.

続いて、レシピ管理サーバ1はステップS206において、ステップS205で選択した提示レシピの一覧をユーザ端末3上に表示させるための提示制御処理を実行する。この処理では、レシピ検索結果一覧としてのウェブページデータを生成してユーザ端末3へ送信することになる。   Subsequently, in step S206, the recipe management server 1 executes a presentation control process for displaying on the user terminal 3 a list of presentation recipes selected in step S205. In this process, web page data as a recipe search result list is generated and transmitted to the user terminal 3.

ユーザ端末3では、レシピ管理サーバ1から受信したレシピ検索結果一覧のウェブページが提示される。これによりレシピ利用者は望みのレシピを探すことができる。
レシピ利用者が検索結果として表示された複数のレシピから一つのレシピを選択する操作を行うと、ユーザ端末3はステップS104において、レシピ選択処理を実行する。
レシピ選択処理は、レシピ利用者が選択したレシピが何れのレシピであるかを選択レシピ情報としてレシピ管理サーバ1に通知する。尚、この処理は、選択したレシピの詳細情報ページのウェブページデータを要求する処理である。
In the user terminal 3, the web page of the recipe search result list received from the recipe management server 1 is presented. This allows the recipe user to search for the desired recipe.
When the recipe user performs an operation of selecting one recipe from a plurality of recipes displayed as search results, the user terminal 3 executes a recipe selection process in step S104.
In the recipe selection process, the recipe management server 1 is notified of which recipe the recipe selected by the recipe user is as selected recipe information. This process is a process for requesting web page data of the detailed information page of the selected recipe.

選択レシピ情報を受信したレシピ管理サーバ1は、ステップS207において、選択されたレシピの詳細情報が記載されたウェブページのデータを送信する詳細情報送信処理を実行する。
この処理によって、ユーザ端末3上に、レシピ利用者が選択したレシピに関する詳細情報が提示される。詳細情報とは、例えば、レシピに使用する食材情報や調理手順、調理器具情報などである。

<5.第1の実施の形態>
[5−1:レシピ管理サーバの処理]
図6で説明した処理の流れを実現するためにレシピ管理サーバ1が実行する処理例について、図7を参照して説明する。特にこの図7は、第1の実施の形態として、レシピ管理サーバ1が、食材情報に基づくレシピ一覧として、より数量の充実したレシピ一覧をレシピ利用者に提示できるようにする例である。レシピ管理サーバ1は図2で説明した機能により図7の処理を実行する。
In step S207, the recipe management server 1 that has received the selected recipe information executes detailed information transmission processing for transmitting data of the web page on which the detailed information of the selected recipe is described.
By this process, detailed information regarding the recipe selected by the recipe user is presented on the user terminal 3. The detailed information is, for example, food information used for the recipe, cooking procedure, cooking utensil information, and the like.

<5. First Embodiment>
[5-1: Processing of Recipe Management Server]
An example of processing executed by the recipe management server 1 in order to realize the processing flow described with reference to FIG. In particular, FIG. 7 is an example in which the recipe management server 1 can present a recipe list with a larger quantity to the recipe user as a recipe list based on the ingredient information as the first embodiment. The recipe management server 1 executes the process of FIG. 7 by the function described in FIG.

レシピ管理サーバ1は、ステップS301,S311,S331を順に実行することにより、各種処理を継続的に行う。
具体的には、ステップS301においてログイン情報を受信したか否かを判定する処理を実行し、ステップS311において検索条件を受信したか否かを判定する処理を実行し、ステップS331においてウェブページデータの要求を受信したか否かを判定する処理を実行する。
なお、これら以外にもレシピ管理サーバ1では、作成レポートの投稿やレシピの投稿を受信した場合の処理等も行われるが、本実施の形態に直接関係しないため、それらの処理についての記載は省略している。
The recipe management server 1 performs various processes continuously by sequentially executing steps S301, S311, and S331.
Specifically, a process for determining whether or not login information has been received is performed in step S301, a process for determining whether or not a search condition has been received is performed in step S311, and the web page data is determined in step S331. A process for determining whether or not a request has been received is executed.
In addition to these, the recipe management server 1 also performs processing when a creation report posting or a recipe posting is received, but since it is not directly related to the present embodiment, description of those processing is omitted. doing.

ログイン情報は、レシピ利用者がユーザ端末3を用いてログイン操作を行った場合に、ユーザ端末3からレシピ管理サーバ1へ送信される。
ステップS301において、ログイン情報を受信したと判定した場合、レシピ管理サーバ1はステップS302において認証処理を実行し、ステップS303において認証結果をユーザ端末3に通知する処理を実行する。
認証処理においては、ユーザ端末3から送られたログイン情報とユーザDB51に記憶されたユーザ情報(例えば、ユーザIDとログインパスワード)を照合し、ログインの可否を決定する。
The login information is transmitted from the user terminal 3 to the recipe management server 1 when the recipe user performs a login operation using the user terminal 3.
If it is determined in step S301 that the login information has been received, the recipe management server 1 executes an authentication process in step S302, and executes a process of notifying the user terminal 3 of the authentication result in step S303.
In the authentication process, the login information sent from the user terminal 3 and the user information (for example, user ID and login password) stored in the user DB 51 are collated to determine whether or not login is possible.

レシピ管理サーバ1はステップS311においては、ユーザ端末3から検索条件を受信したか否かを判定する処理を実行する。
検索条件は、レシピ利用者がユーザ端末3を用いて所望のレシピを検索する場合に指定した検索キーワードや除外キーワードなどであり、ユーザ端末3からレシピ管理サーバ1へ送信される。上述のように本実施の形態では食材を検索キーとするため、検索条件に少なくとも食材情報が含まれる場合を想定して説明する。
In step S <b> 311, the recipe management server 1 executes a process for determining whether or not a search condition has been received from the user terminal 3.
The search condition is a search keyword or an exclusion keyword specified when a recipe user searches for a desired recipe using the user terminal 3, and is transmitted from the user terminal 3 to the recipe management server 1. As described above, in this embodiment, since the food is used as the search key, the case where at least the food information is included in the search condition will be described.

ステップS311において検索条件を受信したと判定した場合、レシピ管理サーバ1はステップS312において検索のための食材情報を取得し、ステップS313において提示レシピ選択処理を実行し、ステップS314において提示制御処理を実行する。即ち図6でステップS204,S205,S206として述べた処理である。   If it is determined in step S311 that the search condition has been received, the recipe management server 1 acquires the ingredient information for search in step S312, executes the presentation recipe selection process in step S313, and executes the presentation control process in step S314. To do. That is, the processing described as steps S204, S205, and S206 in FIG.

レシピ管理サーバ1は、ステップS331においては、ウェブページデータ要求を受信したか否かを判定する処理を実行する。
ウェブページデータ要求を受信したと判定した場合、レシピ管理サーバ1はステップS332において、要求のあったウェブページデータをDBから取得する処理を実行する。具体的には、ユーザページのウェブページデータや、レシピ詳細ページのウェブページデータや、特集ページのウェブページデータなどを取得する。
続いて、レシピ管理サーバ1はステップS333において、当該ウェブページデータをユーザ端末3へ送信する処理を実行する。これにより、ユーザ端末3上にレシピ利用者が所望したウェブページが表示される。
In step S331, the recipe management server 1 executes processing for determining whether or not a web page data request has been received.
If it is determined that the web page data request has been received, the recipe management server 1 executes a process of acquiring the requested web page data from the DB in step S332. Specifically, web page data of a user page, web page data of a recipe detail page, web page data of a special feature page, and the like are acquired.
Then, the recipe management server 1 performs the process which transmits the said web page data to the user terminal 3 in step S333. As a result, the web page desired by the recipe user is displayed on the user terminal 3.

ステップS333のウェブページデータ送信処理の後、或いは、ステップS331においてウェブページデータ要求を受信していないと判定した後、レシピ管理サーバ1は再びステップS301の処理を実行する。   After the web page data transmission process of step S333 or after determining that the web page data request is not received in step S331, the recipe management server 1 executes the process of step S301 again.

[5−2:レシピ選択処理]
本実施の形態では、ステップS312、S313、S314の処理によりユーザ端末3において提示される検索結果レシピの一覧が、レシピ数として充実するようにしている。このためレシピ管理サーバ1は、ステップS313のレシピ選択処理を図8のように行う。
[5-2: Recipe selection process]
In the present embodiment, the list of search result recipes presented in the user terminal 3 by the processes of steps S312, S313, and S314 is enriched as the number of recipes. For this reason, the recipe management server 1 performs the recipe selection process of step S313 as shown in FIG.

図7のステップS312で食材情報を取得したらステップS313のレシピ選択処理として、まず図8のステップS401でレシピ検索を行って第1レシピを抽出する。
この場合、取得した食材情報で示される1又は複数の食材をキーとしてレシピ検索を行う。例えばレシピ利用者が「タマネギ」「じゃがいも」を選択して検索要求した場合であれば、このステップS401では食材としてタマネギとじゃがいものみを使って料理ができるレシピの検索が行われることになる。
なお、この場合の「のみ」とは、主たる食材が「タマネギ」「じゃがいも」のみという意味で、他に調味料、ソース、水等を使用するレシピであってもよいことは当然である。また主たる食材の全てを使用するレシピに限らない。つまり例えば「タマネギ」と「じゃがいも」のストックがある場合に可能なレシピという考え方で良い。従って例えばオニオンスライスのようにタマネギのみを使用する(ジャガイモを使用しない)レシピも抽出されるようにしてもよい。
このような検索によって抽出された1又は複数のレシピを、説明上「第1レシピ」とする。
When the ingredient information is acquired in step S312 of FIG. 7, as a recipe selection process in step S313, a recipe search is first performed in step S401 of FIG. 8 to extract the first recipe.
In this case, a recipe search is performed using one or more ingredients indicated by the obtained ingredient information as keys. For example, if the recipe user selects and searches for “onion” and “potato”, in this step S401, a recipe that can be cooked using only onion and potato as ingredients is searched.
In this case, “only” means that the main ingredients are only “onion” and “potato”, and it is a matter of course that the recipe may use other seasonings, sauces, water, and the like. Moreover, it is not restricted to the recipe which uses all the main ingredients. In other words, for example, it is possible to think of a recipe that is possible when there are stocks of “onion” and “potato”. Therefore, for example, a recipe that uses only onions (not using potatoes) such as onion slices may be extracted.
One or a plurality of recipes extracted by such a search will be referred to as “first recipe” for the sake of explanation.

続いてレシピ管理サーバ1はステップS402で追加食材設定を行う。これは検索条件における食材情報で示された1又は複数の食材に、さらに追加する1又は複数の食材を決める処理である。この処理の具体例は各種考えられるため後述する。
例えば上記のように食材情報で「タマネギ」「じゃがいも」が指定されている状況で、「豚肉」など、プラスする食材を自動的に選んで、追加食材として設定する。
Subsequently, the recipe management server 1 performs additional food setting in step S402. This is a process of determining one or more ingredients to be added to one or more ingredients indicated by the ingredient information in the search condition. Various specific examples of this process are considered and will be described later.
For example, in the situation where “onion” and “potato” are specified in the food information as described above, a food to be added such as “pork” is automatically selected and set as an additional food.

そしてレシピ管理サーバ1はステップS403で、レシピ検索を行って第2レシピを抽出する。この処理は、食材情報で指定される食材に、追加食材を加え、これらの食材を用いて料理可能なレシピを検索する処理となる。例えば「タマネギ」「じゃがいも」「豚肉」を検索キーとし、これらのみで料理可能なレシピを抽出する。そしてレシピ管理サーバ1は抽出された1又は複数のレシピを第2レシピとする。この場合、第1レシピ抽出時よりも食材の種類が増えることになるため、第1レシピと同じレシピを含んで、より多数のレシピが第2レシピとして抽出されることが想定される。   In step S403, the recipe management server 1 performs a recipe search and extracts a second recipe. This process is a process of adding additional ingredients to the ingredients specified by the ingredient information and searching for recipes that can be cooked using these ingredients. For example, “onion”, “potato”, and “pork” are used as search keys, and recipes that can be cooked using only these are extracted. And the recipe management server 1 makes the extracted 1 or several recipe a 2nd recipe. In this case, since the kind of foodstuff will increase rather than the time of the 1st recipe extraction, it is assumed that more recipes including the same recipe as the 1st recipe are extracted as the 2nd recipe.

レシピ管理サーバ1はステップS404で第3レシピ選定を行う。第3レシピとは、第2レシピとして抽出された1又は複数のレシピのうちで、所定の条件に従って選択した1又は複数のレシピである。
所定の条件とは各種考えられるが、少なくとも第2レシピの内で第1レシピに含まれないという条件がある。従って第1レシピと第3レシピに重複して該当するレシピは無い。 第3レシピ選定処理例については後述する。
The recipe management server 1 selects the third recipe in step S404. The third recipe is one or a plurality of recipes selected according to a predetermined condition from one or a plurality of recipes extracted as the second recipe.
Various predetermined conditions can be considered, but there is a condition that at least the second recipe is not included in the first recipe. Accordingly, there is no recipe that overlaps with the first recipe and the third recipe. An example of the third recipe selection process will be described later.

そしてレシピ管理サーバ1はステップS405で提示レシピを選択する。ここでは第1レシピとして抽出された1又は複数のレシピと、第3レシピとされた1又は複数のレシピを、提示レシピとする。
このように選択された提示レシピが、図7のステップS314で検索結果一覧に載せられ、ユーザ端末3に送信される。つまり第1レシピと第3レシピとされたレシピが、レシピ利用者にとっては検索結果として認識するレシピとなる。
この検索結果としては、レシピ利用者が指定した食材のみで料理可能なレシピだけでなく、レシピ利用者が指定していない追加食材を加えて抽出したレシピも含まれていることになる。従って、レシピ利用者が指定した食材のみでは少数のレシピしか抽出されないような場合でも、より多数のレシピが検索結果として提示される。
Then, the recipe management server 1 selects a presentation recipe in step S405. Here, one or a plurality of recipes extracted as the first recipe and one or a plurality of recipes set as the third recipe are set as presentation recipes.
The presentation recipe selected in this way is placed on the search result list in step S314 of FIG. 7 and transmitted to the user terminal 3. That is, the recipes that are the first recipe and the third recipe are recipes that are recognized as search results for the recipe user.
The search results include not only recipes that can be cooked using only ingredients specified by the recipe user, but also recipes that are extracted by adding additional ingredients that are not specified by the recipe user. Therefore, even when only a small number of recipes are extracted using only the ingredients designated by the recipe user, a larger number of recipes are presented as search results.

[5−3:追加食材設定処理]
ステップS402の追加食材設定処理の各種の例を説明する。
図9Aはレシピ管理サーバ1が追加食材をランダムに選択する例である。
レシピ管理サーバ1はステップS500で、多数の食材の中から1つの食材をランダムに選択する。
そしてレシピ管理サーバ1はステップS501で、その選択した食材が、取得した食材情報に含まれているか否かを確認する。つまり第1レシピ抽出の際の検索キーとなった食材であるか否かである。選択した食材が、取得した食材情報に含まれていなければ、ステップS502に進んで、その選択した食材を追加食材に設定する。
一方、選択した食材が、取得した食材情報に含まれていれば、それを追加食材とはせずステップS500に戻ってランダム選択をやり直す。
[5-3: Additional food setting process]
Various examples of the additional food setting process in step S402 will be described.
FIG. 9A is an example in which the recipe management server 1 randomly selects additional ingredients.
In step S500, the recipe management server 1 randomly selects one ingredient from a number of ingredients.
In step S501, the recipe management server 1 confirms whether or not the selected food material is included in the acquired food material information. In other words, it is whether or not the ingredient has become a search key when extracting the first recipe. If the selected food is not included in the acquired food information, the process proceeds to step S502, and the selected food is set as an additional food.
On the other hand, if the selected food is included in the acquired food information, the selected food is not used as an additional food, and the process returns to step S500 to perform random selection again.

このような処理により、レシピ利用者が指定していない食材がランダムに選ばれて追加食材とされる。このためレシピ利用者が指定した食材情報で示される食材と、ランダムに選ばれた追加食材が検索キーとされて第2レシピ抽出処理が行われることになる。このため第2レシピとして多様なレシピが抽出される可能性が高まる。
なお追加食材を複数とする場合、当該処理を複数回行えば良い。
By such processing, ingredients not designated by the recipe user are selected at random and used as additional ingredients. For this reason, the second recipe extraction process is performed with the ingredients indicated by the ingredient information designated by the recipe user and the randomly selected additional ingredients as search keys. For this reason, possibility that various recipes will be extracted as a 2nd recipe increases.
When a plurality of additional foods are used, the process may be performed a plurality of times.

図9Bは、レシピ利用者が指定した食材と組み合わせられやすい食材を追加食材とする例である。
レシピ管理サーバ1はステップS510で、ユーザ端末3から受信した食材情報、つまりレシピ利用者が指定した食材情報で示される食材のうちの1つを対象食材として取得する。
そしてステップS511でレシピ管理サーバ1は、当該対象食材に対して組み合わせられやすい食材を判定する。例えば対象食材をキーとして図5で説明した食材DBを検索し、その対象食材と組み合わせられやすい食材の情報を取得する。そして取得した食材のうちで、食材情報(レシピ利用者が指定した食材)に含まれない食材を判定する。
例えばレシピ利用者が指定した食材(食材情報で示される食材)が「じゃがいも」「タマネギ」の場合において、「じゃがいも」を対象食材とした場合、図5の食材DB53から組み合わせられやすい食材として「タマネギ」「にんじん」が取得される。「タマネギ」は食材情報に含まれているため「にんじん」を組み合わせられやすい食材と判定することになる。
FIG. 9B is an example in which an additional ingredient is an ingredient that can be easily combined with an ingredient specified by the recipe user.
In step S510, the recipe management server 1 acquires, as a target ingredient, one of the ingredients indicated by the ingredient information received from the user terminal 3, that is, the ingredient information designated by the recipe user.
In step S511, the recipe management server 1 determines a food that can be easily combined with the target food. For example, the food DB described in FIG. 5 is searched using the target food as a key, and information on the food that can be easily combined with the target food is acquired. And among the acquired foodstuffs, the foodstuffs which are not contained in foodstuff information (foodstuff which the recipe user designated) are determined.
For example, when the ingredients specified by the recipe user (the ingredients indicated by the ingredient information) are “potato” and “onion”, when “potato” is the target ingredient, the “onion” is easy to combine from the ingredient DB 53 of FIG. "Carrot" is acquired. Since “onion” is included in the ingredient information, it is determined that “carrot” can be easily combined.

ステップS512でレシピ管理サーバ1は、判定した食材を追加食材に設定する。
このような処理により、レシピ利用者が指定していない食材であるが、指定した食材と組み合わせられやすい食材が選ばれて追加食材とされる。このため第2レシピとして、より多様なレシピが抽出される可能性が高まる。組み合わせられやすい食材の組で検索することで、該当するレシピ数が多くなると想定されるためである。
In step S512, the recipe management server 1 sets the determined ingredients as additional ingredients.
By such processing, the ingredients that are not designated by the recipe user are selected, and the ingredients that can be easily combined with the designated ingredients are selected as additional ingredients. For this reason, possibility that a more various recipe will be extracted as a 2nd recipe increases. This is because it is assumed that the number of corresponding recipes increases by searching with a set of ingredients that can be easily combined.

なおレシピ利用者が指定した食材情報に含まれる食材が複数の場合に、それぞれについて組み合わせられやすい食材を抽出して複数の追加食材を設定しても良いし、一部の食材のみについて組み合わせられやすい食材を追加食材としてもよい。さらに、食材情報に含まれる複数の食材に共通して組み合わせられやすい食材を選択することも考えられる。   In addition, when there are a plurality of ingredients included in the ingredient information specified by the recipe user, a plurality of additional ingredients may be set by extracting the ingredients that are easy to combine with each other, or only a part of the ingredients may be easily combined Ingredients may be added. Furthermore, it is also conceivable to select an ingredient that can be easily combined with a plurality of ingredients included in the ingredient information.

図9Cは、なるべく第1レシピとは異なる料理種別のレシピを第2レシピとして抽出できるようにする例である。
レシピ管理サーバ1はステップS520において、第1レシピの料理種別に存在しない料理種別を判定する。即ち図8のステップS401で抽出された第1レシピのそれぞれの料理種別を確認する。そしてそれらに該当しない料理種別を探す。
例えば第1レシピとなった複数のレシピが「中華料理」か「スペイン料理」のいずれかに該当するものであったときに、「日本料理」「ベトナム料理」などを、第1レシピに存在しない料理種別とする。
次にステップS521でレシピ管理サーバ1は、第1レシピに存在しない料理種別において使われやすい食材を判定する。複数の料理種別が、第1レシピに存在しない料理種別に該当した場合、その中で1つの料理種別を選択すれば良い。
そして例えば「日本料理」を第1レシピに存在しない料理種別と判別した場合、レシピ管理サーバ1は図5の食材DB53を検索して、日本料理で使われやすい食材の情報を得る。例えば「豆腐」「ネギ」等の情報を取得する。そしてこれら取得した食材のうちで食材情報(レシピ利用者が指定した食材)に含まれていない食材を選択する。
FIG. 9C is an example in which a recipe of a cooking type different from the first recipe as much as possible can be extracted as the second recipe.
In step S520, the recipe management server 1 determines a dish type that does not exist in the dish type of the first recipe. That is, each dish type of the first recipe extracted in step S401 of FIG. 8 is confirmed. Then, search for dish types that do not correspond to them.
For example, when multiple recipes that became the first recipe correspond to either “Chinese cuisine” or “Spanish cuisine”, “Japanese cuisine”, “Vietnamese cuisine”, etc. do not exist in the first recipe. The dish type.
Next, in step S521, the recipe management server 1 determines ingredients that are likely to be used in dish types that do not exist in the first recipe. If a plurality of dish types correspond to dish types that do not exist in the first recipe, one dish type may be selected.
If, for example, “Japanese cuisine” is determined as a type of dish that does not exist in the first recipe, the recipe management server 1 searches the ingredients DB 53 of FIG. 5 to obtain information on ingredients that are easily used in Japanese cuisine. For example, information such as “tofu” and “green onion” is acquired. And the foodstuff which is not contained in foodstuff information (foodstuff which the recipe user designated) is selected among these acquired foodstuffs.

ステップS522でレシピ管理サーバ1は、判定した料理種別で使われやすい食材(かつレシピ利用者が指定した食材情報に含まれていない食材)を追加食材に設定する。
このような処理により、レシピ利用者が指定していない食材であり、かつ第1レシピとは傾向の違った料理でよく使用される食材が追加食材とされ、第2レシピの抽出が行われる。このため第2レシピとして、第1レシピとは異なる料理種別のレシピが抽出される可能性が高まる。
In step S522, the recipe management server 1 sets, as additional ingredients, ingredients that are likely to be used in the determined dish type (and ingredients that are not included in the ingredient information specified by the recipe user).
By such processing, ingredients that are not specified by the recipe user and are often used in dishes having a different tendency from the first recipe are added as additional ingredients, and the second recipe is extracted. For this reason, the possibility that a recipe of a cooking type different from the first recipe is extracted as the second recipe is increased.

なお第1レシピに存在しない料理種別が複数の場合、それぞれの料理種別で使用されやすい食材を、それぞれ追加食材としてもよい。
またこの場合の料理種別のレベルは、固定的でもよいし、レシピ利用者に応じたレベル設定、或いは第1レシピに応じたレベル設定などが考えられる。
固定的なレベル設定とは、料理種別とは「日本料理」「中華料理」というような大分類レベルに固定して、ステップS520の処理を行うとか、「カレー」「ハンバーグ」という中分類レベルに固定してステップS520の処理を行うとする例である。
レシピ利用者に応じたレベル設定とは、レシピ利用者のレシピ閲覧履歴、レシピ投稿履歴などに基づいて、そのレシピ利用者に合わせたレベルを用いるとする例である。例えば多様な料理のレシピを使用したり、検索したり、投稿しているレシピ利用者には、大分類レベル或いは中分類レベルの料理種別でステップS520の処理を行う。一方、常にカレーレシピの閲覧や投稿を行っているようなレシピ利用者に対しては「ビーフカレー」「チキンカレー」といったような、「カレー」の下の階層の細分類レベルの料理種別でステップS520の処理を行う。これによりレシピ利用者のレシピ検索の傾向に応じて、適応的に第2レシピ抽出を行うことができ、そのレシピ利用者にとって満足度の高い第3レシピ選定が可能となる。
第1レシピに応じたレベル設定とは、第1レシピに含まれる各レシピの料理種別の存在傾向に応じて種別レベルを設定する例である。例えば第1レシピにおいて大分類レベルで複数の料理種別が含まれていたら大分類レベルとしたり、第1レシピにおいて中分類レベルが1種類しかなければ細分類レベルに設定するなどの例である。
In addition, when there are a plurality of dish types that do not exist in the first recipe, the ingredients that are easily used in each dish type may be used as additional ingredients.
In this case, the level of the dish type may be fixed, or a level setting according to the recipe user or a level setting according to the first recipe may be considered.
The fixed level setting means that the cooking type is fixed to a large classification level such as “Japanese cuisine” or “Chinese cuisine” and the processing in step S520 is performed, or the middle classification level such as “curry” or “hamburg” is set. In this example, the process of step S520 is performed in a fixed manner.
The level setting according to the recipe user is an example in which a level according to the recipe user is used based on the recipe browsing history, recipe posting history, and the like of the recipe user. For example, a recipe user who uses, searches, or posts a variety of cooking recipes performs the process of step S520 with the cooking type at the large classification level or the middle classification level. On the other hand, for recipe users who always view and post curry recipes, step by type of food at the subcategory level below “curry” such as “beef curry” or “chicken curry” The process of S520 is performed. Thus, the second recipe can be adaptively extracted according to the recipe search tendency of the recipe user, and the third recipe can be selected with high satisfaction for the recipe user.
The level setting according to the first recipe is an example in which the type level is set according to the presence tendency of the cooking type of each recipe included in the first recipe. For example, when the first recipe includes a plurality of types of dishes at the large classification level, the classification is set to the large classification level, or when there is only one middle classification level in the first recipe, the fine classification level is set.

図10Aは、レシピ利用者がストックしていそうな、或いは購入するとしても支障がなさそうな食材を追加食材とする例である。
なお、この例はレシピ管理サーバ1が、レシピ利用者についての食材の在庫を精緻に管理できていない場合に適用することが考えられる処理である。
FIG. 10A is an example in which an ingredient that is likely to be stocked by a recipe user or that is likely to be troublesome even if purchased is used as an additional ingredient.
This example is a process that can be applied when the recipe management server 1 is not able to precisely manage the stock of ingredients for the recipe user.

レシピ管理サーバ1はステップS530において、レシピ利用者の購入履歴情報を例えばユーザDB51から取得する。
そしてステップS531でレシピ管理サーバ1は、そのレシピ利用者が購入したことのある食材毎の平均的な購入スパンを算出する。例えば「じゃがいも」「タマネギ」・・・などの各食材について、どの程度の時間間隔で購入しているかを算出する。そして例えば「じゃがいも」については1ヶ月間隔、「タマネギ」については2週間間隔などとして購入スパンを求める。
なおこのような算出は、予めバッチ処理で各ユーザに対して行って、ユーザDB51に登録しておくとよい。
In step S530, the recipe management server 1 acquires the purchase history information of the recipe user from the user DB 51, for example.
In step S531, the recipe management server 1 calculates an average purchase span for each ingredient that the recipe user has purchased. For example, it is calculated at what time intervals each ingredient such as “potato”, “onion”,... Is purchased. For example, the purchase span is calculated at intervals of one month for “potato” and at intervals of two weeks for “onion”.
Such calculation may be performed for each user in advance by batch processing and registered in the user DB 51.

ステップS532でレシピ管理サーバ1は、現在、そのレシピ利用者がストックしている可能性が高いと推定される食材や、現在がそのレシピ利用者(検索要求を行っているユーザ)の購入タイミングに近い食材を判定する。
例えば検索時点から過去の所定期間に購入された食材は、現在ストックしている可能性が高いと推定できる。
また、現在が購入タイミングに近い食材を判定するためには、各食材について、現在より上記の購入スパンだけ過去の時点付近で、その食材を購入しているか否かを判別する。求めた購入スパンだけ溯った過去の時点付近でその食材を購入していれば、その食材が当該レシピ利用者にとってそろそろ購入時期であり、検索時点から所定期間内に購入されると食材であると推定できる。
なお、このような「そろそろ購入タイミング」であるか否かの判定を行う食材としては、レシピ利用者が検索条件で指定した食材情報に含まれていない食材を対象とすれば良い。
In step S532, the recipe management server 1 currently purchases the ingredients that are likely to be stocked by the recipe user or the purchase timing of the recipe user (the user who is making the search request). Determine the closest ingredients.
For example, it can be estimated that foods purchased in a predetermined period in the past from the time of search are highly likely to be stocked.
In addition, in order to determine a food material that is close to the purchase timing, it is determined whether or not the food material has been purchased in the vicinity of the past time point for the above-mentioned purchase span from the current time. If the ingredient has been purchased in the vicinity of the past time point where the requested purchase span has been obtained, it is time for the recipe user to purchase the ingredient. Can be estimated.
In addition, what is necessary is just to target the foodstuff which is not contained in the foodstuff information which the recipe user designated by the search condition as a foodstuff which determines whether it is such "the purchase timing soon".

このような処理により、当該レシピ利用者がストックしていると推定されるか、もしくはそろそろ購入する時期であると推定される食材を判定したら、ステップS533で、その判定した食材の全部又は一部を追加食材とする。   After such processing, if it is estimated that the recipe user is estimated to have stocked or it is time to purchase, in step S533, all or part of the determined ingredients Is an additional ingredient.

例えばこの処理により、レシピ利用者が指定していない食材であるが、レシピ利用者がストックしていそうな、或いはそろそろ購入すると推定される食材が追加食材とされ、第2レシピの抽出が行われる。このため第2レシピとしては、追加食材を必要とするが、レシピ利用者にとって料理を行うことに支障が無いレシピが抽出される可能性が高まる。追加食材はレシピ利用者にとっては購入しやすく、もしくは既に購入しているかもしれない食材である可能性も高いためである。   For example, by this process, the ingredients that are not specified by the recipe user, but the ingredients that the recipe user is likely to stock, or that are estimated to be purchased soon, are added to the ingredients, and the second recipe is extracted. . For this reason, although an additional foodstuff is required as a 2nd recipe, possibility that the recipe which does not have trouble in cooking for a recipe user will increase. This is because the additional ingredients are easy to purchase for recipe users, or are likely to be ingredients that may have already been purchased.

なお追加食材を1つとする場合において、購入タイミングに近い食材が複数存在する場合、例えば最も現在に近い購入タイミングが推定される食材を選ぶことなどが考えられる。或いは既に直近で購入実績がある食材を選択するようにしてもよい。
またECサーバ4からより詳細な購入情報を取得し、例えば現在そのレシピ利用者に対して配送中の食材を選択するようにしてもよい。
When there are a plurality of ingredients close to the purchase timing when there is one additional ingredient, for example, it may be possible to select an ingredient whose purchase timing closest to the current time is estimated. Or you may make it select the foodstuff which has already purchased in the latest.
Further, more detailed purchase information may be acquired from the EC server 4 and, for example, the ingredients currently being delivered to the recipe user may be selected.

図10Bは、レシピ利用者が購入するとしても価格的に支障がなさそうな食材を追加食材とする例である。
レシピ管理サーバ1はステップS540において、各食材の現在の価格情報を取得する。例えばECサーバ4を介して商品DB54における現在の電子商取引市場での価格情報を取得する。
またステップS541でレシピ管理サーバ1は、レシピ利用者の購入履歴情報を例えばユーザDB51から取得する。
FIG. 10B is an example in which an additional ingredient is an ingredient that is not likely to cause problems in price even if a recipe user purchases it.
In step S540, the recipe management server 1 acquires current price information for each ingredient. For example, price information in the current electronic commerce market in the product DB 54 is acquired via the EC server 4.
In step S541, the recipe management server 1 acquires the purchase history information of the recipe user from the user DB 51, for example.

ステップS542でレシピ管理サーバ1は、レシピ利用者の購入履歴情報から、そのレシピ利用者が購入したことのある食材毎の購入価格の情報を取得し、最も高い価格を判定する。そしてその価格を、当該レシピ利用者にとっての、その食材の上限金額と設定する。例えば「じゃがいも」の購入履歴として過去に「120円」「180円」「135円」・・・などがあった場合、「180円」を、そのレシピ利用者にとってのジャガイモの上限金額とする。
なおこのような算出は、予めバッチ処理で各ユーザに対して行って、ユーザDB51に登録しておいてもよい。
In step S542, the recipe management server 1 acquires purchase price information for each ingredient that the recipe user has purchased from the purchase history information of the recipe user, and determines the highest price. Then, the price is set as the upper limit amount of the ingredient for the recipe user. For example, if “120 yen”, “180 yen”, “135 yen”, etc. have been recorded in the past as the purchase history of “potato”, “180 yen” is set as the upper limit amount of potatoes for the recipe user.
Such calculation may be performed for each user in advance by batch processing and registered in the user DB 51.

ステップS543でレシピ管理サーバ1は、現在価格がそのレシピ利用者の上限金額以下の食材を選択する。そしてステップS544で、その食材を追加食材とする。
なお、現在価格でレシピ利用者の上限金額以下となっている食材が複数ある場合、それらの全部又は一部を選択して追加食材としてもよいし、例えば上限金額からの現在価格の低下率が高い順など、所定の条件で優先順位をつけて、1又は所定数の食材を選択してもよい。もちろん追加食材とするものとしては、レシピ利用者が指定した食材情報に含まれている食材を除く。
In step S543, the recipe management server 1 selects ingredients whose current price is equal to or less than the upper limit amount of the recipe user. In step S544, the food material is set as an additional food material.
In addition, when there are a plurality of ingredients whose recipe price is less than or equal to the recipe user's upper limit, all or a part of them may be selected as additional ingredients. For example, the rate of decrease in the current price from the upper limit is One or a predetermined number of foods may be selected with priorities given in a predetermined condition such as in descending order. Of course, as the additional ingredients, the ingredients included in the ingredient information designated by the recipe user are excluded.

このような処理により、レシピ利用者が指定していない食材であるが、レシピ利用者が購入することに支障がない食材が追加食材とされ、第2レシピの抽出が行われる。このため第2レシピとしては、追加食材を必要とするが、その食材はレシピ利用者にとって料理を行うために購入しても良いと考える価格内のものであるため、レシピ利用者が選択する可能性があるレシピとなる。つまりレシピ利用者に「食材が高いからやめておこう」という思いをおこさせるレシピは第2レシピに含まれないことになる。   By such processing, the ingredients that are not specified by the recipe user are added to the ingredients that do not interfere with the purchase by the recipe user, and the second recipe is extracted. For this reason, the second recipe requires additional ingredients, but the ingredients are within the price that the recipe user may purchase to cook, so the recipe user can select It becomes a recipe with sex. That is, a recipe that causes the recipe user to think “Let's stop because the ingredients are high” is not included in the second recipe.

なお、上限金額は過去に購入した価格のうちの最高額としたが、例えば最高購入額の1割増しの値段にするなど、購入履歴に基づいて所定の計算式で求められる他の価格に設定してもよい。
また上限金額は、例えば食材の過去の購入金額の平均価格として求めてもよい。
また上限金額として、検索時と同時期(時期とは、季節単位や月単位が想定される)の購入履歴に基づく最も高い価格や、或いは平均価格を用いてもよい。
また上限金額として、食材の流通量が略同一の期間の購入履歴に基づく最も高い価格や平均価格を用いてもよい。
The upper limit is the highest price purchased in the past, but it is set to another price calculated by a predetermined calculation formula based on the purchase history, such as a price that is 10% higher than the highest purchase price. May be.
Further, the upper limit amount may be obtained as an average price of past purchase amounts of ingredients, for example.
As the upper limit amount, the highest price or the average price based on the purchase history at the same time as the search (period is assumed to be seasonal or monthly) may be used.
Further, as the upper limit amount, the highest price or the average price based on the purchase history during the period in which the distribution amount of the food is substantially the same may be used.

以上、追加食材設定処理例を説明したが、追加食材設定処理例は、これ以外にも各種考えられる。
例えば当該レシピ利用者がよく購入する食材(購入頻度が高い食材)を購入履歴情報から判別し、それを追加食材としてもよい。そのような食材は、レシピ利用者が指定しなかったとしてもストックしている可能性が高く、或いは購入に支障がない食材のため、レシピ利用者にとって有効な選択肢として考えやすいレシピが抽出できることになる。
また投稿されているレシピ全体の中で、使用食材のランキング等を行っておき、ランキング上位の食材を追加食材とすることも考えられる。この場合、第2レシピとして抽出されるレシピ数を多くできることになり、レシピ利用者に多様なレシピ提示の可能性を高めることができる。
The example of the additional food setting process has been described above, but various other examples of the additional food setting process are conceivable.
For example, an ingredient often purchased by the recipe user (an ingredient with a high purchase frequency) may be determined from the purchase history information and used as an additional ingredient. Such a food is likely to be stocked even if the recipe user does not specify it, or because it is a food that does not interfere with the purchase, a recipe that can be considered as an effective option for the recipe user can be extracted. Become.
In addition, it is possible to rank used ingredients among the posted recipes, and use additional ingredients as the highest ranking ingredients. In this case, the number of recipes extracted as the second recipe can be increased, and the possibility of presenting various recipes to the recipe user can be increased.

また図9A、図9B、図9C、図10A、図10Bの各例は単独では無く、複合的に用いて追加食材設定処理を行うことも考えられる。
例えば図9B、図9C、図10A、図10Bの各処理では、追加すべき食材が該当無しということになる可能性もある。そこで、該当無しの場合には図9Aの処理を行って追加食材を設定するなどである。
Moreover, it is also conceivable that the examples of FIGS. 9A, 9B, 9C, 10A, and 10B are not used alone but are used in combination to perform the additional food setting process.
For example, in each process of FIG. 9B, FIG. 9C, FIG. 10A, and FIG. 10B, there is a possibility that the food to be added is not applicable. Therefore, when there is no corresponding, the process of FIG. 9A is performed to set additional ingredients.

[5−4:第3レシピ選定処理]
続いて図8のステップS404の第3レシピ選定処理の例を説明する。
上述したように抽出された第2レシピのうちから、レシピ利用者に提示するレシピとなる第3レシピを選定するわけであるが、第3レシピは少なくとも第1レシピに含まれないレシピとする。これは、第1レシピもレシピ利用者に提示するレシピとなるため、同じレシピを重複して提示してしまうことを避けるためである。
単に、このように第2レシピのうちで第1レシピに含まれないレシピを第3レシピとする例も考えられるが、以下ではレシピ利用者に対してより多様なレシピ提示を実現する第3レシピ選定手法を説明する。
[5-4: Third recipe selection process]
Then, the example of the 3rd recipe selection process of FIG.8 S404 is demonstrated.
Although the 3rd recipe used as the recipe shown to a recipe user is selected from the 2nd recipe extracted as mentioned above, let the 3rd recipe be a recipe which is not contained in the 1st recipe at least. This is because the first recipe is also a recipe to be presented to the recipe user, so that the same recipe is not repeatedly presented.
An example in which the recipe that is not included in the first recipe among the second recipes is simply considered as the third recipe in this way, but in the following, the third recipe that realizes more diverse recipe presentation to the recipe user Explain the selection method.

図11Aは料理種別を考慮した選定処理である。
レシピ管理サーバ1はステップS600で、第1レシピとされた各レシピの属性を取得する。ここでは各レシピの料理種別の情報を例えばレシピDB50から取得する。
ステップS601でレシピ管理サーバ1は、第2レシピとされた各レシピの属性として料理種別の情報を例えばレシピDB50から取得する。
ステップS602でレシピ管理サーバ1は、第2レシピの中で、第1レシピに存在しない料理種別のレシピを第3レシピに選定する。
FIG. 11A shows a selection process that takes into account the type of dish.
In step S600, the recipe management server 1 acquires the attribute of each recipe that is the first recipe. Here, information on the type of each recipe is acquired from the recipe DB 50, for example.
In step S <b> 601, the recipe management server 1 acquires information on the type of dish from the recipe DB 50, for example, as an attribute of each recipe that is the second recipe.
In step S602, the recipe management server 1 selects a recipe of a dish type that does not exist in the first recipe among the second recipes as the third recipe.

例えば第1レシピには、スペイン料理、イタリア料理が存在したとする。また第2レシピには、スペイン料理、イタリア料理、ベトナム料理、日本料理が存在したとする。この場合、第2レシピにおけるベトナム料理のレシピと日本料理のレシピを、第3レシピとすることになる。   For example, it is assumed that the first recipe includes Spanish cuisine and Italian cuisine. The second recipe includes Spanish, Italian, Vietnamese, and Japanese dishes. In this case, the recipe for Vietnamese cuisine and the recipe for Japanese cuisine in the second recipe are the third recipe.

なおステップS600、S601で判別する属性としての料理種別のレベルは、固定的なレベル設定でもよいし、レシピ利用者に応じたレベル設定、或いは第1レシピに応じたレベル設定などが考えられる。例えばステップS600、S601の処理を「日本料理」「中華料理」というような大分類レベルに固定して行うとか、「カレー」「ハンバーグ」という中分類レベルに固定して行うとする例である。
レシピ利用者に応じた設定とは、上述したように、レシピ利用者のレシピ閲覧履歴、レシピ投稿履歴などに基づいて、そのレシピ利用者に合わせた料理種別のレベルを用いるとする例である
第1レシピに応じたレベル設定とは、上述したように、第1レシピにおける料理種別の存在傾向に応じた料理種別のレベルを用いる例である。
Note that the level of the dish type as an attribute determined in steps S600 and S601 may be a fixed level setting, a level setting according to the recipe user, or a level setting according to the first recipe. For example, the processing of steps S600 and S601 is performed by fixing to a large classification level such as “Japanese cuisine” and “Chinese cuisine”, or by fixing to a middle classification level of “curry” and “hamburg”.
The setting according to the recipe user is an example in which, as described above, based on the recipe user's recipe browsing history, recipe posting history, and the like, the level of the dish type according to the recipe user is used. The level setting according to one recipe is an example using the level of the dish type according to the tendency of the dish type in the first recipe as described above.

図11Bは調理工程を考慮した選定処理である。
レシピ管理サーバ1はステップS610で、第1レシピとされた各レシピの属性として調理工程の情報を例えばレシピDB50から取得する。
ステップS611でレシピ管理サーバ1は、第2レシピとされた各レシピの属性として調理工程の情報を例えばレシピDB50から取得する。
ステップS612でレシピ管理サーバ1は、第2レシピの中で、第1レシピに存在しない調理工程を有するレシピを第3レシピに選定する。
FIG. 11B shows a selection process in consideration of the cooking process.
In step S610, the recipe management server 1 acquires information on the cooking process from the recipe DB 50, for example, as an attribute of each recipe that is the first recipe.
In step S611, the recipe management server 1 acquires information on the cooking process from the recipe DB 50, for example, as an attribute of each recipe that is the second recipe.
In step S612, the recipe management server 1 selects a recipe having a cooking process that does not exist in the first recipe as the third recipe among the second recipes.

調理工程とは、例えば「焼く」「煮る」「揚げる」「蒸す」「こねる」などの別であったり、或いは特定の調理器具の使用などである。
例えば第1レシピには、「焼く」工程を主とする料理ばかりが存在し、第2レシピには、「焼く」レシピ、「煮る」レシピ、「揚げる」レシピが存在したとする。この場合、第2レシピにおける「煮る」レシピ、「揚げる」レシピを第3レシピとする。
これにより多様な調理工程を有するレシピをレシピ利用者に提示できる可能性を高めることができる。
The cooking process is, for example, “baking”, “simmering”, “frying”, “steaming”, “kneading” or the like, or using a specific cooking utensil.
For example, it is assumed that the first recipe includes only dishes mainly having a “baking” process, and the second recipe includes a “baking” recipe, a “boil” recipe, and a “fry” recipe. In this case, the “boil” recipe and the “fry” recipe in the second recipe are set as the third recipe.
Thereby, possibility that the recipe which has various cooking processes can be shown to a recipe user can be raised.

図11Cは味覚属性を考慮した選定処理である。
レシピ管理サーバ1はステップS610で、第1レシピとされた各レシピの味覚属性の情報を例えばレシピDB50から取得する。
ステップS611でレシピ管理サーバ1は、第2レシピとされた各レシピの味覚属性の情報を例えばレシピDB50から取得する。
ステップS612でレシピ管理サーバ1は、第2レシピの中で、第1レシピに存在しない味覚属性を有するレシピを第3レシピに選定する。
FIG. 11C shows a selection process taking into account taste attributes.
In step S610, the recipe management server 1 acquires the taste attribute information of each recipe, which is the first recipe, from the recipe DB 50, for example.
In step S611, the recipe management server 1 acquires the taste attribute information of each recipe, which is the second recipe, from the recipe DB 50, for example.
In step S612, the recipe management server 1 selects a recipe having a taste attribute that does not exist in the first recipe as the third recipe among the second recipes.

味覚属性とは、例えば「甘い」「辛い」「甘辛い」「酸っぱい」「味噌味」「醤油味」「塩味」などの別である。
例えば第1レシピには、「甘い」料理ばかりが存在し、第2レシピには、「甘い」料理のレシピと「辛い」料理のレシピが存在したとする。この場合、第2レシピにおける「辛い」料理のレシピを第3レシピとする。
これにより多様な味覚属性のレシピをレシピ利用者に提示できる可能性を高めることができる。
The taste attribute is different from, for example, “sweet”, “spicy”, “sweet and spicy”, “sour”, “miso taste”, “soy sauce taste”, and “salt taste”.
For example, it is assumed that there are only “sweet” dishes in the first recipe, and “sweet” and “spicy” recipes in the second recipe. In this case, the recipe for the “spicy” dish in the second recipe is the third recipe.
This can increase the possibility of presenting recipes with various taste attributes to the recipe user.

なお以上は第3レシピ選定処理としての一例である。
各処理では、第3レシピが該当無しとなる可能性もあるため、図11A、図11B、図11Cの処理のうちで、1つでも該当したレシピを第3レシピとすることも考えられる。
また図11A、図11B、図11Cのいずれの処理でも該当するレシピがない場合には、第2レシピのうちで第1レシピに含まれないレシピを第3レシピとするようにしてもよい。
逆に管理しているレシピ数が多くなると、いずれの処理でも該当するレシピが多数になりすぎる場合も考えられる。その場合は、図11A、図11B、図11Cの処理の全てに該当するレシピを第3レシピとするようにしてもよい。
またこれらの各処理の適用や組み合わせ、オア条件、アンド条件を、第1レシピ数や第2レシピ数に応じて適応的に変更してもよい。
The above is an example of the third recipe selection process.
In each process, there is a possibility that the third recipe may not be applicable. Therefore, it is possible that one of the processes shown in FIGS. 11A, 11B, and 11C corresponds to the third recipe.
Further, when there is no applicable recipe in any of the processes of FIGS. 11A, 11B, and 11C, a recipe that is not included in the first recipe among the second recipes may be set as the third recipe.
Conversely, when the number of managed recipes increases, there are cases where there are too many corresponding recipes in any process. In that case, a recipe corresponding to all of the processes in FIGS. 11A, 11B, and 11C may be set as the third recipe.
The application and combination of these processes, the OR condition, and the AND condition may be adaptively changed according to the number of first recipes and the number of second recipes.

<6.第2の実施の形態>
第2の実施の形態について説明する。
なお、以降第2、第3、第4の実施の形態において、追加食材設定処理や第3レシピ選定処理については詳述を避けるが、上述のような多様な処理が適用できるものである。
上述の第1の実施の形態では、無条件に第3レシピ選定を行って第1レシピと共にユーザ端末3において提示させる例としたが、第2の実施の形態は、条件に応じて第3レシピ選定及び提示を行うようにする例である。
<6. Second Embodiment>
A second embodiment will be described.
Hereinafter, in the second, third, and fourth embodiments, the additional food setting process and the third recipe selection process are not described in detail, but various processes as described above can be applied.
In the above-described first embodiment, the third recipe is selected unconditionally and presented together with the first recipe on the user terminal 3. However, the second embodiment is configured so that the third recipe is selected according to conditions. This is an example in which selection and presentation are performed.

図12に第2の実施の形態のレシピ管理サーバ1の処理を示す。なお、図12は図7のステップS313としてのレシピ選択処理の例を示している。図12において図8と同様の処理は同一のステップ番号を付し、重複説明を避ける。   FIG. 12 shows processing of the recipe management server 1 according to the second embodiment. FIG. 12 shows an example of the recipe selection process as step S313 in FIG. In FIG. 12, the same steps as those in FIG. 8 are given the same step numbers to avoid redundant description.

レシピ管理サーバ1は、図7のステップS312で食材情報を取得したらステップS313のレシピ選択処理として、まず図12のステップS401でレシピ検索を行って第1レシピを抽出する。
そして第1レシピ抽出が行われた時点でレシピ管理サーバ1はステップS410で、レシピ追加判定を行う。
このレシピ追加判定によってレシピ追加が必要と判定した場合に、レシピ管理サーバ1はステップS411からS402、S403、S404の処理に進み、第3レシピを選定する。そしてステップS405でレシピ管理サーバ1は提示レシピを選択する。この場合は第1レシピとして抽出された1又は複数のレシピと、第3レシピとされた1又は複数のレシピを、提示レシピとする。以上は、結果として第1の実施の形態と同様となる。
一方、レシピ追加判定によってレシピ追加が不要と判定した場合には、レシピ管理サーバ1はステップS411からS405に進み、提示レシピを選択する。この場合は第1レシピとして抽出された1又は複数のレシピを提示レシピとする。つまり第3レシピの選定及び提示は行われない。
When the recipe management server 1 acquires the ingredient information in step S312 of FIG. 7, as a recipe selection process in step S313, first, a recipe search is performed in step S401 of FIG. 12 to extract the first recipe.
Then, when the first recipe is extracted, the recipe management server 1 performs recipe addition determination in step S410.
If it is determined by this recipe addition determination that the recipe needs to be added, the recipe management server 1 proceeds from step S411 to steps S402, S403, and S404, and selects the third recipe. In step S405, the recipe management server 1 selects a presentation recipe. In this case, one or a plurality of recipes extracted as the first recipe and one or a plurality of recipes set as the third recipe are set as the presentation recipe. The above is the same as the first embodiment as a result.
On the other hand, when it is determined that the recipe addition is unnecessary by the recipe addition determination, the recipe management server 1 proceeds from step S411 to S405, and selects the presented recipe. In this case, one or a plurality of recipes extracted as the first recipe are set as the presentation recipe. That is, selection and presentation of the third recipe are not performed.

従って第2の実施の形態では、レシピ利用者に対しては第1レシピのみの提示で十分と判定されるような場合はステップS402、S403、S404は行われないことで処理負担を低減する。一方、第1レシピの提示のみでは十分でないと判定されるときに、第3レシピを加えた提示を行うものである。   Therefore, in the second embodiment, when it is determined that only the first recipe is sufficient for the recipe user, steps S402, S403, and S404 are not performed, thereby reducing the processing load. On the other hand, when it is determined that only the presentation of the first recipe is not sufficient, the presentation including the third recipe is performed.

ステップS410のレシピ追加判定の処理例を説明する。
図13Aはレシピ数に基づいて追加するか否かを判定する例である。
ステップS700でレシピ管理サーバ1は、変数RNにステップS401で抽出された第1レシピの数を代入する。
ステップS701でレシピ管理サーバ1は、変数RNと予め設定された判定閾値thRNを比較する。そしてレシピ管理サーバ1は、RN≦thRNであればステップS702でレシピ追加要と判定し、RN≦thRNでなければ、ステップS703でレシピ追加不要と判定する。
この判定の結果に応じて図12のステップS411での処理の分岐が行われる。
A processing example of the recipe addition determination in step S410 will be described.
FIG. 13A is an example of determining whether to add based on the number of recipes.
In step S700, the recipe management server 1 substitutes the number of first recipes extracted in step S401 for the variable RN.
In step S701, the recipe management server 1 compares the variable RN with a preset determination threshold thRN. Then, the recipe management server 1 determines that the recipe needs to be added in step S702 if RN ≦ thRN, and determines that it is not necessary to add the recipe in step S703 if not RN ≦ thRN.
Depending on the result of this determination, the process branches in step S411 of FIG.

従って、第1レシピの数が、閾値thRNとしての所定のレシピ数以上であれば、第1レシピのみが提示され、所定のレシピ数未満であれば、第3レシピが追加されて提示されることになる。これによって、第1レシピ該当数が少ないときであっても、追加食材を用いたレシピが共に提示され、提示レシピ数がレシピ利用者にとって充実したものとなる。   Therefore, if the number of first recipes is equal to or greater than the predetermined number of recipes as the threshold thRN, only the first recipe is presented, and if the number is less than the predetermined number of recipes, the third recipe is additionally presented. become. Thereby, even when the number of corresponding first recipes is small, recipes using additional ingredients are presented together, and the number of presented recipes is enriched for the recipe user.

図13Bは第1レシピの料理種別のバリエーションに基づいて追加判定を行う例である。
ステップS710でレシピ管理サーバ1は、判定のための料理種別レベルを設定する。例えば上述の大分類レベル〜細分類レベルのいずれかを選択する。この場合、固定的に或るレベルを選択しても良いし、レシピ利用者に応じて、或いは第1レシピに応じて、上述した考え方で大分類レベル〜細分類レベルのいずれかを選択するようにしてもよい。
FIG. 13B is an example in which the additional determination is performed based on the variation of the dish type of the first recipe.
In step S710, the recipe management server 1 sets a dish type level for determination. For example, one of the above-described major classification level to fine classification level is selected. In this case, a certain level may be selected in a fixed manner, or one of the large classification level to the fine classification level is selected according to the above-described concept according to the recipe user or according to the first recipe. It may be.

ステップS711でレシピ管理サーバ1は、ステップS401で抽出された第1レシピについて、料理種別毎の数をカウントする。例えば第1レシピが6個抽出されているとし、大分類レベルの料理種別が用いられるとしたら、第1レシピのうちで、日本料理が3つ、中華料理が2つ、イタリア料理が1つなどというようにカウントする。   In step S711, the recipe management server 1 counts the number of each dish type for the first recipe extracted in step S401. For example, if six first recipes are extracted and a large classification level is used, three Japanese dishes, two Chinese dishes, one Italian dish, etc. And so on.

ステップS712でレシピ管理サーバ1は、料理種別の偏り傾向を判定し、判定結果によりステップS713で処理を分岐する。
偏り傾向の判定手法は多様に考えられる。例えば偏り傾向であると判定する基準として、
・1つの料理種別が全体の2/3以上の数を占めるか否か
・カウント値が1位の料理種別と2位の料理種別のカウント値の差が所定値以上か否か
・(第1レシピ数)/(料理種別数)の値が所定値未満か否か
などが考えられる。もちろんこれらに限られるものではない。例えば料理種別を数値化し、標準偏差或いは分散の値を基準値と比較することなどで判定しても良い。
In step S712, the recipe management server 1 determines the tendency of dish type bias, and the process branches in step S713 depending on the determination result.
There are various methods for determining the bias tendency. For example, as a criterion for judging that the tendency is biased,
Whether or not one dish type occupies 2/3 or more of the whole. Whether or not the difference between the count values of the first and second dish types is greater than or equal to a predetermined value. Whether the value of (the number of recipes) / (the number of types of dishes) is less than a predetermined value may be considered. Of course, it is not limited to these. For example, the determination may be made by digitizing the dish type and comparing the standard deviation or variance value with a reference value.

偏っていると判定した場合は、レシピ管理サーバ1はステップ714でレシピ追加要と判定し、偏っていなければステップS715でレシピ追加不要と判定する。
この判定の結果に応じて図12のステップS411での処理の分岐が行われる。
If it is determined that the recipe is biased, the recipe management server 1 determines in step 714 that the recipe needs to be added.
Depending on the result of this determination, the process branches in step S411 of FIG.

従って、第1レシピにおいて料理種別が偏っていると判定された場合に第3レシピが追加されて提示される。これによって、第1レシピが、料理種別としてバリエーションが少ないときに、追加食材を用いた第3レシピが共に提示され、提示レシピの料理種別を多様化できる。
なお、この図13Bの処理でレシピ追加を行うと判定した場合、ステップS402の追加食材設定として図9Cの処理を適用したり、ステップS404の第3レシピ選定では図11Aの処理を適用すると、提示するレシピの料理種別を増やすという意味で好適である。
またレシピ追加判定として、図13A、図13Bの両方を用い、そのOR条件、又はAND条件でレシピ追加を行うか否かを判定しても良い。
Therefore, when it is determined that the dish type is biased in the first recipe, the third recipe is added and presented. Accordingly, when the first recipe has few variations as the dish type, the third recipe using the additional ingredients is presented together, and the dish type of the presented recipe can be diversified.
If it is determined that the recipe is added in the process of FIG. 13B, the process of FIG. 9C is applied as the additional food setting in step S402, or the process of FIG. 11A is applied in the third recipe selection in step S404. This is preferable in terms of increasing the type of recipe to be used.
In addition, as a recipe addition determination, it is possible to determine whether or not to add a recipe using the OR condition or the AND condition using both FIG. 13A and FIG. 13B.

<7.第3の実施の形態>
第3の実施の形態のレシピ管理サーバ1の処理を図14で説明する。なお図14において図7と同一の処理は同一のステップ番号を付し説明を省略する。
この第3の実施の形態は、一旦、第1レシピをレシピ利用者に提示するが、その後の状況に応じて第3レシピを追加的に提示するか否かを決める例である。
<7. Third Embodiment>
Processing of the recipe management server 1 according to the third embodiment will be described with reference to FIG. In FIG. 14, the same processes as those in FIG. 7 are denoted by the same step numbers and the description thereof is omitted.
In the third embodiment, the first recipe is once presented to the recipe user, but it is an example of determining whether or not to additionally present the third recipe according to the subsequent situation.

図14の処理においてレシピ管理サーバ1は、ステップS301,S311,S321,S331を順に実行することにより、各種処理を継続的に行う。
ユーザ端末3からの検索条件を受信してステップS311からS312に進んで食材情報を取得したら、ステップS313aで第1レシピ抽出のためのレシピ検索処理を行う。この場合レシピ管理サーバ1は、取得した食材情報に基づいてレシピDB50の検索を行って1又は複数のレシピを抽出し、第1レシピとする。
続いてレシピ管理サーバ1はステップS313bで提示レシピの選択を行うが、ここでは、抽出した1又は複数の第1レシピを全て提示レシピとする。そしてステップS314において提示制御処理を実行する。即ち第1レシピとして抽出された1又は複数のレシピの一覧として、レシピ検索結果一覧のウェブページデータを生成してユーザ端末3へ送信する。
In the process of FIG. 14, the recipe management server 1 performs various processes continuously by sequentially executing steps S301, S311, S321, and S331.
When the search condition is received from the user terminal 3 and the process proceeds from step S311 to S312 to acquire food information, a recipe search process for extracting the first recipe is performed in step S313a. In this case, the recipe management server 1 searches the recipe DB 50 based on the acquired ingredient information, extracts one or a plurality of recipes, and sets it as the first recipe.
Subsequently, the recipe management server 1 selects a presentation recipe in step S313b, but here, all of the extracted first recipe or a plurality of first recipes are set as presentation recipes. In step S314, presentation control processing is executed. That is, the web page data of the recipe search result list is generated and transmitted to the user terminal 3 as a list of one or a plurality of recipes extracted as the first recipe.

レシピ管理サーバ1はステップS315でタイムカウントを開始する。説明上、タイムカウント値を「TM」とする。
またステップS316でレシピ管理サーバ1は、タイムカウント値TMを比較することで所定時間経過したか否かを判定するための閾値時間thTMを設定する。閾値時間thTMの設定処理については後述する。
The recipe management server 1 starts time counting in step S315. For the sake of explanation, the time count value is “TM”.
In step S316, the recipe management server 1 sets a threshold time thTM for determining whether or not a predetermined time has elapsed by comparing the time count values TM. The setting process of the threshold time thTM will be described later.

レシピ管理サーバ1は、ステップS321では、タイムカウント値TMが閾値時間thTM以上となっているか否かを確認する。
なお、タイムカウント値TMの初期値(リセット値)は“0”であり、タイムカウント中以外は、ステップS321からS331に進む。
またタイムカウント開始後でも、タイムカウント値TMが閾値時間thTM以上となるまでは、ステップS321からS331に進む。
In step S321, the recipe management server 1 checks whether or not the time count value TM is equal to or greater than the threshold time thTM.
Note that the initial value (reset value) of the time count value TM is “0”, and the process proceeds from step S321 to S331 except during the time count.
Even after the time count is started, the process proceeds from step S321 to S331 until the time count value TM becomes equal to or greater than the threshold time thTM.

ステップS321からS322に進むのは、第1レシピをユーザ端末3に提示させてから、ステップS335でタイムカウントが終了される前に、閾値時間thTMとしての所定時間を経過した場合となる。
この場合レシピ管理サーバ1はステップS322で追加食材設定処理を行う(例えば図9A、図9B、図9C、図10A、図10B参照)。そしてレシピ管理サーバ1はステップS323で追加食材を加えた検索を行って第2レシピを抽出し、ステップS324で第2レシピのうちで第3レシピを選定する(例えば図11A、図11B参照)。
その後レシピ管理サーバ1はステップS325で追加提示レシピを選択する。つまり第3レシピを提示レシピと追加的に設定する。そしてステップS326で提示制御処理を行う。例えばそれまで提示していた第1レシピに第3レシピを追加したレシピ検索結果一覧のウェブページデータを生成してユーザ端末3へ送信する。これによりユーザ端末3では第3レシピも含めたレシピ一覧が提示される。
なおこの場合、第1レシピを含まない第3レシピのみの一覧とする例も考えられる。
そしてレシピ管理サーバ1はステップS327でタイムカウントを終了しタイムカウント値TMをリセットする。
The process proceeds from step S321 to S322 when a predetermined time as the threshold time thTM has elapsed after the first recipe is presented to the user terminal 3 and before the time count is ended in step S335.
In this case, the recipe management server 1 performs an additional ingredient setting process in step S322 (see, for example, FIGS. 9A, 9B, 9C, 10A, and 10B). And the recipe management server 1 performs the search which added the additional foodstuff at step S323, extracts a 2nd recipe, and selects a 3rd recipe among 2nd recipes at step S324 (for example, refer FIG. 11A and FIG. 11B).
Thereafter, the recipe management server 1 selects an additional presentation recipe in step S325. That is, the third recipe is additionally set with the presented recipe. In step S326, presentation control processing is performed. For example, web page data of a recipe search result list in which the third recipe is added to the first recipe presented so far is generated and transmitted to the user terminal 3. Thereby, the user terminal 3 presents a recipe list including the third recipe.
In this case, an example in which only the third recipe that does not include the first recipe is used may be considered.
In step S327, the recipe management server 1 ends the time count and resets the time count value TM.

レシピ管理サーバ1は、ウェブページデータの受信要求を認識した場合は、ステップS331からS332,S333の処理に進むことは図7と同様である。
但しこの図14の例では、レシピ管理サーバ1はステップS334で、今回要求されたウェブページが、検索結果として一覧表示させたレシピのうちの、特定のレシピの詳細ページであったか否かを確認する。
そしてレシピの詳細ページであった場合は、レシピ管理サーバ1はステップS335に進んでタイムカウントを終了し、タイムカウント値TMをリセットする。
When the recipe management server 1 recognizes the web page data reception request, the process proceeds from step S331 to S332 and S333 as in FIG.
However, in the example of FIG. 14, the recipe management server 1 confirms in step S334 whether the web page requested this time is a detailed page of a specific recipe among the recipes displayed as a list as a search result. .
If it is a detail page of the recipe, the recipe management server 1 proceeds to step S335, ends the time count, and resets the time count value TM.

この図14の処理によっては、まずレシピ利用者が食材を指定して検索要求を行った場合には、レシピ利用者には、指定した食材により料理が可能な第1レシピの一覧が提示される。しかし、所定時間以上、レシピ利用者が詳細ページの要求を行わないでいると、レシピ利用者にとって望ましいレシピが存在しないとして選択に迷っているとレシピ管理サーバ1が推定して、第3レシピを追加したレシピ一覧を提示するものとなる。
もし第1レシピのみの一覧提示の際に、所定時間以内にレシピ利用者が或るレシピを選択して詳細ページ要求操作を行った場合は、ステップS335でタイムカウントが終了されるので、ステップS322〜S326は行われず、第3レシピの追加提示は行われない。これはレシピ利用者が第1レシピのみの提示で、作る料理を決めたと推定される場合である。
一方、第1レシピのみの一覧では、レシピ利用者にとって作りたいと思うレシピが挙げられておらず、レシピ利用者がどうしようか決めかねている状況を、詳細ページのリクエストが一定時間以上検知されないという観点で推定して、第3レシピを提示する。従ってレシピ利用者に対して第3レシピを新たな選択肢として有効に提示できる。
According to the process of FIG. 14, when a recipe user first designates ingredients and makes a search request, the recipe user is presented with a list of first recipes that can be cooked using the designated ingredients. . However, if the recipe user does not request a detailed page for a predetermined time or more, the recipe management server 1 estimates that there is no desired recipe for the recipe user and the recipe management server 1 estimates that the third recipe is selected. A list of added recipes is presented.
If the recipe user selects a certain recipe and performs a detailed page request operation within a predetermined time when the list of only the first recipe is presented, the time count is ended in step S335, so step S322 is performed. -S326 is not performed, and additional presentation of the third recipe is not performed. This is a case where the recipe user is presumed to have decided the dish to be made by presenting only the first recipe.
On the other hand, in the list of only the first recipe, the recipe that the recipe user wants to make is not listed, and the request of the detailed page is not detected for a certain period of time when the recipe user cannot decide what to do Estimating from the viewpoint, the third recipe is presented. Therefore, the third recipe can be effectively presented as a new option to the recipe user.

ところで、レシピ利用者にとって作りたいレシピがないという推定を行うための一定時間経過について閾値時間thTMを用いている。この閾値時間thTMのステップS316での設定例を図15A、図15Bに示す。
図15Aは閾値時間thTMとして固定値を用いる場合である。レシピ管理サーバ1はステップS800として閾値時間thTMとして予め記憶されている固定値を取得する。
By the way, the threshold time thTM is used for the passage of a certain time for estimating that there is no recipe that the recipe user wants to make. An example of setting the threshold time thTM in step S316 is shown in FIGS. 15A and 15B.
FIG. 15A shows a case where a fixed value is used as the threshold time thTM. The recipe management server 1 acquires a fixed value stored in advance as the threshold time thTM in step S800.

図15Bは閾値時間thTMを料理種別のバリエーションに応じて決める例である。
ステップS810でレシピ管理サーバ1は、閾値時間判定のための料理種別レベルを設定する。例えば上述の大分類レベル〜細分類レベルのいずれかを選択する。この場合、固定的に或るレベルを選択しても良いし、上述の考え方で、レシピ利用者に応じて、或いは第1レシピに応じて大分類レベル〜細分類レベルのいずれかを選択するようにしてもよい。
FIG. 15B is an example in which the threshold time thTM is determined according to the variation of the dish type.
In step S810, the recipe management server 1 sets a dish type level for threshold time determination. For example, one of the above-described major classification level to fine classification level is selected. In this case, a certain level may be fixedly selected, or in accordance with the above-described concept, one of the large classification level to the fine classification level is selected according to the recipe user or according to the first recipe. It may be.

ステップS811でレシピ管理サーバ1は、図14のステップS313aで抽出された第1レシピについて、料理種別毎の数をカウントする。例えば第2レベルの料理種別が用いられるとしたら、第1レシピとしては日本料理が1つ、中華料理が5つ、スペイン料理が7つなどというようにカウントする。   In step S811, the recipe management server 1 counts the number of each dish type for the first recipe extracted in step S313a of FIG. For example, if the dish type of the second level is used, the first recipe is counted as one Japanese dish, five Chinese dishes, seven Spanish dishes, and so on.

ステップS812でレシピ管理サーバ1は、料理種別の偏り傾向を判定する。例えば偏り傾向について、大、中、小の3段階に判定するなど、複数段階を判定する。例えば標準偏差や分散の値により複数段階に分けても良いし、上述した偏り傾向の条件を設定して複数段階に分けても良い。
そしてステップS813で、偏り傾向の段階に応じて閾値時間thTMの値を設定する。この場合、偏り傾向が大きいほど閾値時間thTMの値を短い値にする。
In step S <b> 812, the recipe management server 1 determines the tendency of the dish type bias. For example, with respect to the bias tendency, a plurality of stages are determined, such as a determination of three stages of large, medium, and small. For example, it may be divided into a plurality of stages according to the standard deviation or the variance value, or may be divided into a plurality of stages by setting the above-mentioned bias tendency condition.
In step S813, a value of the threshold time thTM is set according to the bias tendency stage. In this case, the value of the threshold time thTM is set to a shorter value as the bias tendency is larger.

このように閾値時間thTMの値を設定すると、第1レシピの料理種別のバリエーションに応じて、レシピ利用者の考えを適切に推定しやすくなる。
例えば第1レシピが同じような料理のレシピばかり(偏り傾向が高い)の場合、あまり時間をかけずとも、レシピ利用者は目的のレシピがないと判断しやすい。その場合、閾値時間thTMを短くすることで、早めにレシピ利用者に追加レシピを提示できる。
一方、第1レシピとしてバリエーション豊かなレシピが含まれている場合は、レシピ利用者はどのレシピを詳しく見ようか迷っていることも考えられるため、長めの時間を待機することが好適となる。
When the value of the threshold time thTM is set in this way, it becomes easy to appropriately estimate the recipe user's idea according to the variation of the dish type of the first recipe.
For example, if the first recipe is just a recipe for a similar dish (highly biased), the recipe user can easily determine that there is no target recipe without taking too much time. In that case, an additional recipe can be presented to the recipe user earlier by shortening the threshold time thTM.
On the other hand, when the first recipe includes a rich recipe, it is possible that the recipe user is wondering which recipe to look at in detail, so it is preferable to wait for a longer time.

なお図14の例では経過時間の開始タイミングは、ステップS315、つまり第1レシピの一覧提示のための送信をユーザ端末3に対して行った時点としているが、これ以外の例も考えられる。
例えば第1レシピ一覧のうちの個別のレシピの詳細情報の取得要求時点や詳細情報の送信時点からタイムカウントを開始し、その後、所定時間経過によりステップS322〜S327が行われるような例も考えられる。
また第1レシピ一覧を表示させ、ステップS315や、検索条件受信時などをタイムカウントの開始タイミングとし、その後、特に条件付けを行わず、所定時間(例えば閾値時間thTM)経過したら、必ずステップS322〜S326を行うようにする例も考えられる。例えばレシピ利用者が詳細情報のリクエストを行うか行わないかに関わらず、一覧提示されるレシピ数が時間経過により増加するような処理例である。
さらに時間経過により段階的にレシピ数が追加していくような処理例もあり得る。例えば10秒経過時点でステップS322〜S326を行って提示レシピ数を追加し、さらに20秒経過時点で再びステップS322〜S326を行って提示レシピ数を追加するような処理である。2回目以降のステップS322では、前回と異なる追加食材を設定することで、提示レシピを段階的に増やしていくことができる。
In the example of FIG. 14, the start timing of the elapsed time is set to step S <b> 315, that is, the time when the transmission for presenting the list of the first recipe is performed to the user terminal 3, but other examples are also conceivable.
For example, there may be an example in which time counting is started from the acquisition request time of detailed information of individual recipes in the first recipe list or the transmission time of detailed information, and thereafter, steps S322 to S327 are performed when a predetermined time elapses. .
In addition, the first recipe list is displayed, and the time count start timing is set to step S315 or when the search condition is received. After that, if no specific condition is given and a predetermined time (for example, threshold time thTM) elapses, steps S322 to S326 are always performed. An example of performing the above is also possible. For example, this is a processing example in which the number of recipes presented in a list increases with time regardless of whether the recipe user requests detailed information or not.
Further, there may be a processing example in which the number of recipes is added step by step with time. For example, the processing is such that steps S322 to S326 are performed when 10 seconds have elapsed and the number of presented recipes is added, and steps S322 to S326 are performed again when 20 seconds have elapsed and the number of presented recipes is added. In step S322 from the second time onward, the number of presentation recipes can be increased in stages by setting additional ingredients different from the previous time.

<8.第4の実施の形態>
第4の実施の形態のレシピ管理サーバ1の処理を図16で説明する。なお図16において図7、図14と同一の処理は同一のステップ番号を付し説明を省略する。
この第4の実施の形態も、一旦、第1レシピをレシピ利用者に提示するが、その後の状況に応じて第3レシピを追加的に提示するか否かを決める例である。
<8. Fourth Embodiment>
The process of the recipe management server 1 according to the fourth embodiment will be described with reference to FIG. In FIG. 16, the same processes as those in FIGS. 7 and 14 are denoted by the same step numbers and the description thereof is omitted.
The fourth embodiment is also an example in which the first recipe is once presented to the recipe user, and whether or not the third recipe is additionally presented according to the subsequent situation.

図16の処理においてレシピ管理サーバ1は、ユーザ端末3からの検索条件を受信してステップS311からS312に進んで食材情報を取得したら、ステップS313a、S313b、S314を図14と同様に行う。つまり第1レシピとして抽出された1又は複数のレシピによるレシピ検索結果一覧のウェブページデータを生成してユーザ端末3へ送信する。   In the process of FIG. 16, when the recipe management server 1 receives the search condition from the user terminal 3 and proceeds from step S311 to S312 to acquire food information, the recipe management server 1 performs steps S313a, S313b, and S314 as in FIG. That is, web page data of a recipe search result list by one or a plurality of recipes extracted as the first recipe is generated and transmitted to the user terminal 3.

レシピ管理サーバ1はステップS317でカウント値Crqを0にリセットし、またステップS318で閾値thCを設定する。カウント値Crqはユーザ端末3からの詳細ページ要求の回数を計数した値であり、閾値thCはカウント値Crqと比較する値である。   The recipe management server 1 resets the count value Crq to 0 in step S317, and sets a threshold thC in step S318. The count value Crq is a value obtained by counting the number of detailed page requests from the user terminal 3, and the threshold thC is a value to be compared with the count value Crq.

レシピ管理サーバ1は、ウェブページデータの受信要求を認識した場合は、ステップS331からS332,S333の処理に進むことは図7、図14と同様である。
但しこの図16の例では、レシピ管理サーバ1はステップS334で、今回要求されたウェブページが一覧提示したレシピのうちの特定のレシピの詳細ページであったか否かを確認する。
そしてレシピの詳細ページであった場合は、ステップS336に進んで、カウント値Crqをインクリメントする。
従って、第1レシピの一覧がユーザ端末3において提示された後、レシピ利用者が特定のレシピを選択して詳細ページ要求の操作を行う毎にカウント値Crqが加算されていく。カウント値Crqは、詳細ページのリクエスト回数を示したものとなる。
When the recipe management server 1 recognizes the web page data reception request, the process proceeds from step S331 to S332 and S333 in the same manner as in FIGS.
However, in the example of FIG. 16, the recipe management server 1 confirms in step S334 whether or not the web page requested this time is a detail page of a specific recipe among the listed recipes.
If it is a recipe detail page, the process proceeds to step S336, and the count value Crq is incremented.
Therefore, after the list of first recipes is presented on the user terminal 3, the count value Crq is added each time the recipe user selects a specific recipe and performs a detailed page request operation. The count value Crq indicates the number of details page requests.

レシピ管理サーバ1は、ステップS321Aでは、カウント値Crqが閾値thC以上となっているか否かを確認する。
ステップS321AからS322に進むのは、第1レシピをユーザ端末3に提示させてから、詳細ページのリクエスト回数が閾値thCとして設定した回数を超えた場合である。
この場合レシピ管理サーバ1はステップS322で追加食材設定処理を行う(例えば図9A、図9B、図9C、図10A、図10B参照)。そしてレシピ管理サーバ1はステップS323で追加食材を加えた検索を行って第2レシピを抽出し、ステップS324で第2レシピのうちで第3レシピを選定する(例えば図11A、図11B参照)。
その後レシピ管理サーバ1はステップS325で追加提示レシピを選択する。つまり第3レシピを提示レシピと追加的に設定する。そしてステップS326で提示制御処理を行う。例えばそれまで提示していた第1レシピに第3レシピを追加したレシピ検索結果一覧のウェブページデータを生成してユーザ端末3へ送信する。これによりユーザ端末3では第3レシピも含めたレシピ一覧が提示される。
なおこの場合、第1レシピを含まない第3レシピのみの一覧とする例も考えられる。
そしてレシピ管理サーバ1はステップS328でカウント値Crqをリセットする。
In step S321A, the recipe management server 1 checks whether the count value Crq is equal to or greater than the threshold thC.
The process proceeds from step S321A to S322 when the number of requests for the detailed page exceeds the number set as the threshold thC after the first recipe is presented to the user terminal 3.
In this case, the recipe management server 1 performs an additional ingredient setting process in step S322 (see, for example, FIGS. 9A, 9B, 9C, 10A, and 10B). And the recipe management server 1 performs the search which added the additional foodstuff at step S323, extracts a 2nd recipe, and selects a 3rd recipe among 2nd recipes at step S324 (for example, refer FIG. 11A and FIG. 11B).
Thereafter, the recipe management server 1 selects an additional presentation recipe in step S325. That is, the third recipe is additionally set with the presented recipe. In step S326, presentation control processing is performed. For example, web page data of a recipe search result list in which the third recipe is added to the first recipe presented so far is generated and transmitted to the user terminal 3. Thereby, the user terminal 3 presents a recipe list including the third recipe.
In this case, an example in which only the third recipe that does not include the first recipe is used may be considered.
Then, the recipe management server 1 resets the count value Crq in step S328.

この図16の処理によっては、まずレシピ利用者が食材を指定して検索要求を行った場合には、レシピ利用者には、指定した食材により料理が可能な第1レシピの一覧が提示される。しかし、その第1レシピの一覧からレシピ利用者が何度も詳細ページの要求を行なっている状況は、レシピ利用者がレシピの選択に迷っている状況であると推定する。そしてそのような場合に、第3レシピを追加したレシピ一覧を提示するものとなる。従ってレシピ利用者に対して第3レシピを新たな選択肢として有効に提示できる。   According to the processing of FIG. 16, when a recipe user first designates ingredients and makes a search request, the recipe user is presented with a list of first recipes that can be cooked using the designated ingredients. . However, it is presumed that the situation in which the recipe user requests the detailed page many times from the list of the first recipe is a situation in which the recipe user is confused about selecting a recipe. In such a case, a recipe list to which the third recipe has been added is presented. Therefore, the third recipe can be effectively presented as a new option to the recipe user.

なお、ステップS321Aでは、第1レシピの提示から一定時間内という条件も加えることも考えられる。つまり一定時間以内に所定回数以上、詳細ページのリクエストを行った場合に、ステップS322以降に進むとする例である。このようにすると、短時間に何度もリクエストしていることでレシピ利用者が迷っていると推定する確度が高くなる。   In step S321A, it may be possible to add a condition that the time is within a certain period from the presentation of the first recipe. That is, in this example, when a detailed page request is made a predetermined number of times or more within a certain time, the process proceeds to step S322 and subsequent steps. If it does in this way, the accuracy which presumes that the recipe user is at a loss by having requested many times in a short time becomes high.

ところで、ステップS318での閾値thCの設定については、閾値時間thTMの設定として図15で説明したような例が考えられる。
即ち図15Aの閾値時間thTMのように、閾値thCとして固定値を用いることが考えられる。
By the way, regarding the setting of the threshold value thC in step S318, the example described with reference to FIG. 15 as the setting of the threshold time thTM can be considered.
That is, it is conceivable to use a fixed value as the threshold thC as in the threshold time thTM in FIG. 15A.

また図15Bと同様に、閾値thCを料理種別のバリエーションに応じて決めることも考えられる。即ちステップS810、S811、S812を同様に行い、その後、レシピ管理サーバ1は料理種別の偏り傾向に応じて閾値thCの値を設定する。この場合、偏り傾向が大きいほど閾値thCの値を小さい値にする。これは、提示されたレシピにおいて料理種別が多い場合は、詳細ページのリクエスト回数は多くなることが想定されるが、偏り傾向が高い場合は、詳細ページのリクエスト回数が少なめでも、レシピ利用者が迷っていることが想定されるためである。
このように閾値thCの値を設定すると、第1レシピの料理種別のバリエーションに応じて、レシピ利用者の状況を適切に推定しやすくなる。
例えば第1レシピが同じような料理のレシピばかり(偏り傾向が高い)の場合、早めにレシピ利用者が迷っていると判定して、早めに追加レシピを提示できる。
一方、第1レシピとしてバリエーション豊かなレシピが含まれている場合は、レシピ利用者は多数のレシピについて詳しく見ようとすることが考えられるため、回数の閾値thCを高くすることが好適となる。
Similarly to FIG. 15B, it may be possible to determine the threshold thC according to the variation of the dish type. That is, steps S810, S811, and S812 are performed in the same manner, and then the recipe management server 1 sets the value of the threshold thC according to the tendency of dish type bias. In this case, the value of the threshold thC is set to a smaller value as the bias tendency is larger. This is because the number of requests for detailed pages is expected to increase when there are many types of recipes in the presented recipe. However, if the tendency to bias is high, the recipe user may be requested even if the number of requests for detailed pages is small. This is because it is assumed that the user is at a loss.
When the value of the threshold thC is set in this way, it becomes easy to appropriately estimate the situation of the recipe user according to the variation of the dish type of the first recipe.
For example, if the first recipe is only a recipe for a similar dish (highly biased), it can be determined that the recipe user is at a loss earlier and an additional recipe can be presented earlier.
On the other hand, if the recipe includes a variety of recipes as the first recipe, it is considered that the recipe user wants to look at a large number of recipes in detail, so that it is preferable to increase the number threshold thC.

<9.まとめ>
以上、実施の形態について説明してきたが、実施の形態では以下の効果が得られる。
第1〜第4の実施の形態のレシピ管理サーバ1(情報処理装置)は、選択された食材を示す食材情報を取得する食材情報取得部1aと、食材情報取得部1aが取得した食材情報に基づいて提示レシピを選択する提示レシピ選択部1bと、提示レシピ選択部1bが選択した提示レシピについて提示制御を行う提示制御部1cとを備えている。
そして提示レシピ選択部1bは、食材情報取得部1aが取得した食材情報で示される食材により作成可能なレシピを第1レシピとして抽出する第1レシピ抽出処理(S401、S313a)を行う。また提示レシピ選択部1bは、食材情報取得部1aが取得した食材情報で示される食材と追加食材により作成可能なレシピを第2レシピとして抽出する第2レシピ抽出処理(S403、S323)を行う。また提示レシピ選択部1bは、第2レシピのうちで、少なくとも第1レシピに含まれないという条件を含む選定条件に合致するレシピを第3レシピとして選定する第3レシピ選定処理(S404、S324)と、第1レシピと第3レシピを提示レシピとする選択処理(S405、S325)を行う。
<9. Summary>
Although the embodiments have been described above, the following effects can be obtained in the embodiments.
The recipe management server 1 (information processing apparatus) of the first to fourth embodiments includes the ingredient information acquisition unit 1a that acquires the ingredient information indicating the selected ingredient, and the ingredient information acquired by the ingredient information acquisition unit 1a. A presentation recipe selection unit 1b that selects a presentation recipe based on the presentation recipe and a presentation control unit 1c that performs presentation control for the presentation recipe selected by the presentation recipe selection unit 1b are provided.
And the presentation recipe selection part 1b performs the 1st recipe extraction process (S401, S313a) which extracts the recipe which can be created with the foodstuff shown with the foodstuff information which the foodstuff information acquisition part 1a acquired as a 1st recipe. Moreover, the presentation recipe selection part 1b performs the 2nd recipe extraction process (S403, S323) which extracts the recipe which can be created with the foodstuff shown by the foodstuff information acquired by the foodstuff information acquisition part 1a, and an additional foodstuff as a 2nd recipe. In addition, the presented recipe selection unit 1b selects, as the third recipe, a recipe that matches a selection condition that includes at least the condition that the recipe is not included in the first recipe (S404, S324). And the selection process (S405, S325) which makes a 1st recipe and a 3rd recipe a presentation recipe is performed.

この場合、例えばユーザ操作などにより選択された食材により作成可能な料理のレシピ(第1レシピ)が提示されるが、さらに追加する食材を想定した場合に作成可能なレシピのうちで選定されたレシピ(第3レシピ)も、ユーザ端末3において提示される。つまり第1レシピよりもバリエーションが豊かな状態で各種レシピを提示することになる。
例えばレシピ利用者が選択した食材の条件のみで抽出した第1レシピの提示を行うのみであると、食材情報によっては、非常に少数のレシピしか提示できない場合も生ずる。するとレシピ利用者にとっては満足のいくレシピ探しが行えない場合もある。そこで例えばレシピ利用者が選択した食材の情報にある程度対応した第3レシピを選定して、これも提示できるようにすることで、検索時にレシピ利用者に提示できるレシピ数を多くすることができる。
これにより例えばレシピ利用者による検索時などに多様なレシピを紹介できる。即ち、追加となる食材の数や種類を抑制しつつ、十分な数量のレシピの選択肢を提示でき、レシピ提供サービスの使用性を向上させることができる。
しかも提示されるレシピ(第1レシピ、第3レシピ)はレシピ利用者の選択等による食材情報に基づくため、レシピ利用者にとって現状で作りやすい料理のレシピとなる。
また第3レシピはレシピ利用者が指定した食材と追加食材で調理可能なレシピであるが、このようなレシピを提示させるためにレシピ利用者が追加で食材を指定する操作を行う必要はない。これによりレシピ利用者の操作負担を減少できていることになる。
従ってレシピ利用者によるレシピ選択時の充実感を向上させるとともに、短時間で容易に望みのレシピを発見できるような使用性の良いレシピ提供システムを実現できる。
またこれによって、検索のし直しなども減少することが見込まれるため、通信量の削減や、それによる通信トラフィックの有効利用を促進できる。
更に、レシピ利用者の利用するユーザ端末における限られた(例えば、モニタなどの)提示領域において、価値のある情報(レシピ)を提示することにより、ユーザ端末の資源を有効活用することができる。
In this case, for example, a recipe for cooking (first recipe) that can be created using ingredients selected by a user operation or the like is presented, but a recipe selected from recipes that can be created when additional ingredients are assumed. (Third recipe) is also presented at the user terminal 3. That is, various recipes are presented in a state where variations are richer than those of the first recipe.
For example, if only the first recipe extracted based on the condition of the ingredients selected by the recipe user is presented, only a very small number of recipes may be presented depending on the ingredient information. Then, there may be a case where a recipe user cannot find a satisfactory recipe. Therefore, for example, by selecting a third recipe corresponding to a certain extent to the information on the ingredients selected by the recipe user and allowing this to be presented, the number of recipes that can be presented to the recipe user at the time of search can be increased.
Thereby, for example, various recipes can be introduced when searching by a recipe user. In other words, a sufficient number of recipe options can be presented while suppressing the number and types of additional ingredients, and the usability of the recipe providing service can be improved.
Moreover, since the recipes (first recipe and third recipe) to be presented are based on food material information by selection of the recipe user or the like, the recipe recipe for the recipe user is easy to make at present.
In addition, the third recipe is a recipe that can be cooked with ingredients specified by the recipe user and additional ingredients, but it is not necessary for the recipe user to specify additional ingredients in order to present such a recipe. As a result, the operation burden on the recipe user can be reduced.
Accordingly, it is possible to improve a sense of fulfillment when selecting a recipe by a recipe user, and to realize a recipe providing system with good usability so that a desired recipe can be easily found in a short time.
In addition, since it is expected that the number of re-searches will be reduced, it is possible to reduce the amount of communication and promote effective use of communication traffic.
Furthermore, by presenting valuable information (recipe) in a limited presentation area (for example, a monitor) in the user terminal used by the recipe user, the resources of the user terminal can be effectively utilized.

実施の形態では、第1レシピ抽出処理で抽出された第1レシピを提示させた場合において、所定の条件に基づいて第2レシピ抽出処理及び第3レシピ選定処理を行って、第3レシピを提示レシピとし端末装置で提示させる例を説明した。
例えば第3の実施の形態では、レシピ管理サーバ1は、第1レシピ抽出処理で抽出された第1レシピを提示レシピとしてユーザ端末3で提示させた場合において、経過時間(タイムカウント値TM)が所定の閾値時間thTMを越えることを条件の1つとして、第2レシピ抽出処理及び第3レシピ選定処理を行って、第3レシピを提示レシピとし、ユーザ端末3で提示させる(図14のS321〜S326)。つまり一旦はレシピ利用者に対して第1レシピとして抽出されたレシピを提示するが、第1レシピの提示のみでレシピ利用者が満足しているか否か(レシピ利用者にとって作りたいと思える料理が提示されているか否か)を経過時間により推定する。そしてレシピ利用者にとって十分なレシピ提示が行われていないと推定したときに第3レシピを追加提示する。
これによりレシピ利用者にとってのレシピ選択の幅を広げ、レシピ利用者の満足度を高めることが期待できる。またサーバとしての処理負担やトラフィック負担をむやみに増大させないことにもなる。
また例えば第4の実施の形態では、レシピ管理サーバ1は、第1レシピ抽出処理で抽出された第1レシピを提示レシピとしてユーザ端末3で提示させた場合において、提示したレシピについての個別詳細情報のリクエスト数(カウント値Crq)が所定の閾値thCを越えることを条件の1つとして、第2レシピ抽出処理及び第3レシピ選定処理を行って、第3レシピを提示レシピとし、ユーザ端末3で提示させる(図16のS321A〜S326)。
つまり一旦はレシピ利用者に対して第1レシピとして抽出されたレシピを提示するが、第1レシピの提示のみでレシピ利用者が満足しているか否か(作る料理を決められないでいるか否か)を、提示したうちの個別のレシピの詳細情報のリクエスト数により推定する。そして料理を決められていないと推定したときに第3レシピを提示する。
例えば第1レシピを提示した場合に、提示した第1レシピのうちの多数について個別詳細情報がリクエストされる場合は、レシピ利用者が、料理を決めかねて、各レシピを詳しく確認していることが推定される。このようにレシピ利用者が迷っていると推定されるときに、追加的に第3レシピを提示できる。これによりレシピ利用者にとってのレシピ選択の幅を広げ、レシピ利用者の満足度を高めることが期待できる。またサーバとしての処理負担やトラフィック負担をむやみに増大させない利点もある。
In the embodiment, when the first recipe extracted in the first recipe extraction process is presented, the second recipe extraction process and the third recipe selection process are performed based on predetermined conditions, and the third recipe is presented. An example in which a recipe is presented on the terminal device has been described.
For example, in the third embodiment, when the recipe management server 1 presents the first recipe extracted in the first recipe extraction process as a presentation recipe on the user terminal 3, the elapsed time (time count value TM) is As one of the conditions that the predetermined threshold time thTM is exceeded, the second recipe extraction process and the third recipe selection process are performed, and the third recipe is set as a presentation recipe and presented on the user terminal 3 (S321 in FIG. 14). S326). In other words, the recipe extracted once as the first recipe is presented to the recipe user, but whether or not the recipe user is satisfied only by presenting the first recipe (the recipe user wants to make Whether or not it is presented) is estimated from the elapsed time. The third recipe is additionally presented when it is estimated that sufficient recipe presentation has not been performed for the recipe user.
Thereby, it can be expected that the recipe selection range for the recipe user is expanded and the satisfaction level of the recipe user is increased. In addition, the processing load and traffic load as a server are not increased unnecessarily.
Further, for example, in the fourth embodiment, the recipe management server 1 provides individual detailed information about the presented recipe when the first recipe extracted in the first recipe extraction process is presented as a presentation recipe on the user terminal 3. On the condition that the number of requests (count value Crq) exceeds a predetermined threshold thC, the second recipe extraction process and the third recipe selection process are performed, and the third recipe is set as a presentation recipe. It is made to present (S321A-S326 of FIG. 16).
In other words, the recipe extracted once as the first recipe is presented to the recipe user, but whether or not the recipe user is satisfied only by presenting the first recipe (whether the dish to be made cannot be decided) ) Is estimated from the number of requests for detailed information of individual recipes presented. The third recipe is presented when it is estimated that cooking has not been decided.
For example, when the first recipe is presented and individual detailed information is requested for many of the presented first recipes, the recipe user may not decide the dish and check each recipe in detail. Presumed. Thus, when it is estimated that the recipe user is lost, the third recipe can be additionally presented. Thereby, it can be expected that the recipe selection range for the recipe user is expanded and the satisfaction level of the recipe user is increased. There is also an advantage that the processing load and traffic load as a server are not increased unnecessarily.

第2の実施の形態において図13Bのレシピ追加判定を行う例では、レシピ管理サーバ1は、第1レシピ抽出処理で抽出された第1レシピについて、料理種別の偏り傾向の判定を行い、偏りがあると判定した場合に、第2レシピ抽出処理及び第3レシピ選定処理を行うようにしている。
つまり第1レシピとして抽出されたレシピについて、例えば料理ジャンルや料理名の種類が少ない場合に、第3レシピも提示する。
例えば第1レシピのみで、多様な料理種別のレシピが抽出された場合は、第1レシピのみの提示でもレシピ利用者は多様な料理のレシピを選ぶことができ、十分にレシピ利用者に満足を与えることが期待できる。そこで第3レシピを提示するのは、第1レシピとして抽出された1又は複数のレシピの料理種別に偏りがある場合、つまり第1レシピのみの提示では、多様な料理種別をレシピ利用者に提案できない場合とする。
これにより常に満足度の高いレシピ提示を実現しつつ、第1レシピのみで十分な選択肢が提供できている場合には追加の処理や情報転送を行う必要は無いため、処理負担をむやみに増大させないようにすることができ、ネットワークを介して多数のレシピ利用者にレシピ提供サービスを行うサーバとして好適である。もちろんデータ通信のためのトラフィックをむやみに増大させないという点でも望ましい。
In the example in which the recipe addition determination of FIG. 13B is performed in the second embodiment, the recipe management server 1 determines the tendency of the dish type bias for the first recipe extracted in the first recipe extraction process. When it is determined that there is, the second recipe extraction process and the third recipe selection process are performed.
That is, for the recipe extracted as the first recipe, for example, when there are few types of cooking genres and cooking names, the third recipe is also presented.
For example, when recipes of various types of dishes are extracted with only the first recipe, the recipe user can select recipes for various dishes even when only the first recipe is presented. You can expect to give. Therefore, the third recipe is presented when the cooking type of one or a plurality of recipes extracted as the first recipe is biased, that is, when only the first recipe is presented, various cooking types are proposed to the recipe user. Suppose you can't.
As a result, a recipe with a high satisfaction level is always achieved, and when sufficient options can be provided only by the first recipe, there is no need to perform additional processing or information transfer, so the processing burden is not increased unnecessarily. This is suitable as a server that provides a recipe providing service to a large number of recipe users via a network. Of course, it is also desirable that traffic for data communication is not increased unnecessarily.

実施の形態では、第1レシピ抽出処理で抽出された第1レシピについて、料理種別の偏り傾向の判定を行い、偏り傾向に応じて設定された条件に基づいて第2レシピ抽出処理及び第3レシピ選定処理を行う例を説明した。
例えば第3の実施の形態において図15Bの処理を適用する場合、第1レシピについて料理種別の偏り傾向の判定を行い、判定結果に応じて閾値時間thTMを設定する。つまり第1レシピとして抽出されたレシピについて、料理の種類が多いか少ないかにより閾値時間thTMを可変設定する。
第1レシピとして料理種別が少ない場合、レシピ利用者がどのレシピも用いないと判断するまでの時間は短くなることが通常考えられる。一方、第1レシピとして料理種別が多い場合は、レシピ利用者が選択に迷う時間が長くなることが通常考えられる。つまり第1レシピのみを提示した状態において、レシピ利用者にとって望ましいレシピが提示されていないと推定するための時間は提示された料理種別の多寡に応じたものとなりやすい。これを考慮すると、閾値時間を料理種別の偏り傾向に応じて可変設定することで、第3レシピを提示するか否かの判定を、より的確に行うようことができる。これによってレシピ利用者の満足度の高いレシピ提示を促進できる。
また第4の実施の形態においても、図15Bのような処理、即ち第1レシピについて、料理種別の偏り傾向の判定を行い、判定結果に応じて閾値thCを設定することができる。つまり第1レシピとして抽出されたレシピについて、料理の種類が多いか少ないかにより閾値時間thTMを可変設定する。
例えば第1レシピとして料理種別が少ない場合、レシピ利用者が個別詳細情報をリクエストする回数は、料理種別が多い場合に比べて少なくなると想定される。例えば料理種別が多ければ、各料理種別について詳細情報を確認することでリクエスト回数が増える傾向となる。このため、レシピ利用者が迷っているか否かを推定する基準は、提示したレシピの料理種別に応じて可変設定する。これにより、レシピ利用者が迷っている状況をより正確に推定し、より適切に第3レシピの提示を行うことができ、満足度の高いレシピ提示を促進できる。
In the embodiment, for the first recipe extracted by the first recipe extraction process, the bias tendency of the dish type is determined, and the second recipe extraction process and the third recipe are performed based on the conditions set according to the bias tendency. The example which performs a selection process was demonstrated.
For example, in the case where the process of FIG. 15B is applied in the third embodiment, the bias tendency of the dish type is determined for the first recipe, and the threshold time thTM is set according to the determination result. That is, for the recipe extracted as the first recipe, the threshold time thTM is variably set depending on whether the types of dishes are large or small.
When there are few types of dishes as the first recipe, it is usually considered that the time until the recipe user determines that no recipe is used is shortened. On the other hand, when there are many types of dishes as the first recipe, it is usually considered that the time for the recipe user to get lost in selection becomes longer. That is, in the state where only the first recipe is presented, the time for estimating that a recipe desirable for the recipe user is not presented tends to be in accordance with the number of presented dish types. Considering this, it is possible to more accurately determine whether or not to present the third recipe by variably setting the threshold time according to the tendency of the dish type to be biased. Thereby, the recipe presentation with high satisfaction of the recipe user can be promoted.
Also in the fourth embodiment, the process shown in FIG. 15B, that is, the determination of the bias tendency of the dish type can be performed for the first recipe, and the threshold thC can be set according to the determination result. That is, for the recipe extracted as the first recipe, the threshold time thTM is variably set depending on whether the types of dishes are large or small.
For example, when the number of dish types is small as the first recipe, it is assumed that the number of times the recipe user requests individual detailed information is smaller than when the number of dish types is large. For example, if there are many types of dishes, the number of requests tends to increase by confirming detailed information for each type of dish. For this reason, the reference for estimating whether or not the recipe user is at a loss is variably set according to the dish type of the presented recipe. Thereby, it is possible to accurately estimate the situation in which the recipe user is at a loss, present the third recipe more appropriately, and promote highly satisfying recipe presentation.

第1〜第4の実施の形態に適用できる第3レシピ選定処理として、第1レシピに含まれず、かつ第1レシピと異なる属性を有するという選定条件に合致するレシピを第3レシピとして選定することを述べた(図11A、図11B、図11C)。
異なる属性であることを第3レシピの選定条件とすることで、第1レシピに対して料理のバリエーションを増やす方向で第3レシピを選定することができ、これにより第1及び第3レシピとして多様な料理のレシピをレシピ利用者に提示できる。
特に、図11A、図11B、図11Cで例示した属性とは、料理種別の属性、調理工程の属性、味覚属性である。このような各種属性の異なるものを第3レシピとすることで、多様な料理のレシピをレシピ利用者に提示できる。
As a third recipe selection process applicable to the first to fourth embodiments, selecting a recipe that is not included in the first recipe and that satisfies the selection condition of having an attribute different from the first recipe as the third recipe (FIGS. 11A, 11B, and 11C).
By making the selection condition of the third recipe to be a different attribute, the third recipe can be selected in a direction to increase the variation of the dish with respect to the first recipe, and thereby various as the first and third recipes Can present recipe recipes to recipe users.
In particular, the attributes exemplified in FIGS. 11A, 11B, and 11C are a cooking type attribute, a cooking process attribute, and a taste attribute. By making such a thing with various attributes different as a 3rd recipe, the recipe user of various dishes can be shown to a recipe user.

第1〜第4の実施の形態に適用できる追加食材設定処理として、レシピ管理サーバ1が、追加食材として、取得した食材情報で示される食材と組み合わされやすい食材を選択して第2レシピ抽出処理を行う例を述べた(図9B参照)。
即ち追加食材として、例えばレシピ利用者が選択した食材との組み合わせを考慮して設定する。これによりレシピ利用者にとって作りやすい料理のレシピが第3レシピとして選定される可能性を高めることができる。
As an additional ingredient setting process applicable to the first to fourth embodiments, the recipe management server 1 selects, as an additional ingredient, an ingredient that can be easily combined with the ingredient indicated by the obtained ingredient information, and a second recipe extraction process An example of performing is described (see FIG. 9B).
That is, as an additional ingredient, for example, a combination with an ingredient selected by a recipe user is taken into consideration. Accordingly, it is possible to increase the possibility that a recipe for cooking that is easy for a recipe user to be selected as the third recipe.

第1〜第4の実施の形態に適用できる追加食材設定処理として、レシピ管理サーバ1が、追加食材として、第1レシピが該当しない料理種別において利用されやすい食材を選択して第2レシピ抽出処理を行う例を述べた(図9C参照)。
追加食材は、第2レシピ抽出のために選択するのであるが、レシピ利用者が選択できるレシピ(料理)の幅を広げるためには、多様な料理種別のレシピが抽出できるとよい。そこで、第1レシピにおいて存在しない料理種別で利用されやすい食材を用いることで、第1レシピには含まれていないジャンルのレシピが抽出できる可能性を高めるようにする。
これにより第3レシピ提示によりレシピ利用者の料理の選択の幅を広げることができる。例えば第1レシピとされたレシピが日本料理に偏っていた場合、中華料理やイタリア料理などで用いられやすい食材を追加食材として第2レシピ抽出を行う。すると第3レシピを提示した際に多様な料理ジャンルのレシピをレシピ利用者に紹介できる。従って満足度の高いレシピ提示を促進できる。
As an additional ingredient setting process that can be applied to the first to fourth embodiments, the recipe management server 1 selects an ingredient that is likely to be used in a dish type that does not correspond to the first recipe as an additional ingredient, and a second recipe extraction process An example of performing is described (see FIG. 9C).
The additional ingredients are selected for extracting the second recipe, but in order to widen the range of recipes (cooking) that can be selected by the recipe user, it is preferable that recipes of various cooking types can be extracted. Therefore, the possibility of extracting a genre recipe that is not included in the first recipe is increased by using ingredients that are not easily used in the first recipe.
Thereby, the width | variety of selection of a recipe user's dish can be expanded by 3rd recipe presentation. For example, when the recipe designated as the first recipe is biased toward Japanese cuisine, the second recipe is extracted using additional ingredients as ingredients that are likely to be used in Chinese or Italian cuisine. Then, when the third recipe is presented, recipes of various cooking genres can be introduced to the recipe user. Accordingly, it is possible to promote the presentation of recipes with high satisfaction.

第1〜第4の実施の形態に適用できる追加食材設定処理として、レシピ管理サーバ1が、ユーザ端末3を用いて食材を選択してレシピ提示要求を行ったレシピ利用者の購入履歴情報から、現在、そのレシピ利用者がストックしている可能性が高いと推定される食材や、現在が購入時期にあたる食材を推定する処理を行い、推定された食材を追加食材として第2レシピ抽出処理を行う例を述べた(図10A参照)
追加食材を用いた第2レシピ(第3レシピ)は、レシピ利用者が食材を用意しやすいなどの点で作りやすいものが望ましい。但し追加食材は、レシピ利用者がストックしているか否かは不明である。そこでレシピ利用者の意思に基づかない追加食材として、ストックしていると推定される食材を選択することが好適となる。
またレシピ利用者がストックしていなくても、レシピ利用者がそろそろ購入すると推定される食材であれば、レシピ利用者にとって都合がよい。追加食材はレシピ利用者にとっては購入しやすく、もしくは既に購入しているかもしれない食材である可能性も高いためである。そこで、レシピ利用者の意思に基づかない追加食材として、レシピ利用者が時期的に買いやすい食材を選択する。
これにより第3レシピ提示によりレシピ利用者が作りやすい料理のレシピを加えて提示する可能性を高めることができる。
As the additional ingredient setting process applicable to the first to fourth embodiments, the recipe management server 1 selects the ingredients using the user terminal 3 and makes a recipe presentation request from the purchase history information of the recipe user. Currently, the recipe user is estimated to have a high possibility of stocking, and the process is to estimate the ingredients currently in the purchase period, and the second recipe extraction process is performed using the estimated ingredients as additional ingredients. An example was described (see FIG. 10A)
It is desirable that the second recipe (third recipe) using the additional ingredients is easy to make in that the recipe user can easily prepare the ingredients. However, it is unknown whether additional ingredients are stocked by the recipe user. Therefore, it is preferable to select a food that is estimated to be stocked as an additional food that is not based on the intention of the recipe user.
Moreover, even if the recipe user does not stock, it is convenient for the recipe user as long as the recipe user is expected to purchase soon. This is because the additional ingredients are easy to purchase for recipe users, or are likely to be ingredients that may have already been purchased. Therefore, as an additional ingredient that is not based on the intention of the recipe user, an ingredient that the recipe user can easily purchase is selected.
Thereby, it is possible to increase the possibility of adding and presenting a recipe of a dish that is easy for a recipe user to make by presenting the third recipe.

第1〜第4の実施の形態に適用できる追加食材設定処理として、レシピ管理サーバ1が、ユーザ端末3を用いて食材を選択してレシピ提示要求を行ったレシピ利用者の購入履歴情報に基づいて、各食材についての当該レシピ利用者の購入価格上限を設定し、現在の価格が当該レシピ利用者の購入価格上限以下である食材を追加食材として第2レシピ抽出処理を行う例を述べた(図10B参照)。
追加食材を用いた第2レシピ(第3レシピ)は、レシピ利用者がその追加食材を買いに行かなければ作れないレシピである可能性がある。一方で食材は時期によって価格が変動するが、レシピ利用者は常に食材の価格を許容することはなく、各種食材について購入価格範囲(上限)を持っている。例えば「キャベツは250円以上となったら買わない」などである。そこで現在の価格が、レシピ利用者の購入履歴における購入価格上限以下にある食材を追加食材として選択する。
これにより第3レシピは、レシピ利用者が購入してもよいと考える食材を用いたレシピ、つまりレシピ利用者が作りやすい料理のレシピとなる可能性を高めることができる。
As an additional ingredient setting process applicable to the first to fourth embodiments, the recipe management server 1 selects the ingredients using the user terminal 3 and based on the purchase history information of the recipe user who has made a recipe presentation request. Then, an example is described in which the purchase price upper limit of the recipe user for each ingredient is set, and the second recipe extraction process is performed using an ingredient whose current price is less than or equal to the purchase price upper limit of the recipe user as an additional ingredient ( (See FIG. 10B).
There is a possibility that the second recipe (third recipe) using the additional ingredients is a recipe that cannot be made unless the recipe user goes to buy the additional ingredients. On the other hand, the price of ingredients varies with time, but the recipe user does not always allow the price of ingredients, and has a purchase price range (upper limit) for various ingredients. For example, “Cabbage will not be bought if it exceeds 250 yen”. Therefore, an ingredient whose current price is below the purchase price upper limit in the purchase history of the recipe user is selected as an additional ingredient.
Thereby, a 3rd recipe can raise possibility that it will become the recipe using the foodstuff which a recipe user thinks that it may purchase, ie, the recipe of the recipe which a recipe user is easy to make.

なお本発明の情報処理装置の構成や処理は上記実施の形態で言及した物に限定されず、さらに多様な変形例が想定される。
Note that the configuration and processing of the information processing apparatus of the present invention are not limited to the ones mentioned in the above embodiment, and various modifications can be assumed.

<10.プログラム及び記憶媒体>
本発明の実施の形態のプログラムは、レシピ管理サーバ1における食材情報取得部1a、提示レシピ選択部1b、提示制御部1cの機能による処理を情報処理装置(CPU等)に実行させるプログラムである。
<10. Program and Storage Medium>
The program according to the embodiment of the present invention is a program that causes an information processing apparatus (CPU or the like) to execute processing based on the functions of the ingredient information acquisition unit 1a, the presentation recipe selection unit 1b, and the presentation control unit 1c in the recipe management server 1.

実施の形態のプログラムは、選択された食材を示す食材情報を取得する食材情報取得手順(S312)と、食材情報取得手順で取得した食材情報で示される食材により作成可能なレシピを第1レシピとして抽出する第1レシピ抽出手順(S401、S313a)と、食材情報取得手順で取得した食材情報で示される食材と追加候補食材により作成可能なレシピを第2レシピとして抽出する第2レシピ抽出手順(S403、S323)と、第2レシピのうちで、少なくとも前記第1レシピに含まれないという条件を含む選定条件に合致するレシピを第3レシピとして選定する第3レシピ選定手順(S404、S324)と、第1レシピ抽出手順で抽出した第1レシピと第3レシピ選定手順で選定した第3レシピとについて提示制御を行う提示制御手順(S314、S326)と、を情報処理装置に実行させる。
即ちこのプログラムは、情報処理装置に対して図7〜図16で説明した各実施の形態の処理を実行させるプログラムである。
The program according to the embodiment uses, as a first recipe, a recipe that can be created from the ingredients shown in the ingredient information acquired in the ingredients information acquisition procedure (S312) and the ingredients information acquired in the ingredients information acquisition procedure. First recipe extraction procedure (S401, S313a) to be extracted, and second recipe extraction procedure (S403) for extracting a recipe that can be created from the ingredients indicated by the ingredient information acquired in the ingredient information acquisition procedure and additional candidate ingredients as the second recipe , S323), and a third recipe selection procedure (S404, S324) for selecting, as the third recipe, a recipe that matches the selection condition including at least the condition that the second recipe is not included in the first recipe, A presentation system that performs presentation control for the first recipe extracted in the first recipe extraction procedure and the third recipe selected in the third recipe selection procedure Procedure (S314, S326), to execute the information processing apparatus.
That is, this program is a program for causing the information processing apparatus to execute the processing of each embodiment described with reference to FIGS.

このようなプログラムにより、上述したレシピ管理サーバ1はとしての情報処理装置を実現できる。
そしてこのようなプログラムはコンピュータ装置等の機器に内蔵されている記憶媒体としてのHDDや、CPUを有するマイクロコンピュータ内のROM等に予め記憶しておくことができる。あるいはまた、半導体メモリ、メモリカード、光ディスク、光磁気ディスク、磁気ディスクなどのリムーバブル記憶媒体に、一時的あるいは永続的に格納(記憶)しておくことができる。またこのようなリムーバブル記憶媒体は、いわゆるパッケージソフトウェアとして提供することができる。
また、このようなプログラムは、リムーバブル記憶媒体からパーソナルコンピュータ等にインストールする他、ダウンロードサイトから、LAN、インターネットなどのネットワークを介してダウンロードすることもできる。
By such a program, the information processing apparatus as the above-described recipe management server 1 can be realized.
Such a program can be stored in advance in an HDD as a storage medium built in a device such as a computer device, a ROM in a microcomputer having a CPU, or the like. Alternatively, it can be stored (stored) temporarily or permanently in a removable storage medium such as a semiconductor memory, memory card, optical disk, magneto-optical disk, or magnetic disk. Such a removable storage medium can be provided as so-called package software.
Further, such a program can be installed from a removable storage medium to a personal computer or the like, or can be downloaded from a download site via a network such as a LAN or the Internet.

1 レシピ管理サーバ、1a 食材情報取得部、1b 提示レシピ選択部、1c 提示制御部、1d レシピ管理部、2 ネットワーク、3 ユーザ端末、4 ECサーバ、50 レシピDB、51 ユーザDB、52 検索DB、53 食材DB、54 商品DB 1 Recipe Management Server, 1a Ingredient Information Acquisition Unit, 1b Presentation Recipe Selection Unit, 1c Presentation Control Unit, 1d Recipe Management Unit, 2 Network, 3 User Terminal, 4 EC Server, 50 Recipe DB, 51 User DB, 52 Search DB, 53 Food DB, 54 Product DB

Claims (10)

選択された食材を示す食材情報を取得する食材情報取得部と、
前記食材情報取得部が取得した食材情報に基づいて提示レシピを選択する提示レシピ選択部と、
前記提示レシピ選択部が選択した提示レシピについて提示制御を行う提示制御部と、
を備え、
前記提示レシピ選択部は、
前記食材情報取得部が取得した食材情報で示される食材により作成可能なレシピを第1レシピとして抽出する第1レシピ抽出処理と、
前記食材情報取得部が取得した食材情報で示される食材と追加食材により作成可能なレシピを第2レシピとして抽出する第2レシピ抽出処理と、
前記第2レシピのうちで、少なくとも前記第1レシピに含まれないという条件を含む選定条件に合致するレシピを第3レシピとして選定する第3レシピ選定処理と、
前記第1レシピと前記第3レシピを前記提示レシピとする選択処理を行う
情報処理装置。
An ingredient information acquisition unit for acquiring ingredient information indicating the selected ingredient;
A presentation recipe selection unit that selects a presentation recipe based on the ingredient information acquired by the ingredient information acquisition unit;
A presentation control unit that performs presentation control for the presentation recipe selected by the presentation recipe selection unit;
With
The presented recipe selection unit
A first recipe extraction process for extracting, as a first recipe, a recipe that can be created from the ingredients indicated by the ingredient information acquired by the ingredient information acquisition unit;
A second recipe extraction process for extracting, as a second recipe, a recipe that can be created from the ingredients indicated by the ingredient information acquired by the ingredient information acquisition unit and additional ingredients;
A third recipe selection process for selecting, as a third recipe, a recipe that matches a selection condition including at least the condition that the second recipe is not included in the first recipe;
An information processing apparatus that performs a selection process using the first recipe and the third recipe as the presentation recipe.
前記提示レシピ選択部は、
前記第1レシピ抽出処理で抽出された第1レシピを提示レシピとして、前記提示制御部によって端末装置で提示させた場合において、所定の条件に基づいて前記第2レシピ抽出処理及び前記第3レシピ選定処理を行って、前記第3レシピを提示レシピとし、前記提示制御部によって端末装置で提示させる
請求項1に記載の情報処理装置。
The presented recipe selection unit
When the first recipe extracted in the first recipe extraction process is presented as a presentation recipe on the terminal device by the presentation control unit, the second recipe extraction process and the third recipe selection are performed based on predetermined conditions. The information processing apparatus according to claim 1, wherein the information processing apparatus is configured to process the third recipe as a presentation recipe and to present the third recipe on a terminal device by the presentation control unit.
前記提示レシピ選択部は、
前記第1レシピ抽出処理で抽出された第1レシピについて、料理種別の偏り傾向の判定を行い、偏り傾向に応じて設定された条件に基づいて前記第2レシピ抽出処理及び前記第3レシピ選定処理を行う
請求項1又は請求項2に記載の情報処理装置。
The presented recipe selection unit
About the 1st recipe extracted by the 1st recipe extraction processing, the bias tendency of cooking classification is judged, and the 2nd recipe extraction processing and the 3rd recipe selection processing based on the conditions set up according to the bias tendency The information processing apparatus according to claim 1 or 2.
前記提示レシピ選択部は、
前記第3レシピ選定処理において、前記第1レシピに含まれず、かつ前記第1レシピと異なる属性を有するという選定条件に合致するレシピを第3レシピとして選定する
請求項1乃至請求項3のいずれかに記載の情報処理装置。
The presented recipe selection unit
The recipe that matches the selection condition that is not included in the first recipe and has an attribute different from the first recipe is selected as the third recipe in the third recipe selection process. The information processing apparatus described in 1.
前記提示レシピ選択部は、
前記追加食材として、前記食材情報取得部が取得した食材情報で示される食材と組み合わされやすい食材を選択して前記第2レシピ抽出処理を行う
請求項1乃至請求項4のいずれかに記載の情報処理装置。
The presented recipe selection unit
The information according to any one of claims 1 to 4, wherein the second recipe extraction process is performed by selecting an ingredient that is likely to be combined with an ingredient indicated by the ingredient information acquired by the ingredient information acquisition unit as the additional ingredient. Processing equipment.
前記提示レシピ選択部は、
前記追加食材として、前記第1レシピが該当しない料理種別において利用されやすい食材を選択して前記第2レシピ抽出処理を行う
請求項1乃至請求項4のいずれかに記載の情報処理装置。
The presented recipe selection unit
The information processing apparatus according to any one of claims 1 to 4, wherein the second recipe extraction process is performed by selecting an ingredient that is easily used in a dish type that does not correspond to the first recipe as the additional ingredient.
前記提示レシピ選択部は、
端末装置を用いて食材を選択してレシピ提示要求を行ったユーザの購入履歴情報から、現在が購入時期にあたる食材を推定する処理を行い、推定された食材を前記追加食材として前記第2レシピ抽出処理を行う
請求項1乃至請求項4のいずれかに記載の情報処理装置。
The presented recipe selection unit
From the purchase history information of the user who has selected the ingredients using the terminal device and has made a recipe presentation request, processing is performed to estimate the ingredients that are currently in the purchase period, and the second recipe is extracted using the estimated ingredients as the additional ingredients The information processing apparatus according to claim 1, wherein processing is performed.
前記提示レシピ選択部は、
端末装置を用いて食材を選択してレシピ提示要求を行ったユーザの購入履歴情報に基づいて、各食材についての当該ユーザの購入価格上限を設定し、現在の価格が当該ユーザの購入価格上限以下である食材を前記追加食材として前記第2レシピ抽出処理を行う
請求項1乃至請求項4のいずれかに記載の情報処理装置。
The presented recipe selection unit
Based on the purchase history information of the user who selected the ingredients using the terminal device and made the recipe presentation request, the purchase price upper limit of the user for each ingredient is set, and the current price is less than or equal to the purchase price upper limit of the user The information processing apparatus according to any one of claims 1 to 4, wherein the second recipe extraction process is performed using the food material that is the additional food material.
情報処理装置が実行する情報処理方法として、
選択された食材を示す食材情報を取得する食材情報取得ステップと、
前記食材情報取得ステップで取得した食材情報で示される食材により作成可能なレシピを第1レシピとして抽出する第1レシピ抽出ステップと、
前記食材情報取得ステップで取得した食材情報で示される食材と追加食材により作成可能なレシピを第2レシピとして抽出する第2レシピ抽出ステップと、
前記第2レシピのうちで、少なくとも前記第1レシピに含まれないという条件を含む選定条件に合致するレシピを第3レシピとして選定する第3レシピ選定ステップと、
前記第1レシピ抽出ステップで抽出した第1レシピと、前記第3レシピ選定ステップで選定した第3レシピとについて提示制御を行う提示制御ステップと、
を行う
情報処理方法。
As an information processing method executed by the information processing apparatus,
Ingredient information acquisition step for acquiring ingredient information indicating the selected ingredient,
A first recipe extracting step of extracting a recipe that can be created from the ingredients indicated by the ingredient information acquired in the ingredient information acquiring step as a first recipe;
A second recipe extracting step of extracting a recipe that can be created from the ingredients indicated by the ingredient information acquired in the ingredient information acquiring step and the additional ingredients as a second recipe;
A third recipe selection step of selecting, as the third recipe, a recipe that matches a selection condition including at least the condition that the second recipe is not included in the first recipe;
A presentation control step for performing presentation control for the first recipe extracted in the first recipe extraction step and the third recipe selected in the third recipe selection step;
Information processing method.
選択された食材を示す食材情報を取得する食材情報取得手順と、
前記食材情報取得手順で取得した食材情報で示される食材により作成可能なレシピを第1レシピとして抽出する第1レシピ抽出手順と、
前記食材情報取得手順で取得した食材情報で示される食材と追加食材により作成可能なレシピを第2レシピとして抽出する第2レシピ抽出手順と、
前記第2レシピのうちで、少なくとも前記第1レシピに含まれないという条件を含む選定条件に合致するレシピを第3レシピとして選定する第3レシピ選定手順と、
前記第1レシピ抽出手順で抽出した第1レシピと、前記第3レシピ選定手順で選定した第3レシピとについて提示制御を行う提示制御手順と、
を情報処理装置に実行させるプログラム。
Ingredient information acquisition procedure for acquiring the ingredient information indicating the selected ingredient,
A first recipe extraction procedure for extracting, as a first recipe, a recipe that can be created from the ingredients indicated by the ingredient information acquired in the ingredient information acquisition procedure;
A second recipe extraction procedure for extracting, as a second recipe, a recipe that can be created from the ingredients indicated by the ingredient information acquired in the ingredient information acquisition procedure and the additional ingredients;
A third recipe selection procedure for selecting, as the third recipe, a recipe that matches a selection condition including at least the condition that the second recipe is not included in the first recipe;
A presentation control procedure for performing presentation control for the first recipe extracted in the first recipe extraction procedure and the third recipe selected in the third recipe selection procedure;
For causing an information processing apparatus to execute the program.
JP2017551733A 2016-04-07 2016-04-07 Information processing apparatus, information processing method, and program Active JP6279823B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/061393 WO2017175353A1 (en) 2016-04-07 2016-04-07 Information processing device, information processing method, and program

Publications (2)

Publication Number Publication Date
JP6279823B1 JP6279823B1 (en) 2018-02-14
JPWO2017175353A1 true JPWO2017175353A1 (en) 2018-04-12

Family

ID=60000943

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017551733A Active JP6279823B1 (en) 2016-04-07 2016-04-07 Information processing apparatus, information processing method, and program

Country Status (2)

Country Link
JP (1) JP6279823B1 (en)
WO (1) WO2017175353A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7182979B2 (en) * 2018-10-02 2022-12-05 東芝テック株式会社 Presentation device and presentation method
JP2020197945A (en) * 2019-06-03 2020-12-10 東芝テック株式会社 Search device and program

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08339397A (en) * 1995-06-13 1996-12-24 Brother Ind Ltd Electronic menu preparing device
JP2001256346A (en) * 2000-03-09 2001-09-21 Susumu Kawakami System and method for menu management and recording medium
JP2006277410A (en) * 2005-03-29 2006-10-12 Toshiba Corp Cooking recipe proposal device, cooking recipe proposal method and program making computer execute this method
JP2008108053A (en) * 2006-10-25 2008-05-08 Nec Corp Foodstuff purchase support method and system therefor

Also Published As

Publication number Publication date
JP6279823B1 (en) 2018-02-14
WO2017175353A1 (en) 2017-10-12

Similar Documents

Publication Publication Date Title
US10474705B2 (en) Iterative image search algorithm informed by continuous human-machine input feedback
JP6291145B2 (en) Information processing apparatus, information processing method, program, and storage medium
JP5956706B1 (en) Information processing system, information processing apparatus, information processing method, and program
JP6046834B1 (en) Information processing apparatus, information processing method, program, and storage medium
US10664902B2 (en) Setting and displaying allocation quantities for allocating amounts of a food product to multiple users while meeting user restriction and demand conditions
JP6641460B2 (en) Information processing apparatus, information processing method, and program
JP6279823B1 (en) Information processing apparatus, information processing method, and program
US20150120705A1 (en) Cuisine search device, cuisine search method, program, and computer-readable storage medium
JP6262923B1 (en) Information processing apparatus, information processing method, and program
JP6599530B1 (en) Information processing apparatus, information processing method, program, and storage medium
US11036788B2 (en) Information processing device, information processing method, program, and storage medium
JP6542963B1 (en) INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, PROGRAM, AND STORAGE MEDIUM
JP7095267B2 (en) Information processing equipment, information processing methods and programs
JP6890747B2 (en) Information processing equipment, information processing methods, programs
JP2019169097A (en) Information processing device, information processing method, and program
JP6885253B2 (en) Information processing equipment, information processing methods and programs
JP6800983B2 (en) Information processing equipment, information processing methods, programs, storage media
JP6275932B1 (en) Information processing apparatus, information processing method, and program
JP2020194286A (en) Information processing device, information processing method and program

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20171205

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180117

R150 Certificate of patent or registration of utility model

Ref document number: 6279823

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250