notes for cs3310 artificial intelligence part 1: overview prof. neil c. rowe naval postgraduate...
TRANSCRIPT
![Page 1: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/1.jpg)
Notes for CS3310 Artificial Intelligence
Part 1: Overview
Prof. Neil C. Rowe Naval Postgraduate School
Version of January 2009
![Page 2: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/2.jpg)
Artificial intelligence = Software that acts intelligently
• AI (artificial intelligence) centers on methods using booleans, conditionals, and logical reasoning, with numbers used as needed.
• AI software need not work like people do, but people can provide clues as to methods. Aircraft don't fly by imitating birds; weapons can be more powerful than the human arm.
• AI means deep (not superficial) understanding of how to do something (e.g. language understanding versus table lookup). Example: Query "picture of west wing of white house" for Google.
![Page 3: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/3.jpg)
Artificial intelligence, continued
• AI will become increasingly common in the future, as computers do increasingly complex tasks -- but people will increasingly forget that it is artificial intelligence.
• Many developments in AI have been "exported" to other areas of computer science (e.g. object-oriented programming and data mining).
• AI programs that are too slow today may get used eventually as computers increase in speed (e.g. speech understanding).
• Synonyms: “intelligent systems”, “autonomous systems”
![Page 4: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/4.jpg)
What is AI good for?
AI is not precisely defined, but generally it’s for:• Problems needing "common sense", like recognizing
building types in aerial photos• Problems requiring many different kinds of knowledge,
like automatic translation of English text• Problems only a few experts can solve, like treating rare
diseases• Hard problems without any good known algorithms,
like mission planning for a large military operation, or playing chess
![Page 5: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/5.jpg)
Main subareas of artificial intelligence
inference CS3310 planning CS3310 expert systems CS3310, CS4322 neural networks EC4460 data mining CS4322, CS4315 natural language CS4317 computer vision CS4330 robotics CS4313 machine learning CS4315 cognitive science MV4100 distributed and social AI MV4015
![Page 6: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/6.jpg)
Computer Science’s Autonomous Systems Track
• CS3310, Artificial Intelligence • CS4313, Robotics (offered in Summer quarter)• CS4315, Learning Systems and Data Mining (offered in
Winter)• CS4317, Language Systems (offered in Spring)• CS4330, Introduction to Computer Vision (offered in Fall)• MV4100, Cognitive Engineering (offered in Fall)• Other relevant courses: CS4322 (Internet Information
Systems), CS4130 (Wireless Mobile Computing), MV4015 (Agent-Based Autonomous Behavior for Simulations), EC4460 (Neural Networks), and several Operations Research courses
![Page 7: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/7.jpg)
Some history of artificial intelligence
• 1950s: The first programs– first speculation about AI– game-playing– heuristic search methods
• 1960s: Major progress– Lisp programming language– Development of symbolic reasoning methods
using logical constraints– The first natural language and vision programs
![Page 8: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/8.jpg)
• 1970s: Many successes– Developments on many fronts– Appearance of expert systems– Prolog programming language and various
other AI software– Symbolic learning is popular
• 1980s: Faddishness– Suddenly AI is faddish and gets much media
coverage– Lots of AI startup companies, most fail– Lots of standalone AI applications, lots of
expert systems– Neural networks become popular
![Page 9: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/9.jpg)
• 1990s: Maturity of AI– AI no longer a fad, but used more than ever (e.g.
the Web)– AI is embedded in larger systems (like on the
Web and in simulations)– Genetic algorithms and artificial life are popular– Statistical language processing is popular,
including speech understanding
• 2000s: AI is back in fashion– Data mining is popular– Simulations and games using AI are popular
![Page 10: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/10.jpg)
Example AI applications today (1)
• Tax preparation software• Detection of credit-card fraud• Intrusion detection software for firewall
machines• M1 tank engine diagnosis• Automated assistance to medics in remote sites• Tailored automobile repair instructions at
dealers
![Page 11: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/11.jpg)
Example AI applications today (2)
• Summarizing terrorism reports from a newswire
• Summarizing routine managerial data• Summarizing sensor data during warfare• Content-based Web search engines• Scheduling of aerial medical evacuation• Automatic distributed meeting scheduling• Planning for customized product
configurations like for computers
![Page 12: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/12.jpg)
Example AI applications today (3)
• Detecting changes to buildings in aerial photographs
• Automatic translation of European government documents
• Home-vacuuming robot• Guidance for autonomous vehicles• Automated intelligent pilots for combat
simulation
![Page 13: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/13.jpg)
Programming for artificial intelligence
• Use language Lisp or Prolog, both designed for AI. They are standardized. But they aren’t too much different from conventional languages.
• Use an AI software package. CLIPS is a popular standalone system, JESS is a popular Java package, and there are neural-network packages. But it may not do everything you need, and transportability is a problem.
• Write your own AI software in a conventional language. This is the most popular approach today.
![Page 14: Notes for CS3310 Artificial Intelligence Part 1: Overview Prof. Neil C. Rowe Naval Postgraduate School Version of January 2009](https://reader036.vdocuments.us/reader036/viewer/2022072011/56649e165503460f94b01174/html5/thumbnails/14.jpg)
Key difficulties in doing AI
• Successes get exported, and people forget the ideas came from AI.
• Thorough testing is necessary to show an AI system works. Don't trust quick demos.
• Methods that cannot be tested easily (e.g. genetic algorithms and fuzzy sets) tend to be overvalued because people cannot see when they're wrong. Methods that can show obvious errors (e.g. logical inferences) tend to be undervalued.