24 Jun 2022

# AO* Algorithm in Artificial Intelligence – Concept, Implementation, and Uses

## Algorithm AO* in Artificial Intelligence

The AO* Algorithm in Artificial Intelligence is essentially based on breaking down the problem (dividing the problem into small pieces)

If a problem can be broken down into a set of sub-problems, each sub-problem can be solved separately, and a combination of these provides a solution.

For AO* Algorithm in Artificial Intelligence, AND-OR graphs or AND-OR trees are used to represent the solution.

Decomposing the problem or reducing the problem creates AND arcs. The illustration shows an AND-OR diagram in AO * Algorithm in Artificial Intelligence.

To pass an exam, we have two options, cheat or work hard.

This graph has two options to cheat first or work hard (the red line) and fold (the arc).

When we have more than one option and need to choose one, we apply the OR condition to choose one (we did that here).

In ai javatpoint, the ARK here denotes an AND state.

Here we have recreated the arc between hard work and passing because hard work makes it possible to pass an exam is more than cheating.

## A* vs AO*

Both are part of the information search technique and use heuristics to solve the problem.

For ao* algorithm in artificial intelligence, the solution is guaranteed in both algorithms.

A* always delivers an optimal solution (the shortest route with low costs).

However, there is no guarantee that AO * always provides optimal solutions.

Reason: Because AO * does not scan the entire solution path once it has received the solution. ## Algorithm

Step 1: Put the start node to OPEN.

Step 2: Calculate the most promising solution tree, say T0.

Then, Step 3: Select a node n that is both OPEN and a member of T0. Take it out of OPEN and put it inside

Step 4: If n is the final destination node, then one levels n as resolved and levels all ancestors of n as resolved. If the start node is marked as resolved, then success and exits.

Step 5: If “n” is not a known solvable knot, mark n as not solvable. If the boot node is marked as no solution, return the error and exit.

Then, Step 6: Expand N. Find all its successors and find its value h (n), slide them to OPEN.

Step 7: go back to step 2.

Step 8: Finishing.

## How does AO * work?

For AO * Algorithm in Artificial Intelligence, Let’s try to understand it with the following diagram.

Basically ao* algorithm example, we calculate the cost function here (F (n) = G (n) + H (n))

H: Heuristic / estimated value of the nodes. And G: actual costs or edge value (here unit value).

Here in ao* algorithm in artificial intelligence ppt, we have taken the value of the edges 1, which means that we only need to focus on the heuristic value.

The purple values are limit values (they are all equal to one here).

Values in red are heuristic values for nodes.

The green values are new heuristic values for nodes. ### Process

In the diagram, we have two paths: A to D or A to B-C (due to a condition). Calculate the cost of choosing a route, a* algorithm in ai.

F (A-D) = 1 + 10 = 11 and F (A-BC) = 1 + 1 + 6 +12 = 20

As we can see, F (A-D) is smaller than F (A-BC), so the algorithm chooses path F (A-D).

Form D, we have an option that is F-E.

F (A-D-FE) = 1 + 1 + 4 +4 = 10

10 is the cost of getting to FE from D. And the heuristic value of node D also denotes the cost to get from D to FE.

So the new heuristic value of D is 10.

And the cost of A-D remains the same, namely 11.

Assuming we have searched this path and have the goal state, we will never explore the other direction. (that says AO* but here we will also explore another way to see what happens)

Related Searches

[a* algorithm in ai]

[a* search algorithm]

[ai javatpoint]

[a* algorithm in artificial intelligence]

[ao* algorithm in artificial intelligence]

[ao* algorithm in artificial intelligence ppt]

[a* and ao* algorithm in artificial intelligence]

[ao* algorithm in artificial intelligence with example]

[ao * algorithm in artificial intelligence]

[ao* algorithm example]

[ao* algorithm]

[a * algorithm]

[a* search algorithm]

[a* algorithm in artificial intelligence notes]

[a* algorithm]

[graphs gfg]

[graph in data structure]

[ao* algorithm geeksforgeeks]

[a* search algorithm]

[knn algorithm tutorialspoint]

[knn algorithm]

[a* algorithm with example]

[a* algorithm]

[and or graph in artificial intelligence]

[and or graph in artificial intelligence]

[problem reduction in ai]