Write for the table. The positive initial planning fluents read from the original figure are
The static type facts are , and ; the table is not a block. With an explicit table-availability predicate, take to be permanently true. Under the closed-world assumption, all other well-typed initial planning fluents are false; in particular, is not clear.
The goal is the partial-state conjunction
It need not redundantly prescribe every final fact. With only these three blocks and a valid blocks world state, the completed stack also places on the table and leaves clear.
Use location, holding and hand-capacity planning fluents, together with static object types. Write , , and for a ball's bucket, the held ball, the arm's location and an empty hand. Static predicates , and identify types and distinct buckets. The latter can equivalently be a action grounding restriction.
For typed parameters, the STRIPS actions are
Untyped notation adds the appropriate and facts to every precondition set. Static type and inequality facts have no add or delete effects. A state is a set of true ground facts under the closed-world assumption, and an applicable action produces .
Start from a physically valid state: each ball is in exactly one bucket or held; at most one ball is held; the arm is at exactly one bucket; and is true exactly when no ball is held. The operators preserve these planning state invariants. In particular, picking requires an empty hand, dropping releases the held ball, and moving deletes the old arm location. Moving while holding a ball is permitted, so a separate carried-ball movement action is unnecessary.
A corrected STRIPS model can fix object roles in the action names, leaving only room parameters to instantiate. Use the same and introduce static and facts, plus a planning fluent meaning “no live monster occupies ”. Unlike the supplied adjacency relation, let describe all geometrically adjacent rooms; safety is then explicit rather than hidden by missing edges.
Initially the agent, monster and gold have their specified locations, , and hold, holds, holds at every room except , and holds at every room except . All unlisted facts are false by the closed-world assumption. The following positive preconditions, add lists and delete lists are a complete action specification:
Require as the goal. If reaching the exit suffices, omit and use the original two goal facts. Instantiating these schemata over the finite room set gives ordinary ground STRIPS actions.
Only moves, only is collectible and only can be fired at . No action changes the monster’s location; its corpse can stay there, while records that it is harmless. The gold stays at its original room until collection. The arrow is consumed by its only use. By mathematical induction on plan length, every applicable action preserves the planning state invariant that the active agent occupies one pit-free room without a live monster. Consequently every solution is a safe execution. The plan in part a, followed by , is one such execution.
Ordinary classical planning with STRIPS starts from one completely specified state. Here the missing locations express ignorance: not listing a pit or a monster at a room does not establish its absence. Applying the closed-world assumption to those omissions would manufacture knowledge of safety. Moreover, future sensor readings can determine which action is appropriate, so a fixed action sequence need not suffice.
The suitable object is a belief state and a contingent plan that branches on observations. A finite belief state model could in principle be compiled into a larger classical planning instance, but the ordinary physical-state STRIPS representation does not directly represent the required uncertainty and sensing.
In STRIPS, a state records the true ground facts; under the closed-world assumption, an absent fact is false. An action with positive preconditions , add effects and delete effects applies when , producing .
The given movement action adds the destination fact without deleting the old boat location. After its first crossing the boat can therefore be recorded at both banks, allowing physically impossible loading. Its source-bank symbol is also not a declared action parameter. Repair both issues by using the fully parameterized STRIPS action
Here excludes a vacuous same-bank crossing. The two static inequality facts already supplied suffice.
The given loading action has no capacity check. Consecutive loads can put arbitrarily many items aboard. Introduce a nullary planning fluent , true initially, and repair loading to
Unloading must restore , as in part (c). Including the bank explicitly as an action parameter removes the other unbound action variable. Equivalently, instantiate separate east-bank and west-bank actions.
These repairs establish the planning state invariants that the boat is at exactly one bank, each item is either at one bank or aboard, and at most one item is aboard. The first two hold initially and are preserved by deleting the former location when adding the new one; the capacity marker permits loading only when no item is aboard. Grounding implicit location variables alone would not repair the missing delete effect or the missing capacity check.
STRIPS 2026-10-24
A representation for automated planning in which a state is a set of true ground facts and an action has a positive precondition set , add set and delete set . Under the closed-world assumption, facts absent from are false. The action applies when and produces
Negative effects are delete-list entries; they do not require negative preconditions. A movement action must delete an object's old location as well as add its destination. Capacity and safety restrictions require explicit action conditions or auxiliary planning fluents; they do not follow automatically from an intended physical interpretation.