cs101- introduction to computing- lecture 34
TRANSCRIPT
![Page 1: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/1.jpg)
1
CS101 Introduction to Computing
Lecture 34Intelligent Systems
![Page 2: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/2.jpg)
2
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
![Page 3: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/3.jpg)
3
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 memorize commands
![Page 4: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/4.jpg)
4
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 …
![Page 5: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/5.jpg)
5
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
![Page 6: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/6.jpg)
6
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
![Page 7: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/7.jpg)
7
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)
![Page 8: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/8.jpg)
8
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
![Page 9: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/9.jpg)
9
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
![Page 10: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/10.jpg)
10
Anti-Aliasing (1)
• Anti-aliasing is another technique used for managing the ‘staircase’ effect
• Let’s say that we need to draw a white straight-line 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
![Page 11: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/11.jpg)
11
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
![Page 12: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/12.jpg)
12
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
![Page 13: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/13.jpg)
13
3-D Graphics (1)
• Flat images enhanced to impart the illusion of depth
• We perceive the world and the objects in it in 3-D - breadth, width, depth - although the images formed on the retinas of our eyes are 2-D
• The secret of 3-D perception: stereo vision
![Page 14: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/14.jpg)
14
3-D Rendering
• The process of converting information about 3-D 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– Add lighting effects (reflections, shadows)
![Page 15: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/15.jpg)
15
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 of the tediousness
![Page 16: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/16.jpg)
16
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
![Page 17: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/17.jpg)
17
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
![Page 18: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/18.jpg)
18
(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
![Page 19: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/19.jpg)
19
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
![Page 20: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/20.jpg)
20
Selected Applications
• Games: Chess, SimCity
• Image recognition
• Medical diagnosis
• Robots
• Business intelligence
![Page 21: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/21.jpg)
21
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
![Page 22: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/22.jpg)
22
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, it is important to have some appreciation of them all
![Page 23: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/23.jpg)
23
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
![Page 24: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/24.jpg)
24
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
![Page 25: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/25.jpg)
25
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
![Page 26: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/26.jpg)
26
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 cross bred and mutated to form a new set
– The ranking and formation of new solutions is continued until a good enough solution is found or …
![Page 27: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/27.jpg)
27
Rule based Systems (1)
• Based on the principles of the logical reasoning ability of humans
• Components of an RBS: – Rule base – Working memory – Rule interpreter
![Page 28: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/28.jpg)
28
Rule based 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
![Page 29: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/29.jpg)
29
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
![Page 30: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/30.jpg)
30
Fuzzy Logic (2)
• Parts of the knowledge base 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
![Page 31: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/31.jpg)
31
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?
![Page 32: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/32.jpg)
32
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
![Page 33: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/33.jpg)
33
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 …
![Page 34: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/34.jpg)
34
• Accuracy • Explainability • Response speed • Scalability • Compactness • Flexibility • Embedability • Ease of use
• Learning curve
• Tolerance for complexity
• Tolerance for noise in data
• Tolerance for sparse data
• Independence from experts
• Development speed
• Computing ease
![Page 35: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/35.jpg)
35aiaiin action!
![Page 36: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/36.jpg)
36
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
![Page 37: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/37.jpg)
37
Credit Card Issuance (2)
• Expert knowledge. Some rules of thumb are available
• Data. Profiles & loss data available for 1+ million applicants
• Suitable technique?
![Page 38: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/38.jpg)
38
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
![Page 39: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/39.jpg)
39
Determination of the Optimal Drug Dosage (2)
• Data. Medical records of thousands of patients. Drug dosage instructions on dozens of medicines
• Suitable technique?
![Page 40: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/40.jpg)
40
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
![Page 41: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/41.jpg)
41
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?
![Page 42: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/42.jpg)
42
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 non AI) for an optimal solution
![Page 43: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/43.jpg)
43
A few more areas of AI applications
![Page 44: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/44.jpg)
44
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, power-source, sensors, controller (the AI-based part)
![Page 45: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/45.jpg)
45
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
![Page 46: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/46.jpg)
46
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
![Page 47: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/47.jpg)
47
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, and graphics
![Page 48: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/48.jpg)
48
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 from 1000’s of miles away from the war zone
![Page 49: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/49.jpg)
49
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
![Page 50: CS101- Introduction to Computing- Lecture 34](https://reader035.vdocument.in/reader035/viewer/2022070600/58ec83a61a28abcb528b46d7/html5/thumbnails/50.jpg)
50
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