def have_cake(): cakes = ['Cake'] have_relations = make_relations('Have', cakes) eaten_relations = make_relations('Eaten', cakes) def get_init(): pos = have_relations neg = eaten_relations return FluentState(pos, neg) def get_goal(): return have_relations + eaten_relations return HaveCakeProblem(get_init(), get_goal())
def air_cargo_p1(): cargos = ['C1', 'C2'] planes = ['P1', 'P2'] airports = ['JFK', 'SFO'] at_relations = make_relations('At', cargos + planes, airports) in_relations = make_relations('In', cargos, planes) pos = create_expressions([ 'At(C1, SFO)', 'At(C2, JFK)', 'At(P1, SFO)', 'At(P2, JFK)', ]) init = FluentState(pos, [r for r in at_relations + in_relations if r not in pos]) goal = create_expressions(['At(C1, JFK)', 'At(C2, SFO)']) return AirCargoProblem(cargos, planes, airports, init, goal)