Unit 5 Notes
Unit 5 Notes
In the above table, the statement 'Dog is barking' is a fact, while the
statement 'Jaya likes food if it is delicious' is called rule. In this statement,
variable like 'Food' has a first letter in capital, because its value came from
previous fact. The symbol ':-' is used to denote that “Jaya likes delicious food”.
Arithmetic Operations in Prolog
Expression 2:
?- 2 + Y = X + 3
X=2
Y=3
• Prolog Lists:
• Lists are the finite sequence of elements.
• Prolog uses *…+ to build a list.
• The notation [X|Y] represents that the first element is X and second element is Y (X is head and Y is tail).
• Prolog has some special notation for lists:
I) [a] [honda, maruti, renault]
ii) [a,b,c) [pen, pencil, notebook]
iii) [] represents the empty list.
• Example 1: Pattern Matching in Lists
?- [a,b] = [a,X]
X=b
but:
?- [a,b] = [X]
no
• Example 2:
Consider the following lists:
[a, b, c, d, e, f, g]
[apple, pear, bananas, breadfruit]
[ ] this is an empty list
Now, consider some comparisons of lists:
[a,b,c] matches with [Head|Tail] resulting in Head=a and
Tail=[b,c]
[a] matches with [H|T] resulting in H=a and T=[]
[a,b,c] matches with [a|T] resulting in T=[b,c]
[a,b,c] doesn't match with [b|T]
[] doesn't match with [H|T]
[] match with []. Hence, two empty lists get matched with
each other
Backtracking in Prolog
• What is backtracking?
• If a person reaches a point where a goal cannot be matched, so he can come back (backtrack) to
the last spot, where the choice of matching a specific fact or rule was formed. If this process fails, a
person again goes to the nearest previous place where a choice was made. So, this procedure is
followed until the goal is achieved.
Example:
Consider the following facts,
bird(type (sparrow) name (steve)))
bird(type (penguin) name (sweety)))
bird(type (penguin)name (jones)))
consider the following query:
?- bird(type (penguin)name(X)
So, prolog will try to match the first query, but this query will not match because sparrow doesn't
match with penguin. Then, it will try to find next query to match the fact and succeed with X =
sweety. Later, if the query or subgoals are failed, it will go to the saved option and look for more
solutions. For example: X = jones
Q.Natural Language Processing,
• What is NLP?
• Natural Language Processing (NLP) is the branch of Artificial Intelligence and Computational
Linguistics and helps in interaction between the computer and natural languages.
• The common NLP tasks included in the software are sentence segmentation, part-of-speech tagging
and parsing.
• The different logical steps in NLP are:
Morphological analysis:
In this step, the punctuations are separated from the sentences.
Syntax analysis (Parsing):
It basically involves the stages of lexical analysis and grammar. The linear sequence of words are
transformed into structures and further specifies how words relate to each other.
Semantic analysis:
In this step, the meanings are assigned to the structures which are initially created in parsing.
Pragmatic analysis:
It involves re-interpretation of language , verification and generation of final output result.
Q.AI for Speech Recognition
•
• What Is A Speech Recognition System?
•
• A speech recognition system is a type of software that allows the user to
have their spoken words converted into written text in a computer
application such as a word processor or spreadsheet. The computer can
also be controlled by the use of spoken commands.
•
• Speech recognition software can be installed on a personal
computer of appropriate specification. The user speaks into a microphone
(a headphone microphone is usually supplied with the product). The
software generally requires an initial training and enrolment process in
order to teach the software to recognise the voice of the user. A voice
profile is then produced that is unique to that individual. This procedure
also helps the user to learn how to ‘speak’ to a computer.
• About
•
• When you dial the telephone number of a big
company, you are likely to hear the sonorous voice of a
cultured lady who responds to your call with great courtesy
saying “welcome to company X. Please give me the
extension number you want” .You pronounce the extension
number, your name, and the name of the person you want
to contact. If the called person accepts the call, the
connection is given quickly. This is artificial intelligence
where an automatic call-handling system is used without
employing any telephone operator.
• Working Of The System
•
• The voice input to the microphone produces an analogue speech signal.
An analogue to digital converter (ADC) converts this speech signal into binary
words that are compatible with digital computer. The converted binary version is
then stored in the system and compared with previously stored binary
representation of words and phrases.
•
• What Software Is Available?
•
• There are a number of publishers of speech recognition software. New and
improved versions are regularly produced, and older versions are often sold at
greatly reduced prices. Invariably, the newest versions require the most modern
computers of well above average specification. Using the software on a computer
with a lower specification means that it will run very slowly and may well be
impossible to use. There are two main types of speech recognition software:
discrete speech and continuous speech.
Acceptance And Rejection
•
• When the recognition engine processes an utterance, it returns a
result. The result can be either of two states: acceptance or rejection. An
accepted utterance is one in which the engine returns recognized text.
Whatever the caller says, the speech recognition engine tries very hard to
match the utterance to a word or phrase in the active grammar.
•
• Sometimes the match may be poor because the caller said
something that the application was not expecting, or the caller spoke
indistinctly. In these cases, the speech engine returns the closest match,
which might be incorrect. Some engines also return a confidence score
along with the text to indicate the likelihood that the returned text is
correct. Not all utterances that are processed by the speech engine are
accepted. Acceptance or rejection is flagged by the engine with each
processed utterance.
• By understanding the cognitive processes sur-rounding human
“acoustic memory” and process-ing, interface designers may be able to
integrate speech more effectively and guide users more suc- cessfully. By
appreciating the differences between human-human interaction and
human-computer interaction, designers may then be able to choose
appropriate applications for human use of speech with computers.
•
• Conclusion
•
• Speech recognition will revolutionize the way people conduct
business over the Web and will, ultimately, differentiate world-class e-
businesses. VoiceXML ties speech recognition and telephony together and
provides the technology with which businesses can develop and deploy
voice-enabled Web solutions TODAY! These solutions can greatly expand
the accessibility of Web-based self-service transactions to customers who
would otherwise not have access, and, at the same time, leverage a
business’ existing Web investments.
The Limits Of Speech Recognition
•
• To improve speech recognition applications, designers must
understand acoustic memory and prosody. Continued research and
development should be able to improve certain speech input,
output, and dialogue applications. Speech recognition and gen-
eration is sometimes helpful for environments that are hands-busy,
eyes-busy, mobility-required, or hostile and shows promise for
telephone-based ser-vices.
•
• Dictation input is increasingly accurate, but adoption
outside the disabled-user community has been slow compared to
visual interfaces. Obvious physical problems include fatigue from
speaking continuously and the disruption in an office filled with
people speaking.
•
Q.Robotics and Artificial Intelligence
• Robotics have different application areas. Some of the important applications domains of robotics are as follows:
• Robotics in defence sectors: The defence sector is undoubtedly the one of the main parts of any country. Each
country wants their defence system to be strong. Robots help to approach inaccessible and dangerous zone during
war. DRDO has developed a robot named Daksh to destroy life-threatening objects safely. They help soldiers to
remain safe and deployed by the military in combat scenarios. Besides combat support, robots are also deployed
in anti-submarine operations, fire support, battle damage management, strike missions, and laying machines.
• Robotics in Medical sectors: Robots also help in various medical fields such as laparoscopy, neurosurgery,
orthopaedic surgery, disinfecting rooms, dispensing medication, and various other medical domains.
• Robotics in Industrial Sector: Robots are used in various industrial manufacturing industries such as cutting,
welding, assembly, disassembly, pick and place for printed circuit boards, packaging & labelling, palletizing,
product inspection & testing, colour coating, drilling, polishing and handling the materials.
Moreover, Robotics technology increases productivity and profitability and reduces human efforts, resulting from
lower physical strain and injury. The industrial robot has some important advantages, which are as follows:
– Accuracy
– Flexibility
– Reduced labour charge
– Low noise operation
– Fewer production damages
– Increased productivity rate.
• Robotics in Entertainment: Over the last decade, use of robots is
continuously getting increased in entertainment areas. Robots are being
employed in entertainment sector, such as movies, animation, games and
cartoons. Robots are very helpful where repetitive actions are required. A
camera-wielding robot helps shoot a movie scene as many times as
needed without getting tired and frustrated. A big-name Disney has
launched hundreds of robots for the film industry.
• Robots in the mining industry: Robotics is very helpful for various mining
applications such as robotic dozing, excavation and haulage, robotic
mapping & surveying, robotic drilling and explosive handling, etc. A mining
robot can solely navigate flooded passages and use cameras and other
sensors to detect valuable minerals. Further, robots also help in excavation
to detect gases and other materials and keep humans safe from harm and
injuries. The robot rock climbers are used for space exploration, and
underwater drones are used for ocean exploration.
AI technology used in Robotics
• Computer Vision
• Robots can also see, and this is possible by one of the popular Artificial Intelligence technologies
named Computer vision. Computer Vision plays a crucial role in all industries like health,
entertainment, medical, military, mining, etc.
• Computer Vision is an important domain of Artificial Intelligence that helps in extracting meaningful
information from images, videos and visual inputs and take action accordingly.
• Natural Language Processing
• NLP (Natural Languages Processing) can be used to give voice commands to AI robots. It creates a
strong human-robot interaction. NLP is a specific area of Artificial Intelligence that enables the
communication between humans and robots. Through the NLP technique, the robot can
understand and reproduce human language. Some robots are equipped with NLP so that we can't
differentiate between humans and robots.
• Similarly, in the health care sector, robots powered by Natural Language Processing may help
physicians to observe the decease details and automatically fill in EHR. Besides recognizing human
language, it can learn common uses, such as learn the accent, and predict how humans speak.
• Edge Computing
• Edge computing in robots is defined as a service provider of robot integration, testing, design and
simulation. Edge computing in robotics provides better data management, lower connectivity cost,
better security practices, more reliable and uninterrupted connection.
• Complex Event Process
• Complex event processing (CEP) is a concept that helps us to understand the processing of multiple events in real time. An
event is described as a Change of State, and one or more events combine to define a Complex event. The complex event
process is most widely used term in various industries such as healthcare, finance, security, marketing, etc. It is primarily
used in credit card fraud detection and also in stock marketing field.
• For example, the deployment of an airbag in a car is a complex event based on the data from multiple sensors in real-time.
This idea is used in Robotics, for example, Event-Processing in Autonomous Robot Programming.
• Transfer Learning and AI
• This is the technique used to solve a problem with the help of another problem that is already solved. In Transfer learning
technique, knowledge gained from solving one problem can be implement to solve related problem. We can understand it
with an example such as the model used for identifying a circle shape can also be used to identify a square shape.
• Transfer learning reuses the pre-trained model for a related problem, and only the last layer of the model is trained, which is
relatively less time consuming and cheaper. In robotics, transfer learning can be used to train one machine with the help of
other machines.
• Reinforcement Learning
• Reinforcement learning is a feedback-based learning method in machine learning that enables an
AI agent to learn and explore the environment, perform actions and learn automatically from
experience or feedback for each action. Further, it is also having feature of autonomously learn to
behave optimally through hit-and-trail action while interacting with the environment. It is primarily
used to develop the sequence of decisions and achieve the goals in uncertain and potentially
complex environment. In robotics, robots explore the environment and learn about it through hit
and trial. For each action, he gets rewarded (positive or negative). Reinforcement learning provides
Robotics with a framework to design and simulate sophisticated and hard-to-engineer behaviours.
• Affective computing
• Affective computing is a field of study that deals with developing systems that can identify,
interpret, process, and simulate human emotions. Affective computing aims to endow robots with
emotional intelligence to hope that robots can be endowed with human-like capabilities of
observation, interpretation, and emotion expression.
• Mixed Reality
• Mixed Reality is also an emerging domain. It is mainly used in the field of programming by
demonstration (PbD). PbD creates a prototyping mechanism for algorithms using a combination of
physical and virtual objects.
What are Artificially Intelligent
Robots?
• Artificial intelligent robots connect AI with robotics. AI robots are
controlled by AI programs and use different AI technologies, such as
Machine learning, computer vision, RL learning, etc. Usually, most
robots are not AI robots, these robots are programmed to perform
repetitive series of movements, and they don't need any AI to
perform their task. However, these robots are limited in
functionality.
• AI algorithms are necessary when you want to allow the robot to
perform more complex tasks.
• A warehousing robot might use a path-finding algorithm to navigate
around the warehouse. A drone might use autonomous navigation
to return home when it is about to run out of battery. A self-driving
car might use a combination of AI algorithms to detect and avoid
potential hazards on the road. All these are the examples of
artificially intelligent robots.
What are the advantages of integrating
Artificial Intelligence into robotics?