Intelligent Systems

Download Report

Transcript Intelligent Systems

CS101 Introduction to Computing
Lecture 34
Intelligent Systems
1
During the last lecture …
(Graphics & Animation)
•
We became familiar with the role that
graphics and animations play in computing
•
We discussed how graphics & animation are
displayed
•
We also looked at several formats used for
storing graphics and animation
2
Computer Graphics
• Images created with the help of computers
• 2-D and 3-D (displayed on a 2-D screen but in
such a way that they give an illusion of depth)
• Used for scientific research, artistic expression,
or for industrial applications
• Graphics have made the computer interfaces
more intuitive by removing the need to
3
memorize commands
Displaying Images
• Most all computer displays consist of a grid of
tiny pixels arranged in a regular grid of rows
and columns
• Images are displayed by assigning different
colors to the pixels located in the desired
portion of the computer display
• Let’s discuss the pixel a bit more …
4
Pixel
• The smallest image forming element on a
computer display
• The computer display is made up of a regular
grid of these pixels
• The computer has the capability of assigning
any color to any of the individual pixels on the
display
• Let’s now see how the computer displays a
square
5
Pixel Colors (1)
• The color of each pixel is generally represented
in the form a triplet
• In a popular scheme – the RGB scheme – each
part of the triplet represents the intensity of one
of out of three primary colors: red, green, blue
• Often, the intensity of each color is represented
with a byte, resulting in 256x256x256 (16+
million) unique color combinations
6
Color Mapping (1)
• Instead of letting each pixel assume one out of
16 million possible colors, only a limited number
of colors – called the platelet – are allowed
• For example, the platelet may be restricted to
256 colors (requiring 1 byte/pixel instead of 3)
7
Dithering
• In this scheme, pixels of alternating colors are
used to simulate a color that is not present in
the platelet
• For example, red and green pixels can be
alternated to give the impression of bright
yellow
• The quality of the displayed image is poorer
8
Aliasing
• The computer screen consists of square-ish
pixels arranged in a fixed grid
• At times, when a diagonal line is drawn on this
grid, it looks more like a staircase, instead of a
straight line
• This effect – called aliasing – can be managed
by reducing the size of pixels
9
Anti-Aliasing (1)
• Anti-aliasing is another technique used for
managing the ‘staircase’ effect
• Let’s say that we need to draw a white straightline such that it overlaps 60% with one pixel,
and 40% with another initially, and near the
end, 58%, 41%, and 1%, respectively, with
three pixels
10
Vector or Object-Oriented Graphics
• Treats everything that is drawn as an object
• Objects retain their identity after they are drawn
• These objects can later be easily moved,
stretched, duplicated, deleted, etc
• Are resolution independent
• Relatively small file size
• Examples: swf, svg, wmf, ps
11
Bit-Mapped or Raster Graphics
• Treats everything that is drawn as a bit-map
• If an object is drawn on top of another, it is
difficult to move just one of them while leaving
the other untouched
• Changing the resolution often requires
considerable touch-up work
• Relatively large file size
• Examples: gif, jpg, bmp
12
3-D Graphics (1)
• Flat images enhanced to impart the illusion of
depth
• We perceive the world and the objects in it in 3D - breadth, width, depth - although the images
formed on the retinas of our eyes are 2-D
• The secret of 3-D perception: stereo vision
13
3-D Rendering
• The process of converting information about 3D objects into a bit-map that can be displayed
on a 2-D computer display
• Computationally, very expensive!
• Steps:
– Draw the wire-frame (skeleton, made with thin lines)
– Fill with colors, textures, patterns
14
– Add lighting effects (reflections, shadows)
Animation
• Graphics in motion, e.g. cartoons
• Illusion of motion is created by showing the
viewer a sequence of still images, rapidly
• Drawing those images - each slightly different
from the previous one - used to be quite tedious
work
• Computers have helped in cutting down some
15
of the tediousness
Tweening (2)
• This process of creating these in-between
images from key images is called in-betweening
(or tweening for short)
• The simplest algorithm for tweening calculates
the position of a particular segment of an image
by calculating the average of the positions of
that same image segment belonging to
adjacent key images
16
Today’s Goals:
(Intelligent Systems)
•
To become familiar with the distinguishing
features of intelligent systems with respect to
other software systems
•
To become able to appreciate the role of
intelligent systems in scientific, business and
consumer applications
•
To look at several techniques for designing
intelligent systems
17
(Artificial) Intelligent Systems
• SW programs or SW/HW systems designed to
perform complex tasks employing strategies
that mimic some aspect of human thought
• One can debate endlessly about whether a
certain system is intelligent or not
• But to my mind, the key criterion is evolution: it
is intelligent if it can learn (even if only a limited
sense) and get better with time
18
Not a Suitable Hammer for All Nails!
if the nature of computations required in a
task is not well understood
or there are too many exceptions to the
rules
or known algorithms are too complex or
inefficient
then AI has the potential of offering an
acceptable solution
19
Selected Applications
• Games: Chess, SimCity
• Image recognition
• Medical diagnosis
• Robots
• Business intelligence
20
Sub-Categories of AI
• Expert systems
– Systems that, in some limited sense, can
replace an expert
• Robotics
• Natural language processing
– Teaching computers to understand human
language, spoken as well as written
• Computer vision
21
Selected Techniques
• Artificial neural networks
• Genetic algorithms
• Rule-based systems
• Fuzzy logic
Many times, any one of them can solve the problem at
hand, but at others, only the right one will do. Therefore,
22
it is important to have some appreciation of them all
Neural Networks (1)
• Original inspiration was the human brain;
emphasis now on usefulness as a
computational tool
• Many useful NN paradigms, but scope of
today's discussion limited to the feed-forward
network, the most popular paradigm
23
Neural Networks (2)
• Feed-forward Network:
– It is a layered structure consisting of a number of
homogeneous and simple (but nonlinear)
processing elements
– All processing is local to a processing element and
is asynchronous
• During training the FN is forced to adjust its
parameters so that its response to input data
becomes closer to the desired response
24
Genetic Algorithms (1)
• Based on Darwin's evolutionary principle of
‘survival of the fittest’
• GAs require the ability to recognize a good
solution, but not how to get to that solution
25
Genetic Algorithms (2)
• The procedure:
– An initial set of random solutions is ranked in terms
of ability to solve the problem at hand
– The best solutions are then crossbred and mutated
to form a new set
– The ranking and formation of new solutions is
continued until a good enough solution is found or
…
26
Rulebased Systems (1)
• Based on the principles of the logical reasoning
ability of humans
• Components of an RBS:
– Rulebase
– Working memory
– Rule interpreter
27
Rulebased Systems (2)
• The design process:
– An RBS engineer interviews the expert to acquire
the comprehensive set of heuristics that covers the
situations that may occur in a given domain
– This set is then encoded in the form of IF-THEN
structures to form the required RBS
28
Fuzzy Logic (1)
• Based on the principles of the approximate
reasoning faculty that humans use when faced
with linguistic ambiguity
• The inputs and outputs of a fuzzy system are
precise, only the reasoning is approximate
29
Fuzzy Logic (2)
• Parts of the knowledgebase of a fuzzy system:
– Fuzzy rules
– Fuzzy sets
• The output of a fuzzy system is computed by
using:
– The MIN-MAX technique for combining fuzzy rules
– The centroid method for defuzzification
30
Now we know about a few techniques
Let’s now consider the situation when we
are given a particular problem and asked
to find an AI solution to that problem.
How do we determine the right technique
for that particular problem?
31
Selection of an Appropriate AI Technique
• A given problem can be solved in several ways
• Even if 2 techniques produce solutions of a
similar quality, matching the right technique to a
problem can save on time & resources
• Characteristics of an optimal technique:
– The solution contains all of the required information
– The solution meets all other necessary criteria
– The solution uses all of the available (useful)
knowledge
32
How do we determine the
suitability of a particular AI
technique for a given task
We look at the task’s requirements and then
see which technique fulfils those requirements
more completely – the one which does, is the
one we use!
Here are a few aspects of the task and the
techniques that we need to be aware off …
33
• Accuracy
• Explainability
• Response speed
• Scalability
• Compactness
• Flexibility
• Learning curve
• Tolerance for complexity
• Embedability
• Tolerance for noise in data
• Ease of use
• Tolerance for sparse data
• Independence from experts
• Development speed
• Computing ease
34
in action!
35
Credit Card Issuance (1)
• Challenge. Increase the acceptance rate of
card applicants who will turn out to be good
credit risks
• Inputs. Applicant's personal and financial
profiles
• Output. Estimated yearly loss if application is
accepted
36
Credit Card Issuance (2)
• Expert knowledge. Some rules of thumb are
available
• Data. Profiles & loss data available for 1+
million applicants
• Suitable technique?
37
Determination of the Optimal Drug Dosage (1)
• Challenge. Warn the physician if she prescribes
a dosage which is either too high or too low
• Inputs. Patient's medical record.
Pharmaceutical drug dosage instructions
• Output. Warning along with reasons for the
warning
38
Determination of the Optimal Drug Dosage (2)
• Data. Medical records of thousands of patients.
Drug dosage instructions on dozens of
medicines
• Suitable technique?
39
Prediction of Airline Cabin Crew's Preferences (1)
• Challenge. Predict the future base/status
preferences of the cabin crew of an airline. The
predicted preferences will be used by the airline
for forecasting its staffing and training
requirements
• Inputs. Crew's personal profiles. Preference
history. Other data.
• Output. Predicted preference card for a date
one year in the future
40
Prediction of Airline Cabin Crew's Preferences (2)
• Expert knowledge. Some rules of thumb are
available
• Data. Available for the last four years for 8000
crew members
• Suitable technique?
41
The Right Technique
• Selection of the right AI technique requires
intimate knowledge about the problem as well
as the techniques under consideration
• Real problems may require a combination of
techniques (AI and/or nonAI) for an optimal
solution
42
A few more areas of AI
applications
43
Robotics
• Automatic machines that perform various tasks
that were previously done by humans
• Example:
– Pilot-less combat airplanes
– Land-mine hunters
– Autonomous vacuum-cleaners
• Components: Body structure, actuators, powersource, sensors, controller (the AI-based part)
44
Autonomous Web Agents (1)
• Also known as mobile agents, softbots
• Computer program that performs various
actions continuously, autonomously on behalf of
their principal!
• Key component of the Semantic Web of
tomorrow
45
Autonomous Web Agents (2)
• Multi-agent communities are being developed in
which agents meet and represent the interests
of their principals in negotiations or
collaborations. Example:
– Agents of a patient and a doctor get together to
negotiate and select a mutually agreeable time,
cost
46
Decision Support Systems
• Interactive software designed to improve the
decision-making capability of their users
• Utilize historical data, models to solve problems
• The do not make decisions - just assist in the
process
• They provide decision-makers with information
via easy to manage reports, what-if scenarios,
47
and graphics
The Future?
• Get ready to see robots playing a bigger role in
our daily lives
– Robots will gradually move out of the industrial
world and into our daily life, similar to the way
computers did in the 80’s
• Decision support systems will become a bigger
part of the professional life of doctors,
managers, marketers, etc
• Autonomous land, air, sea vehicles controlled
48
from 1000’s of miles away from the war zone
Today’s Summary:
Intelligent Systems
•
We looked at the distinguishing features of
intelligent systems w.r.t. other software
systems
•
We looked at the role of intelligent systems in
scientific, business, consumer and other
applications
•
We discussed several techniques for
designing intelligent systems
49
Next Lecture:
(Data Management)
• To become familiar with the issues and
problems related to data-intensive computing
• To become able to appreciate data
management concepts and their evolution over
the years
50