In Artificial Intelligence searching method is the best technique to solve the problems whether it is defined or not defined. AI used problem search strategies to solve the specific problem.
To build a system to solve a particular problem first we need to specify the initial system () what exactly the problem is and the acceptable final solutions to the problem.
Isolate the problem and read about the problems then get multiple possible techniques that are necessary to solve the problem, after that we can get the best technique and apply it (them) to the particular problem.
Define the problem as a state space search. All the possible state for solving any particular problem is called as state space. For searching the particular state from the state space we use state space search.
The structure of state space is of two types:
• In some problems set of states and rules are already defined and well structured organize. We have to convert some given condition into the required condition using a set of operations which are already decided.
• In some problems these kinds of representation occurs naturally and are not well structured. In this we have to make the desired structure with the help of some techniques to find the path from the initial state to goal state. Search is an important procedure for the problems to find the, to and Forth solution no direct techniques are used in it.
- Problem Define
- Problem Analyze
- lsolate problem and knowledge of task
- Get techniques
- Choose techniques to solve problems
Problem solving Agents
Problem solving agents are the goal based agents which are also called as problem solving agents. Simple Problem solving agents have limited strategies to solve the problems.
They solve the problems on current perceptions they don’t know what they want and what are the goals. Problem solving agents are such that they create the sequential environment to maximize the performance of searching method to solve any problem.
Let illustrate the problems play chess game and milk conman problem.
Play chess Problem
We have to build a program which can play and goal state, legal game to win and lost rules. In the play chess game the rules are already provided and the starting position is defines as an 8 by 8 position where each box contains its value and has some opening ules with the legal move.
There are many ways to apply this rules because of that it is too difficult and lengthy one could not get the goal without any mistakes. To solve this problem if possible one should look for a way to Write the rules with legal moves.
Already defined which can be the position of the players, moves, operations, initial state chess.
Milk Conman Problem
We are given two conman (utensil to pour liquid), a 6 liter and 4 liter. We don’t have measuring cup or any mark. We are given a tap to fill the Conman.
How can we get exact 2liter of milk into the 6 liter of Conman?
The above two problems can be solve with the strategies we discussed already. Both the problems are different and can be solved by using some rules, strategies, approximation, some combinations, and movements until the goal state is found. Play chess game can be solved by using single state search while for milk conman problem different combinations of searching is basic used.
Formulating problem
Formulating problem is depending on the knowledge, environment and perception of the problem.
We can divide the problem as-
- Single state problem
- Multiple state problem
- Contingency problem
- Exploration problem
Let us leam the problem with assumption before that we should understand the problem first, when the initial or present state is known with that one should get to know about the net action, sequence of action or sometimes we get goal state which is called single state problem.
If all the action are known but because of some rules, we get the limited access of the action then the possibility of happening the particular state is greater than 1, thus it can be known as multiple state problem.
When there is multiple state problem then to solving the problem the process can also be more than one. Probability can be used to solve single problem thus this type of problem requires the sequence of action taken.
It depends on the possible contingency which can also call as contingency problem. The real time problems are not exact predicted but some additional information like problem state can be known.
Well defined problems and solutions
Problem is a special part to solve the problem. It is the collection of information that can decide what exactly we want and what to do next. There are elements of probe STATE, ACTION, PATH and GOAL.
State can be defined as initial state or end state both. In initial state the problem could he known to be itself. When the problem is already defines b some rules then one could get end state.
When the problem is already defined by some rules then one could get end state. After the initial state the set of possible actions available for the problem can he determined.
In action state space is used and the path of state space is any sequence of actions which can apply on one state to another. The path is the sequence of any action from the initial state to reach the goal or End state.
Searching for solution
We have seen the problem definition, problem types, recognize the solution to finding the solution we used state space and state space search method to find the solution with the path and the sequence to get the goal state.
As we discussed above in 4-queens problem solution. If the first choice does not lead to the solution we can put that option for later and choose another option to get the solution.
We can continue choosing and exploring until the solution is found or the next state is found this process is also known as ego strategy. Many search trees are used over state space to find the route and solution that we will discuss later.
Uniformed search strategies
We already discussed about the problems and searching. When the actions and the process of reaching the goal is not known or else we can say if the path of the goal is next defined then such process is known as uninformed search.
Uninformed search is ales called as blind search. If the problem has the specific information about the next seen or path to help the searching then such type of process is called as heuristic search and it is also named as informed search. Let us discuss uninformed search.
Concept of BFS
Breadth first search is one of the simple search strategies. In this strategy all the nodes are expanded, first the root node is expanded and then successor and similar so on.
It is very systematic strategy searching occurs on each node in which storage of each node takes place.
If there is a solution for a problem then BES always find not so deep goal state first, then the second one and so on. But it takes so much of memory and time sometime BES is not been chosen strategy among all. Because of the searching of every single node, BFS takes time and also memory.
Assume 100 nodes can be checked in a second and one node requires 10 bytes of storage thus the more memory and time required which is problem for BFS.
To solve any random problem using BFS one could wait for less than 10 minutes and because of the more memory the cost also increase to solve the problem and to reach out to the Goal state.
Concept of DFS
Depth first search is also known as backtracking search. DFS expands on the nodes, ones it expand on one node it goes on deepest level of the tree only when the search get on the endpoint then it go back to the initial position and so forth.
DES requires storing single path from initial to depth end node. DFS requires less memory to store the data, DFS may find the solution without examine the search space of all. DFS is getting stop when one is formed.
The only demerit of DFS is it may stick into the depth of the nodes and it’s difficult to come back on the position.
Depth Limited search
In depth limited search the search causes the minimum depth of the path on the nodes. For example: Travelling Salesman Problem” where a salesman has to cross 20 cities to reach Udaipur from Delhi so the limit of the cities we get the length of 21 as the total cities is 22 including Delhi -20 cities Udaipur.
If we implement the depth limit search and if salesman was in Delhi and to travel 21 cities it take the path of 21 steps, then generate a new state in city after Delhi (say it as Agra) or city B with the path of length that is one greater.
With the help of this search we can find the solution that exists but still we cannot find the shortest path. The time and space taken of DLS is same as DFS.
Iterative Deepening DFS
In DLS we choose the limit by own. In travelling salesman problem we random take the limit of city B but to reach Udaipur from many cities the distance is low as this number is known as diameter of state space which gives us better depth limit and more efficient DLS.
Iterative deepening search try all the possible depth limits or we can say that iterative deepening search is a combination benefits of BFS and DES. Sometimes in IDS so many stats are expanded more than two time which can be the waste of time and memory.