You are on page 1of 13
Artificial Intelligence: The term artificial intelligence was first coined by John McCarthy. Artificial intelligence is the study of how to make computers do things which at the moment people do better. In other words, Al is the theory and the development of computer systems able to perform tasks normally requiring human intelligence such as usual perception, speech-recognition, decision making and translation between languages. Artificial Intelligence is composed of two words Artificial and Intelligence, where Artificial defines “man-made,” and intelligence defines “thinking power", hence Al means “a man-made thinking power. So, we can define Al as: “It is a branch of computer science by which we can create intelligent machines which can behave like a human, think like humans, and able to make decisions”. ‘Ary techrique which urate ‘computers to mic human ‘behaviour. ‘Subset of Al which uses statstcal meteds tb Unatie machines to perform wih experiences, Matung the computation of mut layer neural networks feast History of Al: 1956 11Page The Al Problems: ‘Al is made by humans to emulate (follow/copy/mimic) the human brain by solving problems. The most common problems with Al when development and implementation takes place includes 3 domain tasks as shown below: ‘Task Domains of Al Mundane Formal Expert Task Task Task 1) Percepeon 1) Games 1) Engneering © Vision +o Design © Speech © Chess orang oe Manutacturng 12) Natural Language Processing 2)Matremascs Renee (© Understanding © Geometry 3) Financial Anais © Language © Loge 4) ) Mexical Diagnosis > = 1 invegraton ‘ee 19 Diterertaton 3) Common Sense 3) Verication 4) Reasoning 4) Theorem Proving 5) Robots 1) Mundane Tasks: Humans learn mundane (ordinary) tasks since their birth. They learn by perception, speaking, using language, and locomotives. They learn Formal Tasks and Expert Tasks later, in that order. For humans, mundane tasks are easiest to learn. The same was considered true before trying to implement mundane tasks in machines. Earlier, all work of Al was concentrated in the mundane task domain. Later, it turned out the machine requires more knowledge, complex knowledge representation and complicated algorithms for handling mundane tasks. These tasks include: Perception, Natural Language Processing (NLP), Reasoning etc. 2) Formal Tasks: Formal Tasks are the ones where there is an application of formal logic, some learning etc. Verifications, theorem proving, etc are the common characteristics used in formal task. Games such as chess, Go, etc are classified in these tasks. 21 Page 3) Expert Tasks: Expert Tasks are those which comes under functional expert domain such as engineering, scientific analysis, medical diagnosis etc. These tasks require high analytical and thinking skills, a job only a professionals can do. But for machine all these tasks are problem areas. Ai is now flourishing as a practical discipline and focusses well on all domains. Al Techniques: Al technique is considered as a method of using knowledge. The research in Al for the first three decades concludes that intelligence requires knowledge. More the knowledge an individual has, the more intelligent he is. Few properties of knowledge are: It occupies large volume. * Itis not easy to describe or characterize correctly. * Itis varying in nature i.e; it is continuously changing. The three most important Al techniques are: i. Search . Use of knowledge i, Abstraction 1) Search: It is a way of finding solutions to the problems that cannot be solved directly. A search program finds a solution for a problem by trying various sequence of operations or actions until the solution is found. Advantages of search technique: 1. Itis a best way so for, as no other better way has been found to solve the problems. 2. To solve any problem using search we need to only code the operator, the search will find the sequence of actions that will provide the desired result. Disadvantages of search technique: 1. Most problems have search spaces so large that it is impossible to search the whole space. 2) Use of knowledge: The use of knowledge is a way of finding solutions to the complicated problems by means of manipulating structures of the objects. Al technique is usually a method that exploits knowledge that are represented as: 3|Page i, The knowledge captures general things. That is, grouping situations together that share common properties rather than representing each situation separately. Knowledge is supposed to process this property otherwise a lot of memory space is wasted in representing such situations separately. ii. In many Al domains, most of the knowledge in a program must be provided bt the people. ili, The knowledge must be adjusted (modified) easily to correct errors. iv. Knowledge could be used to overcome its own sheer bulk by helping to limit the range of possibilities that need to be considered. 3) Abstraction: Abstraction is a way of separating important features and notifications from the unimportant ones that would otherwise confuse any process. For example: If we want to compute (find) the square root of a number then we simply call a “sqrt” function in ¢ programming. We do not need to know the implementation details of the “sqrt” function. In order to characterize an Al technique, let us consider tic-tac-toe and use a series of different approaches to play the game. Example: Tic-Tac-Toe: 1. The first approach or Solution 1 to Tic-Tac-Toe Game: The Tic-Tac-Toe game consists of a nine-element vector called BOARD; it represents the numbers 1 to 9 in three rows. 72]3 4[5 [6 7 $[5 An element contains the value 0 for blank, 1 for X and 2 for 0. A MOVETABLE vector consists of 19,683 elements (39) and is needed where each element is a nine-element vector. The contents of the vector are especially chosen to help the algorithm. The algorithm makes moves by pursuing the following: 1. View the vector as a ternary number. Convert it to a decimal number. 2. Use the computed decimal number as an index in MOVETABLE and access the vector. 4|Page 3. Set BOARD to this vector indicating how the board looks after the move. Advantages of first approach: * The program is efficient in terms of time. * It could play optimal game. Disadvantages of first approach: * It takes a lot of space to store the Move-Table. * Alot of work is needed to specify all the entries in the Move-Table 2. The Second approach or Solution 2 to Tic-Tac-Toe Game: The data structure used in second approach consists of a nine-element vector called BOARD; it represents the numbers 1 to 9 in three rows. But instead of using 0,1 and 2 in each element, we store 2 for blank, 3 for X, and 5 for O. 1] 2]3 4/5/6 7/8/9 A variable called TURN indicates 1 for the first move and 9 for the last. The algorithm consists of three actions: MAKE2: This function returns 5 if the center square is blank. Otherwise, it returns any blank non-comer square i.e; 2,46 or 8. POSSWIN(p): This function returns 0 if the player p cannot win on his next move; otherwise, returns the number of the square that gives a winning move. If the product is 18 (3x3x2), then X can win. If the product is 50 (5x5x2) then O can win. Go(n): This function makes a move in the square n. Strategy used in solution 2: TURN=1: Go(1). S| Page TURN=2: if Board{5] is blank, Go(5), else Go(1). TURN=3: if Board{9] is blank, Go(9), else Go(3). TURN=4: if POSSWIN(X) 0, then Go(POSSWIN(X)) and so on. Advantages of solution 2: © Easier to understand the program’s strategy. Disadvantages of solution 2: * The proposed solution is not efficient in terms of time, as it has to check several conditions before making each move. * Hard to generalize the program or solution. 3) The final approach or solution 3 to Tic-Tac-Toe Game: The data structure used in second approach consists of a nine-element vector called BOARD. T2735 +[s]6 7[8[9 In this case, the next move is selected by seeing the next possible board position that results from each possible move. Algorithm: Follow these steps to select the next move. Step 1: If it is win, give it the highest rating. Step2: Otherwise, consider all the moves the opponent could make next. Assume the opponent will make the move that is worst for us. Assign the rating of that move to the current node. Step 3: The best node is then the one with the highest rating. Advantages of solution 3: * Could be extended to handle more complicated games. Disadvantages of solution 3: 6|Page * Require much more time to consider all possible moves. Solution 3 is the best example of the use of Al Technique. The Level of the Model: Model: Informative representation of the object. The level of the model describes the non-graphical content of the model. It allows the ‘owner to verify whether to proceed the project. Before we set out to do something, it is a good idea to decide exactly what we are trying to do. So, we must ask ourselves, “What is our goal in trying to produce programs that do the intelligent things that people do?" Are we trying to produce programs that do the tasks the same way that people do? Or, are we trying to produce programs that simply do the tasks the easiest way that is possible? Efforts to build the programs that perform tasks the way people do can be divided into two classes: 1, Programs in the first class attempt to solve problems that a computer can easily solve and do not usually use Al techniques. Al techniques usually include a search, the use of knowledge about the objects involved in the problem and abstraction which allows to enable a solution to be found in real time; otherwise, the data could explode in size. The classical example of this class of program is EPAM (Elementary Perceiver and Memorizer) which memorized associated pairs of garbage syllables. Memorizing pairs of garbage syllables is easy for a computer. 2. The second class of programs attempts to model human performances are those that do things which uses Al techniques. They do things that are non- trivial for the computer. There are several reasons one might want to model human performances are as: * To test psychological theories of human performance -- a program to simulate the conversational behavior of a paranoid person. * To enable computers to understand human reasoning - for example, programs that answer questions based upon newspaper articles indicating human behavior. * To enable people to understand computer reasoning. Some people are reluctant to accept computer results unless they understand the mechanisms involved in arriving at the results. * To exploit the knowledge gained by people who are best at gathering information 7|Page Criteria for success: One of the important questions to answer any scientific or engineering research project is “How will we know if we have succeeded?" How will we know if we have constructed a machine that is intelligent? “What is intelligent: Alan Turing proposed the following method for determining whether a machine can think. His method has since become known as the Turing Test. Turing Test was introduced by Turing in his 1950 paper, "Computing Machinery and Intelligence,” which considered the question, "Can Machine think?" To conduct this test, we need two persons and a machine to be evaluated. One person plays the role of interrogator, who is in a separate room from the machine and the other person. The interrogator can ask questions either to a person or a machine by typing questions and receiving typed responses. However, the interrogator knows them only as A and B and aims (wants) to determine which is the person and which is the machine. The goal of the machine is to fool the interrogator into believing that it is a person. If the machine succeeds at this, then we will conclude that the machine can think. The machine is allowed to do whatever it can to fool the interrogator. So, for example, if interrogator asked the question “How much is 12,324 times 73,9812" Machine wait for several minutes and then respond with the wrong answer. If the interrogator wouldn't able to distinguish the answers provided by both @ person and a machine then the machine passes the test and the machine is considered as intelligent as a human. In other words, a machine would be considered intelligent if its conversation couldn't be easily distinguished from human's. Alan Turing also proposed that by the year 2000 a machine “would be able to play the imitation game so well that an average interrogator will not have more 8|Page than a 70-percent chance of making the right identification (machine or human) after five minutes of questioning.” No computer has come close to this standard. But John Searle proposed the “Chinese room argument”. He argued that the Turing test could not be used to determine “whether or not a machine is Considered as intelligent like humans”. He argued that any machine like ELIZA and PARRY could easily pass the Turing Test simply by manipulating symbols of which they had no understanding. Without understanding, they could not be described as “thinking” in the same sense people do. Problem, Problem Space and Search: To build an Al system to solve a particular problem, we need to focus on 4 things: 1. Define the problem accurately: We must include the detailed specification about the initial situation as well as about the final situation. 2. Analyse the problem carefully: Check the possible techniques to solve the problem. 3. Isolate and represent the task knowledge that is necessary to solve the problem. 4. Choose the best problem-solving technique and apply it to the particular problem. Defining the problem as a state space search: 1. Chess Problem: The starting position can be described as an 8x8 array where each position contains a symbol in the official chess opening position. Ce) ee afalalalalalaya Alalalalalalala ofolofeojofojo The legal move in the game provide the way of getting from the initial state to the goal state. They cane be described easily as a set of rules consisting of two parts: 1. Alef side that serves as a pattern to be matched against the current board position. 91Page 2. A right side that describes the change o be made to the board position to reflect the move. There are several ways in which these moves can be written. For example, we could write a rule such as shown in fig below: (o ooopojoyoyc a a[a[alalalalala ” At Le alAa[alalalalala Alalal jalalala ojofojojojajo|o: ojojo[ojolojo[o Fig 1: One Legal Chess Move However, if we write rules like the one above, we have to write a very large number of them since there has to be a separate rule for each of the roughly 10° possible board positions. Using so many rules poses two serious practical difficulties: * No person could ever supply a complete set of such rules. It would take too long and could certainly not be done without mistakes. * No program could easily handle all those rules. In order to minimize such problems, we define the problem of playing chess as a problem of moving around in a slate space, where each state corresponds to a legal position of the board. We can then play chess by starting at an initial state, using a set of rules to move from one state to another and attempting to end up in one of the set of final states. 2. Water Jug Problem: You are given two jugs, a 4-gallon one and a 3-gallon one, a pump which has unlimited water which you can use to fill the jug, and the ground on which water may be poured. Neither jug has any measuring markings on it. How can you get exactly 2 gallons of water in the 4-gallon jug? 10|Page State Representation and Initial State: We will represent a state of the problem asa tuple (x, y) where x represents the amount of water in the 4-gallon jug and y represents the amount of water in the 3-gallon jug. Note 0 y) x0 4. Empty 3-gallon jug on ground ay) (0) y>0 5, Pour some water from 3-gal (xy) >xy-d) Jug yro 6. Pour some water from 3-gal (xy) >-dy) Jug x0 7. Pour water from 3-gal jug (xy) P*Ay-(4-0) to 4-gal jug till the 4-gal is full x+y24 and y>0 8. Pour water from 4-gal jug xy) >x-B-y),3) to 3-gal jug till the 3-galis full x+y23 and x>0 9. Pour all of water from 3-gal wy) Dx+y,0) jug to 4-gal jug O0 10. Pour all of water from 4-gal (xy) >Ox+y) jug to 3-gal jug O

You might also like