What is STanford Research Institute Planning System (STRIPS)?

by Stephen M. Walker II, Co-Founder / CEO

What is STanford Research Institute Planning System (STRIPS)?

STRIPS, or Stanford Research Institute Planning System, is a programming language and algorithm for automated planning in artificial intelligence. It was developed by Richard Fikes and Nils Nilsson at the Stanford Research Institute in 1969. STRIPS uses a state-space representation of the world to plan actions that will achieve a given goal. The system represents the current state of the world as a set of propositions, or facts, and defines actions as transformations between states. It then uses a search algorithm to find a sequence of actions that will lead from the initial state to the desired goal state. STRIPS has been widely used in robotics, game playing, and other applications where automated planning is required.

What are the key features of STRIPS?

The key features of STRIPS include:

  • State-space representation: STRIPS represents the world as a set of propositions that describe the current state of the world.
  • Actions: STRIPS defines actions as transformations between states, with each action having preconditions and effects that define how it changes the state of the world.
  • Search algorithm: STRIPS uses a search algorithm to find a sequence of actions that will lead from the initial state to the desired goal state.
  • Planning domain: STRIPS defines a planning domain as a set of propositions, actions, and constraints that define the possible states and actions in a particular problem domain.
  • Problem instance: A problem instance is a specific instance of a planning domain, with an initial state and a desired goal state.
  • Plan generation: STRIPS generates a plan by finding a sequence of actions that will transform the initial state into the desired goal state.
  • Plan execution: Once a plan has been generated, STRIPS executes it by performing each action in turn until the goal state is reached.

How does STRIPS work?

STRIPS works by representing the world as a set of propositions that describe the current state of the world. It defines actions as transformations between states, with each action having preconditions and effects that define how it changes the state of the world.

To plan a sequence of actions to achieve a given goal, STRIPS uses a search algorithm that explores the possible states and actions in the planning domain. The algorithm starts from the initial state and applies each action in turn, checking whether the resulting state satisfies the preconditions of the next action in the sequence. If it does, the algorithm continues to apply the next action until the goal state is reached.

If the algorithm encounters a state that cannot be transformed into the goal state by any available actions, it backtracks and tries a different sequence of actions. This process continues until a plan is found that will transform the initial state into the desired goal state.

Once a plan has been generated, STRIPS executes it by performing each action in turn until the goal state is reached. If an unexpected event occurs during execution, such as a failure to perform an action or a change in the world state, STRIPS can replan and generate a new sequence of actions that will achieve the goal state under the new circumstances.

What happened to STRIPS? Was it ever used in the real world?

STRIPS was widely used in research and academia during the 1970s and 1980s, but its use declined as more advanced planning systems were developed. However, some of its ideas and concepts have been incorporated into modern planning systems, such as the Planning Domain Definition Language (PDDL) used in the International Planning Competition.

STRIPS was also used in some real-world applications, such as robotics and game playing. For example, it was used to plan the movements of a robotic arm in a manufacturing setting, and to play games like chess and checkers. However, its use in these applications was limited by its simplicity and lack of advanced features compared to more modern planning systems.

More terms

What is Embedding in AI?

Embedding is a technique that involves converting categorical variables into a form that can be provided to machine learning algorithms to improve model performance.

Read more

What is information integration?

Information integration (II) is the process of merging information from heterogeneous sources with different conceptual, contextual, and typographical representations. It is a critical aspect of data management that enables organizations to consolidate data from various sources, such as databases, legacy systems, web services, and flat files, into a coherent and unified dataset. This process is essential for various applications, including data mining, data analysis, business intelligence (BI), and decision-making.

Read more

It's time to build

Collaborate with your team on reliable Generative AI features.
Want expert guidance? Book a 1:1 onboarding session from your dashboard.

Start for free