Forward checking - artificial intelligence, Computer Engineering

Assignment Help:

Forward checking:

Whether to add some sophistication to the search method there constraint solvers use a technique called as forward checking. So here the general idea is to work the like as a backtracking search but, where checking compliance with constraints behind assigning a  value to a variable there the agent also checks when this assignment is going to break constraints with  future variable assignments. Hence is supposing that Vc has been assigned to the current variable c, after then for each unassigned variable xi, as temporarily remove all values from Di that along with Vc break a constraint. Thus it may be that in doing so, Di becomes empty. Because the choice of Vc for the current variable is bad  -  so however it will not find its way into a solution to the problem just because there's no way to assign a value to xi without breaking a constraint. In that condition even though the assignment of Vc may not break any constraints such that already assigned variables so a new value is chosen as or backtracking occurs whether there are no values left, just because we know that V  is a bad assignment. 

Here the next diagram like again, taken from Smith's tutorial to shows how forward checking improves the search for a solution to the 4-queens problem as;:. 

2484_Forward checking.png

In such a scenario to forward checking, to improve the intelligence of the constraint solving agent so there are some possibilities for a heuristic search. Therefore firstly, our agent can worry about the order such that looks at the variables, that is, in example of the 4-queens problem so it might try to put a queen in row 2, after then one in row 3, one in row 1 and then finally one in row 4. Moreover a solver taking such care is said to be utilizing a variable-ordering heuristic. Conversely the ordering of variables can be done earlier than a search  is started and rigidly adhered to during the search. In fact this might be a good idea whether there is extra knowledge about the problem, like an example that a particular variable should be assigned a value sooner quite than later. In such a scenario  the ordering of the variables can be done dynamically so in response to some information gathered about that how the search is progressing during the search procedure.


Related Discussions:- Forward checking - artificial intelligence

Explain syntax of recursion, Syntax of recursion int fib(int num) /*...

Syntax of recursion int fib(int num) /* Fibonacci value of a number */ {      switch(num) { case 0: return(0); break; case 1: return(1); break; default:  /* Incl

Attributes of a field can be activated during runtime, What are the attribu...

What are the attributes of a field that can be activated or deactivated during runtime? Input, Output, Mandatory, Active, Highlighted, Invisible.

Swing, how to make a dfd of simple calculator?

how to make a dfd of simple calculator?

Features added in message passing interface-2, Q. Show the Features added i...

Q. Show the Features added in message passing interface-2 Input/output Single-sided operations for remote memory access Binding for C++ Dynamic process managem

Could tcp allow ip to checksum the data, Could TCP allow IP to checksum the...

Could TCP allow IP to checksum the data? TCP cannot permit IP to checksum data yet IP has its own checksum for its header. IP layer is fundamentally responsible for routing of

DBMS, Difference between Paperbase and computer base system?

Difference between Paperbase and computer base system?

Illustrate working of t flip-flop, Q. Illustrate working of T Flip-Flop? ...

Q. Illustrate working of T Flip-Flop? T (Toggle) flip-flop is attained from JK flip-flop by combining inputs J and K together. The implementation of T flip-flop is displayed in

Explain problem-oriented and procedure-oriented language, Explain differenc...

Explain difference between Problem-oriented and procedure-oriented language. Problem-oriented and procedure-oriented language: The programming languages which can be utilized

What is memory controller, What is memory controller? A memory controll...

What is memory controller? A memory controller is a circuit which is interposed among the processor and the dynamic memory. It is used for performing multiplexing of address bi

Write a short note on pointer declaration, Write a short note on pointer de...

Write a short note on pointer declaration A simple variable in a program is stored in a certain number of bytes at a particular memory location, or address, in the machine. Poi

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