Thursday, April 28, 2016

Artificial Intelligence An Overview

     SHORT ANSWER QUESTIONS IN ARTIFICIAL INTELLIGENCE


1) What is Artificial Intelligence?

Ans :  Artificial Intelligence is an area of computer science that emphasizes the creation of intelligent machine that work and reacts like humans.

2) What is an artificial intelligence Neural Networks? 

Ans : Artificial intelligence Neural Networks can model mathematically the way biological brain works, allowing the machine to think and learn the same way the humans do- making them capable of recognizing things like speech, objects and animals like we do.

 3) What are the various areas where AI (Artificial Intelligence) can be used?

 Ans :  Artificial Intelligence can be used in many areas like Computing, Speech recognition, Bioinformatics, Humanoid robot, Computer software, Space and Aeronautics's etc.

4) Which is not commonly used programming language for AI? 

Ans : Perl language is not commonly used programming language for AI

5) What is Prolog in AI? 

Ans :  In AI, Prolog is a programming language based on logic.

6) Give an explanation on the difference between strong AI and weak AI? 

Ans :  Strong AI makes strong claims that computers can be made to think on a level equal to humans while weak AI simply predicts that some features that are resembling to human intelligence can be incorporated to computer to make it more useful tools.

7) Mention the difference between statistical AI and Classical AI ? 

Ans : Statistical AI is more concerned with “inductive” thought like given a set of pattern, induce the trend etc. While, classical AI, on the other hand, is more concerned with “ deductive” thought given as a set of constraints, deduce a conclusion etc.

8) What is alternate, artificial, compound and natural key?

 Ans : Alternate Key: Excluding primary keys all candidate keys are known as Alternate Keys. Artificial Key: If no obvious key either stands alone or compound is available, then the last resort is to, simply create a key, by assigning a number to each record or occurrence. This is known as artificial key. Compound Key: When there is no single data element that uniquely defines the occurrence within a construct, then integrating multiple elements to create a unique identifier for the construct is known as Compound Key. Natural Key: Natural key is one of the data element that is stored within a construct, and which is utilized as the primary key.

9) What does a production rule consist of? 

Ans : The production rule comprises of a set of rule and a sequence of steps.

10) Which search method takes less memory? 

Ans : The “depth first search” method takes less memory.

11) Which is the best way to go for Game playing problem?

 Ans : Heuristic approach is the best way to go for game playing problem, as it will use the technique based on intelligent guesswork. For example, Chess between humans and computers as it will use brute force computation, looking at hundreds of thousands of positions.

12) A* algorithm is based on which search method?

 Ans : A* algorithm is based on best first search method, as it gives an idea of optimization and quick choose of path, and all characteristics lie in A* algorithm.

13) What does a hybrid Bayesian network contain?

Ans :  A hybrid Bayesian network contains both a discrete and continuous variables.

14) What is agent in artificial intelligence? 

Ans : Anything perceives its environment by sensors and acts upon an environment by effectors are known as Agent. Agent includes Robots, Programs, and Humans etc.

 15) What does Partial order or planning involve? 

Ans : In partial order planning , rather than searching over possible situation it involves searching over the space of possible plans. The idea is to construct a plan piece by piece.

16) What are the two different kinds of steps that we can take in constructing a plan? 

Ans : a) Add an operator (action) b) Add an ordering constraint between operators

17) Which property is considered as not a desirable property of a logical rule-based system?

Ans :  “Attachment” is considered as not a desirable property of a logical rule based system.

18) What is Neural Network in Artificial Intelligence?

 Ans : In artificial intelligence, neural network is an emulation of a biological neural system, which receives the data, process the data and gives the output based on the algorithm and empirical data.

19) When an algorithm is considered completed? 

Ans : An algorithm is said completed when it terminates with a solution when one exists.

20) What is a heuristic function?

Ans :  A heuristic function ranks alternatives, in search algorithms, at each branching step based on the available information to decide which branch to follow.

21) What is the function of the third component of the planning system? 

Ans : In a planning system, the function of the third component is to detect when a solution to problem has been found.

22) What is “Generality” in AI ?

 Ans : Generality is the measure of ease with which the method can be adapted to different domains of application.

23) What is a top-down parser? 

Ans : A top-down parser begins by hypothesizing a sentence and successively predicting lower level constituents until individual pre-terminal symbols are written.

24) Mention the difference between breadth first search and best first search in artificial intelligence?

Ans : These are the two strategies which are quite similar. In best first search, we expand the nodes in accordance with the evaluation function. While, in breadth first search a node is expanded in accordance to the cost function of the parent node.

25) What are frames and scripts in “Artificial Intelligence”? 

Ans : Frames are a variant of semantic networks which is one of the popular ways of presenting nonprocedural knowledge in an expert system. A frame which is an artificial data structure is used to divide knowledge into substructure by representing “stereotyped situations’. Scripts are similar to frames, except the values that fill the slots must be ordered. Scripts are used in natural language understanding systems to organize a knowledge base in terms of the situation that the system should understand.

26) What is FOPL stands for and explain its role in Artificial Intelligence?

Ans :  FOPL stands for First Order Predicate Logic, Predicate Logic provides a) A language to express assertions about certain “World” b) An inference system to deductive apparatus whereby we may draw conclusions from such assertion c) A semantic based on set theory

 27) What does the language of FOPL consists of 

Ans : a) A set of constant symbols b) A set of variables c) A set of predicate symbols d) A set of function symbols e) The logical connective f) The Universal Quantifier and Existential Qualifier g) A special binary relation of equality

28) For online search in ‘Artificial Intelligence’ which search agent operates by interleaving computation and action? 

Ans : In online search, it will first take action and then observes the environment.

29) Which search algorithm will use a limited amount of memory in online search?

Ans : RBFE and SMA* will solve any kind of problem that A* can’t by using a limited amount of memory.

30) In ‘Artificial Intelligence’ where you can use the Bayes rule?

 Ans : In Artificial Intelligence to answer the probabilistic queries conditioned on one piece of evidence, Bayes rule can be used.

31) For building a Bayes model how many terms are required?

 Ans : For building a Bayes model in AI, three terms are required; they are one conditional probability and two unconditional probability.

32) While creating Bayesian Network what is the consequence between a node and its predecessors? 

Ans : While creating Bayesian Network, the consequence between a node and its predecessors is that a node can be conditionally independent of its predecessors.

33) To answer any query how the Bayesian network can be used?

Ans :  If a Bayesian Network is a representative of the joint distribution, then by summing all the relevant joint entries, it can solve any query.

34) What combines inductive methods with the power of first order representations? 

Ans : Inductive logic programming combines inductive methods with the power of first order representations.

35) In Inductive Logic Programming what needed to be satisfied? 

Ans : The objective of an Inductive Logic Programming is to come up with a set of sentences for the hypothesis such that the entailment constraint is satisfied.

36) In top-down inductive learning methods how many literals are available?
 What are they? 

Ans : There are three literals available in top-down inductive learning methods they are a) Predicates b) Equality and Inequality c) Arithmetic Literals

37) Which algorithm inverts a complete resolution strategy? 

Ans : ‘Inverse Resolution’ inverts a complete resolution, as it is a complete algorithm for learning first order theories.

38) In speech recognition what kind of signal is used?

Ans :  In speech recognition, Acoustic signal is used to identify a sequence of words.

39) In speech recognition which model gives the probability of each word following each word? 

Ans : Biagram model gives the probability of each word following each other word in speech recognition.

40) Which algorithm is used for solving temporal probabilistic reasoning? 

Ans : To solve temporal probabilistic reasoning, HMM (Hidden Markov Model) is used, independent of transition and sensor model.

41) What is Hidden Markov Model (HMMs) is used? 

Ans : Hidden Markov Models are a ubiquitous tool for modelling time series data or to model sequence behaviour. They are used in almost all current speech recognition systems.

42) In Hidden Markov Model, how does the state of the process is described?

 Ans : The state of the process in HMM’s model is described by a ‘Single Discrete Random Variable’.

 43) In HMM’s, what are the possible values of the variable? 

Ans : ‘Possible States of the World’ is the possible values of the variable in HMM’s.

44) In HMM, where does the additional variable is added?

 Ans : While staying within the HMM network, the additional state variables can be added to a temporal model.

45) In Artificial Intelligence, what do semantic analyses used for? 

Ans : In Artificial Intelligence, to extract the meaning from the group of sentences semantic analysis is used.

46) What is meant by compositional semantics? 

Ans : The process of determining the meaning of P*Q from P,Q and* is known as Compositional Semantics.

47) How logical inference can be solved in Propositional Logic? 

Ans : In Propositional Logic, Logical Inference algorithm can be solved by using a) Logical Equivalence b) Validity c) Satisfying ability

48) Which process makes different logical expression looks identical?

Ans :  ‘Unification’ process makes different logical expressions identical. Lifted inferences require finding substitute which can make a different expression looks identical. This process is called unification.

49) Which algorithm in ‘Unification and Lifting’ takes two sentences and returns a unifier?

 Ans : In ‘Unification and Lifting’ the algorithm that takes two sentences and returns a unifier is ‘Unify’ algorithm.

 50) Which is the most straight forward approach for planning algorithm? 

Ans : State space search is the most straight forward approach for planning algorithm because it takes account of everything for finding a solution.

What is Artificial Intelligence?

According to the father of Artificial Intelligence, John McCarthy, it is “The science and engineering of making intelligent machines, especially intelligent computer programs”.
Artificial Intelligence is a way of making a computer, a computer-controlled robot, or a software think intelligently, in the similar manner the intelligent humans think.
AI is accomplished by studying how human brain thinks, and how humans learn, decide, and work while trying to solve a problem, and then using the outcomes of this study as a basis of developing intelligent software and systems.

Philosophy of AI

While exploiting the power of the computer systems, the curiosity of human, lead him to wonder, “Can a machine think and behave like humans do?”
Thus, the development of AI started with the intention of creating similar intelligence in machines that we find and regard high in humans.

Goals of AI

  • To Create Expert Systems − The systems which exhibit intelligent behavior, learn, demonstrate, explain, and advice its users.
  • To Implement Human Intelligence in Machines − Creating systems that understand, think, learn, and behave like humans.

Applications of AI

AI has been dominant in various fields such as −
  • Gaming − AI plays crucial role in strategic games such as chess, poker, tic-tac-toe, etc., where machine can think of large number of possible positions based on heuristic knowledge.
  • Natural Language Processing − It is possible to interact with the computer that understands natural language spoken by humans.
  • Expert Systems − There are some applications which integrate machine, software, and special information to impart reasoning and advising. They provide explanation and advice to the users.
  • Vision Systems − These systems understand, interpret, and comprehend visual input on the computer. For example,
    • A spying aeroplane takes photographs, which are used to figure out spatial information or map of the areas.
    • Doctors use clinical expert system to diagnose the patient.
    • Police use computer software that can recognize the face of criminal with the stored portrait made by forensic artist.
  • Speech Recognition − Some intelligent systems are capable of hearing and comprehending the language in terms of sentences and their meanings while a human talks to it. It can handle different accents, slang words, noise in the background, change in human’s noise due to cold, etc.
  • Handwriting Recognition − The handwriting recognition software reads the text written on paper by a pen or on screen by a stylus. It can recognize the shapes of the letters and convert it into editable text.
  • Intelligent Robots − Robots are able to perform the tasks given by a human. They have sensors to detect physical data from the real world such as light, heat, temperature, movement, sound, bump, and pressure. They have efficient processors, multiple sensors and huge memory, to exhibit intelligence. In addition, they are capable of learning from their mistakes and they can adapt to the new environment.

Real Life Applications of AI Research Areas

There is a large array of applications where AI is serving common people in their day-to-day lives −
Sr.No.Research AreasExample
1Expert Systems
Examples − Flight-tracking systems, Clinical systems.
Expert Systems Application
2Natural Language Processing
Examples: Google Now feature, speech recognition, Automatic voice output.
NLP Application
3Neural Networks
Examples − Pattern recognition systems such as face recognition, character recognition, handwriting recognition.
Neural Networks Application
4Robotics
Examples − Industrial robots for moving, spraying, painting, precision checking, drilling, cleaning, coating, carving, etc.
Robotics Application
5Fuzzy Logic Systems
Examples − Consumer electronics, automobiles, etc.
Fuzzy Logic Application


Advantages of production systems For AI:-

1. Production systems provide an excellent tool for structuring AI programs.
2. Production Systems are highly modular because the individual rules can be added, removed or modified independently.
3. The production rules are expressed in a natural form, so the statements contained in the knowledge base should be according of an expert thinking out loud.
Semantic Networks
 A semantic network is a simple representation scheme that uses a graph of labeled nodes and labeled, directed arcs to encode knowledge. – Usually used to represent static, taxonomic, concept dictionaries Semantic networks are typically used with a special set of accessing procedures that perform “reasoning” – e.g., inheritance of values and relationships
A semantic net (or semantic network) is a knowledge representation technique used for propositional information. So it is also called a propositional net. Semantic nets convey meaning. They are two dimensional representations of knowledge. Mathematically a semantic net can be defined as a labelled directed graph.
Semantic nets consist of nodes, links (edges) and link labels. In the semantic network diagram, nodes appear as circles or ellipses or rectangles to represent objects such as physical objects, concepts or situations. Links appear as arrows to express the relationships between objects, and link labels specify particular relations. Relationships provide the basic structure for organizing knowledge. The objects and relations involved need not be so concrete. As nodes are associated with other nodes semantic nets are also referred to as associative nets.

INHERITANCE REASONING
Unless there is a specific evidence to the contrary, it is assumed that all members of a class (category) will inherit all the properties of their superclasses. So semantic network allows us to perform inheritance reasoning. For example Jill inherits the property of having two legs as she belongs to the category of FemalePersons which in turn belongs to the category of Persons which has a boxed Legs link with value 2. Semantic nets allows multiple inheritance. So an object can belong to more than one category and a category can be a subset of more than one another category.
Non-Linear Planning
• Basic Idea – Use goal set instead of goal stack – Include in the search space all possible subgoal orderings
• Handles goal interactions by interleaving
• Advantages – Non-linear planning is sound – Non-linear planning is complete – Non-linear planning may be optimal with respect to plan length (depending on search strategy employed)
 • Disadvantages – Larger search space, since all possible goal orderings may have to be considered – Somewhat more complex algorithm; More bookkeeping

Non-Linear Planning Algorithm
• NLP (initial-state, goals) – state = initial-state;
plan = [];
goalset = goals;
opstack = [] – Repeat until goalset is empty
• Choose a goal g from the goalset
• If g does not match state, then –
Choose an operator o whose add-list matches goal g –
Push o on the opstack – Add the preconditions of o to the goalset
• While all preconditions of operator on top of opstack are met in state – Pop operator o from top of opstack – state = apply(o, state) – plan = [plan; o]

BFS and Games: Minimax  A two-player game can be represented as a graph where the game states are represented as vertices and transitions from one game state to another are represented as edges. We can use BFS to find all the game states that can be obtained in up to x moves from some starting state. We can also use some assessment function to quantify how good of a position a game state is for us.
Using BFS, we can figure out all the possible sequences of x moves from some starting position and using our assessment function we can figure out approximately how good of a situation we’ll be in after each sequence of x moves. Given this information, the next question is figuring out which move to make from our starting position. Intuitively, one may want to pick the move that leads to the highest value game state. However, you have to keep in mind that the opponent is also looking to to play his best move as well. Thus, what you actually want to do is play to minimize your maximum loss, i.e. play so that you minimize your opponent’s gain even if he plays perfectly.


Task Domains of Artificial Intelligence
Mundane (Ordinary) Tasks
Formal Tasks
Expert Tasks
Perception
  • Computer Vision
  • Speech, Voice
  • Mathematics
  • Geometry
  • Logic
  • Integration and Differentiation
  • Engineering
  • Fault Finding
  • Manufacturing
  • Monitoring
Natural Language Processing
  • Understanding
  • Language Generation
  • Language Translation
Games
  • Go
  • Chess (Deep Blue)
  • Ckeckers
Scientific Analysis
Common Sense
Verification
Financial Analysis
Reasoning
Theorem Proving
Medical Diagnosis
Planing
Creativity
Robotics
  • Locomotive

Advantages and disadvantages of Probabilistic reasoning.
 Interpolation Bayesian learning methods interpolate all the way to pure engineering. When faced with any learning problem, there is a choice of how much time and effort a human vs. a computer puts in. (For example, the mars rover pathfinding algorithms are almost entirely engineered.) When creating an engineered system, you build a model of the world and then find a good controller in that model. Bayesian methods interpolate to this extreme because the Bayesian prior can be a delta function on one model of the world. What this means is that a recipe of “think harder” (about specifying a prior over world models) and “compute harder” (to calculate a posterior) will eventually succeed. Many other machine learning approaches don’t have this guarantee.
  1. Language Bayesian and near-Bayesian methods have an associated language for specifying priors and posteriors. This is significantly helpful when working on the “think harder” part of a solution.
  2. Intuitions Bayesian learning involves specifying a prior and integration, two activities which seem to be universally useful. (seeintuitions).
With all of these advantages, Bayesian learning is a strong program. However, there are also some very significant disadvantages.
  1. Information theoretically infeasible It turns out that specifying a prior is extremely difficult. Roughly speaking, we must specify a real number for every setting of the world model parameters. Many people well-versed in Bayesian learning don’t notice this difficulty for two reasons:
    1. They know languages allowing more compact specification of priors. Acquiring this knowledge takes some signficant effort.
    2. They lie. They don’t specify their actual prior, but rather one which is convenient. (This shouldn’t be taken too badly, because it often works.)
  2. Computationally infeasible Let’s suppose I could accurately specify a prior over every air molecule in a room. Even then, computing a posterior may be extremely difficult. This difficulty implies that computational approximation is required.
  3. Unautomatic The “think harder” part of the Bayesian research program is (in some sense) a “Bayesian employment” act. It guarantees that as long as new learning problems exist, there will be a need for Bayesian engineers to solve them. (Zoubin likes to counter that a superprior over all priors can be employed for automation, but this seems to add to the other disadvantages.)
In LISP, each variable is represented by a symbol. The variable's name is the name of the symbol and it is stored in the storage cell of the symbol.
Global Variables
Global variables have permanent values throughout the LISP system and remain in effect until a new value is specified.
Global variables are generally declared using the defvarconstruct.
For example
(defvar x 234)
(write x)
When you click the Execute button, or type Ctrl+E, LISP executes it immediately and the result returned is
234
Since there is no type declaration for variables in LISP, you directly specify a value for a symbol with the setq construct.
For Example
->(setq x 10)
The above expression assigns the value 10 to the variable x. You can refer to the variable using the symbol itself as an expression.
The symbol-value function allows you to extract the value stored at the symbol storage place.
For Example
Create new source code file named main.lisp and type the following code in it.
(setq x 10)
(setq y 20)
(format t "x = ~2d y = ~2d ~%" x y)

(setq x 100)
(setq y 200)
(format t "x = ~2d y = ~2d" x y)
When you click the Execute button, or type Ctrl+E, LISP executes it immediately and the result returned is.
x = 10 y = 20
x = 100 y = 200
Local Variables
Local variables are defined within a given procedure. The parameters named as arguments within a function definition are also local variables. Local variables are accessible only within the respective function.
Like the global variables, local variables can also be created using the setq construct.
There are two other constructs - let and prog for creating local variables.
The let construct has the following syntax.
(let ((var1  val1) (var2  val2).. (varn  valn)))
Where var1, var2, ..varn are variable names and val1, val2, .. valn are the initial values assigned to the respective variables.
When let is executed, each variable is assigned the respective value and lastly the s-expression is evaluated. The value of the last expression evaluated is returned.
If you don't include an initial value for a variable, it is assigned to nil.

Partial-order planning is an approach to automated planning that leaves decisions about the ordering of actions as open as possible. It contrasts with total-order planning, which produces an exact ordering of actions. Given a problem in which some sequence of actions is required in order to achieve a goal, a partial-order plan specifies all actions that need to be taken, but specifies an ordering of the actions only where necessary.
Frames were proposed by Marvin Minsky in his 1974 article "A Framework for Representing Knowledge." A frame is anartificial intelligence data structure used to divide knowledge into substructures by representing "stereotyped situations." Frames are the primary data structure used in artificial intelligence Frame languages.
Frames are also an extensive part of knowledge representation and reasoning schemes. Frames were originally derived from semantic networks and are therefore part of structure based knowledge representations. According to Russell and Norvig's "Artificial Intelligence, A Modern Approach," structural representations assemble "...facts about particular object and even types and arrange the types into a large taxonomic hierarchy analogous to a biological taxonomy."
   
What  are  Expert  Systems ?
The expert systems are the computer applications developed to solve complex problems in a particular domain, at the level of extra-ordinary human intelligence and expertise.
Characteristics of Expert Systems
  • High performance
  • Understandable
  • Reliable
  • Highly responsive
Capabilities of Expert Systems
The expert systems are capable of −
  • Advising
  • Instructing and assisting human in decision making
  • Demonstrating
  • Deriving a solution
  • Diagnosing
  • Explaining
  • Interpreting input
  • Predicting results
  • Justifying the conclusion
  • Suggesting alternative options to a problem
They are incapable of −
  • Substituting human decision makers
  • Possessing human capabilities
  • Producing accurate output for inadequate knowledge base
  • Refining their own knowledge
Components of Expert Systems
The components of ES include −
  • Knowledge Base
  • Interface Engine
  • User Interface
Knowledge Base
It contains domain-specific and high-quality knowledge. Knowledge is required to exhibit intelligence. The success of any ES majorly depends upon the collection of highly accurate and precise knowledge.
What is Knowledge?
The data is collection of facts. The information is organized as data and facts about the task domain. Data, information, andpast experience combined together are termed as knowledge.
Components of Knowledge Base
The knowledge base of an ES is a store of both, factual and heuristic knowledge.
·        Factual Knowledge − It is the information widely accepted by the Knowledge Engineers and scholars in the task domain.
·        Heuristic Knowledge − It is about practice, accurate judgement, one’s ability of evaluation, and guessing.
Knowledge representation
It is the method used to organize and formalize the knowledge in the knowledge base. It is in the form of IT-THEN-ELSE rules.
Knowledge Acquisition
The success of any expert system majorly depends on the quality, completeness, and accuracy of the information stored in the knowledge base.
The knowledge base is formed by readings from various experts, scholars, and the Knowledge Engineers. The knowledge engineer is a person with the qualities of empathy, quick learning, and case analyzing skills.
He acquires information from subject expert by recording, interviewing, and observing him at work, etc. He then categorizes and organizes the information in a meaningful way, in the form of IF-THEN-ELSE rules, to be used by interference machine. The knowledge engineer also monitors the development of the ES.
Interface Engine
Use of efficient procedures and rules by the Interface Engine is essential in deducting a correct, flawless solution.
In case of knowledge-based ES, the Interface Engine acquires and manipulates the knowledge from the knowledge base to arrive at a particular solution.
In case of rule based ES, it −
  • Applies rules repeatedly to the facts, which are obtained from earlier rule application.
  • Adds new knowledge into the knowledge base if required.
  • Resolves rules conflict when multiple rules are applicable to a particular case.
To recommend a solution, the interface engine uses the following strategies −
  • Forward Chaining
  • Backward Chaining
User Interface
User interface provides interaction between user of the ES and the ES itself. It is generally Natural Language Processing so as to be used by the user who is well-versed in the task domain. The user of the ES need not be necessarily an expert in Artificial Intelligence.
It explains how the ES has arrived at a particular recommendation. The explanation may appear in the following forms −
  • Natural language displayed on screen.
  • Verbal narrations in natural language.
  • Listing of rule numbers displayed on the screen.
The user interface makes it easy to trace the credibility of the deductions.
Requirements of Efficient ES User Interface
  • It should help users to accomplish their goals in shortest possible way.
  • It should be designed to work for user’s existing or desired work practices.
  • Its technology should be adaptable to user’s requirements; not the other way round.
  • It should make efficient use of user input.
Expert Systems Limitations
No technology can offer easy and complete solution. Large systems are costly, require significant development time, and computer resources. ESs have their limitations which include −
  • Limitations of the technology
  • Difficult knowledge acquisition
  • ES are difficult to maintain
  • High development costs
Applications  of  Expert  System
Application
Description
Design Domain
Camera lens design, automobile design.
Medical Domain
Diagnosis Systems to deduce cause of disease from observed data, conduction medical operations on humans.
Monitoring Systems
Comparing data continuously with observed system or with prescribed behavior such as leakage monitoring in long petroleum pipeline.
Process Control Systems
Controlling a physical process based on monitoring.
Knowledge Domain
Finding out faults in vehicles, computers.
Finance/Commerce
Detection of possible fraud, suspicious transactions, stock market trading, Airline scheduling, cargo scheduling.