make_soup-0


Synsets

Transition Paths By Task Scope Objects

graph TD; initial-carrotn03(initial: carrot.n.03); initial-celeryn02(initial: celery.n.02); initial-chickenn01(initial: chicken.n.01); initial-chicken_brothn01(initial: chicken_broth.n.01); future-chicken_soupn01(future: chicken_soup.n.01); future-cooked__chicken_soupn01(future: cooked__chicken_soup.n.01); initial-rosemaryn02(initial: rosemary.n.02); initial-saltn02(initial: salt.n.02); recipe-carrotn03-slicing(recipe: carrot.n.03-slicing); half__carrotn01(half__carrot.n.01); recipe-uncooked-half__carrotn01-dicing(recipe: uncooked-half__carrot.n.01-dicing); diced__carrotn01(diced__carrot.n.01); recipe-celeryn02-slicing(recipe: celery.n.02-slicing); half__celeryn01(half__celery.n.01); recipe-chicken_soup(recipe: chicken_soup); diced__celeryn01(diced__celery.n.01); recipe-uncooked-half__celeryn01-dicing(recipe: uncooked-half__celery.n.01-dicing); initial-carrotn03 --> recipe-carrotn03-slicing; initial-celeryn02 --> recipe-celeryn02-slicing; initial-chickenn01 --> recipe-chicken_soup; initial-chicken_brothn01 --> recipe-chicken_soup; initial-rosemaryn02 --> recipe-chicken_soup; initial-saltn02 --> recipe-chicken_soup; recipe-carrotn03-slicing --> half__carrotn01; half__carrotn01 --> recipe-uncooked-half__carrotn01-dicing; recipe-uncooked-half__carrotn01-dicing --> diced__carrotn01; diced__carrotn01 --> recipe-chicken_soup; recipe-celeryn02-slicing --> half__celeryn01; half__celeryn01 --> recipe-uncooked-half__celeryn01-dicing; recipe-chicken_soup --> future-cooked__chicken_soupn01; diced__celeryn01 --> recipe-chicken_soup; recipe-uncooked-half__celeryn01-dicing --> diced__celeryn01;

Unreachable Goal Synsets

Scenes

Full Definition

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

    (:objects
        chicken_broth.n.01_1 - chicken_broth.n.01
        celery.n.02_1 - celery.n.02
        carrot.n.03_1 - carrot.n.03
        chicken.n.01_1 - chicken.n.01
        rosemary.n.02_1 - rosemary.n.02
        carving_knife.n.01_1 - carving_knife.n.01
        salt.n.02_1 - salt.n.02
        chicken_soup.n.01_1 - chicken_soup.n.01
        cooked__chicken_soup.n.01_1 - cooked__chicken_soup.n.01
        stove.n.01_1 - stove.n.01
        stockpot.n.01_1 - stockpot.n.01
        salt__shaker.n.01_1 - salt__shaker.n.01
        chopping_board.n.01_1 - chopping_board.n.01
        cabinet.n.01_1 - cabinet.n.01
        countertop.n.01_1 - countertop.n.01
        chicken_broth__carton.n.01_1 - chicken_broth__carton.n.01
        rosemary__shaker.n.01_1 - rosemary__shaker.n.01
        electric_refrigerator.n.01_1 - electric_refrigerator.n.01
        agent.n.01_1 - agent.n.01
        floor.n.01_1 - floor.n.01
    )
    
    (:init 
        (filled chicken_broth__carton.n.01_1 chicken_broth.n.01_1) 
        (inside chicken_broth__carton.n.01_1 electric_refrigerator.n.01_1) 
        (inside carrot.n.03_1 electric_refrigerator.n.01_1) 
        (not 
            (cooked carrot.n.03_1)
        ) 
        (inside celery.n.02_1 electric_refrigerator.n.01_1) 
        (not 
            (cooked celery.n.02_1)
        ) 
        (inside chopping_board.n.01_1 cabinet.n.01_1) 
        (inside carving_knife.n.01_1 cabinet.n.01_1) 
        (inside chicken.n.01_1 electric_refrigerator.n.01_1) 
        (not 
            (cooked chicken.n.01_1)
        ) 
        (insource salt__shaker.n.01_1 salt.n.02_1)
        (ontop salt__shaker.n.01_1 countertop.n.01_1)
        (insource rosemary__shaker.n.01_1 rosemary.n.02_1) 
        (inside rosemary__shaker.n.01_1 cabinet.n.01_1) 
        (inroom stove.n.01_1 kitchen) 
        (inroom countertop.n.01_1 kitchen) 
        (inroom cabinet.n.01_1 kitchen) 
        (inroom electric_refrigerator.n.01_1 kitchen) 
        (ontop stockpot.n.01_1 countertop.n.01_1) 
        (future chicken_soup.n.01_1) 
        (future cooked__chicken_soup.n.01_1) 
        (inroom floor.n.01_1 kitchen) 
        (ontop agent.n.01_1 floor.n.01_1)
    )
    
    (:goal 
        (and 
            (or 
                (real ?chicken_soup.n.01_1) 
                (real ?cooked__chicken_soup.n.01_1)
            ) 
            (or 
                (contains ?stockpot.n.01_1 ?chicken_soup.n.01_1) 
                (contains ?stockpot.n.01_1 ?cooked__chicken_soup.n.01_1)
            )
        )
    )
)

  

Debugging: All Possible Recipes Resulting in Future Synsets

graph TD; initial-saltn02(initial: salt.n.02); recipe-carrotn03-slicing(recipe: carrot.n.03-slicing); future-cooked__chicken_soupn01(future: cooked__chicken_soup.n.01); missing-diced__celeryn01(missing: diced__celery.n.01); missing-diced__carrotn01(missing: diced__carrot.n.01); initial-carrotn03(initial: carrot.n.03); initial-chickenn01(initial: chicken.n.01); recipe-uncooked-half__carrotn01-dicing(recipe: uncooked-half__carrot.n.01-dicing); missing-half__celeryn01(missing: half__celery.n.01); recipe-celeryn02-slicing(recipe: celery.n.02-slicing); recipe-chicken_soup(recipe: chicken_soup); initial-celeryn02(initial: celery.n.02); initial-rosemaryn02(initial: rosemary.n.02); missing-half__carrotn01(missing: half__carrot.n.01); recipe-uncooked-half__celeryn01-dicing(recipe: uncooked-half__celery.n.01-dicing); initial-chicken_brothn01(initial: chicken_broth.n.01); initial-saltn02 --> recipe-chicken_soup; recipe-carrotn03-slicing --> missing-half__carrotn01; missing-diced__celeryn01 --> recipe-chicken_soup; missing-diced__carrotn01 --> recipe-chicken_soup; initial-carrotn03 --> recipe-carrotn03-slicing; initial-chickenn01 --> recipe-chicken_soup; recipe-uncooked-half__carrotn01-dicing --> missing-diced__carrotn01; missing-half__celeryn01 --> recipe-uncooked-half__celeryn01-dicing; recipe-celeryn02-slicing --> missing-half__celeryn01; recipe-chicken_soup --> future-cooked__chicken_soupn01; initial-celeryn02 --> recipe-celeryn02-slicing; initial-rosemaryn02 --> recipe-chicken_soup; missing-half__carrotn01 --> recipe-uncooked-half__carrotn01-dicing; recipe-uncooked-half__celeryn01-dicing --> missing-diced__celeryn01; initial-chicken_brothn01 --> recipe-chicken_soup;