AI Lab Manual 24-25
AI Lab Manual 24-25
Page
Sr. No. Title Signature
Number
Part I: II Artificial Intelligence (310253)
Implement depth first search algorithm and Breadth First Search
algorithm, Use an undirected graph and develop a recursive
1 algorithm for searching all the vertices of a graph or tree data
structure
I. Selection Sort
II. Minimum Spanning Tree
3 III. Single-Source Shortest Path Problem
IV. Job Scheduling Problem V. Prim's Minimal Spanning
Tree Algorithm
V. Kruskal's Minimal Spanning Tree Algorithm
VI. Dijkstra's Minimal Spanning Tree Algorithm
I. Information management
II. Hospitals and medical facilities
6.
III. Help desks management
IV. Employee performance evaluation
V. Stock market trading
VI. Airline scheduling & cargo schedules
BFS is one of the traversing algorithm used in graphs. This algorithm is implemented using a
queue data structure. In this algorithm, the main focus is on the vertices of the graph. Select a
starting node or vertex at first, mark the starting node or vertex as visited and store it in a queue.
Then visit the vertices or nodes which are adjacent to the starting node, mark them as visited and
store these vertices or nodes in a queue. Repeat this process until all the nodes or vertices are
completely visited.
Advantages of BFS
1. It can be useful in order to find whether the graph has connected components
or not.
2. It always finds or returns the shortest path if there is more than one path between two
vertices.
Disadvantages of BFS
1. The execution time of this algorithm is very slow because the time
complexity of this algorithm is exponential.
2. This algorithm is not useful when large graphs are used.
Explanation:
1. Create a graph.
2. Initialize a starting node.
3. Send the graph and initial node as parameters to the bfs function.
4. Mark the initial node as visited and push it into the queue.
5. Explore the initial node and add its neighbours to the queue and remove the initial
node from the queue.
6. Check if the neighbours node of a neighbouring node is already visited.
7. If not, visit the neighbouring node neighbours and mark them as visited.
8. Repeat this process until all the nodes in a graph are visited and the queuebecomes empty.
A standard DFS implementation puts each vertex of the graph into one of two categories:
1. Visited
2. Not Visited
The purpose of the algorithm is to mark each vertex as visited while avoiding cycles.
2. Take the top item of the stack and add it to the visited list.
3. Create a list of that vertex's adjacent nodes. Add the ones which aren't in the visitedlist to the top of the
stack.
Let's see how the Depth First Search algorithm works with an example. We use anundirected graph with 5
vertices.
We start from vertex 0, the DFS algorithm starts by putting it in the Visited list andputting all its adjacent vertices
in the stack.
Vertex 2 has an unvisited adjacent vertex in 4, so we add that to the top of the stack and visit it.
Vertex 2 has an unvisited adjacent vertex in 4, so we add that to the top of the stack and visit it.
After we visit the last element 3, it doesn't have any unvisited adjacent nodes, sowe have completed the
Depth First Traversal of the graph.
After we visit
3, it doesn't
have any
unvisited
adjacent nodes,
The time complexity of the DFS algorithm is represented in the form of O(V + E), where V is
the number of nodes and E is the number of edges.
Conclusion:
we have successfully implemented BFS and DFS graph traversal using stack and queue in python. we have studied
Advantages and applications of BFS and DFS.
Assignment No. 2
Title:
Theory:
A* Search
A* search is the most commonly known form of best-first search. Ituses heuristic function
h(n), and cost to reach the node n from the start state g(n). It has combined features of
UCS and greedy best- first search, by which it solve the problem efficiently. A* search
algorithm finds the shortest path through the search space using the heuristic function.
This search algorithm expands less search tree and provides optimal result faster. A*
algorithm is similar to UCS except that it uses g(n)+h(n) instead of g(n).
In A* search algorithm, we use search heuristic as well as the cost to reach the node.
Hence we can combine both costs as following, and this sum is called as a fitness number.
Informally speaking, A* Search algorithms, unlike other traversal techniques, it has “brains”. What it
means is that it is really a smart algorithm which separates it from the other convent ional algorithms. This
fact is cleared in detail in below sections.
And it is also worth mentioning that many games and web-based maps use this algorithm to find the
shortest path very efficiently (approximation).
Explanation
Consider a square grid having many obstacles and we are given a starting cell and a target cell. We want
to reach the target cell (if possible) from the starting cell as quickly as possible. Here A*Search
Algorithm comes to the rescue.
What A* Search Algorithm does is that at each step it picks the node according to a value-‘f’ which is a
parameter equal to the sum of two other parameters – ‘g’ and ‘h’. At each step it picks the node /cell having
the lowest ‘f’, and process that node/cell.
We define ‘g’ and ‘h’ as simply as possible below g = the movement cost to move from the starting point to
a given square on the grid, following the path generated to get there.
h = the estimated movement cost to move from that given square on the grid to the final destination.
This is often referred to as the heuristic, which is nothing but a kind of smart guess. We really don’t know
the actual distance until we find the path, because all sorts of things can be in the way (walls, water, etc.).
There can be many ways to calculate this ‘h’ which are discussed in the later sections.
Algorithm of A* search:
Step 2: Check if the OPEN list is empty or not, if the list is empty then return failure
and stops.
Step 3: Select the node from the OPEN list which has the smallest value of
evaluation function (g+h), if node n is goal node then return success and stop,
otherwise
Step 4: Expand node n and generate all of its successors, and put n into the closed
list. For each successor n', check whether n' is alreadyin the OPEN or CLOSED list, if
not then compute evaluationfunction for n' and place into Open list.
Step 5: Else if node n' is already in OPEN and CLOSED, then it should be attached
to the back pointer which reflects the lowest g(n')value.
Advantages:
Disadvantages:
Conclusion:
We have studied A* search and its advantages, Disadvantages and application
with its implementation.
Assignment No. 3
Title:
Implement Greedy search algorithm for any of the following application: I. Selection Sort II. Minimum Spanning Tree
III. Single-Source Shortest Path Problem IV. Job Scheduling Problem V. Prim's Minimal Spanning Tree Algorithm VI.
Kruskal's Minimal Spanning Tree Algorithm VII. Dijkstra's Minimal Spanning Tree Algorithm.
Theory:
Selection sort is among the simplest of sorting techniques and it works very well for small files. It has a quite
important application as each item is actually moved at the most once.
Section sort is a method of choice for sorting files with very large objects (records) and small keys. The worst
case occurs if the array is already sorted in a descending order and we want to sort them in an ascending order.
Nonetheless, the time required by selection sort algorithm is not very sensitive to the original order of the array
to be sorted: the test if [] < A[j] < min x is executed exactly the same number of times in every case.
Selection sort spends most of its time trying to find the minimum element in the unsorted part of the array. It
clearly shows the similarity between Selection sort and Bubble sort.
So, after 4 iterations(i.e. n-1 iterations where n = size of the array), the given array is sorted.
Auxiliary Space: O(1) as the only extra memory used is for temporary variables.
Easy to understand and implement, making it ideal for teaching basic sorting concepts.
Requires only a constant O(1) extra memory space.
It requires less number of swaps (or memory writes) compared to many other standard algorithms. Only cycle
sort beats it in terms of memory writes. Therefore it can be simple algorithm choice when memory writes are
costly.
Disadvantages of the Selection Sort
Selection sort has a time complexity of O(n^2) makes it slower compared to algorithms like Quick Sort or Merge
Sort.
Does not maintain the relative order of equal elements which means it is not stable.
Applications of Selection Sort
Perfect for teaching fundamental sorting mechanisms and algorithm design.
Suitable for small lists where the overhead of more complex algorithms isn’t justified and memory writing is
costly as it requires less memory writes compared to other standard sorting algorithms.
Heap Sort algorithm is based on Selection Sort.
Conclusion
As we studied, the Selection sort algorithm . Selection Sort is a comparison-based sorting
algorithm. It sorts an array by repeatedly selecting the smallest (or largest) element from the
unsorted portion and swapping it with the first unsorted element.
It has its own importance in AI.
Assignment No. 4
Title:
Implement a solution for a Constraint Satisfaction Problem using Branch and Bound and
Backtracking for n-queens problem or a graph coloring problem
Theory:
1. Backtracking Algorithm:
Backtracking is a fundamental algorithmic technique used to solve problems that involve searching for solutions
among a set of possible candidates, often where the solution must satisfy certain constraints. It visits all the possible
solutions and returns if the solution does not meet the criteria. So we can say that it uses a more refined version of
brute force searching style for a given problem. For example in the 0/1 knapsack problem, we use backtracking to
assign the O’s and 1’s to the corresponding item’s weight.
The N-Queens problem is a puzzle of placing exactly N queens on an NxN chessboard, such
that no two queens can attack each other in that configuration. Thus, no two queens can lie in
the same row,column or diagnol.
The branch and bound solution is somehow different, it generates a partial solution until it
figures that there's no point going deeperas we would ultimately lead to a dead end.
In the backtracking approach, we maintain an 8x8 binary matrix for keeping track of safe
cells (by eliminating the unsafe cells, those that are likely to be attacked) and update it each
time we place a new queen.However, it required O(n^2) time to check safe cell and update the
queen.
we already ensure that the queens do not share the same column by the way we fill out our
auxiliary matrix (column by column). Hence, only the left out 3 conditions are left out to be
satisfied.
The branch and bound approach suggest that we create a partial solution and use it to
ascertain whether we need to continue in a particular direction or not. For this problem, we
create 3 arrays to check for conditions 1,3 and 4. The Boolean arrays tell which rows and
diagonals are already occupied. To achieve this, we need a numbering system to specify
which queen is placed.
The indexes on these arrays would help us know which queen we are analyzing. Preprocessing
- create two NxN matrices, one for top-left to bottom- right diagonal, and other for top-
right to bottom-left diagonals. We need to fill these in such a way that two queens
sharing same top- left bottom-right diagonal will have same value in slash Diagonal and two
queens sharing same top-right bottom-left diagonal will have samevalue in backslash
Diagonal.
For the 8 x 8 problem, our tree structure will be 2⁸ = 256 unique nodes.
Worst-case Time Complexity: In the worst case, the algorithm might explore all possible
configurations of the board. For each row, it tries to place a queen in all columns and checks for
safety. Therefore, the time complexity can be approximated as O(N!) because there are N! possible
permutations of queens on the board.
The graph coloring problem is to discover whether the nodes of the graph G canbe covered in
such a way, that no two adjacent nodes have the same color yet only m colors are used. This
graph coloring problem is also known as M- colorability decision problem.
The M – colorability optimization problem deals with the smallest integer m for which the
graph G can be colored. The integer is known as a chromatic number of the graph.
Here, it can also be noticed that if d is the degree of the given graph, then it can be colored
with d+ 1 color.
A graph is also known to be planar if and only if it can be drawn in a planar in such a way
that no two edges cross each other. A special case is the 4 - colors problem for planar graphs.
The problem is to color the region in a map in such away that no two adjacent regions have
the same color. Yet only four colors are needed. This is a problem for which graphs are very
useful because a map can beeasily transformed into a graph. Each region of the map becomes
the node, and iftwo regions are adjacent, they are joined by an edge.
Graph coloring problem can also be solved using a state space tree, whereby applying a
backtracking method required results are obtained.
For solving the graph coloring problem, we suppose that the graph is represented by its
adjacency matrix G[ 1:n, 1:n], where, G[ i, j]= 1 if (i, j) is an edge of G, and G[i, j] = 0
otherwise.
The colors are represented by the integers 1, 2, ..., m and the solutions are given by the n-
tuple (x1, x2, x3, ..., xn), where x1 is the color of node i.
1. Computer-2019
TE Algorithm mcoloring ( k310258:
Pattern ) Laboratory Practice-II (AI, SMA) Page | 23
2. // this algorithm is formed using the recursive backtracking
3. // schema. The graph is represented by its Boolean adjacency
4. // matrix G [1: n, 1: n]. All assignments of 1, 2, …, m to the
SHAHAJIRAO PATIL VIKAS PRATISHTHAN
S. B. PATIL COLLEGE OF ENGINEERING, INDAPUR, DIST: PUNE.
DEPARTMENT OF COMPUTER ENGINEERING
8. {
9. Repeat
10. {
11. // generate all legal assignments for x[k],
12. Next value (k); // assign to x[k] a legal color.
13. If ( x[k] = 0 ) then return; // no new color possible
14. If (k = n) then // at most m colors have been used to color the n
vertices.
15. Write (x[1 : n ]);
16. Else mcoloring (k + 1);
17. }
18. Until (false);
19. }
This algorithm uses the recursive backtracking schema. In this algorithm colorsto be assigned are
to determine from the range (0, m), i.e., m colors are available.
Conclusion:
Hence we studied the Backtracking algorithms as being those classes of classical optimization that take/find all the
sub-solutions of the problems within a constraint and often move back and forward for the solutions. In the general
method, it would take subset solutions of n-tuple ie. xi = {x1,x2…..xn).
Assignment No. 5
Title:
Theory:
What is a chatbot?
A chatbot is a computer program designed to have a conversation with human being over the
internet. It’s also known as conversational agents, which communicate andcollaborate with
human users, through text messaging, in order to accomplish a specific task. Basically, there
are two types of chatbots. The one that uses ArtificialIntelligence, and another one is based
on multiple choice scripts.
Both types of chatbots aim to create a more personalized content experience for the users,
whether that's while watching a video, reading articles or buying new shoes.
These Chatbots hold the promise of being the next generation of technology that people use
to interact online with business enterprises. These Chatbots offer a lot of advantages, one of
which is that, because Chatbots communicate using a natural language, users don't need to
learn yet another new website interface, to getcomfortable with the unavoidable quirks.
Chatbots are capable to interpret human speech, and decide which information is being
sought. Artificial intelligence is getting smarter each day, and brands that are integrating
Chatbots with the artificial intelligence, can deliver one-to-one individualized experiences to
consumers.
Why chatbot?
Chatbots can be useful in many aspects of the customer experience, including providing
customer service, presenting product recommendations and engaging customers through
targeted marketing campaigns. If a customer has an issue with a product, she can connect
with a chatbot to explain the situation and the chatbot can input that information to provide a
recommendation of how to fix the product. On the recommendation side, chatbots can be
used to share popular products with customers that they might find useful and can act as a
sort of personal shopper or concierge service to find the perfect gift, meal or night out for a
customer with just a few basic questions. Brands are also using chatbots to connect their
customers withthought leaders and add personality to their products. In all cases, brands seem
to behaving great success and experiencing increased engagement and revenue.
Chatbots are easy to use and many customers prefer them over calling a representative on the
phone because it tends to be faster and less invasive. They canalso save money for companies
and are easy to set up.
Chatbots are relatively new and most companies haven’t implemented them yet, it’s only
natural that users are interested in them. Hence, people want to discover what chatbots can
and cannot do.
The number of businesses using chatbots has grown exponentially. Chatbots have increased
from 30,000 in 2016 to over 100,000 today. Every major company has announced their own
chatbot and 60% of the youth population uses them daily.
These statistics prove that chatbots are the new-gen tech. No more waiting for the right time
to incorporate them into your business. The time is now. By the year 2020, nearly 80% of
businesses will have their own chatbot.
Billions of people are already using chatbots, so it’s time your business did too.
Benefits of chatbot?
Chatbots are being made to ease the pain that the industries are facing today. The purpose of
chat bots is to support and scale business teams in their relations with customers.
Chatbots may sound like a futuristic notion, but according to Global Web Index statistics, it is
said that 75% of internet users are adopting one or more messenger platforms. Although
research shows us that each user makes use of an average of 24apps a month, wherein 80% of
the time would be in just 5 apps. This means you canhardly shoot ahead with an app, but you
still have high chances to integrate your chatbot with one of these platforms.
1. Available 24*7:
I’m sure most of you have experienced listening to the boring music playing while you’re
kept on hold by a customer care agent. On an average people spend 7 minutes
until they are assigned to an agent. Gone are the days of waiting for the next available operative.
Bots are replacing live chat and other forms of contact such as emails and phone calls.
Since chat bots are basically virtual robots they never get tired and continue to obey your
command. They will continue to operate every day throughout the year without requiring to
take a break. This improves your customer satisfaction and helps you rank highly in your
sector.
2. Handling Customers:
We humans are restricted to the number of things we can do at the same time. A study
suggests that humans can only concentrate on 3–4 things at the same time. If it goes beyond
that you are bound to meet errors.
Chatbots on the other hand can simultaneously have conversations with thousands of people.
No matter what time of the day it is or how many people are contacting you, every single one
of them will be answered instantly. Companies like Taco Bell and Domino’s are already using
chatbots to arrange delivery of parcels.
If you are a business owner you are bound have a lot of employees who need to be paid for
the work they do. And these expenses just keep adding up as business grows. Chatbots are a one
time investment which helps businesses reduce down on staff required.
You could integrate a customer support chatbot in your business to cater to simple queries of
customers and pass on only the complex queries to customer support agents.
Humans react to others based on their mood and emotions. If a agent is having a good
attitude or is in good mood he will most probably talk to customers in a good way. In
contrary to this the customer will not be satisfied.
Whereas chatbots are bound by some rules and obey them as long as they’re
programmed to. They always treat a customer in the most polite and perfect way no matter
how rough the person is. Also, in the travel and hospitality industry where travelers do not
speak the same language, a bot can be trained to communicate in the language of the traveler.
Lets be honest, no one likes doing the same work again and again over brief periodof time. In
the case of humans, such tasks are prone to errors. Chatbots now help automate tasks which
are to be done frequently and at the right time.
Also, now there are numerous slack bots which automate repetitive tasks. This helps people
save time and increase productivity. For example, there are new items bought from your
eCommerce site or there is a bug reported then it sends a short summary to a slack channel.
6. Personal Assistant:
People could use Bots as a fashion advisor for clothing recommendations, or ask trading tips
from a finance bot, suggest places to visit from a travel bot and so forth.This would help the
users get a more personal touch from the chatbot. Also, the chatbot will remember all your
choices and provide you with relevant choices the next time you visit it.
Below we have compiled reasons why chatbots are important for your business andhow can
they help in increasing revenues:
Most businesses these days have a web presence. But with being on the internet,
boundaries of day and night, availability and unavailability have changed, so have user
expectations. This is probably the biggest reason to use them. Bots give the user an
interactive experience. It makes customers feel they are working with someone to help
resolve their issue. If done right, botscan help customers find what they are looking for
and make them more likelyto return.
Customer Engagement
Along with a web presence, it has also become increasingly important for brands to
have a mobile presence - mobile apps, mobile-optimized websites. Considering how
chat has been around on the mobile for ages, most chatbot
Implementations don’t need you to work on tweaking their UI, they are ready to
implement and so available to your customers immediately
You might argue that you have an app for that. Having an app for your brandis great,
but having users discover that app, download it and use it to stay engaged is not an
easy deal. Instead, implementing a chatbot - which works on the mobile browser or a
messaging-app which the user regularly uses - makes it all the more reason for a
customer to be engaged with the brand
coupons to users for in-store purchases/discounts. Bots can alsobe used to link the user
to your mCommerce site/app so they can buy the product directly from the
convenience of their phones
Sell Intelligently
The best part about bots is they are cheap. Chatbot provide the necessary
infrastructure and APIs for creating these bots. They require minimal maintenance
and since it is automated, there is no labor-intensive work that goes in there.
e. Customer Service
Track Order : Keep users up to date with order status. Schedule or rescheduledelivery
to a provided address or request to pick it up at any other Best Buy outlet.
Stock outs : Notify users when desired product is available and place order over a
chat.
Returns and Replacements : No waiting time to reach customer care. Customers can
instantly place request to replace or return an order.
Seek Reviews : Reach out to users to seek reviews on the products recently bought
Gift Recommendations
Recommend relevant gifting options to users, accessing calendar events andunderstanding the
likes and style of beneficiary.
Opportunity to upsell gift cards for the users for every occasion.
According to a new survey, 80% of businesses want to integrate chatbots in their business
model by 2020. So which industries can reap the greatest benefits by implementing
consumer-facing chatbots? According to a chatbot, these major areas of direct-to-consumer
engagement are prime:
Famous restaurant chains like Burger King and Taco bell has introduced their Chatbots to
stand out of competitors of the Industry as well as treat their customersquickly. Customers of
these restaurants are greeted by the resident Chatbots, and areoffered the menu options- like a
counter order, the Buyer chooses their pickup location, pays, and gets told when they can
head over to grab their food. Chatbots also works to accept table reservations, take special
requests and go take the extra step to make the evening special for your guests.
Chatbots are not only good for the restaurant staff in reducing work and pain but canprovide a
better user experience for the customers.
For hoteliers, automation has been held up as a solution for all difficulties related to
TE Computer-2019 Pattern 310258: Laboratory Practice-II (AI, SMA) Page | 33
SHAHAJIRAO PATIL VIKAS PRATISHTHAN
S. B. PATIL COLLEGE OF ENGINEERING, INDAPUR, DIST: PUNE.
DEPARTMENT OF COMPUTER ENGINEERING
Chatbots can help hotels in a number of areas, including time management, guest services
and cost reduction. They can assist guests with elementary questions and requests. Thus,
freeing up hotel staff to devote more of their time and attention to time-sensitive, critical, and
complicated tasks. They are often more cost effective and faster than their human counterparts.
They can be programmed to speak to guests in different languages, making it easier for the
guests to speak in their local languageto communicate.
Chatbots are a much better fit for patient engagement than Standalone apps. Through these
Health-Bots, users can ask health related questions and receive immediate responses. These
responses are either original or based on responses to similar questions in the database. The
impersonal nature of a bot could act as a benefit in certain situations, where an actual Doctor
is not needed.
Chatbots ease the access to healthcare and industry has favourable chances to serve their
customers with personalised health tips. It can be a good example of the successof Chatbots and
Service Industry combo.
Chatbots in E-Commerce
Mobile messengers- connected with Chatbots and the E-commerce business can open a new
channel for selling the products online. E-commerce Shopping destination “Spring” was the
early adopter. E-commerce future is where brands havetheir own Chatbots which can interact
TE Computer-2019 Pattern 310258: Laboratory Practice-II (AI, SMA) Page | 34
SHAHAJIRAO PATIL VIKAS PRATISHTHAN
S. B. PATIL COLLEGE OF ENGINEERING, INDAPUR, DIST: PUNE.
DEPARTMENT OF COMPUTER ENGINEERING
Chatbots, AI and Machine Learning pave a new domain of possibilities in the Fashion
industry, from Data Analytics to Personal Chatbot Stylists. Fashion is suchan industry where
luxury goods can only be bought in a few physical boutiques andone to one customer service
is essential. The Internet changed this dramatically, bygiving the customers a seamless but a
very impersonal experience of shopping. This particular problem can be solved by Chatbots.
Customers can be treated personally with bots, which can exchange messages, give required
suggestions and information. Famous fashion brands like Burberry, Tommy Hilfiger have
recently launched Chatbots for the London and New York Fashion Week respectively.
Sephora a famous cosmetics brand and H&M– a fashion clothing brand have also launched
their Chatbots.
Chatbots in Finance
Chatbots have already stepped in Finance Industry. Chatbots can be programmed toassists the
customers as Financial Advisor, Expense Saving Bot, Banking Bots, Taxbots, etc. Banks and
Fintech have ample opportunities in developing bots for reducing their costs as well as
human errors. Chatbots can work for customer’s convenience, managing multiple accounts,
directly checking their bank balance andexpenses on particular things. Further about Finance
and Chatbots have been discussed in our earlier blog: Chatbots as your Personal Finance
Assistant.
Chat based health and fitness companies using Chatbot, to help their customers get
personalised health and fitness tips. Tech based fitness companies can have a huge
opportunity by developing their own Chatbots offering huge customer base with personalised
services. Engage with your fans like never before with news, highlights,game-day info, roster
and more.
TE Computer-2019 Pattern 310258: Laboratory Practice-II (AI, SMA) Page | 35
SHAHAJIRAO PATIL VIKAS PRATISHTHAN
S. B. PATIL COLLEGE OF ENGINEERING, INDAPUR, DIST: PUNE.
DEPARTMENT OF COMPUTER ENGINEERING
Chatbots and Service Industry together have a wide range of opportunities and smallto big all
size of companies using chatbots to reduce their work and help their customers better.
Chatbots in Media
Big publisher or small agency, our suite of tools can help your audience chatbot experience
rich and frictionless. Famous News and Media companies like The WallStreet Journal, CNN,
Foxnews,etchavelaunchedtheirbotstohelpyoureceivethelatest news on
the go.
Chatbot in Celebrity:
With a chatbot you can now have one-on-one conversation with millions of fans.
Chatbot in Marketing
SMS Marketing
Why promote just a coupon code that the customer does not know how touse?
Improve conversions from your existing SMS campaigns.
Talk to your customers when they want to using “Talk to an Agent” feature.
Email Marketing
So your eMail has made a solid elevator pitch about your product.
As a next step, is making customers fill an online form the most exciting wayto engage
with your customers?
It’s time to rethink the landing page.
Instantly engage in a conversation with your customers.
Address their concerns and queries
How effectively are you addressing the negative sentiment around your brandon social
media?
Addressing queries instantly and effectively can convert even an angrycustomer into
a loyal fan.
Leverage a chatbot as your first response strategy and comfort that customer.
Process
To run this project, you must have installed Python on your PC. After downloading the
project, follow the steps below:
Step1: Extract/Unzip the file
Step2: Go inside the project folder, open cmd then type bot.py and enter to start the system.
OR
Step2: Simply, double-click the bot.py file and you are ready to go.
Conclusion:
Assignment No. 6
Title:
Implement any one of the following Expert System.
I. Information management
II. Hospitals and medical facilities
III. Help desks management
IV. Employee performance evaluation
V. Stock market trading
VI. Airline scheduling and cargo schedules
Theory:
An expert system is a computer program that is designed to solve complex problems and to
provide decision-making ability like a human expert. It performs this by extracting knowledge
from its knowledge base using the reasoning and inference rules according to the user queries.
The expert system is a part of AI, and the first ES was developed in the year 1970, which was
the first successful approach of artificial intelligence. It solves the most complex issue as an
expert by extracting the knowledge stored in its knowledge base. The system helps in decision
making for compsex problems using both facts and heuristics like a human expert. It is called
so because it contains the expert knowledge of a specific domain and can solve any complex
problem of that particular domain. These systems are designed for a specific domain, such as
medicine, science, etc.
The performance of an expert system is based on the expert's knowledge stored in its
knowledge base. The more knowledge stored in the KB, the more that system improves its
performance. One of the common examples of an ES is a suggestion of spelling errors while
typing in the Google search box.
Below is the block diagram that represents the working of an expert system:
TE Computer-2019 Pattern 310258: Laboratory Practice-II (AI, SMA) Page | 39
SHAHAJIRAO PATIL VIKAS PRATISHTHAN
S. B. PATIL COLLEGE OF ENGINEERING, INDAPUR, DIST: PUNE.
DEPARTMENT OF COMPUTER ENGINEERING
o MYCIN: It was one of the earliest backward chaining expert systems that was designed
to find the bacteria causing infections like bacteraemia and meningitis. It was also used
for the recommendation of antibiotics and the diagnosis of blood clotting diseases.
o PXDES: It is an expert system that is used to determine the type and level of lung
cancer. To determine the disease, it takes a picture from the upper body, which looks
like the shadow. This shadow identifies the type and degree of harm.
o CaDeT: The CaDet expert system is a diagnostic support system that can detect cancer
at early stages.
o High Performance: The expert system provides high performance for solving any
type ofcomplex problem of a specific domain with high efficiency and accuracy.
o User Interface
o Inference Engine
o Knowledge Base
2. Knowledge Engineer: Knowledge engineer is the person who gathers the knowledge
from the domain experts and then codifies that knowledge to the system according to
the formalism.
3. End-User: This is a particular person or a group of people who may not be experts, and
working on the expert system needs the solution or advice for his queries, which are
complex.
o They can be used for risky places where the human presence is not safe.
o The response of the expert system may get wrong if the knowledge base contains
the wrong information.
o Like a human being, it cannot produce a creative output for different scenarios.
o For each domain, we require a specific ES, which is one of the big limitations.
It can be broadly used for designing and manufacturing physical devices such as
cameralenses and automobiles.
These systems are primarily used for publishing the relevant knowledge to the users.
The twopopular ES used for this domain is an advisor and a tax advisor.
o In the finance domain
In the finance industries, it is used to detect any type of possible fraud, suspicious
activity,and advise bankers that if they should provide loans for business or not.
o In the diagnosis and troubleshooting of devices
In medical diagnosis, the ES system is used, and it was the first area where these
systemswere used.
The expert systems can also be used for planning and scheduling some particular
tasks forachieving the goal of that task.
Conclusion:
We have studied Expert system with its applications ,advantages and need .