answersLogoWhite

0

# Initialise the graph to start node # Traverse the graph following the current path accumulating nodes that have not yet been expanded or solved # Pick any of these nodes and expand it and if it has no successors call this value FUTILITY otherwise calculate only f' for each of the successors. # If f' is 0 then mark the node as SOLVED # Change the value of f' for the newly created node to reflect its successors by back propagation. # Wherever possible use the most promising routes and if a node is marked as SOLVED then mark the parent node as SOLVED. # If starting node is SOLVED or value greater than FUTILITY, stop, else repeat from 2.

User Avatar

Wiki User

15y ago

Still curious? Ask our experts.

Chat with our AI personalities

RafaRafa
There's no fun in playing it safe. Why not try something a little unhinged?
Chat with Rafa
BlakeBlake
As your older brother, I've been where you are—maybe not exactly, but close enough.
Chat with Blake
EzraEzra
Faith is not about having all the answers, but learning to ask the right questions.
Chat with Ezra
More answers

the main difference between the A*(A star) and AO*(AO star) algorithms is that A* algo is a OR graph algorithm and AO* is a AND-OR graph algorithm.

In OR graph algorithm it just find only one solution (i.e either OR solution means this OR this OR this).

But in the AND-OR graph algo it find more than one solution by ANDing two or more branches.

for more details on AND-OR graph & OR graph please refer the book "Artificial Intelligence" by Elaine Rich & Kevin Knight.

-AAA

User Avatar

Wiki User

13y ago
User Avatar

AO*is a best-first algorithm for solving a cyclic AND/OR graphs. Starting with a partial graph G containing only the initial states0 , two operations are perfor mediteratively : first, a best partial policy over G is constructed and a non-terminal tip state s reachable with this policy is expanded ; second, the value function and best policy over the updated graph are incrementally recomputed. This process continues until the best partial policy is complete. The second step, called the cost revision step, exploits the acyclicity of the AND/OR graph for recomputing the optimal costs and policy over the partial graph G in as inglepass, unlike Value Iteration. In this computation, the states outside G are regarded as terminal states with costs given by their heuristic values. When the AND/Or graph contains cycles, however, this basic costrevision operation is not adequate. In this paper, we use the AO* variant developed in (Jimen´ez&Torras2000),called CFCrev, which is based in the cost revision operation and is able to handle cycles

1. Initialise the graph to start node

2. Traverse the graph following the current path accumulating nodes that have not yet been expanded or solved

3. Pick any of these nodes and expand it and if it has no successors call this value FUTILITY otherwise calculate only f' for each of the successors.

4. If f' is 0 then mark the node as SOLVED

5. Change the value of f' for the newly created node to reflect its successors by back propagation.

6. Wherever possible use the most promising routes and if a node is marked as SOLVED then mark the parent node as SOLVED.

7. If starting node is SOLVED or value greater than FUTILITY, stop, else repeat from 2.

User Avatar

Wiki User

12y ago
User Avatar

  1. Both are part of informed search technique and use heuristic values to solve the problem.

  2. The solution is guaranteed in both algorithm.

  3. A* always gives an optimal solution (shortest path with low cost) But It is not guaranteed to

that AO* always provide an optimal solutions.

  1. Reason: Because AO* does not explore all the solution path once it got solution
User Avatar

Prajwal More

Lvl 2
2y ago
User Avatar

Add your answer:

Earn +20 pts
Q: What are difference between A and AO algorithm?
Write your answer...
Submit
Still have questions?
magnify glass
imp