International Higher Diploma in Computer Studies Artificial Intelligence The marks given in brackets are indicative of the weight given to each part of the question. Answer FOUR questions out of SIX. Time: TWO hours and 10 minutes reading time Reference materials are NOT allowed. Question 1 a) Define Artificial Intelligence. [5 Marks] Artificial Intelligence (AI) is a branch of computer science concerned with the design and implementation of programs, which can simulate the human skills such as problem solving, visual perception and language understanding. b) With the help of diagrams, differentiate between Breadth-First Search and Depth-First Search techniques. [10 Marks] Breadth-First Search (BFS) Breadth-first search goes through the tree level by level, visiting all of the nodes on the top level first, then all the nodes on the second level, and so on. This strategy has the benefit of being complete (if there's a solution, it will be found), and optimal as long as the shallowest solution is the best solution. Depth-First Search (DFS) Depth-first search goes through the tree branch by branch, going all the way down to the leaf nodes at the bottom of the tree before trying the next branch over. This strategy requires much less memory than breadth-first search, since it only needs to store a single path from the root of the tree down to the leaf node. IHDCS/AI/0112 Page 1 of 8 c) Differentiate between object recognition and pattern recognition. [10 Marks] Object Recognition stage is the ultimate goal of many vision systems. Its main uses include: move around safely avoiding objects, pick and place various objects, inspect objects perform many other tasks. Pattern Recognition “Pattern recognition is the research area that studies the operation and design of systems that recognize patterns in data. It encloses subdisciplines like discriminant analysis, feature extraction, error estimation, cluster analysis (together sometimes called statistical pattern recognition), grammatical inference and parsing (sometimes called syntactical pattern recognition). Important application areas are image analysis, character recognition, speech analysis, man and machine diagnostics, person identification and industrial inspection.” Question 2 a) What is the objective of alpha beta pruning technique? [8 Marks] It is a technique that improves upon the minimax algorithm by ignoring branches on the game tree that do not contribute further to the outcome. The basic idea behind this modification to the minimax search algorithm is the following. During the process of searching for the next move, not every move (i.e. every node in the search tree) needs to considered in order to reach a correct decision. In other words, if the move being considered results in a worse outcome than our current best possible choice, then the first move that the opposition could make which is less then our best move will be the last move that we need to look at. A subtree is pruned when the algorithm finds an alpha or beta that is not as good as what has been found so far. IHDCS/AI/0112 Page 2 of 8 If you assume that the algorithm is set to evaluate the best nodes first, it changes the effective branching factor from b, to the square root of b, allowing the algorithm to go about twice as far as minimax in the same time. b) Discuss the problem arising from machine vision. [8 Marks] People can easily make sense of what they see around them, easily recognising complex objects - it's something we learn when we are very young. However, like natural language understanding, this is extremely hard to automate. It requires both knowledge of objects in the world (e.g., cats are furry and have a tail), knowledge of certain basic properties of the physical world (e.g., objects generally have continuous smooth surfaces), and knowledge of basic optics (e.g., image intensity depends on the reflectance of the object). Recognition of objects is complicated by the fact that a single object may be viewed in many different ways, light and shadows may be different, other objects may be in front of it, and so on. c) What do you understand by blind search technique? [5 Marks] The method is the blind search - a search for the best answer at random. Pure blind search is usually simple to run, and therefore fast to realize. It often finds answers that are good enough for practical purposes, or at least can serve as the preliminary estimates. Various ad hoc modifications increase accuracy and are usually easy to implement, too. Blind search, also called uninformed search, works with no information about the search space, other than to distinguish the goal-state from all the others. These algorithms do not have any knowledge as to which “direction” the Goal State lies. d) List down four areas under AI. [4 Marks] Natural Language Problem Solving Pattern Recognition Automatic Programming Game Playing Expert System Neural Networks Robotics Question 3 a) List and describe different types of robots. [12 Marks] Tabletop Robots Tabletop robots are robots that are small enough to fit onto a ping-pong sized table even though many of them are designed to run on the floor in spite of their size. Mid-size Robots Mid-sized robots are generally a bit bigger and although they can be set on a table or workbench for construction/maintenance they are too big to be tested there and must live on the floor. IHDCS/AI/0112 Page 3 of 8 Members Robots: 'To big for the Kitchen' robots are generally just that. They are designed for industrial settings and are much more complex and expensive. They often require vision systems, and people protection circuits as they can hurt someone if they go astray. Air and Sea Robots Air and Sea robots are generally designed to fly or float. There are whole sets of unique problems for each of these. b) Describe five methods which are used in machine learning. [8 Marks] Inductive Learning This refers to learning which progresses from the specific to the general. Used in knowledge acquisition. Case-based reasoning and analogical reasoning This is defined as knowledge and/or inferences, which are derived from case history and analogies. It is used in knowledge acquistion and in inferencing. Statistical methods It is used in knowledge acquisition and problem solving. Genetic algorithms The goal of genetic algorithms is to develop systems that can demonstrate self-organization, adaptation and learning by experience through exposure to the environment. This is similar but simplied to the way in which biological systems learn. Neural Nets A model that imitates biological neural network structures. The software simulates massively parallel processes which involve processing elements called artificial neurons interconnected in a network structure. c) What is Natural Language Processing? [5 Marks] The term: “natural” languages refer to the languages that people speak, like English and Japanese and Swahili, as opposed to artificial languages like programming languages or logic. Natural Languages are languages used in human culture such as Chinese, English or Bulgarian. They can be either spoken or written. NLP (Natural Language Processing) is a field in AI involving anything that processes natural language. Extensive research in NLP over the past decade has brought us one of the most useful applications of AI: machine translation. NLP research also deals with speech recognition. Currently, programs that convert spoken speech into text have been widely used and are fairly dependable. IHDCS/AI/0112 Page 4 of 8 Question 4 Write short notes on the following: a) Pattern Recognition “Pattern recognition is the research area that studies the operation and design of systems that recognize patterns in data. It encloses subdisciplines like discriminant analysis, feature extraction, error estimation, cluster analysis (together sometimes called statistical pattern recognition), grammatical inference and parsing (sometimes called syntactical pattern recognition). Important application areas are image analysis, character recognition, speech analysis, man and machine diagnostics, person identification and industrial inspection.” b) Game Playing Game playing is a search problem where you can have perfect decisions and imperfect decisions. Alpha-Beta Pruning is a technique to eliminate parts of the game tree. Games are easy to represent on a computer. Game-playing agents typically have a small number of actions. It can be considered an idealization of the real world since you have to interact with others. c) Robotics Robot is a programmable machine that imitates the actions or appearance of an intelligent creature– usually a human. To qualify as a robot, a machine has to be able to do two things: 1) get information from its surroundings, and 2) do something physical–such as move or manipulate objects. Robotics and AI/ALife are often seen as two different fields entirely, robotics being a mechanical engineering field, and AI/ALife being computer science related. Whilst this is very true, robotics and AI are closely meshed, both in obvious, and less obvious ways. d) Expert Systems Expert Systems are computer programs that are derived from a branch of computer science research called Artificial Intelligence (AI). AI's scientific goal is to understand intelligence by building computer programs that exhibit intelligent behavior. It is concerned with the concepts and methods of symbolic inference, or reasoning, by a computer, and how the knowledge used to make those inferences will be represented inside the machine. e) Knowledge Acquisition [5x5 Marks] Knowledge acquisition refers to the task of endowing expert systems with knowledge, a task currently performed by knowledge engineers. The choice of reasoning method, or a shell, is important, but it isn't as important as the accumulation of high-quality knowledge. The power of an expert system lies in its store of knowledge about the task domain -- the more knowledge a system is given, the more competent it becomes. IHDCS/AI/0112 Page 5 of 8 Question 5 a) What is Genetic Programming? [5 Marks] Genetic programming is an excellent way of evolving algorithms that will map data to a given result when no set formula is known. Mathematicians/programmers could normally find algorithms to deal with a problem with 5 or so variables, but when the problem increases to 10, 20, 50 variables the problem becomes close to impossible to solve. b) Define “Frames” as a knowledge representation method. [5 Marks] Frames are a variant of nets that are one of the most popular ways of representing nonprocedural knowledge in an expert system. In a frame, all the information relevant to a particular concept is stored in a single complex entity, called a frame. Superficially, frames look pretty much like record data structures. However frames, at the very least, support inheritance. They are often used to capture knowledge about typical objects or events, such as a typical bird, or a typical restaurant meal. c) Briefly explain the concepts of Inductive Learning. [5 Marks] This refers to learning which progresses from the specific to the general. Used in knowledge acquisition. Inductive learning systems learn by analyzing examples to identify correlations between inputs and outputs. For example, neural network models process inputs according to networks of idealized neurons, and learn by algorithms that adjust the weights of neural connections based on correlations between inputs and outputs in training examples. d) Differentiate between Neural Networks and Convention computers. [10 Marks] Neural Networks are essentially a type of computer, but it does not work in the same way as the conventional computer. Neural Network it has very different computational properties. The conventional computer has two main components, a memory and some kind of processing device (that is a CPU). Information is represented in terms of structures of symbols, and the way in which this information is processed depends on a program also stored in the computer's memory. The neural network on the other hand is made up of a set of simple processing units connected together in a network. The connections between the units can be thought of as wires, which carry electrical activation from one unit to another. The units themselves have some similarity to biological neurons. They store and pass on a certain amount of electrical activation that is related to the amount of activation they themselves receive through their input connections. Information is represented with levels of activation and the way in which it is processed all depends on the way in which activation propagates through the network; i.e. it all depends on the connections between the units (hence the name connectionism). IHDCS/AI/0112 Page 6 of 8 Question 6 a) Explain the following Rule-Based systems. i) Forward Chaining Systems Forward-chaining means that the system begins with the axioms and rules, then reviews conclusionsmuch like one might prove a theorem in geometry. Forward chaining is reasoning from known knowledge (or data) to new knowledge. It might be used to match the customer's behavior to patterns describing appropriate lifestyles and banking products. If our banking assistant were implemented using forward-chaining, it might contain rules such as “parents with high incomes and young children often want college savings accounts.” Forwardchaining is ideal for applications with a large amount of data, such as sensor processing. Forwardchaining will provide all the conclusions a system can possibly reach unless specifically halted. ii) Backward Chaining Systems A backward-chaining system begins with a hypothesis to be proved, and then proceeds to determine what the system must know in order to prove it. Backward-chaining reasoning tends to be more focused than forward-chaining. Backward-chaining is also more appropriate for diagnostic applications, such as the banking assistant. Such applications tend to have high-level goals and causes of the goals (e.g., a desire to minimize fees), which must be considered. b) Define “Syntax” and “Semantics”. [2 x 5 Marks] [5 Marks] Syntax These words group themselves together into phrases, in these phrases in turn combine into sentences. This is the level of syntax. Syntax helps us understand how words are grouped together to make complex sentences, and gives us a starting point for working out the meaning of the whole sentence. Semantics The problem of how to represent the meaning of sentences is undertaken in the level of semantics. In general, the input to the semantic stage of analysis may be viewed as being a set of possible parses of the sentence, and information about the possible word meanings. The aim is to combine the word meanings, given knowledge of the sentence structure, to obtain an initial representation of the meaning of the whole sentence. IHDCS/AI/0112 Page 7 of 8 c) With the help of illustration, discuss how Expert System is designed. [10 Marks] The user interacts with the system through a user interface, which may use menus, natural language or any other style of interaction). Then an inference engine is used to reason with both the expert knowledge (extracted from our friendly expert) and data specific to the particular problem being solved. The expert knowledge will typically be in the form of a set of IF-THEN rules. The case specific data includes both data provided by the user and partial conclusions (along with certainty measures) based on this data. In a simple forward chaining rule-based system the case specific data will be the elements in working memory. Almost all expert systems also have an explanation subsystem, which allows the program to explain its reasoning to the user. Some systems also have a knowledge base editor, which help the expert or knowledge engineer to easily update and check the knowledge base. IHDCS/AI/0112 Page 8 of 8