AI – Agents & Environments ”; Previous Next An AI system is composed of an agent and its environment. The agents act in their environment. The environment may contain other agents. What are Agent and Environment? An agent is anything that can perceive its environment through sensors and acts upon that environment through effectors. A human agent has sensory organs such as eyes, ears, nose, tongue and skin parallel to the sensors, and other organs such as hands, legs, mouth, for effectors. A robotic agent replaces cameras and infrared range finders for the sensors, and various motors and actuators for effectors. A software agent has encoded bit strings as its programs and actions. Agent Terminology Performance Measure of Agent − It is the criteria, which determines how successful an agent is. Behavior of Agent − It is the action that agent performs after any given sequence of percepts. Percept − It is agent’s perceptual inputs at a given instance. Percept Sequence − It is the history of all that an agent has perceived till date. Agent Function − It is a map from the precept sequence to an action. Rationality Rationality is nothing but status of being reasonable, sensible, and having good sense of judgment. Rationality is concerned with expected actions and results depending upon what the agent has perceived. Performing actions with the aim of obtaining useful information is an important part of rationality. What is Ideal Rational Agent? An ideal rational agent is the one, which is capable of doing expected actions to maximize its performance measure, on the basis of − Its percept sequence Its built-in knowledge base Rationality of an agent depends on the following − The performance measures, which determine the degree of success. Agent’s Percept Sequence till now. The agent’s prior knowledge about the environment. The actions that the agent can carry out. A rational agent always performs right action, where the right action means the action that causes the agent to be most successful in the given percept sequence. The problem the agent solves is characterized by Performance Measure, Environment, Actuators, and Sensors (PEAS). The Structure of Intelligent Agents Agent’s structure can be viewed as − Agent = Architecture + Agent Program Architecture = the machinery that an agent executes on. Agent Program = an implementation of an agent function. Simple Reflex Agents They choose actions only based on the current percept. They are rational only if a correct decision is made only on the basis of current precept. Their environment is completely observable. Condition-Action Rule − It is a rule that maps a state (condition) to an action. Model Based Reflex Agents They use a model of the world to choose their actions. They maintain an internal state. Model − knowledge about “how the things happen in the world”. Internal State − It is a representation of unobserved aspects of current state depending on percept history. Updating the state requires the information about − How the world evolves. How the agent’s actions affect the world. Goal Based Agents They choose their actions in order to achieve goals. Goal-based approach is more flexible than reflex agent since the knowledge supporting a decision is explicitly modeled, thereby allowing for modifications. Goal − It is the description of desirable situations. Utility Based Agents They choose actions based on a preference (utility) for each state. Goals are inadequate when − There are conflicting goals, out of which only few can be achieved. Goals have some uncertainty of being achieved and you need to weigh likelihood of success against the importance of a goal. The Nature of Environments Some programs operate in the entirely artificial environment confined to keyboard input, database, computer file systems and character output on a screen. In contrast, some software agents (software robots or softbots) exist in rich, unlimited softbots domains. The simulator has a very detailed, complex environment. The software agent needs to choose from a long array of actions in real time. A softbot designed to scan the online preferences of the customer and show interesting items to the customer works in the real as well as an artificial environment. The most famous artificial environment is the Turing Test environment, in which one real and other artificial agents are tested on equal ground. This is a very challenging environment as it is highly difficult for a software agent to perform as well as a human. Turing Test The success of an intelligent behavior of a system can be measured with Turing Test. Two persons and a machine to be evaluated participate in the test. Out of the two persons, one plays the role of the tester. Each of them sits in different rooms. The tester is unaware of who is machine and who is a human. He interrogates the questions by typing and sending them to both intelligences, to which he receives typed responses. This test aims at fooling the tester. If the tester fails to determine machine’s response from the human response, then the machine is said to be intelligent. Properties of Environment The environment has multifold properties − Discrete / Continuous − If there are a limited number of distinct, clearly defined, states of the environment, the environment is discrete (For example, chess); otherwise it is continuous (For example, driving). Observable / Partially Observable − If it is possible to determine the complete state of the environment at each time point from the percepts it is observable; otherwise it is only partially observable. Static / Dynamic − If the environment does not change while an agent is acting, then it is static; otherwise it is dynamic. Single agent / Multiple agents − The environment may contain other agents which may be of the same or different kind as that of the agent. Accessible / Inaccessible − If the agent’s sensory apparatus can have access to the complete state of the environment, then the environment is accessible to that agent. Deterministic / Non-deterministic − If the
Category: artificial Intelligence
AI – Issues
Artificial Intelligence – Issues ”; Previous Next AI is developing with such an incredible speed, sometimes it seems magical. There is an opinion among researchers and developers that AI could grow so immensely strong that it would be difficult for humans to control. Humans developed AI systems by introducing into them every possible intelligence they could, for which the humans themselves now seem threatened. Threat to Privacy An AI program that recognizes speech and understands natural language is theoretically capable of understanding each conversation on e-mails and telephones. Threat to Human Dignity AI systems have already started replacing the human beings in few industries. It should not replace people in the sectors where they are holding dignified positions which are pertaining to ethics such as nursing, surgeon, judge, police officer, etc. Threat to Safety The self-improving AI systems can become so mighty than humans that could be very difficult to stop from achieving their goals, which may lead to unintended consequences. Print Page Previous Next Advertisements ”;
AI – Popular Search Algorithms ”; Previous Next Searching is the universal technique of problem solving in AI. There are some single-player games such as tile games, Sudoku, crossword, etc. The search algorithms help you to search for a particular position in such games. Single Agent Pathfinding Problems The games such as 3X3 eight-tile, 4X4 fifteen-tile, and 5X5 twenty four tile puzzles are single-agent-path-finding challenges. They consist of a matrix of tiles with a blank tile. The player is required to arrange the tiles by sliding a tile either vertically or horizontally into a blank space with the aim of accomplishing some objective. The other examples of single agent pathfinding problems are Travelling Salesman Problem, Rubik’s Cube, and Theorem Proving. Search Terminology Problem Space − It is the environment in which the search takes place. (A set of states and set of operators to change those states) Problem Instance − It is Initial state + Goal state. Problem Space Graph − It represents problem state. States are shown by nodes and operators are shown by edges. Depth of a problem − Length of a shortest path or shortest sequence of operators from Initial State to goal state. Space Complexity − The maximum number of nodes that are stored in memory. Time Complexity − The maximum number of nodes that are created. Admissibility − A property of an algorithm to always find an optimal solution. Branching Factor − The average number of child nodes in the problem space graph. Depth − Length of the shortest path from initial state to goal state. Brute-Force Search Strategies They are most simple, as they do not need any domain-specific knowledge. They work fine with small number of possible states. Requirements − State description A set of valid operators Initial state Goal state description Breadth-First Search It starts from the root node, explores the neighboring nodes first and moves towards the next level neighbors. It generates one tree at a time until the solution is found. It can be implemented using FIFO queue data structure. This method provides shortest path to the solution. If branching factor (average number of child nodes for a given node) = b and depth = d, then number of nodes at level d = bd. The total no of nodes created in worst case is b + b2 + b3 + … + bd. Disadvantage − Since each level of nodes is saved for creating next one, it consumes a lot of memory space. Space requirement to store nodes is exponential. Its complexity depends on the number of nodes. It can check duplicate nodes. Depth-First Search It is implemented in recursion with LIFO stack data structure. It creates the same set of nodes as Breadth-First method, only in the different order. As the nodes on the single path are stored in each iteration from root to leaf node, the space requirement to store nodes is linear. With branching factor b and depth as m, the storage space is bm. Disadvantage − This algorithm may not terminate and go on infinitely on one path. The solution to this issue is to choose a cut-off depth. If the ideal cut-off is d, and if chosen cut-off is lesser than d, then this algorithm may fail. If chosen cut-off is more than d, then execution time increases. Its complexity depends on the number of paths. It cannot check duplicate nodes. Bidirectional Search It searches forward from initial state and backward from goal state till both meet to identify a common state. The path from initial state is concatenated with the inverse path from the goal state. Each search is done only up to half of the total path. Uniform Cost Search Sorting is done in increasing cost of the path to a node. It always expands the least cost node. It is identical to Breadth First search if each transition has the same cost. It explores paths in the increasing order of cost. Disadvantage − There can be multiple long paths with the cost ≤ C*. Uniform Cost search must explore them all. Iterative Deepening Depth-First Search It performs depth-first search to level 1, starts over, executes a complete depth-first search to level 2, and continues in such way till the solution is found. It never creates a node until all lower nodes are generated. It only saves a stack of nodes. The algorithm ends when it finds a solution at depth d. The number of nodes created at depth d is bd and at depth d-1 is bd-1. Comparison of Various Algorithms Complexities Let us see the performance of algorithms based on various criteria − Criterion Breadth First Depth First Bidirectional Uniform Cost Interactive Deepening Time bd bm bd/2 bd bd Space bd bm bd/2 bd bd Optimality Yes No Yes Yes Yes Completeness Yes No Yes Yes Yes Informed (Heuristic) Search Strategies To solve large problems with large number of possible states, problem-specific knowledge needs to be added to increase the efficiency of search algorithms. Heuristic Evaluation Functions They calculate the cost of optimal path between two states. A heuristic function for sliding-tiles games is computed by counting number of moves that each tile makes from its goal state and adding these number of moves for all tiles. Pure Heuristic Search It expands nodes in the order of their heuristic values. It creates two lists, a closed list for the already expanded nodes and an open list for the created but unexpanded nodes. In each iteration, a node with a minimum heuristic value is expanded, all its child nodes are created and placed in the closed list. Then, the heuristic function is applied to the child nodes and they are placed in the open list according to their heuristic value. The shorter paths are saved and the longer ones are disposed. A * Search It is best-known form of Best First search. It avoids expanding paths that are already expensive, but expands most promising paths first. f(n)
AI – Natural Language Processing ”; Previous Next Natural Language Processing (NLP) refers to AI method of communicating with an intelligent systems using a natural language such as English. Processing of Natural Language is required when you want an intelligent system like robot to perform as per your instructions, when you want to hear decision from a dialogue based clinical expert system, etc. The field of NLP involves making computers to perform useful tasks with the natural languages humans use. The input and output of an NLP system can be − Speech Written Text Components of NLP There are two components of NLP as given − Natural Language Understanding (NLU) Understanding involves the following tasks − Mapping the given input in natural language into useful representations. Analyzing different aspects of the language. Natural Language Generation (NLG) It is the process of producing meaningful phrases and sentences in the form of natural language from some internal representation. It involves − Text planning − It includes retrieving the relevant content from knowledge base. Sentence planning − It includes choosing required words, forming meaningful phrases, setting tone of the sentence. Text Realization − It is mapping sentence plan into sentence structure. The NLU is harder than NLG. Difficulties in NLU NL has an extremely rich form and structure. It is very ambiguous. There can be different levels of ambiguity − Lexical ambiguity − It is at very primitive level such as word-level. For example, treating the word “board” as noun or verb? Syntax Level ambiguity − A sentence can be parsed in different ways. For example, “He lifted the beetle with red cap.” − Did he use cap to lift the beetle or he lifted a beetle that had red cap? Referential ambiguity − Referring to something using pronouns. For example, Rima went to Gauri. She said, “I am tired.” − Exactly who is tired? One input can mean different meanings. Many inputs can mean the same thing. NLP Terminology Phonology − It is study of organizing sound systematically. Morphology − It is a study of construction of words from primitive meaningful units. Morpheme − It is primitive unit of meaning in a language. Syntax − It refers to arranging words to make a sentence. It also involves determining the structural role of words in the sentence and in phrases. Semantics − It is concerned with the meaning of words and how to combine words into meaningful phrases and sentences. Pragmatics − It deals with using and understanding sentences in different situations and how the interpretation of the sentence is affected. Discourse − It deals with how the immediately preceding sentence can affect the interpretation of the next sentence. World Knowledge − It includes the general knowledge about the world. Steps in NLP There are general five steps − Lexical Analysis − It involves identifying and analyzing the structure of words. Lexicon of a language means the collection of words and phrases in a language. Lexical analysis is dividing the whole chunk of txt into paragraphs, sentences, and words. Syntactic Analysis (Parsing) − It involves analysis of words in the sentence for grammar and arranging words in a manner that shows the relationship among the words. The sentence such as “The school goes to boy” is rejected by English syntactic analyzer. Semantic Analysis − It draws the exact meaning or the dictionary meaning from the text. The text is checked for meaningfulness. It is done by mapping syntactic structures and objects in the task domain. The semantic analyzer disregards sentence such as “hot ice-cream”. Discourse Integration − The meaning of any sentence depends upon the meaning of the sentence just before it. In addition, it also brings about the meaning of immediately succeeding sentence. Pragmatic Analysis − During this, what was said is re-interpreted on what it actually meant. It involves deriving those aspects of language which require real world knowledge. Implementation Aspects of Syntactic Analysis There are a number of algorithms researchers have developed for syntactic analysis, but we consider only the following simple methods − Context-Free Grammar Top-Down Parser Let us see them in detail − Context-Free Grammar It is the grammar that consists rules with a single symbol on the left-hand side of the rewrite rules. Let us create grammar to parse a sentence − “The bird pecks the grains” Articles (DET) − a | an | the Nouns − bird | birds | grain | grains Noun Phrase (NP) − Article + Noun | Article + Adjective + Noun = DET N | DET ADJ N Verbs − pecks | pecking | pecked Verb Phrase (VP) − NP V | V NP Adjectives (ADJ) − beautiful | small | chirping The parse tree breaks down the sentence into structured parts so that the computer can easily understand and process it. In order for the parsing algorithm to construct this parse tree, a set of rewrite rules, which describe what tree structures are legal, need to be constructed. These rules say that a certain symbol may be expanded in the tree by a sequence of other symbols. According to first order logic rule, if there are two strings Noun Phrase (NP) and Verb Phrase (VP), then the string combined by NP followed by VP is a sentence. The rewrite rules for the sentence are as follows − S → NP VP NP → DET N | DET ADJ N VP → V NP Lexocon − DET → a | the ADJ → beautiful | perching N → bird | birds | grain | grains V → peck | pecks | pecking The parse tree can be created as shown − Now consider the above rewrite rules. Since V can be replaced by both, “peck” or “pecks”, sentences such as “The bird peck the grains” can be wrongly permitted. i. e. the subject-verb agreement error is approved as correct. Merit − The simplest style of grammar, therefore widely used one. Demerits − They are not highly precise.
AI – Fuzzy Logic Systems
Artificial Intelligence – Fuzzy Logic Systems ”; Previous Next Fuzzy Logic Systems (FLS) produce acceptable but definite output in response to incomplete, ambiguous, distorted, or inaccurate (fuzzy) input. What is Fuzzy Logic? Fuzzy Logic (FL) is a method of reasoning that resembles human reasoning. The approach of FL imitates the way of decision making in humans that involves all intermediate possibilities between digital values YES and NO. The conventional logic block that a computer can understand takes precise input and produces a definite output as TRUE or FALSE, which is equivalent to human’s YES or NO. The inventor of fuzzy logic, Lotfi Zadeh, observed that unlike computers, the human decision making includes a range of possibilities between YES and NO, such as − CERTAINLY YES POSSIBLY YES CANNOT SAY POSSIBLY NO CERTAINLY NO The fuzzy logic works on the levels of possibilities of input to achieve the definite output. Implementation It can be implemented in systems with various sizes and capabilities ranging from small micro-controllers to large, networked, workstation-based control systems. It can be implemented in hardware, software, or a combination of both. Why Fuzzy Logic? Fuzzy logic is useful for commercial and practical purposes. It can control machines and consumer products. It may not give accurate reasoning, but acceptable reasoning. Fuzzy logic helps to deal with the uncertainty in engineering. Fuzzy Logic Systems Architecture It has four main parts as shown − Fuzzification Module − It transforms the system inputs, which are crisp numbers, into fuzzy sets. It splits the input signal into five steps such as − LP x is Large Positive MP x is Medium Positive S x is Small MN x is Medium Negative LN x is Large Negative Knowledge Base − It stores IF-THEN rules provided by experts. Inference Engine − It simulates the human reasoning process by making fuzzy inference on the inputs and IF-THEN rules. Defuzzification Module − It transforms the fuzzy set obtained by the inference engine into a crisp value. The membership functions work on fuzzy sets of variables. Membership Function Membership functions allow you to quantify linguistic term and represent a fuzzy set graphically. A membership function for a fuzzy set A on the universe of discourse X is defined as μA:X → [0,1]. Here, each element of X is mapped to a value between 0 and 1. It is called membership value or degree of membership. It quantifies the degree of membership of the element in X to the fuzzy set A. x axis represents the universe of discourse. y axis represents the degrees of membership in the [0, 1] interval. There can be multiple membership functions applicable to fuzzify a numerical value. Simple membership functions are used as use of complex functions does not add more precision in the output. All membership functions for LP, MP, S, MN, and LN are shown as below − The triangular membership function shapes are most common among various other membership function shapes such as trapezoidal, singleton, and Gaussian. Here, the input to 5-level fuzzifier varies from -10 volts to +10 volts. Hence the corresponding output also changes. Example of a Fuzzy Logic System Let us consider an air conditioning system with 5-level fuzzy logic system. This system adjusts the temperature of air conditioner by comparing the room temperature and the target temperature value. Algorithm Define linguistic Variables and terms (start) Construct membership functions for them. (start) Construct knowledge base of rules (start) Convert crisp data into fuzzy data sets using membership functions. (fuzzification) Evaluate rules in the rule base. (Inference Engine) Combine results from each rule. (Inference Engine) Convert output data into non-fuzzy values. (defuzzification) Development Step 1 − Define linguistic variables and terms Linguistic variables are input and output variables in the form of simple words or sentences. For room temperature, cold, warm, hot, etc., are linguistic terms. Temperature (t) = {very-cold, cold, warm, very-warm, hot} Every member of this set is a linguistic term and it can cover some portion of overall temperature values. Step 2 − Construct membership functions for them The membership functions of temperature variable are as shown − Step3 − Construct knowledge base rules Create a matrix of room temperature values versus target temperature values that an air conditioning system is expected to provide. RoomTemp. /Target Very_Cold Cold Warm Hot Very_Hot Very_Cold No_Change Heat Heat Heat Heat Cold Cool No_Change Heat Heat Heat Warm Cool Cool No_Change Heat Heat Hot Cool Cool Cool No_Change Heat Very_Hot Cool Cool Cool Cool No_Change Build a set of rules into the knowledge base in the form of IF-THEN-ELSE structures. Sr. No. Condition Action 1 IF temperature=(Cold OR Very_Cold) AND target=Warm THEN Heat 2 IF temperature=(Hot OR Very_Hot) AND target=Warm THEN Cool 3 IF (temperature=Warm) AND (target=Warm) THEN No_Change Step 4 − Obtain fuzzy value Fuzzy set operations perform evaluation of rules. The operations used for OR and AND are Max and Min respectively. Combine all results of evaluation to form a final result. This result is a fuzzy value. Step 5 − Perform defuzzification Defuzzification is then performed according to membership function for output variable. Application Areas of Fuzzy Logic The key application areas of fuzzy logic are as given − Automotive Systems Automatic Gearboxes Four-Wheel Steering Vehicle environment control Consumer Electronic Goods Hi-Fi Systems Photocopiers Still and Video Cameras Television Domestic Goods Microwave Ovens Refrigerators Toasters Vacuum Cleaners Washing Machines Environment Control Air Conditioners/Dryers/Heaters Humidifiers Advantages of FLSs Mathematical concepts within fuzzy reasoning are very simple. You can modify a FLS by just adding or deleting rules due to flexibility of fuzzy logic. Fuzzy logic Systems can take imprecise, distorted, noisy input information. FLSs are easy to construct and understand. Fuzzy logic is a solution to complex problems in all fields of life, including medicine, as it resembles human reasoning and decision making. Disadvantages of FLSs There is no systematic approach to fuzzy system designing. They are understandable only when simple. They are suitable for the problems which do not need high accuracy.
AI – Useful Resources
Artificial Intelligence – Useful Resources ”; Previous Next The following resources contain additional information on Artificial Intelligence. Please use them to get more in-depth knowledge on this topic. Useful Video Courses Prolog in Artificial Intelligence Online Course 79 Lectures 7 hours Tutorialspoint More Detail Artificial Intelligence : The Future Of Programming 16 Lectures 54 mins Mukund Kumar Mishra More Detail Artificial Intelligence Level 2: Rise of the Machines 21 Lectures 2 hours Gilad James, PhD More Detail Artificial Intelligence Powered Digital Marketing Most Popular 19 Lectures 58 mins Sai Karthik More Detail Artificial Intelligence ( AI ) for regular IT professionals 18 Lectures 1.5 hours Taimur Ijlal More Detail The Seven Types Of Artificial Intelligence 7 Lectures 42 mins Dr. Harris More Detail Print Page Previous Next Advertisements ”;
AI – Expert Systems
Artificial Intelligence – Expert Systems ”; Previous Next Expert systems (ES) are one of the prominent research domains of AI. It is introduced by the researchers at Stanford University, Computer Science Department. 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 Inference Engine User Interface Let us see them one by one briefly − 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, and past 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 IF-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. Inference Engine Use of efficient procedures and rules by the Inference Engine is essential in deducting a correct, flawless solution. In case of knowledge-based ES, the Inference 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 Inference Engine uses the following strategies − Forward Chaining Backward Chaining Forward Chaining It is a strategy of an expert system to answer the question, “What can happen next?” Here, the Inference Engine follows the chain of conditions and derivations and finally deduces the outcome. It considers all the facts and rules, and sorts them before concluding to a solution. This strategy is followed for working on conclusion, result, or effect. For example, prediction of share market status as an effect of changes in interest rates. Backward Chaining With this strategy, an expert system finds out the answer to the question, “Why this happened?” On the basis of what has already happened, the Inference Engine tries to find out which conditions could have happened in the past for this result. This strategy is followed for finding out cause or reason. For example, diagnosis of blood cancer in humans. 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 The following table shows where ES can be applied. 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. Expert System Technology There are several levels of ES technologies available. Expert systems technologies include − Expert System Development Environment − The ES development environment includes hardware and tools. They are − Workstations, minicomputers, mainframes. High level Symbolic Programming Languages such as LISt Programming (LISP) and PROgrammation en LOGique (PROLOG). Large databases. Tools − They reduce the effort and cost involved in developing an expert system to large extent.
AI – Robotics
Artificial Intelligence – Robotics ”; Previous Next Robotics is a domain in artificial intelligence that deals with the study of creating intelligent and efficient robots. What are Robots? Robots are the artificial agents acting in real world environment. Objective Robots are aimed at manipulating the objects by perceiving, picking, moving, modifying the physical properties of object, destroying it, or to have an effect thereby freeing manpower from doing repetitive functions without getting bored, distracted, or exhausted. What is Robotics? Robotics is a branch of AI, which is composed of Electrical Engineering, Mechanical Engineering, and Computer Science for designing, construction, and application of robots. Aspects of Robotics The robots have mechanical construction, form, or shape designed to accomplish a particular task. They have electrical components which power and control the machinery. They contain some level of computer program that determines what, when and how a robot does something. Difference in Robot System and Other AI Program Here is the difference between the two − AI Programs Robots They usually operate in computer-stimulated worlds. They operate in real physical world The input to an AI program is in symbols and rules. Inputs to robots is analog signal in the form of speech waveform or images They need general purpose computers to operate on. They need special hardware with sensors and effectors. Robot Locomotion Locomotion is the mechanism that makes a robot capable of moving in its environment. There are various types of locomotions − Legged Wheeled Combination of Legged and Wheeled Locomotion Tracked slip/skid Legged Locomotion This type of locomotion consumes more power while demonstrating walk, jump, trot, hop, climb up or down, etc. It requires more number of motors to accomplish a movement. It is suited for rough as well as smooth terrain where irregular or too smooth surface makes it consume more power for a wheeled locomotion. It is little difficult to implement because of stability issues. It comes with the variety of one, two, four, and six legs. If a robot has multiple legs then leg coordination is necessary for locomotion. The total number of possible gaits (a periodic sequence of lift and release events for each of the total legs) a robot can travel depends upon the number of its legs. If a robot has k legs, then the number of possible events N = (2k-1)!. In case of a two-legged robot (k=2), the number of possible events is N = (2k-1)! = (2*2-1)! = 3! = 6. Hence there are six possible different events − Lifting the Left leg Releasing the Left leg Lifting the Right leg Releasing the Right leg Lifting both the legs together Releasing both the legs together In case of k=6 legs, there are 39916800 possible events. Hence the complexity of robots is directly proportional to the number of legs. Wheeled Locomotion It requires fewer number of motors to accomplish a movement. It is little easy to implement as there are less stability issues in case of more number of wheels. It is power efficient as compared to legged locomotion. Standard wheel − Rotates around the wheel axle and around the contact Castor wheel − Rotates around the wheel axle and the offset steering joint. Swedish 45o and Swedish 90o wheels − Omni-wheel, rotates around the contact point, around the wheel axle, and around the rollers. Ball or spherical wheel − Omnidirectional wheel, technically difficult to implement. Slip/Skid Locomotion In this type, the vehicles use tracks as in a tank. The robot is steered by moving the tracks with different speeds in the same or opposite direction. It offers stability because of large contact area of track and ground. Components of a Robot Robots are constructed with the following − Power Supply − The robots are powered by batteries, solar power, hydraulic, or pneumatic power sources. Actuators − They convert energy into movement. Electric motors (AC/DC) − They are required for rotational movement. Pneumatic Air Muscles − They contract almost 40% when air is sucked in them. Muscle Wires − They contract by 5% when electric current is passed through them. Piezo Motors and Ultrasonic Motors − Best for industrial robots. Sensors − They provide knowledge of real time information on the task environment. Robots are equipped with vision sensors to be to compute the depth in the environment. A tactile sensor imitates the mechanical properties of touch receptors of human fingertips. Computer Vision This is a technology of AI with which the robots can see. The computer vision plays vital role in the domains of safety, security, health, access, and entertainment. Computer vision automatically extracts, analyzes, and comprehends useful information from a single image or an array of images. This process involves development of algorithms to accomplish automatic visual comprehension. Hardware of Computer Vision System This involves − Power supply Image acquisition device such as camera A processor A software A display device for monitoring the system Accessories such as camera stands, cables, and connectors Tasks of Computer Vision OCR − In the domain of computers, Optical Character Reader, a software to convert scanned documents into editable text, which accompanies a scanner. Face Detection − Many state-of-the-art cameras come with this feature, which enables to read the face and take the picture of that perfect expression. It is used to let a user access the software on correct match. Object Recognition − They are installed in supermarkets, cameras, high-end cars such as BMW, GM, and Volvo. Estimating Position − It is estimating position of an object with respect to camera as in position of tumor in human’s body. Application Domains of Computer Vision Agriculture Autonomous vehicles Biometrics Character recognition Forensics, security, and surveillance Industrial quality inspection Face recognition Gesture analysis Geoscience Medical imagery Pollution monitoring Process control Remote sensing Robotics Transport Applications of Robotics The robotics has been instrumental in the various domains such as − Industries − Robots are used for handling material, cutting, welding, color coating, drilling, polishing, etc. Military − Autonomous robots can reach inaccessible
AI – Neural Networks
Artificial Intelligence – Neural Networks ”; Previous Next Yet another research area in AI, neural networks, is inspired from the natural neural network of human nervous system. What are Artificial Neural Networks (ANNs)? The inventor of the first neurocomputer, Dr. Robert Hecht-Nielsen, defines a neural network as − “…a computing system made up of a number of simple, highly interconnected processing elements, which process information by their dynamic state response to external inputs.” Basic Structure of ANNs The idea of ANNs is based on the belief that working of human brain by making the right connections, can be imitated using silicon and wires as living neurons and dendrites. The human brain is composed of 86 billion nerve cells called neurons. They are connected to other thousand cells by Axons. Stimuli from external environment or inputs from sensory organs are accepted by dendrites. These inputs create electric impulses, which quickly travel through the neural network. A neuron can then send the message to other neuron to handle the issue or does not send it forward. ANNs are composed of multiple nodes, which imitate biological neurons of human brain. The neurons are connected by links and they interact with each other. The nodes can take input data and perform simple operations on the data. The result of these operations is passed to other neurons. The output at each node is called its activation or node value. Each link is associated with weight. ANNs are capable of learning, which takes place by altering weight values. The following illustration shows a simple ANN − Types of Artificial Neural Networks There are two Artificial Neural Network topologies − FeedForward and Feedback. FeedForward ANN In this ANN, the information flow is unidirectional. A unit sends information to other unit from which it does not receive any information. There are no feedback loops. They are used in pattern generation/recognition/classification. They have fixed inputs and outputs. FeedBack ANN Here, feedback loops are allowed. They are used in content addressable memories. Working of ANNs In the topology diagrams shown, each arrow represents a connection between two neurons and indicates the pathway for the flow of information. Each connection has a weight, an integer number that controls the signal between the two neurons. If the network generates a “good or desired” output, there is no need to adjust the weights. However, if the network generates a “poor or undesired” output or an error, then the system alters the weights in order to improve subsequent results. Machine Learning in ANNs ANNs are capable of learning and they need to be trained. There are several learning strategies − Supervised Learning − It involves a teacher that is scholar than the ANN itself. For example, the teacher feeds some example data about which the teacher already knows the answers. For example, pattern recognizing. The ANN comes up with guesses while recognizing. Then the teacher provides the ANN with the answers. The network then compares it guesses with the teacher’s “correct” answers and makes adjustments according to errors. Unsupervised Learning − It is required when there is no example data set with known answers. For example, searching for a hidden pattern. In this case, clustering i.e. dividing a set of elements into groups according to some unknown pattern is carried out based on the existing data sets present. Reinforcement Learning − This strategy built on observation. The ANN makes a decision by observing its environment. If the observation is negative, the network adjusts its weights to be able to make a different required decision the next time. Back Propagation Algorithm It is the training or learning algorithm. It learns by example. If you submit to the algorithm the example of what you want the network to do, it changes the network’s weights so that it can produce desired output for a particular input on finishing the training. Back Propagation networks are ideal for simple Pattern Recognition and Mapping Tasks. Bayesian Networks (BN) These are the graphical structures used to represent the probabilistic relationship among a set of random variables. Bayesian networks are also called Belief Networks or Bayes Nets. BNs reason about uncertain domain. In these networks, each node represents a random variable with specific propositions. For example, in a medical diagnosis domain, the node Cancer represents the proposition that a patient has cancer. The edges connecting the nodes represent probabilistic dependencies among those random variables. If out of two nodes, one is affecting the other then they must be directly connected in the directions of the effect. The strength of the relationship between variables is quantified by the probability associated with each node. There is an only constraint on the arcs in a BN that you cannot return to a node simply by following directed arcs. Hence the BNs are called Directed Acyclic Graphs (DAGs). BNs are capable of handling multivalued variables simultaneously. The BN variables are composed of two dimensions − Range of prepositions Probability assigned to each of the prepositions. Consider a finite set X = {X1, X2, …,Xn} of discrete random variables, where each variable Xi may take values from a finite set, denoted by Val(Xi). If there is a directed link from variable Xi to variable, Xj, then variable Xi will be a parent of variable Xj showing direct dependencies between the variables. The structure of BN is ideal for combining prior knowledge and observed data. BN can be used to learn the causal relationships and understand various problem domains and to predict future events, even in case of missing data. Building a Bayesian Network A knowledge engineer can build a Bayesian network. There are a number of steps the knowledge engineer needs to take while building it. Example problem − Lung cancer. A patient has been suffering from breathlessness. He visits the doctor, suspecting he has lung cancer. The doctor knows that barring lung cancer, there are various other possible diseases the patient might have such as tuberculosis and bronchitis. Gather Relevant Information of
AI – Home
Artificial Intelligence Tutorial Job Search PDF Version Quick Guide Resources Discussion This artificial intelligence tutorial provides introductory knowledge on Artificial Intelligence. It would be a great help if you are about to select Artificial Intelligence as a course subject. You can briefly learn about the areas of AI in which research is prospering. This tutorial provides a good understanding of the workings of AI and its applications. This tutorial would be a good choice for someone who is a beginner and also for someone who would want to know more about it. What is Artificial Intelligence? Artificial Intelligence(AI) is that branch of computer science that creates intelligent machines that think and act like humans. It is one of the revolutionizing technologies that people are fascinated by because of its ability to relate to their daily lives. AI enables machines to think, learn and adapt, to enhance and automate tasks across industries. Artificial Intelligence has many subsets that focus on different aspects of mimicking human beings. Machine learning is one of the popular subsets, whereas the others included are Deep Learning, Natural Language Processing, and Robotics. Features of Artificial Intelligence Artificial Intelligence is a technology that aims at replicating human intelligence. It has numerous applications across various sectors, from enhancing customer experiences to disease diagnosis. Some key features of AI are: Ability to learn − AI systems can improve their performance eventually by learning from data and past experiences. Logical decision making − AI systems are fed with large amounts of data to understand and recognize patterns for analysis and decision making. Adaptability − AI systems can adjust and adapt to changes in data. Efficient automation − AI would efficiently execute repetitive tasks and processes. Versatility − AI can be widely applied for various tasks across all fields like businesses, automotive, health, and many others. Why to Learn Artificial Intelligence? AI is one of the growing technologies, and learning AI would help build a career in a field that is high in demand. It opens up to various job opportunities and helps you stay intent with evolving technologies. It enhances problem solving skills, automates processes and can be applied to various industries, from business to health care. Who Should Learn Artificial Intelligence? This tutorial is prepared for students at the beginner level who aspire to learn Artificial Intelligence. This course is also helpful for professionals aiming to enhance their skills or an entrepreneur trying to integrate AI with their business. Professionals in software development, data science, and engineering would find this artificial intelligence tutorial especially relevant to enhance their careers. Applications of Artificial Intelligence AI is transforming various industries with its ability to automate, make decisions, and enhance the efficiency of various tasks. As it is known for its versatility, some of its applications are: Health care − AI in healthcare is used to assist in tasks like diagnosing diseases, personalizing treatments and drug discovery. Finance − AI is used for fraud detection, trading and stock market analysis and customer service through chatbots. Manufacturing and Industries − AI optimizes production processes, improves quality and identifies machinery failure. Agriculture − AI helps combine technology with agriculture by analyzing soil conditions. Transportation − AI helps in designing autonomous vehicles. Some other tasks include traffic management and route optimization in maps. Customer Service − Chatbots and Virtual assistants are AI applications to improve user engagement. Entertainment and Media − AI helps in content creation, personalized content recommendations, and target advertising. Safety and Security − AI enhances threat detection and automates security measures. Jobs and Opportunities Many companies require highly skilled individuals in AI. As companies integrate AI into their operation, there will be a need for individuals to implement it. Some roles that companies hire are: Machine learning engineer Data Scientist AI Research Scientist Computer Vision Engineer NLP Engineer AI Product Manager AI Marketing Specialist Prerequisites to Learn Artificial Intelligence The basic knowledge of Computer Science is mandatory. Knowledge of science, mechanical engineering, or electrical engineering is a plus. Before deep diving into Artificial Intelligence, there are a few skills and concepts that one should focus on, which includes − Mathematics and Statistics Knowledge of any programming language such as Python or R. Basics on Data Structures and Data Handling Techniques Getting Started with Artificial Intelligence Getting started to learn AI involves a few steps, which helps build a solid foundation. Here is a brief guide on the steps that can make you strong in the fundamentals of AI: Master Prerequisites − AI is complex, so you can only get deep into the technology if you have interest and enthusiasm. The first step is to master prerequisites, which include an understanding of basic mathematics and statistics along with learning a programming language and data structures. Learn AI algorithms −Artificial Intelligence is all about algorithms like searching and sorting. So if you get familiar with algorithms, you can ace AI. Getting to know AI tools and frameworks −The final step would be learning to handle AI frameworks. This is a practical step and requires prior theoretical knowledge. Some popular tools and libraries used to develop and deploy AI models are NumPy, Pandas, Matplotlib. Practice with Real data −Practicing AI algorithms on real data that is collected from various websites or APIs would help understand the working of AI in real-time scenarios. Frequently Asked Questions about Artificial Intelligence There are some very Frequently Asked Questions(FAQ) about Artificial Intelligence, this section tries to answer them briefly. What is Artificial Intelligence? Artificial Intelligence (AI) refers to programming computers to do tasks that normally require human intelligence, like learning, problem-solving, and understanding language. It is like giving computers the ability to think and make decisions on their own, similar to how humans do. AI helps machines learn from data, adapt to new situations, and perform tasks without being explicitly programmed for each step. Why is artificial Intelligence important? Artificial Intelligence (AI) is important because it helps make our lives easier and improves many aspects of