Generative group-based meal planning system and method
First Claim
1. A computer implemented method in a data processing system comprising a processor and a memory comprising instructions which are executed by the processor to cause the processor to implement a generative group-based meal planning system comprising a cognitive system having natural language processing capabilities, the method comprising:
- receiving, by the meal planning system, a request to generate a candidate meal plan, wherein a seed list including one or more ingredients is designated by the cognitive system based on dish classifications, categories of ingredients, and cuisine classifications;
wherein the one or more ingredients included in the seed list are incorporated into one or more recipes contained in the candidate meal plan, wherein the number of needed recipes to be included in the candidate meal plan is pre-determined;
importing, by the meal planning system, one or more recipes incorporating the one or more identified ingredients;
generating, by the cognitive system, one or more parent meal plans, each parent meal plan containing the pre-determined number of recipes, wherein the parent meal plan recipes are randomly selected from the imported recipes incorporating the one or more identified ingredients;
generating, by the meal planning system, one or more child meal plans, wherein each child meal plan is generated by randomly selecting different parent meal plan recipes and combining the selected parent meal plan recipes;
wherein one or more mutations are strategically inserted by the cognitive system into the one or more child meal plans;
determining, by the meal planning system, a fitness score for the one or more child meal plans through the utilization of a genetic algorithm, wherein the genetic algorithm comprises a fitness function that considers cost of ingredients, shelf life of ingredients, flavor compatibility of ingredients, waste ingredients, and preparation time as factors in determining the fitness score, wherein the cognitive system generates an additional recipe using all the waste ingredients, and the additional recipe is incorporated into the one or more parent meal plans;
wherein the steps of generating one or more parent meal plans, generating one or more child meal plans, and determining the fitness score for the one or more child meal plans are repeated for a pre-determined and finite number of iterations, wherein the one or more child meal plans with the highest fitness scores are used as the next generation of one or more parent meal plans; and
outputting, by the meal planning system, the candidate meal plan having the pre-determined number of recipes, wherein the child meal plan having the highest fitness score is selected to be the candidate meal plan.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments provide a generative group-based meal planning system and method for the creation of candidate meal plans based upon a pre-selected list of ingredients. The meal planning system can create parent meal plans based upon one or more recipes having one or more of the pre-selected ingredients. Child meal plans can be created by the random crossing of the recipes contained in the parent meal plans. The child meal plans can be scored against a genetic algorithm, such as a fitness function, which takes into consideration cost of ingredients, waste, flavor compatibility, preparation time, and ingredient shelf life. The meal planning system can utilize a cognitive system with natural language processing abilities to generate new recipes based off of waste or flavor compatibility. The child meal plans having the highest fitness score can be used as the parent meal plans in the next iteration of analysis. After a pre-determined number of iterations, a candidate meal plan can be output by the system.
38 Citations
19 Claims
-
1. A computer implemented method in a data processing system comprising a processor and a memory comprising instructions which are executed by the processor to cause the processor to implement a generative group-based meal planning system comprising a cognitive system having natural language processing capabilities, the method comprising:
-
receiving, by the meal planning system, a request to generate a candidate meal plan, wherein a seed list including one or more ingredients is designated by the cognitive system based on dish classifications, categories of ingredients, and cuisine classifications;
wherein the one or more ingredients included in the seed list are incorporated into one or more recipes contained in the candidate meal plan, wherein the number of needed recipes to be included in the candidate meal plan is pre-determined;importing, by the meal planning system, one or more recipes incorporating the one or more identified ingredients; generating, by the cognitive system, one or more parent meal plans, each parent meal plan containing the pre-determined number of recipes, wherein the parent meal plan recipes are randomly selected from the imported recipes incorporating the one or more identified ingredients; generating, by the meal planning system, one or more child meal plans, wherein each child meal plan is generated by randomly selecting different parent meal plan recipes and combining the selected parent meal plan recipes;
wherein one or more mutations are strategically inserted by the cognitive system into the one or more child meal plans;determining, by the meal planning system, a fitness score for the one or more child meal plans through the utilization of a genetic algorithm, wherein the genetic algorithm comprises a fitness function that considers cost of ingredients, shelf life of ingredients, flavor compatibility of ingredients, waste ingredients, and preparation time as factors in determining the fitness score, wherein the cognitive system generates an additional recipe using all the waste ingredients, and the additional recipe is incorporated into the one or more parent meal plans; wherein the steps of generating one or more parent meal plans, generating one or more child meal plans, and determining the fitness score for the one or more child meal plans are repeated for a pre-determined and finite number of iterations, wherein the one or more child meal plans with the highest fitness scores are used as the next generation of one or more parent meal plans; and outputting, by the meal planning system, the candidate meal plan having the pre-determined number of recipes, wherein the child meal plan having the highest fitness score is selected to be the candidate meal plan. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 18)
-
-
11. A non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to:
-
receive a request to generate a candidate meal plan, wherein a seed list including one or more ingredients is designated by a cognitive system based on dish classifications, categories of ingredients, and cuisine classifications, wherein the one or more ingredients included in the seed list are incorporated into one or more recipes contained in the candidate meal plan, wherein the number of needed recipes to be included in the candidate meal plan is pre-determined; import one or more recipes incorporating the one or more identified ingredients; generate, by the cognitive system, one or more parent meal plans each parent meal plan containing the pre-determined number of recipes, wherein the parent meal plan recipes are randomly selected from the identified recipes incorporating the one or more imported ingredients; generate one or more child meal plans, wherein each child meal plan is generated by randomly selecting different parent meal plan recipes and combining the selected parent meal plan recipes;
wherein one or more mutations are strategically inserted by the cognitive system into the one or more child meal plans;determine a fitness score for the one or more child meal plans through the utilization of a genetic algorithm, wherein the genetic algorithm comprises a fitness function that considers cost of ingredients, shelf life of ingredients, flavor compatibility of ingredients, waste ingredients, and preparation time as factors in determining the fitness score;
wherein the cognitive system generates an additional recipe using all the waste ingredients, and the additional recipe is incorporated into the one or more parent meal plans; andoutput the candidate meal plan having the chosen number of recipes, wherein the child meal plan having the highest fitness score is selected to be the candidate meal plan; wherein generating one or more parent meal plans, generating one or more child meal plans, and determining the fitness score for the one or more child meal plans are repeated for a pre-determined and finite number of iterations, wherein the one or more child meal plans with the highest fitness scores are used as the next generation of one or more parent meal plans. - View Dependent Claims (12, 13, 14, 15, 16, 19)
-
-
17. A system for generative group-based meal planning, comprising:
-
a cognitive system having natural language processing capabilities; a meal planning processor configured to; receive a request to generate a candidate meal plan, wherein a seed list including one or more ingredients is designated by the cognitive system based on dish classifications, categories of ingredients, and cuisine classifications, wherein the one or more ingredients included in the seed list are incorporated into one or more recipes contained in the candidate meal plan, wherein the number of needed recipes to be included in the candidate meal plan is pre-determined; import one or more recipes incorporating the one or more identified ingredients; generate, by the cognitive system, one or more parent meal plans, each parent meal plan containing the pre-determined number of recipes, wherein the parent meal plan recipes are randomly selected from the identified recipes incorporating the one or more imported ingredients; generate one or more child meal plans, wherein each child meal plan is generated by randomly selecting different parent meal plan recipes and combining the selected parent meal plan recipes;
wherein one or more mutations are strategically inserted by the cognitive system into the one or more child meal plans;determine a fitness score for the one or more child meal plans through the utilization of a genetic algorithm, wherein the genetic algorithm comprises a fitness function that considers cost of ingredients, shelf life of ingredients, flavor compatibility of ingredients, waste ingredients, and preparation time as factors in determining the fitness score;
wherein the cognitive system generates an additional recipe using all the waste ingredients, and the additional recipe is incorporated into the one or more parent meal plans; andoutput the candidate meal plan having the chosen number of recipes, wherein the child meal plan having the highest fitness score is selected to be the candidate meal plan; wherein generating one or more parent meal plans, generating one or more child meal plans, and determining the fitness score for the one or more child meal plans are repeated for a pre-determined and finite number of iterations, wherein the one or more child meal plans with the highest fitness scores are used as the next generation of one or more parent meal plans.
-
Specification