intelligent systems programming right from the start with visual basic.net 1/e 15

33
Intelligent Systems Programming Right from the Start with Visual Basic .NET 1/e 15

Upload: cody-townsend

Post on 18-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

IntelligentSystems

Programming Right from the Start with Visual Basic .NET 1/e

15

Page 2: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 2

Objectives

• Describe the basic concepts of an intelligent system

• Give examples of how intelligent systems have been used in business

• Explain how heuristics can be used to represent problem-solving knowledge

Page 3: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 3

Objectives (cont.)

• Explain how machine learning can occur through feedback

• Develop applications that exhibit multiple types of intelligence behavior

Page 4: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 4

15-1 Living in theInformation Age

• The information age has its challenges, not the least of which is information overload.

• Computing technology plays a key role in the information age.

• Computing technology can support intelligent systems (or knowledge systems) that focus on the processing and production of knowledge.

Page 5: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 5

15-2 Intelligent Systems

• From a computing perspective, data refers to numbers, characters, or images without context.

• When data is processed in a context, it becomes information.

• As information is collected, it also can be processed for patterns and insights, creating knowledge.

Page 6: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 6

15-2 Intelligent Systems (cont.)

• An intelligent system extends the traditional computing function to include the acquisition and application of knowledge.

Page 7: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 7

15-3 The Role of Knowledge

• A computer program is a solution to a problem.

• A computer program may be considered intelligent if its problem-solving activity involves the identification and application of appropriate knowledge.

Page 8: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 8

Mutilated CheckerboardProblem

• Problem solving requires relevant knowledge, but what knowledge is relevant can change from problem to problem.

• The simple fact that the wood area is greater than the checkerboard area is the relevant knowledge that makes it easy to solve this problem.

Page 9: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 9

The Revised Mutilated Checkerboard Problem

• You cannot cover the mutilated checkerboard with 31 dominoes.

• Proving that it cannot be done requires the correct use of essential knowledge.

Page 10: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 10

15-4 Heuristics

• One approach to capturing and using knowledge is through heuristics.

• A heuristic is a knowledge rule based on experience.

• Heuristics can be used by intelligent systems to guide the discovery process.

Page 11: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 11

15-4 Heuristics (cont.)

• Heuristics may be general-purpose or domain-specific.

• General-purpose heuristics often sound like common sense.

• Domain-specific heuristics sound like rules or strategies that are problem-specific.

Page 12: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 12

Using Heuristics toSolve Problems

• Heuristics can be used to guide problem-solving behavior and are most applicable to problems that can be viewed in terms of actions and states.

• The well-defined nature of games makes them a natural testing ground for intelligent systems.

Page 13: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 13

Using Heuristics toSolve Problems (cont.)

Page 14: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 14

Using Heuristics toSolve Problems (cont.)

• One example of how heuristics can be used to support problem solving is a heuristic function.

• A heuristic function returns a value based on heuristic knowledge.

• The value returned is a measure of the goodness of a state during problem solving.

Page 15: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 15

Solution for HeuristicTic-Tac-Toe

Page 16: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 16

How the HeuristicProgram Works

Page 17: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 17

How the HeuristicProgram Works (cont.)

Page 18: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 18

How the HeuristicProgram Works (cont.)

Page 19: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 19

How the HeuristicProgram Works (cont.)

Page 20: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 20

15-5 Learning

• Learning involves a modification of behavior based on experience.

• Systems that learn are commonly classified as intelligent systems.

Page 21: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 21

Menace

• B. F. Skinner was instrumental in establishing theories of positive and negative reinforcements and their effects on learning complex actions.

• A Skinner Box is a self-contained device that typically has one or more levers that an animal can press and one or more means of positive and negative reinforcement.

Page 22: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 22

Menace (cont.)

• Positive and negative reinforcement learning can be applied to nonliving systems.

• In 1960 Donald Michie designed MENACE, the Matchbox Educable Noughts and Crosses Engine, a collection of matchboxes that learned to play a skilled game of tic-tac-toe.

Page 23: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 23

Menace (cont.)

• MENACE was a pioneering experiment in machine learning, demonstrating that a nonliving system could modify its behavior based on positive and negative reinforcement.

• MENACE did not involve a computer.

Page 24: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 24

Design for MLearning Program

• Michie’s experiment can be repeated in software by using variables and arrays in place of beads and matchboxes.

• The MLearning Program involves increasing or decreasing token values.

Page 25: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 25

Implementation of MLearning

Page 26: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 26

How the MLearningProgram Works

Page 27: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 27

How the MLearningProgram Works (cont.)

Page 28: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 28

How the MLearningProgram Works (cont.)

Page 29: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 29

How the MLearningProgram Works (cont.)

• Based only on positive and negative feedback, the MLearning program will develop behavior that includes blocking its opponent and avoiding moves that would later result in the opponent having simultaneous winning moves.

Page 30: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 30

Chapter Summary

• Information overload refers to the overwhelming amount of information available to individuals in the modern information age.

• Computing technology has added to the problem of information overload, but it can also help address the problem through intelligent systems.

Page 31: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 31

Chapter Summary (cont.)

• Knowledge is essential to intelligence.

• One approach to capturing and using knowledge is through heuristics.

• A heuristic function returns a value based on heuristic knowledge.

Page 32: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

Crews/Murphy – Programming Right from the Start with Visual Basic.NET 1/e – ©2004 Prentice Hall 32

Chapter Summary (cont.)

• Learning is a modification of behavior based on experience and is another element of intelligent systems.

• A computing system can be constructed that performs trial-and-error learning based on positive and negative reinforcement.

Page 33: Intelligent Systems Programming Right from the Start with Visual Basic.NET 1/e 15

IntelligentSystems

Programming Right from the Start with Visual Basic .NET 1/e

15