According to an aspect, food recipes are scored and ranked based on one or more culinary objectives. A general dish specification includes a selected dish type, a selected cuisine type, and one or more culinary objectives. Candidate ingredient types are identified based on recipes of the selected dish type and the selected cuisine type in a recipe database. A number or range of ingredients are computed for each candidate ingredient type based on a frequency of occurrence of ingredients of each candidate ingredient type. A recipe closeness score is computed for a plurality of the recipes of the selected dish type and the selected cuisine type in the recipe database based on the culinary objectives, a bill of ingredients, and parameters for the recipes stored in the database. The recipes are ranked based on the recipe closeness scores and a ranked list of the recipes is provided.
展开▼