0% found this document useful (0 votes)
8 views11 pages

Discrete Feasible Planning Overview

The document outlines the formulation of discrete feasible planning, defining states, state spaces, actions, and transitions within a planning problem. It emphasizes the importance of carefully defining the state space to avoid irrelevant information and describes the relationship between planning problems and deterministic finite automata (DFAs). Additionally, it discusses search algorithms and the concept of systematic exploration in finding sequences of actions that lead to goal states.

Uploaded by

Lin Toni
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views11 pages

Discrete Feasible Planning Overview

The document outlines the formulation of discrete feasible planning, defining states, state spaces, actions, and transitions within a planning problem. It emphasizes the importance of carefully defining the state space to avoid irrelevant information and describes the relationship between planning problems and deterministic finite automata (DFAs). Additionally, it discusses search algorithms and the concept of systematic exploration in finding sequences of actions that lead to goal states.

Uploaded by

Lin Toni
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

The basic idea is

- each distinct situation for the world is called a state, denoted by x


- and the set of all possible states is called a state space, X
- for discrete planning X stateSpace is important to be countable
(in most cases finite)
- In a given application, the state space should be defined carefully so
that irrelevant information is not encoded into a state
o (e.g., a planning problem that involves moving a robot in
France should not encode information about whether certain
light bulbs are on in China)
o The inclusion of irrelevant information can easily convert a
problem that is amenable to efficient algorithmic solutions into
one that is intractable
o On the other hand, it is important that X is large enough to
include all information that is relevant to solve the task.

- Each action, u, when applied from the current state, x, produces a


new state, x ′ , as specified by a state transition function, f.
- using f to express a state transition equation
o x’= f(x,u)
- Let U(x) denote the action space for each state x, which represents

For distinct x, x′ ∈ X, U(x) and U(x ′ ) are not necessarily disjoint; the
the set of all actions that could be applied from x.
-
same action may be applicable in multiple states.
- Therefore, it is convenient to define the set U of all possible actions
over all states:

(union of all U(x) for all x∈X)


As part of the planning problem, a set XG ⊂ X of goal states is
o
-
defined.
- The task of a planning algorithm is to find a finite sequence of
actions that when
ap plied, transforms the initial state xI to some state in XG. The
model is
Formulation (Discrete Feasible Planning)

X – (all posssible state - stateSpace),

X is nonempty and finite or countably finite set of states

for each state (x) that is part of of StateSpace (X) x∈X

a finite action can be applied to these states (finite action space) U(x)

U - union of all individual stateAcctionSpace ( U(x) ) where x ∈ X

U - all possible action that can be applied on at least one state that is part
of given StateSpace

f - f is a function that given a state and an action it would apply action on


the given state

f(x,u) can be applied given that x ∈X and u ∈ U(x)

x’ = state that we get after we have state (x) and apply (u) action

new x’ states produced from ( f(x,u)= x’ ) also applies x’ ∈ X


X is all the state we have

XG all the goal state

the goal is to find sequence of action to an initial state from which we will
get goal state

(x elem X) -> apply sequence of action –> ((tranfsormed x) elem X G)

formulation 2.1
Graph representation of Formulation (Discrete Feasible
Planning)

it is often convinient to express Formulation of Discrete Feasible Planning

as directed state transition graph

The Vertices of this graph is all the states that is inside stateSpace

A directed edge from x ∈ X to x’ ∈ X exsits in the graph if and only if


there exits an action u ∈ U(x) such that (f(x,u)= x’)

The initial state and the set of goal states are designated as special
vertices in the graph
Key Considerations in Planning Problem Representation

- It is important to note that a planning problem is usually specified


without explicitly representing the entire state transition graph.
- Instead, it is revealed incrementally in the planning process.
- If a planning problem is given as input to an algorithm, close
attention must be paid to the encoding when performing a
complexity analysis.
- For a problem in which X is infinite, the input length must still be
finite.
- For some interesting classes of problems it may be possible to
compactly specify a model that is equivalent to Formulation 2.1.
The connection between deterministic finite automata
(DFAs) and planning problems

we can draw an analogy and represent the state space and


transitions of a Discrete Feasible Planning problem as a directed
graph, which shares some similarities with the structure of a
DFA's transition diagram.

Analogy:

 States (X) in Planning <-> States in DFA

 Actions sequence of (U(x)) <-> Input Symbols in DFA

 State Transition Function (f(x, u)) in Planning <-> Transition


Function (δ) in DFA

 Initial State (x1) in Planning <-> Initial State in DFA

 Goal Set (XG) in Planning <-> Accepting States in DFA


planning problem (with a finite number of possible states) can be
represented as a DFA. Here's the correspondence:

 States: Each state in the planning problem (e.g., the robot's


location in the maze) corresponds to a state in the DFA.

 Input String: The input string to the DFA represents a sequence of


actions in the planning problem (e.g., "move forward," "turn left").
Each symbol in the input string corresponds to an action.

 Transitions: When the DFA reads an input symbol, it changes state.


This corresponds to the robot taking an action and changing its
location in the maze.

 Accept States (Goal States): The "accept" states of the DFA are
the same as the goal states in the planning problem. If the DFA ends
up in an accept state after reading the entire input string, that
means the sequence of actions represented by the input string
successfully led to the goal state.

Language of a DFA: The "language" of a DFA is the set of all input strings
that the DFA accepts. In the, planning context this is the set of all
sequences of actions that lead to a goal state.

The Core Idea - Empty Language: The passage's key point is that the
planning problem is equivalent to determining whether the DFA associated
with it has an empty language.

 Non-empty Language: If the DFA's language is not empty, it


means there's at least one input string (sequence of actions) that
the DFA accepts. This means there's a solution to the planning
problem—a sequence of actions that leads to the goal.

 Empty Language: If the DFA's language is empty, it means there


are no input strings that the DFA accepts. This means there's no
solution to the planning problem—no sequence of actions that leads
to the goal.
Many search algorithms focus too much on one direction, which may
prevent them from being systematic on infinite graphs.

If, for example, the search carefully expands in wavefronts, then it


becomes systematic.

wavefront meaning:

 First Wavefront: Starts from an initial point and examines all


directly connected neighbors.

 Subsequent Wavefronts: Then, for each node in the current


wavefront, the search looks at their neighbors (excluding those
already visited).
This is a common strategy in breadth-first search (BFS), ensuring
that the algorithm explores all nodes at one "distance" from the start
before moving further away.

The requirement to be systematic is that, in the limit, as the number of


iterations tends to infinity, all reachable vertices are reached.

- in the limit : assuming algorithm can run for infinite amount of time
General Forward Search

At any point during the search, there will be three kinds of states:

- Unvisited: States that have not been visited yet. Initially, this is
every state except xI
- Dead: States that have been visited, and for which every possible

which there exists a u ∈ U(x) such that x ′ = f(x, u).


next state has also been visited. A next state of x is a state x ′ for

- Alive: States that have been encountered, but possibly have


unvisited next states. These are considered alive. Initially, the only
alive state is xI .
General Forward Search template

- The set of alive states is stored in a priority queue, Q, for which a


priority function must be specified.n must be specified.
- Initially, Q contains the initial state xI .
- A while loop is then executed, which terminates only when Q is
empty. This will only occur when the entire graph has been explored
without finding any goal states
o (unless the reachable portion of X is infinite, in which case the
algorithm should never terminate) otherwise return FAILURE.
- In each while iteration, the highest ranked element, x, of Q is
removed.

the algorithm tries applying every possible action, u ∈ U(x).


- If x lies in XG, then it reports SUCCESS and terminates; otherwise,

- For each next state, x ′ = f(x, u), it must determine whether x ′ is


being encountered for the first time. If it is unvisited, then it is
inserted into Q; otherwise, there is no need to consider it because it
must be either dead or already in Q.
-

Common questions

Powered by AI

The priority queue in the general forward search algorithm plays a critical role in organizing and prioritizing the exploration of states based on a specified priority function. Initially, it contains the initial state xI, and throughout the while loop, the highest-ranked state according to this priority is dequeued for exploration. This approach helps systematically explore states in a manner that ideally leads to finding a goal state efficiently. The priority queue manages the set of "alive" states—those encountered but not fully explored—and aids in ensuring that all reachable vertices are eventually processed. It facilitates organized exploration without needing to re-process states deemed "dead" (fully explored), thus optimizing the search process .

When the state space X is infinite, complications arise because representing or exploring the entire space becomes infeasible, which can lead to never-ending search processes if not managed effectively. To address these challenges, models and algorithms must employ strategies such as compact representations of the infinite state space, use of heuristics, or restricting the search to relevant portions through prioritization and pruning methods. Also, ensuring that search techniques like wavefront or breadth-first search are employed systematically can help examine states in layers or increments, covering all possible nodes up to a certain "distance" from the start while controlling exploration breadth to avoid infinite regressions .

In a general forward search algorithm, distinguishing between alive, dead, and unvisited states is crucial for efficient execution. Alive states are those that have been encountered but not fully explored, meaning they have potential successors not yet visited. Dead states have been visited, with all their possible transitions explored, and thus require no further examination. Unvisited states are those that the algorithm has not yet reached. This categorization helps prioritize and manage the search process by ensuring the algorithm focuses on exploring alive states while ignoring dead ones, which streamlines the search and avoids unnecessary re-evaluation of states .

The key steps in developing a discrete feasible planning problem include defining a state space X which is a finite or countably finite set of all possible states. Each state must allow for the application of finite actions within an action space U(x). It's crucial to ensure the state space includes all relevant information to solve the task without including irrelevant details that complicate the problem. For each state, a state transition function f defines how actions transition a state into another state, forming a state transition equation x' = f(x, u). A goal state set XG is defined, and the task is to find a sequence of actions transforming an initial state xI to a goal state in XG . State spaces must be carefully defined to prevent encoding irrelevant information, as this can make algorithmic solutions intractable. Conversely, failing to include necessary information will make obtaining a solution impossible .

A graph representation aids in understanding and solving discrete feasible planning problems by visualizing the states and transitions as a directed graph. Each state within the state space X serves as a vertex, and directed edges represent action-induced transitions from one state to another. The initial and goal states are marked as special vertices, facilitating the identification of potential paths or sequences of actions necessary to transform the initial state into a goal state. This graphical representation emphasizes the relationships and transitions between states, making it easier to conceptualize and devise solutions incrementally or through search algorithms without needing to explicitly represent the entire state transition graph .

Understanding the "language" of a DFA informs decision-making in a planning problem by identifying the set of all action sequences that lead to successful problem resolutions—moving from an initial to a goal state. If the DFA's language is non-empty, it indicates the presence of valid solution pathways, guiding the planner in choosing which action sequences to evaluate further. This knowledge can streamline decision-making by reducing the search space to only feasible action sequences, consequently improving the efficiency and effectiveness of the planning algorithm .

Search algorithms adapt to infinite graph structures by incorporating systematic exploration strategies such as breadth-first search, which processes nodes in successive layers or wavefronts. This ensures all reachable nodes are explored methodically by first examining all neighbors of a node before moving to the next layer of nodes at a greater "distance" from the start. The significance of being systematic lies in avoiding redundant searches and ensuring that even within potentially infinite spaces, systematic approaches allow for the algorithm to successfully and comprehensively traverse the graph, achieving full coverage of reachable states in a finite manner by focusing on order and organization in exploration .

The analogy between discrete feasible planning problems and deterministic finite automata (DFA) lies in their structural and functional similarities. In this analogy, the states in the planning problem correspond to the states in a DFA, the sequence of actions corresponds to the input symbols, and the state transition function f(x, u) is akin to the transition function δ in a DFA. The initial state of the planning problem is analogous to the DFA's initial state, while the goal states in the planning problem match the accepting states in a DFA. Thus, each sequence of actions leading to a goal state in the planning problem corresponds to a string accepted by the DFA, where the "language" of the DFA is the set of all such sequences .

The state transition function f serves a critical role within the formulation of discrete feasible planning by defining how actions result in transitions from one state to another. Specifically, for a given state x and an action u within the action space U(x), f specifies the resulting state x' = f(x, u). This function is vital for problem-solving as it delineates the dynamic aspect of a planning problem, enabling planners to simulate step-by-step transformations within the state space to determine actionable paths from the initial state to a goal state. Thus, it provides the mechanistic link between actions and their consequences, guiding the planning process .

In the context of solving a planning problem, determining whether a DFA's language is empty is crucial because it directly correlates to the existence of a solution. An empty language implies that there are no sequences of actions that lead from the initial state to any goal state, meaning the planning problem has no solution. Conversely, if the language is not empty, there exists at least one sequence of actions that successfully transforms the initial state into a goal state, thereby confirming that the planning problem is solvable . This determination helps in deciding whether to continue refining approaches or conclude that the problem is unsolvable.

You might also like