Evaluation functions for cutoff search , Computer Engineering

Assignment Help:

Evaluation Functions for Cutoff Search - artificial intelligent

Evaluation functions guess the score that may be guaranteed if a specific world state is reached. In chess, such evaluation functions have been known long before computers came along. Simply, one such function counts the number of pieces on the board for a specific player. A more complicated function scores more for the more influential pieces as queens and rooks: each pawn is worth 1, knights and bishops score 3, queen's score 9 and rooks score 5. These scores are utilized in a weighted linear function, where the number of pieces of a particular type is multiplied by a weight, and all the products are added up. For instance, if in a specific board state, player one has 1 bishop,  6 pawns ,2 rooks ,1 knight and 1 queen, then the evaluation function, for that board state f, B, would be calculated as follows:

f(B) = 1*6 + 3*1 + 3*1 + 5*2 + 9*1 = 31

In bold , the numbers are the weights in this evaluation function (for example , the scores assigned to the pieces).

Preferably, evaluation functions should be fast to calculate. If they take very much time to calculate, then less of the space will be searched in a given time restriction. Evaluation functions should, ideally also match the real score in goal states. This is, Of course not true for our weighted linear function n in chess, because goal states only score 1 for a win and 0 for a loss. Actually  we do not need the match to be exact - we may use any values for an evaluation function, as long it scores more for better board states.

A bad evaluation function may be disastrous for a game playing agent. There are 2 major problems with evaluation functions. Initially, certain evaluation functions just make sense for game states which are quiescent. A board state is quiescent for an evaluation function, f, if f's value is unlikely to exhibit wild swings in the near future. For an  example, in chess, board states such as one where a queen is threatened by a pawn, where1 piece may take another without a similar valued piece being taken back  are  not  quiescent  in  the  next  move  for  evaluation  functions  such  as  the  weighted  linear evaluation function mentioned above. To get around this problem, we might make an agent's search more sophisticated by implementing a quiescence search where  given a non-quiescent state we want to evaluate the function for, we expand that game state until a quiescent state is reached, and we take the value of the function for that state. If quiescent positions are much more likely to arise than non-quiescent positions in a search, then such type of extension to the search will not slow things down very  much. A search strategy may choose in chess, to delve further into the space whenever a queen is threatened to try to avoid the quiescent problem.

It is also bearing in mind the horizon problem, where a game-playing agent can't see far sufficient into the search space. An example of the horizon problem in Norvig  and Russell is the case of promoting a pawn to a queen in chess. In the board state they present, this may be forestalled for a particular number of moves, but it is inevitable. However, with a cut off search at a sure depth, this inevitability can't be noticed until too late. It is likely that the agent trying to forestall the move would have been better to do something else with the moves it had available.

In the card game example above, game began are collections of cards, and a possible evaluation function would be to add up the card values and take that if it was an even number, but score 0 ,if the sum is an odd number. This evaluation function matches perfectly with the real scores in goal states, but perhaps it is not good idea. Suppose the cards dealt were: 10, 3, 7 and 9. If player one was forced to cut off the search after only the first card choice, then the cards would score:  10, 0, 0 and 0 respectively. So player 1 would select card 10, which would be terrible, as this will inevitably lead to player one losing that game by at least 12 points. If we scale the game to choosing cards from 40 rather than 4, we can see that a more sophisticated heuristic involving the cards left un selected may be a better idea.


Related Discussions:- Evaluation functions for cutoff search

Menu driven program with following menu, Q.  Develop a Menu driven program ...

Q.  Develop a Menu driven program with following menu: 1.  Gray code 2.  BCD 3.  Excess-3 code 4.  Exit I/P must be a valid Binary number. Fractional numbers are all

Complexity of sequential search, Specified the average case complexity of s...

Specified the average case complexity of sequential search in an array of unsorted elements of size n if the following conditions hold: a)  Probability of the key to be in the a

What is friend function in c++, As the name suggests, the function acts as ...

As the name suggests, the function acts as a friend to a class. As a friend of a class, it can access its private & protected members. A friend function is not a member of the clas

What is electronic payment system, What is electronic payment system? E...

What is electronic payment system? Electronic payment systems are alternative cash credit payment methods using various electronic technologies to pay for products and services

Create the website home page, Now when a site structure is set up for stori...

Now when a site structure is set up for storing pages and assets for Compass site, you'll create the first page-a home page for the site. As you build this page, you will add text,

Classifier with classes, Consider one versus the rest voting used for class...

Consider one versus the rest voting used for classifier with three classes {a, b, c}. Given a row of data denoted as x0 suppose that the classifier for a versus the rest predicts t

Design a nand-to-and gate network, Q Use as few gates as possible, design a...

Q Use as few gates as possible, design a NAND-to-AND gate network that realize the following Boolean algebra expression. ABCD + A'BC'D + A'BC'D' + A'BCD + (A'B'C'D' + A'BCD')

Subprogram, create a stored procedure to debit a bank account user must ent...

create a stored procedure to debit a bank account user must enter account no. and amount to debited from account .the minimum balance in account should be 500. if the debited amoun

Explain use of mpi functions with an example, Q. Explain use of MPI functio...

Q. Explain use of MPI functions with an example? include int main(int argc, char **argv) { int i, tmp, sum, s, r, N, x[100]; MPI_Init(&argc, &argv); MPI_Comm_size

What do you meant by static and dynamic modeling, Static modeling is used t...

Static modeling is used to state structure of the objects that are in the problem domain. These are expressed using class, object and USECASE diagrams. But Dynamic modeling sig

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