1 / 16

CHEF (Hammond, 1987)

CHEF (Hammond, 1987).

eve-le
Download Presentation

CHEF (Hammond, 1987)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CHEF (Hammond, 1987) CHEFis a case-based planner, which can output new recipes given particular ingredients and tastes. Recipes are viewed as plans. They provide the sequence of steps that must be carried out to achieve the creation of some dish. CHEF creates its plans by recalling old plans that worked under similar circumstances and modifying them to fit its new situation. CHEF learns 1) new plans; 2) the features that predict failures; 3) past repairs to faulty plans.  This learning is accomplished by saving the different results of the planner's own experiences.

  2. Algorithm 1. Anticipate Failure of Input 2. IF Failure THEN Add Goals to Avoid the Failure 3. Retrieve Old Case Similar to New Problem 4. Modify Old Case to Match New Problem 5. Simulate Executing of the Plan 6. IF the Plan Failed THEN Explain Failure Repair Plan AssignIndex for Failure 7. ELSE Index for Success 8. Store the Plan as Case

  3. Problem anticipation The planer anticipates planning problems by noticing features in the current input that have previously participated in past planning problems. For example, in making the dish, the liquid produced by stir frying the beef ruined the texture of the broccoli while it was cooking. The failure is indexed in memory by the features ( to include meat, to include a crisp vegetable and to make a stir fry dish) that interacted to cause it. When these features are present in an input later, the planner can predict that the failure will occur again and add a goal to avoid the problem.

  4. Plan Retrieval The planner searches for a plan that satisfies as many of its current goals as possible while avoiding the problems that it has predicted. For example, In searching for a plan for the chicken and snowpeas situation, CHEF searches for the plan that, among other things, avoids the predicated problem of soggy vegetables. Because the beef and broccoli plan is indexed by the fact that it solves the problem of soggy vegetables due to stir frying with meats, the plan retriever is able to find it, even though a recipe for chicken and greenbeans, is also in memory.

  5. Plan Modification The planner alters the plans it has found to satisfy any goals from the input that are not already achieved. In altering the BEEF-AND-BROCCOLI plan to include chicken and snow peas, the planner has the information that both new ingredients are partial matches for existing ones and can be directly substituted for them. A critic under the concept CHICKEN then adds the step of boning the chicken before chopping.

  6. Plan Repair Once a plan is completed, CHEF runs a simulation of it using a set of causal rules. At the end of the simulation, it checks the final states against the goals of the plan. When a plan fails, the planner fixes the faulty plan by building up a causal explanation of why the failure has occurred and using it to find the different strategies for repairing it. For example, CHEF originally built a simple plan in which the two main ingredients( beef and broccoli) were stir fried together. This plan fails because the side effect of liquid coming from the stir-frying of the beef is disabling a precondition attached to the broccoli stir-fry plan that the pan being used is dry. This explanation of the failure indexes to the TOP SIDE-EFFECT: DISABLED-CONDITION:CONCURRENT

  7. Plan Repair con. • Three strategies can be made to repair the plan: • ALTER-PLAN:SIDE-EFFCT: Replace the step that cause the violating condition with one that does not have the same side effect but achieves the same goal. • SPLIT-AND-REFORM: Split the step into two separate steps and run them independently. • ADJUNCT-PLAN:REMOVE: Add a new step to be run along with a step that causes a side-effect that removes the side-effect. • Repair failure without interfering with other goals • – Each repair strategy breaks a link in the causal chain

  8. Thematic Organization Packets (TOPs) Each TOP is indexed by the description of a particular type of planning problem and each organizes a set of strategies for deal with that type of problem, which is caused by interactions between states and goals.  These pieces of information cannot be tied to any individual goal.  TOPs provide a means to store such information and strategies.

  9. Plan storage, and credit assignment Once a plan has been built and run, it is stored in memory, indexed by the goals it satisfies and the problem it solves. CHEF makes use of the same causal explanation used to find its TOPs and repair strategies to figure out which features should be blamed for a failure and marked to predict this failure in later inputs.

  10. Example RETRIEVER: Searching for plan that satisfies -- include beef in the dish. include broccoli in the dish. Make a stir-fry dish. Found recipe -> REC2 BEEF-WITH-GREEN-BEANS Recipe exactly satisfies goals -> Make a stir-fry dish include beef in the dish. Recipe partially matches -> include broccoli in the dish. in that the recipe satisfies: include vegetables in the dish

  11. MODIFIER:: Building new name for copy of BEEF-WITH-GREEN-BEANS Calling recipe BEEF-AND-BROCCOLI To satisfy: include broccoli in the dish. Placing some broccoli in recipe BEEF-AND-BROCCOLI -- Considering ingredient-critic: Before ding step: Stir-fry the –Variable- do: Chop the broccoli into pieces the size of chunks -- ingredient-critic applied. Projected results: The beef is now tender. The dish now tastes salty. The dish now tastes savory. The dish now tastes sweet. The broccoli is now crisp. The dish now tastes like garlic SIMULATOR: Executing recipe.

  12. REPAIRER: Checking results. Checking goals of recipe-> BEEF-AND-BROCCOLI The goal: The broccoli is now crisp is not satisfied. It is instead the case that: The broccoli is now soggy. Changing name of recipe BEEF-AND-BROCCOLI to BAD-BEEF-AND-BROCCOLI Explaining the failures … ANSWER; … Found TOP TOP1 -> SIDE-EFFECT:DISABLED-CODITION:CONCURRENT It has 3 repair strategies associated with it: SPLIT-AND-REFORM ALTER-PLAN:SIDE-EFFECT ADJUNCT-PLAN Applying TOP to failure in recipe BAD-BEEF-AND BROCCOLI Asking questions needed for evaluating strategy: SPLIT-AND-REFORM …

  13. ASSIGNER: Building demons to anticipate failure. Building demon: DEMONO to anticipate interaction between rules: “Meat sweats when it is stir-fried.” “Stir-frying in too much liquid makes vegetable soggy.” Indexing demon: DEMONO under item: MEAT By test: Is the item a MEAT? Indexing demon: DEMONO under item: VEGETABLE By test: Is the item a VEGETABLE and Is the TEXTURE of item CRISP? Indexing demon: DEMONO under dish: STYLE-STIR-FRY By test: Is the dish STYLE-STIR-FRY ANTICIPATOR: Searching for a plan that satisfies – Include chicken in the dish Include snow peas in the dish Make a stir-fry dish. Collecting and activating tests.

  14. Fired: Is the item a MEAT? Fired: Is the item a VEGETABLE and Is the TEXTURE of item CRISP? Fired: Is the dish STYLE-STIR-FRY Chicken + Snow Pea + Stir-frying = failure “Meat sweats when it is stir-fried.” “Stir-frying in too much liquid makes vegetable soggy.” Fired demon: DEMONO RETRIEVER: Searching for plan that satisfies -- include beef in the dish. include broccoli in the dish. Make a stir-fry dish. Avoid failure of type SIDE-EFFECT-DISABLED-CONDITION: CONCURRENT Found recipe -> REC9 BEEF-AND-BROCCOLI

  15. Theoretical Contribution! CHEF proposes a new approach to planning that allows it to avoid many of the problems of more traditional planning systems. Some of its advances are based on the fact that it reuses plans. Some are the result of the fact that it incrementally repairs its plans and learns from experience.

  16. Thank you!

More Related