OER·harvester

← Back to the library
Zenodo PDF resource

Artificial intelligence (AI) with It's Applications

The book "Artificial Intelligence (AI) with It's Applications" provides a comprehensive insight into the field of AI, exploring its fundamental principles, modern applications, and future potential. It serves as a valuable resource for students, researchers, and professionals looking to understand AI’s role in shaping industries and everyday life. The book begins with an introduction to Artificial Intelligence , cov…

Licence
OPEN CC-BY-4.0
Authors
Dr. Dipikaben Umakant Thakar, Mrs. PL. Natchiammai, Dr. R. J. Kavitha…
Published
2025-03-18 · Zenodo
Language
eng
Length
66700 words
Type
narrative text
Open ↗ Download Open original ↗

Learning

4.1 Basic Plan Generation Systems

A plan is considered a sequence of actions, and each action has its preconditions that must be satisfied before it can act and some effects that can be positive or negative.

So, we have Forward State Space Planning (FSSP) and Backward State Space Planning (BSSP) at the basic level.

Fig. 4.1 Types of Planning.

1. Forward State Space Planning (FSSP)

FSSP behaves in the same way as forwarding state-space search. It says that given an initial state S in any domain, we perform some necessary actions and obtain a new state S' (which also contains some new terms), called a progression. It continues until we reach the target position. Action should be taken in this matter.

Disadvantage: Large branching factor v Advantage: The algorithm is Sound

2. Backward State Space Planning (BSSP)

BSSP behaves similarly to backward state-space search. In this, we move from the target state g to the sub-goal g, tracing the previous action to achieve that goal. This process is called regression (going back to the previous goal or sub-goal). These sub-goals should also be checked for consistency. The action should be relevant in this case.

Disadvantages: not sound algorithm (sometimes inconsistency can be found) v Advantage: Small branching factor (much smaller than FSSP)

Planning in artificial intelligence is about decision-making actions performed by robots or computer programs to achieve a specific goal.

Execution of the plan is about choosing a sequence of tasks with a high probability of accomplishing a specific task.

Block-world planning problem

v The block-world problem is known as the Sussmann anomaly.
v Therefore it is considered odd. The non-interlaced planners of the early 1970s were unable to solve this problem.
v a plan for G1 that is combined with a plan for When two sub-goals, G1 and G2, are given, a non-interleaved planner either produces G2 or vice versa.
v achieve the target. In the block-world problem, three blocks labeled 'A', 'B', and 'C' are allowed to rest on a flat surface. The given condition is that only one block can be moved at a time to The start position and target position are shown in the following diagram.

Fig. 4.2 Word Planning Problem.

Components of the planning system

The plan includes the following important steps:

v Choose the best rule to apply the next rule based on the best available guess.
v Apply the chosen rule to calculate the new problem condition.
v Find out when a solution has been found.
v Detect dead ends so they can be discarded and direct system effort in more useful directions.
v Find out when a near-perfect solution is found.

Target stack plan

v It is one of the most important planning algorithms used by STRIPS.
v Stacks are used in algorithms to capture the action and complete the target. A knowledge base is used to hold the current situation and actions.
v A target stack is similar to a node in a search tree, where branches are created with a choice of action. The important steps of the algorithm are mentioned below:
  1. Start by pushing the original target onto the stack. Repeat this until the pile is empty. If the stack top is a mixed target, push its unsatisfied sub-targets onto the stack.

  2. If the stack top is a single unsatisfied target, replace it with action and push the action precondition to the stack to satisfy the condition. iii. If the stack top is an action, pop it off the stack, execute it and replace the knowledge base with the action's effect.

If the stack top is a satisfactory target, pop it off the stack.

Non-linear Planning

This Planning is used to set a goal stack and is included in the search space of all possible sub-goal orderings. It handles the goal interactions by the interleaving method.

Advantages of non-Linear Planning

Non-linear Planning may be an optimal solution concerning planning length (depending on the search strategy used).

Disadvantages of Nonlinear Planning

It takes a larger search space since all possible goal orderings are considered.

Complex algorithm to understand.

Algorithm

  1. Choose a goal 'g' from the goal set
  2. If 'g' does not match the state, then v Choose an operator 'o' whose add-list matches goal g v Push 'o' on the OpStack v Add the preconditions of 'o' to the goal set.
  3. While all preconditions of the operator on top of OpenStack are met in a state v Pop operator o from top of opstack v state = apply(o, state) v plan = [plan; o]

Importance of Planning in AI

Planning is essential in AI for several reasons: v Efficiency and Optimization: Planning allows AI systems to choose the most efficient route to achieve a goal, minimizing resource usage and time. For instance, an AI logistics system can optimize delivery routes, reducing fuel consumption and costs.

v Adaptability: In real-world applications, AI systems often face uncertain
environments. By incorporating planning, AI can adjust its course of action in response to new information or unforeseen obstacles. For instance, a self-driving car can re-route when encountering roadblocks.
v Autonomy: Planning is a key factor that enables AI systems to act autonomously. Whether it’s a robotic arm in a manufacturing plant or a personal assistant like Siri or Alexa, the ability to plan gives AI the capability to perform tasks without constant human intervention.
v Decision-Making: AI systems that utilize planning can make informed decisions by considering different possible outcomes. This makes planning critical in applications like medical diagnosis systems, financial forecasting, or game AI. Challenges in AI Planning Despite its importance, AI planning presents several challenges:
v Computational Complexity: Planning, especially in complex environments, can be computationally expensive. Finding the optimal sequence of actions in large, dynamic systems can take a significant amount of processing power and time.
v Handling Uncertainty: In uncertain or unpredictable environments, creating a plan that can handle every possible outcome is challenging. Probabilistic and reactive planning methods aim to address this, but it remains a difficult problem.
v Scalability: As the size of the problem or task increases, so does the difficulty of planning. Scaling up planning algorithms to handle large datasets or environments with numerous variables is a technical hurdle. Applications of AI Planning The role of planning in AI is visible across various industries and applications, such as:
v Robotics: Planning allows robots to move efficiently in environments, avoid obstacles, and perform tasks autonomously. For example, a warehouse robot can plan its path to pick up items without collisions.
v Healthcare: AI planning systems are used in treatment planning, where algorithms suggest optimal therapies for patients based on various factors like medical history, current health, and probability of success.
v Autonomous Vehicles: Self-driving cars use planning to navigate roads, make turns, stop at traffic signals, and avoid collisions with pedestrians or other vehicles.
v Gaming: In video games, AI uses planning to simulate intelligent behavior in non- player characters (NPCs). NPCs can plan their strategies in real-time, providing more challenging and unpredictable gameplay.
v Supply Chain Management: Planning in AI optimizes logistics, inventory, and transportation, helping businesses improve efficiency and reduce costs. AI can plan the most cost-effective routes for shipping goods or the best times to restock inventory.
4.2 Strips STRIPS is a formal language used for expressing planning problems and was originally designed to control the actions of a robot in a manipulable environment. It is primarily concerned with the automatic generation of plans, which are sequences of actions that transition a system from its initial state to a desired goal state. Key Components of STRIPS:
States : Defined by a set of logical propositions.
Goals Actions : Specified as a set of conditions that describe the desired outcome. : Each action in STRIPS is characterized by three components: v Preconditions : Conditions that must be true for the action to be executed. v Add Effects : Conditions that become true as a result of executing the action. v Delete Effects : Conditions that become false as a result of executing the action.
STRIPS in AI symbols. Symbols: v v v : Leveraging Heuristics and Symbols for Effective Problem Solving Before going through the details, we must be familiar about the terms heuristics and Heuristics: are techniques that helps individuals to solve problems in feasible amount of time. It aims to find approximate solution and in some cases may find the optimal solution as well. are representations that acts as a medium between human knowledge and the AI systems so that the systems can understand the knowledge that it receives and establish the relationships. Basically STRIPS makes use of heuristics and symbols to solve a real world problem. The features of STRIPS are as follows: STRIPS makes use of symbols to represent knowledge so that AI systems can process the incoming data. STRIPS makes use of logical reasoning so that appropriate relationship is established among the symbols and that we get appropriate outputs based on the reasoning. STRIPS plans the execution of sub problems in a sequential fashion.
How STRIPS Works in AI?
The STRIPS algorithm operates by maintaining a database of predicates that describe the state of the world. Each action available to the system is defined in terms of its preconditions and its effects (both add and delete). The planning process in STRIPS involves searching through the space of possible actions to find a sequence that transitions the system from the initial state to the state where the goal predicates are satisfied. Planning with STRIPS: 1. Define the Initial State : Where the system starts. 2. Set the Goal State : What the system should achieve. 3. Develop Actions : Defined by their preconditions and effects. 4. Search for Solutions : Using a strategy like backward chaining from the goal state to the initial state, identifying actions that satisfy the goal conditions. Using STRIPS for Block Stacking in AI Problem Statement: Given three blocks labeled A, B, and C, the objective is to stack Block A on Block B, and Block B on Block C. Initial State Representation In STRIPS, the initial state of the environment is crucial for defining the problem. For our scenario: OnTable(A) indicates Block A is on the table. OnTable(B) indicates Block B is on the table. OnTable(C) indicates Block C is on the table. The notation OnTable(X) is used in STRIPS to denote that block X is resting on the table. Goal State The goal state specifies the desired arrangement of blocks: On(A,B) means Block A should be on top of Block B. On(B,C) means Block B should be on top of Block C.
Using On(X,Y), we denote that Block X is directly on top of Block Y. Step-by-Step STRIPS Planning Approach The solution involves a series of actions, each changing the state of the blocks to move towards the goal state. STRIPS formalizes this with actions defined by preconditions (what must be true before the action) and effects (what becomes true after the action).
1. Action: MoveBlock(A, B)
Preconditions v : OnTable(A) : A is on the table. Clear(B) : B has no other blocks on it.
Effects : first sub-goal Preconditions v v v v v On(A,B) : A is now on B. Clear(A) : Top of A is clear. ¬OnTable(A) : A is no longer on the table. ¬Clear(B) : B is no longer clear since A is on it. This action transitions Block A from the table to being on top of Block B, achieving our On(A,B). 2. Action: MoveBlock(B, C) : OnTable(B) : B is on the table. Clear(C) : C has no other blocks on it.
Effects : Results v v v On(B,C) : B is now on C. Clear(B) : Top of B is clear. ¬OnTable(B) : B is no longer on the table. ¬Clear(C) : C is no longer clear since B is on it. With this action, Block B is moved onto Block C, achieving the second sub-goal On(B,C). Combining the results of these actions, we find: Final Configuration : Block A is on Block B, and Block B is on Block C. This configuration satisfies our goal state of On(A,B) and On(B,C).
This 2. Robotic Systems methodical Applications of STRIPS approach using STRIPS not only simplifies complex problems into manageable actions but also ensures that each step is logically sound, leading to a successful execution in environments such as robotics and automated planning systems. STRIPS methodology is widely used in many fields. Some applications are as follows: 1. Manufacturing of automobiles Manufacturing of automobiles requires sequential planning. Here STRIPS play a very important role since it is action-goal oriented. For instance, first the parts needs to be assembled. Then the the parts are embedded in the automobile one by one. Finally the automobiles are painted and lubricated followed by testing. STRIPS mechanism is widely used in Robots. For example there are three blocks A, B, C lying on the ground. A robot arm is present and the goal is to place Block B on Block A and Block C on Block B. So the robot arm needs to plan its actions in such a way so that the
blocks are placed on one another and that the sequence is maintained while achieving the
goal. 3. Knowledge Representation Since STRIPS makes use of symbols, it is widely used in representing knowledge. It helps to represent the actions, states and goals. It also ensures that appropriate logic has been established for each action that has been taken. Applications of STRIPS in AI STRIPS has been fundamental in the development of AI systems across various domains, including:
v Robotics : STRIPS algorithms are used to plan the sequence of movements and tasks for robots, especially in manufacturing and assembly lines where precise and repeative actions are required.
v Video Games : AI characters and non-player characters (NPCs) use planning algorithms derived from STRIPS to decide on actions based on player behavior and game dynamics.
v Automated Reasoning : STRIPS provides a basis for systems that need to reason about the effects of actions in various scenarios, such as automated theorem provers and problem solvers. Limitations and Evolution While STRIPS was revolutionary, it has limitations, primarily its assumption of a static world and the lack of support for actions with nondeterministic outcomes or concurrent actions. These limitations led to the development of more sophisticated planning languages like PDDL (Planning Domain Definition Language), which extend and generalize the concepts introduced by STRIPS to accommodate more complex planning scenarios

4.3 Advanced Plan generation systems

One of the earliest techniques is planning using goal stack. Problem solver uses single stack that contains

sub goals and operators both sub goals are solved linearly and then finally the conjoined sub goal is solved. Plans generated by this method will contain complete sequence of operations for solving one goal followed by complete sequence of operations for the next etc.

Problem solver also relies on

A database that describes the current situation.

Set of operators with precondition, add and delete lists.

Let us assume that the goal to be satisfied is:

GOAL = G1 ^ G2 ^ …^ Gn

Sub-goals G1, G2, … Gn are stacked with compound goal G1 ^ G2 ^ …^ Gn at the bottom.

Top G1

G2

:

Gn

Bottom G1^ G2^ … ^G4

At each step of problem solving process, the top goal on the stack is pursued.

Algorithm

Find an operator that satisfies sub goal G1 (makes it true) and replace G1 by the operator.

If more than one operator satisfies the sub goal then apply some heuristic to choose one. In order to execute the top most operation, its preconditions are added onto the stack.

Once preconditions of an operator are satisfied, then we are guaranteed that operator can be applied to produce a new state.

New state is obtained by using ADD and DELETE lists of an operator to the existing database.

Problem solver keeps tract of operators applied.

This process is continued till the goal stack is empty and problem solver returns the plan of the problem.

Goal Stack Example

With this example,let us explain the working method of Goal Stack Algorithm.

Initial State: ON(B, A) ^ ONT(C) ^ ONT(A) ^ ONT(D) ^ CL(B) ^ CL(C) ^ CL(D) ^ AE Goal State: ON(C, A) ^ ON(B, D) ^ ONT(A) ^ ONT(D) ^ CL(C) ^ CL(B) ^ AE

We notice that following sub-goals in goal state are also true in initial state.

ONT(A) ^ ONT(D) ^ CL(C) ^ CL(B) ^ AE

Represent for the sake of simplicity-TSUBG.

Only sub-goals ON(C, A) & ON(B, D) are to be satisfied and finally make sure that TSUBG remains true.

Either start solving first ON(C, A) or ON(B, D). Let us solve first ON(C, A).

Goal Stack:

ON(C, A)

ON(B, D)

ON(C, A) ^ ON(B, D) ^ TSUBG

To solve ON(C, A), operation S(C, A) could only be applied. So replace ON(C, A) with S(C, A) in goal stack.

Goal Stack:

S (C, A) ON(B, D)

ON(C, A) ^ ON(B, D) ^ TSUBG

S(C, A) can be applied if its preconditions are true. So add its preconditions on the stack.

Goal Stack:

CL(A) HOLD(C) Preconditions of STACK CL(A) ^ HOLD(C) S (C, A) Operator ON(B, D) ON(C, A) ^ ON(B, D) ^ TSUBG

To do the S(C,A) operation all preconditions should be true. In the given problem CL(A) is not true.So,to make the state true ,replace CL(A) by U(B,A) and write the preconditions of Unstack operator.

Goal Stack:

ON(B, A) CL(B) Preconditions of UNSTACK AE ON(B, A) ^ CL(B) ^ AE

US(B, A) Operator

HOLD(C) Preconditions of STACK CL(A) ) ^ HOLD(C)

S (C, A) Operator

ON(B, D)

ON(C, A) ^ ON(B, D) ^ TSUBG

ON(B, A), CL(B) and AE are all true in initial state, so pop these along with its compound goal. v Next pop top operator US(B, A) and produce new state by using its ADD and DELETE lists. v Add US(B, A) in a queue of sequence of operators.

SQUEUE = US (B, A)

State_1:

ONT(A) ^ ONT(C) ^ ONT(D) ^ HOLD(B) ^ CL(A) ^ CL(C) ^ CL(D)

Goal Stack:

HOLD(C) Preconditions of STACK CL(A) ) ^ HOLD(C)

S (C, A) Operator

ON(B, D)

ON(C, A) ^ ON(B, D) ^ TSUBG

To execute the S(C,A),all the preconditions of Stack operator should be true.But in this case HOLD(C) is not true .To make the state true use the operator S(B,D)

S(B,D) Operator

HOLD(C) CL(A) ) ^ HOLD(C) Preconditions of STACK

S (C, A) Operator

ON(B, D)

ON(C, A) ^ ON(B, D) ^ TSUBG

Write down the preconditions of S(B,D)

Goal Stack

CL (D) ^ HOLD (B) Preconditions of STACK

S(B,D) Operator

HOLD(C) CL(A) ) ^ HOLD(C) Preconditions of STACK

S (C, A) Operator

ON(B, D) ON(C, A) ^ ON(B, D) ^ TSUBG

Add S(B, D) in a queue of sequence of operators.

SQUEUE = US (B, A), S (B, D)

State_2:

ONT(A) ^ ONT(C) ^ ONT(D) ^ ON(B, D) ^ CL(A) ^ CL(C) ^ CL(B) ^ AE

Goal Stack

HOLD(C) CL(A) ) ^ HOLD(C) Preconditions of STACK

S (C, A) Operator

ON(B, D)

ON(C, A) ^ ON(B, D) ^ TSUBG

To execute S(C,A) all the preconditions should be true.here HOLD(C) is not true,to make the state true use the operator PU(C) and write the preconditions.

Goal Stack

ONT (C)^CL (C)^ AE Preconditions of PICKUP

PU (C) Operator

HOLD(C) CL(A) ) ^ HOLD(C) Preconditions of STACK

S (C, A) Operator

ON(B, D)

ON(C, A) ^ ON(B, D) ^ TSUBG

Here, all the preconditions of PU operator is true,so add PU(C) in a queue of sequence of operators.

SQUEUE = US (B, A), S (B, D),PU(C)

State_3:

ONT(A) ^ HOLD(C) ^ ONT(D) ^ ON(B, D) ^ CL(A) ^ CL(B)

Goal Stack:

HOLD(C) CL(A) ) ^ HOLD(C) Preconditions of STACK

S (C, A) Operator ON(B, D)

ON(C, A) ^ ON(B, D) ^ TSUBG

Here all the preconditions of S(C,A) is true ,so add S(C,A) in queue

SQUEUE = US (B, A), S (B, D),PU(C),S(C,A)

State_4:

ONT(A)^ON(C, A)^ ONT(D) ^ON(B, D) ^CL(C) ^CL(B)^ AE

Finally,we reached goal state after S(C,A) using Goal Stack algorithm,so the plan for the given problem is,

UnStack (B, A) Stack (B, D) PickUp(C) Stack(C,A)

4.4 K strips

We are familiar with the use of connectives ∧ and V in logics. Thinking of these connectives as operators that construct more complex formulas from simpler components. Here, we want to construct a formula whose intended meaning is that a certain agent knows a certain proposition.

The components consist of a term denoting the agent and a formula denoting a proposition that the agent knows. To accomplish this, modal operator K is introduced.

For example, to say that Robot (name of agent) know that block A is on block B, then write, K( Robot, On(A,B))

The sentence formed by combining K with the term Robot and the formula On(A,B) gets a new formula, the intended meaning of which is “Robot knows that block A is on block B”.

The words “knows” and “belief” is different in meaning. That means an agent can believe a false proposition, but it cannot know anything that is false. Some examples,

K(Agent1, K(Agent2, On(A,B) )], means Agent1 knows that Agent1 knows that A is on B. K(Agent1, On(A,B)) V K(Agent1, On(A,C) ) means that either Agent1 knows that A is on B or it knows that A is on C. K(Agent1, On(A,B)) V K(Agent1, ¬On(A,B) ) means that either Agent1 knows whether or not A is on B.

Knowledge Axioms:

The operators ∧ and V have compositional semantics (depends on truth value), but the semantics of K are not compositional. The truth value of K(Agent1, On(A,B) ) for example, cannot necessarily be determined from the properties of K, the denotation of Agent1 and the truth value of On(A,B). K Operator is said to be referentially opaque.

Example in Planning Speech Action:

We can treat speech acts just like other agent systems. Our agent can use a plan-generating system to make plans comprising speech acts and other actions. To do so, it needs a model of the effects of these actions.

Consider for example, Tell( A, φ ), where A is Agent and φ is true. We could model the effects of that action by the STRIPS rule :

Tell( A, φ ) :

Precondition : Next_to(A) ∧ φ ∧ ¬K(A, φ)

Delete : ¬K(A, φ)

Add : K(A, φ)

The precondition Next_to(A) ensures that our agent is close to agent A to enable communication. The precondition φ is imposed to ensure that our agent actually believes φ before it can inform another agent about the truth. The precondition ¬K(A, φ) ensure that our agent does not communicate redundant information.

4.5 Learning

Machine Learning

In the real world, we are surrounded by humans who can learn everything from their experiences with their learning capability, and we have computers or machines which work on our instructions. But can a machine also learn from experiences or past data like a human does? So here comes the role of Machine Learning.

A subset of artificial intelligence known as machine learning focuses primarily on the creation of algorithms that enable a computer to independently learn from data and previous experiences. Arthur Samuel first used the term "machine learning" in 1959. It could be summarized as follows:

Without being explicitly programmed, machine learning enables a machine to automatically learn from data, improve performance from experiences, and predict things.

Machine learning algorithms create a mathematical model that, without being explicitly programmed, aids in making predictions or decisions with the assistance of sample historical data, or training data. For the purpose of developing predictive models, machine learning brings together statistics and computer science. Algorithms that learn from historical data are either constructed or utilized in machine learning. The performance will rise in proportion to the quantity of information we provide.

How does Machine Learning work

A machine learning system builds prediction models, learns from previous data, and predicts the output of new data whenever it receives it. The amount of data helps to build a better model that accurately predicts the output, which in turn affects the accuracy of the predicted output.

Let's say we have a complex problem in which we need to make predictions. Instead of writing code, we just need to feed the data to generic algorithms, which build the logic based on the data and predict the output. Our perspective on the issue has changed as a result of machine learning. The Machine Learning algorithm's operation is depicted in the following block diagram:

Fig. 4.3 Working of Machine Learning.

Features of Machine Learning:

Machine learning uses data to detect various patterns in a given dataset. v It can learn from past data and improve automatically. v It is a data-driven technology. v Machine learning is much similar to data mining as it also deals with the huge amount of the data.

Need for Machine Learning

The demand for machine learning is steadily rising. Because it is able to perform tasks that are too complex for a person to directly implement, machine learning is required. Humans

are constrained by our inability to manually access vast amounts of data; as a result, we require computer systems, which is where machine learning comes in to simplify our lives.

By providing them with a large amount of data and allowing them to automatically explore the data, build models, and predict the required output, we can train machine learning algorithms. The cost function can be used to determine the amount of data and the machine learning algorithm's performance. We can save both time and money by using machine learning.

The significance of AI can be handily perceived by its utilization's cases, Presently, AI is utilized in self-driving vehicles, digital misrepresentation identification, face acknowledgment, and companion idea by Facebook, and so on. Different top organizations, for example, Netflix and Amazon have constructed AI models that are utilizing an immense measure of information to examine the client interest and suggest item likewise.

Following are some key points which show the importance of Machine Learning:

Rapid increment in the production of data v Solving complex problems, which are difficult for a human v Decision making in various sector including finance v Finding hidden patterns and extracting useful information from data.

Classification of Machine Learning

At a broad level, machine learning can be classified into three types:

  1. Supervised learning
  2. Unsupervised learning
  3. Reinforcement learning

1) Supervised Learning

In supervised learning, sample labeled data are provided to the machine learning system for training, and the system then predicts the output based on the training data.

The system uses labeled data to build a model that understands the datasets and learns about each one. After the training and processing are done, we test the model with sample data to see if it can accurately predict the output.

The mapping of the input data to the output data is the objective of supervised learning. The managed learning depends on oversight, and it is equivalent to when an understudy learns things in the management of the educator. Spam filtering is an example of supervised learning.

Supervised learning can be grouped further in two categories of algorithms:

Classification

Regression

2) Unsupervised Learning

Unsupervised learning is a learning method in which a machine learns without any supervision.

The training is provided to the machine with the set of data that has not been labeled, classified, or categorized, and the algorithm needs to act on that data without any supervision. The goal of unsupervised learning is to restructure the input data into new features or a group of objects with similar patterns.

In unsupervised learning, we don't have a predetermined result. The machine tries to find useful insights from the huge amount of data. It can be further classifieds into two categories of algorithms:

Clustering v Association

3) Reinforcement Learning

Reinforcement learning is a feedback-based learning method, in which a learning agent gets a reward for each right action and gets a penalty for each wrong action. The agent learns automatically with these feedbacks and improves its performance. In reinforcement learning, the agent interacts with the environment and explores it. The goal of an agent is to get the most reward points, and hence, it improves its performance.

The robotic dog, which automatically learns the movement of his arms, is an example of Reinforcement learning.

Adaptive Learning

Adaptive learning in Artificial Intelligence (AI) refers to the use of intelligent algorithms and data-driven techniques to tailor educational content and experiences to the needs, preferences, and learning pace of individual learners. This approach is revolutionizing traditional teaching and training methods by enabling a personalized learning journey that evolves based on the learner's interactions.

Key Features of Adaptive Learning in AI

  1. Personalization: v The system analyzes the learner’s strengths, weaknesses, and preferences. v Content is customized to match the learner’s knowledge level, skills, and goals. v Adjustments are made dynamically as the learner progresses.

  2. Data-Driven Insights: v AI collects data from various sources, such as quizzes, assignments, and real-time responses. v The data helps identify patterns, predict outcomes, and make informed adjustments.

3. Real-Time Feedback: v Learners receive instant feedback on their performance. v The system provides hints, additional resources, or alternative explanations when needed.

4.Scalability: v Adaptive learning platforms can handle large numbers of learners while maintaining a personalized approach. v It’s applicable in diverse fields, from K-12 education to corporate training.

5.Dynamic Content Delivery: v The system can present different types of content, such as videos, interactive simulations, or textual materials, depending on the learner's preferred style. v Challenges are adjusted based on learner competence to avoid frustration or boredom.

Technologies Behind Adaptive Learning

  1. Machine Learning (ML): v Learns from data on user interactions to predict optimal learning paths. v Clustering and classification algorithms group learners with similar patterns for better recommendation systems.

  2. Natural Language Processing (NLP): v Understands and responds to user queries in human language. v Used in chatbots, virtual tutors, and question-answer systems.

  3. Reinforcement Learning: v AI agents optimize learning strategies by receiving rewards for successful outcomes. v Helps in devising strategies for student engagement and motivation.

  4. Big Data Analytics: v Analyzes vast amounts of educational data to uncover trends and insights. v Enables predictive analytics for identifying at-risk students or improving curriculum design.

  5. Cognitive Computing: v Simulates human thought processes to adapt to complex learner behavior.

Creates a more interactive and human-like learning experience.

Benefits of Adaptive Learning in AI

  1. Enhanced Learning Outcomes: v Personalized pacing ensures that learners fully understand concepts before moving forward.

  2. Efficient Use of Resources: v Teachers and trainers can focus on strategic intervention while AI handles routine content delivery.

  3. Equity in Education: v Ensures that all learners, regardless of background, receive an equal opportunity to excel.

  4. Continuous Improvement: v AI systems evolve over time, becoming more effective as they process more data.

  5. Engagement and Motivation: v By adapting to interests and providing challenges at the right level, learners stay motivated.

Applications of Adaptive Learning

  1. Education: v K-12 and higher education platforms like Khan Academy and Coursera use adaptive learning to cater to diverse learner needs.

  2. Corporate Training: v Customized training programs for employees in sectors like IT, healthcare, and finance.

  3. Language Learning: v Platforms like Duolingo adapt lessons based on user proficiency and errors.

  4. Skill Development: v Professional certification courses use adaptive tools to ensure mastery of concepts.

  5. Special Education: v Supports learners with disabilities by providing tailored assistance and resources.

Challenges and Limitations

  1. Data Privacy and Security: v Handling sensitive learner data responsibly is a critical concern.

  2. High Initial Investment: v Developing adaptive learning systems requires significant time and financial resources.

  3. Algorithm Bias: v Improperly trained models can perpetuate biases, leading to unequal learning opportunities.

  4. Dependence on Technology: v Requires access to devices and stable internet connectivity, which can be a barrier in underdeveloped regions.

Future of Adaptive Learning in AI

  1. Integration with AR/VR: v Immersive technologies will enhance engagement and create realistic learning scenarios.

  2. Cross-disciplinary Learning: v AI could enable seamless integration of topics, fostering a holistic understanding.

  3. Lifelong Learning: v Adaptive systems will evolve to support continuous skill development across careers and life stages.

  4. Global Access: v With advancements in AI and internet access, adaptive learning can reach even the most remote areas.

CHAPTER-5 Expert System

5.1 Expert System

One of the largest area of applications of artificial intelligence is expert systems or knowledge based systems as they are often known. This type of systems seeks to exploit the specialised skills or information held by a group of people on specific areas. It can be thought of as a computerised consulting service. It can also be called an information guidance system. Such systems are used for prospecting medical diagnosis or as educational aids. They are also used in engineering and manufacture in the control of robots where they inter-relate with vision systems. The initial attempts to apply artificial intelligence to generalised problems did not achieve success and had limited progress.

Definition of Expert System

Following are various definitions of expert systems :-

Definition 1- Expert system is a artificial intelligence based system that converts the knowledge of an expert in a specific subject into a software code. This code can be merged with other such codes based on the knowledge of other experts, and used for answering queries submitted through a computer.

Definition 2- Expert system is a piece of software which uses databases of expert knowledge to offer advice or make decisions in such areas as medical diagnosis.

Definition 3- Expert system is a computer program that contains a knowledgebase and a set of algorithms or rules that infer new facts from knowledge and from incoming data. An expert system is an AI application that uses a knowledgebase of human expertise to aid in solving problems.

Definition 4- Expert system is a model and associated procedure that exhibits, within a specific domain, a degree of expertise in problem solving that is comparable to a human expert.

Definition 5- Expert system is a computing system capable of representing and reasoning about some knowledge rich domain, which usually requires a human expert, with a view towards solving problems and/or giving advice. Its level of performance makes it "expert".

Definition 6- Expert system = Knowledge + Inference engine. All in all, an expert system contains knowledge acquired by interviewing human expertise in some domain. Expert system can not operate in situations that call for common sense. Thus, Expert system perform a task in limited domains that require human expertise like medical diagnosis, fault diagnosis, status monitoring, data interpretation, mineral exploration, tutoring, computer configuration, credit checking etc.

Common Sense Reasoning

Computers have an entirely deserved reputation for lacking common-sense. A human expert has two main types of knowledge -

i) Domain-specific knowledge ii) Common-sense knowledge Domain-specific knowledge deals with all kinds of knowledge about a particular domain. All other pieces of knowledge that help in reasoning other than domain-specific knowledge are termed as common-sense knowledge. Common-sense knowledge when coupled, with domain-specific knowledge increases the performance capability of the system. There are number of techniques available that can be used to enable an AI program to represent and reason with common-sense knowledge. As of yet, however, no program can match the common-sense reasoning powers of a five-years-old-child. To understand the common-sense reasoning consider the following real life situation. Ram enjoys shopping in the mall only when the stores are not crowded. He has agreed to accompany Shyam there on the following Wednesday evening since this is normally a time when few people at shop. Before the given data, several of the larger stores announce a one-time, special sale starting on that Wednesday evening. Ram fearing large crowds, now retracts the offer to accompany Shyam, promising to go on some future data. On the Tuesday before the sale was to commence, whether forecasts predicted heavy snow. Now believing the whether would discourage most shoppers, Ram once again agreed to join Shyam. But, unexpectedly, on the given Wednesday, the forecasts proved to be false; so Ram once again declined to go.

This anecdote illustrates that how one's beliefs can change in a dynamic environment. And while one's beliefs may not fluctuate as much as Ram's in most situations. This form of belief is not uncommon. Indeed it is common enough that we label it as a form of common-sense reasoning i.e. reasoning with uncertain knowledge.

Why to Use an Expert System ?

Expert System (ES) helps to preserve knowledge. ES can be well suitable and affordable when expertise is expensive or unavailable. Human can fail to work under pressure and time bound but system would not. ES can train new employees thereby saving expertise time.

ES can save cost, as it can perform same task repeatedly and thereby providing good quality and uniform performance. ES can provide rigid solution for large problems.

Is Expert System Feasible ?

The major factor to consider for feasibility is the cost. How much is the need of ES would justify the cost to be incurred ?

When human expertise is not available ES is best solution in all criterion and conditions.

The major problem faced by ES is what is the size and scope of the system. This is relative to resources and evolving technology.

ES implementation is structured and does not require any common sense reasoning and hence perform uniformly with respect to all situations.

Advantages and Disadvantages of Expert System

Advantages of expert system

  1. A well functioning ES provides increased distribution of expertise.

  2. ES gives broader job description for individual workers.

  3. ES can work round the clock.

  4. ES can be used by the user more frequently.

  5. ES can be trained faster as compare to human, therefore training becomes less time and money consuming.

  6. ES enables new services.

  7. ES work as a new communication channel for knowledge.

  8. ES holds and maintains significant levels of information.

  9. ES has faster adaptation to changing conditions. ES never "forgets" to ask a question, as a human might.

  10. A multi-user expert system can serve more users at a time.

Disadvantages of expert system

  1. ES lacks common sense needed in some decision making.

  2. ES can not make creative responses as human expert would in unusual circumstances.

  3. Domain experts may not be always able to explain their logic and reasoning.

  4. When the problem is outside the domain of ES then ES can not respond reasonably well when no answer exists.

  5. Errors may occur in the knowledgebase, and lead to wrong decisions by ES.

  6. ES can not adapt to changing environments, unless knowledgebase is changed. That is ES can not be made to do self learning.

  7. ES is dependent on symbolic input only and can not respond to sensory experience as human can do.

Limitations of Expert Systems (ES)

Knowledge may not always be readily accessible. v Extracting expertise from human experts can be challenging. v There are often multiple valid solutions or assessments for a given problem. v Processing under strict time constraints can be a challenge for ES. v Users may have cognitive limitations that affect their interaction with the system. v ES performs effectively only within a narrowly defined domain of expertise. v Experts often lack independent mechanisms to validate the results produced by the system. v The vocabulary used in the knowledge base can be limited and difficult to comprehend. v Assistance from knowledge engineers is both hard to acquire and expensive. v End-users may exhibit a lack of trust in the system. v Biases can influence the process of transferring knowledge to the system.

Factors Contributing to the Success of Expert Systems

The system must possess a sufficiently high level of knowledge.

Expertise must be available from at least one domain specialist. v The problem being addressed should involve some degree of uncertainty or ambiguity. v The problem should be specific and focused rather than broad or general. v The ES framework (shell) must be robust, effectively managing and manipulating knowledge. v The user interface should be intuitive and user-friendly, even for non-expert users. v The problem should be complex and significant enough to warrant the development of an expert system. v Skilled developers with strong interpersonal and communication skills are crucial. v The potential impact of the system should be carefully evaluated. v The system's impact should result in positive outcomes. v Support and backing from management are essential for success.

5.2 Expert System Architecture

Fig. 5.1 Constitute of domain-specific and general knowledge section.

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 the 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.

Every expert system consists of two principle parts : The knowledge base; and the reasoning or inference engine. The knowledge base of expert systems contains both factual and heuristic

knowledge. Factual knowledge is that knowledge of the task domain that is widely shared, typically found in textbooks or journals, and commonly agreed upon by those knowledgeable in the particular field. Heuristic knowledge is the less rigorous, gained from experience, more judgemental knowledge of performance. In contrast to factual knowledge, heuristic knowledge is rarely discussed, and is largely individualistic. It is the knowledge of good practice, good judgement, and plausible reasoning in the field. It is the knowledge that underlies the "art of good guessing".

Knowledge representation formalizes and organizes the knowledge. One widely used representation is the production rule, or simply rule. A rule consists of an IF part and a THEN part (also called a condition and an action). The IF part lists a set of conditions in some logical combination. The piece of knowledge represented by the production rule is relevant to the line of reasoning being developed if the IF part of the rule is satisfied; consequently, the THEN part can be concluded, or its problem-solving action taken. Expert systems whose knowledge is represented in rule form are called rule-based systems.

Generally the 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.

Another important feature of expert systems is the way they (usually) separate domain specific knowledge from more general purpose reasoning and representation techniques. The general purpose module (in the dotted box in the figure) is referred to as an expert system shell. As seen in the Fig. 5.2, the shell will provide the inference engine (and knowledge representation scheme), a user interface, an explanation system and sometimes a knowledge base editor. Given a new kind of problem to solve (say, TV set design), one can usually find a shell that provides the right sort of support for that problem, so what is needed to do is provide the expert knowledge. There are numerous commercial expert system shells, each one appropriate for a slightly different range of problems. (Expert systems work in industry includes both writing expert system shells and writing expert systems using shells). Using shells to write expert systems generally greatly reduces the cost and time development (compared with writing the expert system from scratch).

An ideal Expert System should include the following :-

Extensive specific knowledge from the domain of interest. v Extensive database interfaces. v Application of several techniques. v Support for heuristic analysis. v Capacity to infer new knowledge from existing knowledge. v Decisions under uncertainty.

Decisions with unknowns. v Symbolic processing. v An ability to explain its own reasoning.

Types of Architecture i) Rule Based Architecture of an Expert System

The most common form of architecture used in expert and other types of knowledge based systems is the production system or it is called rule based systems. This type of system uses knowledge encoded in the form of production rules i.e. if-then rules. The rule has a conditional part on the left hand side and a conclusion or action part on the right hand side. For example if: condition1 and condition 2 and condition3

Then: Take action 4 Each rule represents a small chunk of knowledge to the given domain of expertise. When the known facts support the conditions in the rule's left side, the conclusion or action part of the rule is then accepted as known. The rule based architecture of an expert system consists of the domain expert, knowledge engineer, inference engine, working memory, knowledge base, external interfaces, user interface, explanation module, database spreadsheets executable programs s mentioned in Fig. 5.2.

Fig. 5.2 Expert system : Rule based architecture

Integration of Expert Systems Components

The components of the rule based architecture are as follows.

  1. User Interface : It is the mechanism by which the user and the expert system communicate with each other i.e. the user interacts with the system through a user interface. It acts as a bridge between user and expert system. This module accepts the user queries and submits those to the expert system. The user normally consults the expert system for following reasons. a) To get answer of his/her queries. b) To get explanation about the solution for psychological satisfaction. The user interface module is designed in such a way that at user level it accepts the query in a language understandable by expert system. To make the expert system user friendly, the user interface interacts with the user in natural language. The user interface provides as much facilities as possible such as menus, graphical interfaces etc. to make the dialog user friendly and more attractive.