make_a_salad-0


Synsets

Transition Paths By Task Scope Objects

graph TD; initial-avocadon01(initial: avocado.n.01); initial-cucumbern02(initial: cucumber.n.02); future-diced__avocadon01(future: diced__avocado.n.01); future-diced__cucumbern01(future: diced__cucumber.n.01); future-diced__lettucen01(future: diced__lettuce.n.01); future-diced__spinachn01(future: diced__spinach.n.01); initial-lettucen03(initial: lettuce.n.03); initial-spinachn02(initial: spinach.n.02); recipe-avocadon01-slicing(recipe: avocado.n.01-slicing); half__avocadon01(half__avocado.n.01); recipe-uncooked-half__avocadon01-dicing(recipe: uncooked-half__avocado.n.01-dicing); recipe-cucumbern02-slicing(recipe: cucumber.n.02-slicing); half__cucumbern01(half__cucumber.n.01); recipe-uncooked-half__cucumbern01-dicing(recipe: uncooked-half__cucumber.n.01-dicing); recipe-lettucen03-slicing(recipe: lettuce.n.03-slicing); half__lettucen01(half__lettuce.n.01); recipe-uncooked-half__lettucen01-dicing(recipe: uncooked-half__lettuce.n.01-dicing); recipe-spinachn02-slicing(recipe: spinach.n.02-slicing); half__spinachn01(half__spinach.n.01); recipe-uncooked-half__spinachn01-dicing(recipe: uncooked-half__spinach.n.01-dicing); initial-avocadon01 --> recipe-avocadon01-slicing; initial-cucumbern02 --> recipe-cucumbern02-slicing; initial-lettucen03 --> recipe-lettucen03-slicing; initial-spinachn02 --> recipe-spinachn02-slicing; recipe-avocadon01-slicing --> half__avocadon01; half__avocadon01 --> recipe-uncooked-half__avocadon01-dicing; recipe-uncooked-half__avocadon01-dicing --> future-diced__avocadon01; recipe-cucumbern02-slicing --> half__cucumbern01; half__cucumbern01 --> recipe-uncooked-half__cucumbern01-dicing; recipe-uncooked-half__cucumbern01-dicing --> future-diced__cucumbern01; recipe-lettucen03-slicing --> half__lettucen01; half__lettucen01 --> recipe-uncooked-half__lettucen01-dicing; recipe-uncooked-half__lettucen01-dicing --> future-diced__lettucen01; recipe-spinachn02-slicing --> half__spinachn01; half__spinachn01 --> recipe-uncooked-half__spinachn01-dicing; recipe-uncooked-half__spinachn01-dicing --> future-diced__spinachn01;

Scenes

Full Definition

(define (problem make_a_salad-0)
    (:domain omnigibson)

    (:objects
        bowl.n.01_1 - bowl.n.01
        countertop.n.01_1 - countertop.n.01
        lettuce.n.03_1 - lettuce.n.03
        diced__lettuce.n.01_1 - diced__lettuce.n.01
        electric_refrigerator.n.01_1 - electric_refrigerator.n.01
        spinach.n.02_1 - spinach.n.02
        diced__spinach.n.01_1 - diced__spinach.n.01
        cucumber.n.02_1 - cucumber.n.02
        diced__cucumber.n.01_1 - diced__cucumber.n.01
        chickpea__can.n.01_1 - chickpea__can.n.01
        chickpea.n.03_1 - chickpea.n.03
        avocado.n.01_1 - avocado.n.01
        diced__avocado.n.01_1 - diced__avocado.n.01
        vinegar.n.01_1 - vinegar.n.01
        vinegar__bottle.n.01_1 - vinegar__bottle.n.01
        salt.n.02_1 - salt.n.02
        salt__shaker.n.01_1 - salt__shaker.n.01
        crouton.n.01_1 - crouton.n.01
        tupperware.n.01_1 - tupperware.n.01
        chopping_board.n.01_1 - chopping_board.n.01
        carving_knife.n.01_1 - carving_knife.n.01
        floor.n.01_1 - floor.n.01
        agent.n.01_1 - agent.n.01
    )
    
    (:init 
        (ontop bowl.n.01_1 countertop.n.01_1) 
        (inside lettuce.n.03_1 electric_refrigerator.n.01_1) 
        (inside spinach.n.02_1 electric_refrigerator.n.01_1) 
        (inside cucumber.n.02_1 electric_refrigerator.n.01_1) 
        (ontop chickpea__can.n.01_1 countertop.n.01_1) 
        (filled chickpea__can.n.01_1 chickpea.n.03_1)
        (ontop avocado.n.01_1 bowl.n.01_1) 
        (filled vinegar__bottle.n.01_1 vinegar.n.01_1) 
        (ontop vinegar__bottle.n.01_1 countertop.n.01_1) 
        (insource salt__shaker.n.01_1 salt.n.02_1)
        (ontop salt__shaker.n.01_1 countertop.n.01_1)
        (filled tupperware.n.01_1 crouton.n.01_1)
        (ontop tupperware.n.01_1 countertop.n.01_1)
        (future diced__lettuce.n.01_1)
        (future diced__spinach.n.01_1)
        (future diced__cucumber.n.01_1)
        (future diced__avocado.n.01_1)
        (ontop chopping_board.n.01_1 countertop.n.01_1)
        (ontop carving_knife.n.01_1 chopping_board.n.01_1)
        (inroom countertop.n.01_1 kitchen) 
        (inroom electric_refrigerator.n.01_1 kitchen) 
        (inroom floor.n.01_1 kitchen) 
        (ontop agent.n.01_1 floor.n.01_1)
    )
    
    (:goal 
        (and 
            (real ?diced__lettuce.n.01_1)
            (real ?diced__spinach.n.01_1)
            (real ?diced__cucumber.n.01_1)
            (real ?diced__avocado.n.01_1)
            (contains ?bowl.n.01_1 ?diced__lettuce.n.01_1)
            (contains ?bowl.n.01_1 ?diced__spinach.n.01_1)
            (contains ?bowl.n.01_1 ?diced__cucumber.n.01_1)
            (contains ?bowl.n.01_1 ?diced__avocado.n.01_1)
            (contains ?bowl.n.01_1 ?chickpea.n.03_1)
            (contains ?bowl.n.01_1 ?salt.n.02_1)
            (contains ?bowl.n.01_1 ?vinegar.n.01_1)
            (contains ?bowl.n.01_1 ?crouton.n.01_1)
        )
    )
)

  

Debugging: All Possible Recipes Resulting in Future Synsets

graph TD; recipe-uncooked-half__avocadon01-dicing(recipe: uncooked-half__avocado.n.01-dicing); future-diced__lettucen01(future: diced__lettuce.n.01); recipe-uncooked-half__cucumbern01-dicing(recipe: uncooked-half__cucumber.n.01-dicing); missing-half__avocadon01(missing: half__avocado.n.01); future-diced__spinachn01(future: diced__spinach.n.01); initial-cucumbern02(initial: cucumber.n.02); recipe-uncooked-half__lettucen01-dicing(recipe: uncooked-half__lettuce.n.01-dicing); recipe-lettucen03-slicing(recipe: lettuce.n.03-slicing); initial-avocadon01(initial: avocado.n.01); initial-lettucen03(initial: lettuce.n.03); recipe-spinachn02-slicing(recipe: spinach.n.02-slicing); missing-half__spinachn01(missing: half__spinach.n.01); initial-spinachn02(initial: spinach.n.02); future-diced__cucumbern01(future: diced__cucumber.n.01); recipe-uncooked-half__spinachn01-dicing(recipe: uncooked-half__spinach.n.01-dicing); missing-half__lettucen01(missing: half__lettuce.n.01); recipe-avocadon01-slicing(recipe: avocado.n.01-slicing); missing-half__cucumbern01(missing: half__cucumber.n.01); future-diced__avocadon01(future: diced__avocado.n.01); recipe-cucumbern02-slicing(recipe: cucumber.n.02-slicing); recipe-uncooked-half__avocadon01-dicing --> future-diced__avocadon01; recipe-uncooked-half__cucumbern01-dicing --> future-diced__cucumbern01; missing-half__avocadon01 --> recipe-uncooked-half__avocadon01-dicing; initial-cucumbern02 --> recipe-cucumbern02-slicing; recipe-uncooked-half__lettucen01-dicing --> future-diced__lettucen01; recipe-lettucen03-slicing --> missing-half__lettucen01; initial-avocadon01 --> recipe-avocadon01-slicing; initial-lettucen03 --> recipe-lettucen03-slicing; recipe-spinachn02-slicing --> missing-half__spinachn01; missing-half__spinachn01 --> recipe-uncooked-half__spinachn01-dicing; initial-spinachn02 --> recipe-spinachn02-slicing; recipe-uncooked-half__spinachn01-dicing --> future-diced__spinachn01; missing-half__lettucen01 --> recipe-uncooked-half__lettucen01-dicing; recipe-avocadon01-slicing --> missing-half__avocadon01; missing-half__cucumbern01 --> recipe-uncooked-half__cucumbern01-dicing; recipe-cucumbern02-slicing --> missing-half__cucumbern01;