Effective branching rate - heuristic searches, Computer Engineering

Assignment Help:

Effective Branching Rate:

Assessing heuristic functions is an important part of "AI" research: a particular heuristic function may sound such a good idea, but in practice give no discernible increase in the quality of the search. Search quality can be estimated experimentally in terms of the output from the search, so by using various measures such as the effective branching rate. Let suppose a particular problem P has been solved by search strategy S by expanding N nodes, and the solution play at depth D in the space. Then the effective branching rate of S for P is calculated by comparing S just to a uniform search U. The other example of a uniform search is a breadth first search where the number of branches from any node is always the same (as in our baby naming example). After that we suppose the (uniform) branching rate of U is like that, on the exhausting its search to depth D, it too would have expanded exactly N nodes. That should be imagined branching rate, written b*, is the effective branching rate of S and is calculated thus:

N = 1 + b* + (b*)2 + ... + (b*)D.

Rearranging this equation will give a proper value for b*. For example if we considered that we taken from Russell and Norvig rule, suppose S finds a solution at depth 5 having expanded 52 nodes. As in the above this case:

52 = 1 + b* + (b*)2 + ... + (b*)5.

and it turns out that b*=1.91. To calculate this, we can use the very well known mathematical character:

362_Effective Branching Rate.png
This enables us to write a polynomial for which b* is a zero, and we can solve this using numerical techniques like Newton's method.
It is normally the case that the effective branching rate of a search strategy is similar over all the problems. It is may be used for, so that it is acceptable to average b* over a small set of problems to give a valid account. If there is a heuristic search has a branching rate near to 1, then this is a good sign. We state that one heuristic function h1 dominates another h2 if the search using h1 always has a lower effective branching rate than h2. Having a lower effective branching rate is clearly desirable because it means a quicker search.


Related Discussions:- Effective branching rate - heuristic searches

Bank prevent an infinite loop, a) Write a program that figures out how long...

a) Write a program that figures out how long it will take to pay off a credit card by making payments of $10 every month. Take care to avoid infinite loops. (How would a bank preve

Functions for message passing, Functions for Message Passing: MPI proc...

Functions for Message Passing: MPI processes don't share memory space and one process can't directly access other process's variables. Therefore they need some form of communi

Pruning and sorting, Pruning and Sorting: This means we can test where...

Pruning and Sorting: This means we can test where each hypothesis explains as entails a common example that we can associate to a hypothesis a set of positive elements in whic

Which instruction is use in each process before proceeding, Before proceedi...

Before proceeding with its execution, each process must acquire all the resources it needs is called ? Ans. Hold and Wait is requires in each process should acquire all the res

Drawing sequential circuit on paper, design a sequential circuit that conti...

design a sequential circuit that continuously computes the function 2X + 3 or 3X + 1 where the variable X is a three-bit unsigned integer available on a serial interface. A special

Displays a message when an applet starts up, Write an applet that sets the ...

Write an applet that sets the background colour to cyan and foreground colour to red and displays a message that illustrates the order in which various applet methods are called wh

What are the modes in which any update tasks work, What are the modes in wh...

What are the modes in which any update tasks work? Synchronous and Asynchronous.

Ruby, Discuss anout variables and assignment statements in ruby

Discuss anout variables and assignment statements in ruby

arithmetic pipelines, Arithmetic Pipelines The method of pipelining ca...

Arithmetic Pipelines The method of pipelining can be applied to a variety of complex and slow arithmetic operations to speed up the processing time. The pipelines used for arit

An example of load-store optimization using expression trees, Give LOAD-STO...

Give LOAD-STORE optimization based on expression trees for the expression (A+B)/(C-D). LOAD-STORE optimization based on expression trees for the expression (A+B)/(C-D) is given

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd