Download Artificial Intelligence (AI): Trying to Get Computers to Think Like Us

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Concept learning wikipedia , lookup

Turing test wikipedia , lookup

Human–computer interaction wikipedia , lookup

Embodied cognitive science wikipedia , lookup

Visual Turing Test wikipedia , lookup

Pattern recognition wikipedia , lookup

Intelligence explosion wikipedia , lookup

Stemming wikipedia , lookup

Formal concept analysis wikipedia , lookup

Existential risk from artificial general intelligence wikipedia , lookup

AI winter wikipedia , lookup

Neural modeling fields wikipedia , lookup

Ethics of artificial intelligence wikipedia , lookup

Genetic algorithm wikipedia , lookup

Philosophy of artificial intelligence wikipedia , lookup

History of artificial intelligence wikipedia , lookup

Type-2 fuzzy sets and systems wikipedia , lookup

Fuzzy concept wikipedia , lookup

Fuzzy logic wikipedia , lookup

Transcript
Artificial Intelligence (AI):
Trying to Get Computers to
Think Like Us
Stephany Coffman-Wolph, PhD
West Virginia University Institute of Technology (WVU Tech)
Assistant Professor, Dept. of Computer Science & Information Systems
Quick Intro on Me
Assistant Professor, WVU Tech, Department of Computer Science and
Information Systems
Founding member and current co-faculty advisor of AWESOME (Association of
Women Engineers, Scientists, Or Mathematician Empowerment)
PhD from Western Michigan University, Kalamazoo MI
MS from Bowling Green State University, Bowling Green OH
BSE from University of Michigan, Ann Arbor MI
Dissertation Title: “Fuzzy Search Strategy Generation for Adversarial Systems
Using Fuzzy Process Particle Swarm Optimization, Fuzzy Patterns, and a
Hunch Factor”
Master’s Project: “Predicting Future Class Enrollment Using Neural Networks
and other Methods”
Abstract
AI is a field older than most realize – the term was coined in
the mid 1950s. The field is comprised of many subfields but
the main focus is on building intelligent entities. In order to
achieve this goal many subcomponents need to be built,
including methods for assisting computers to think like
humans. Fuzzy logic is one mathematical method of doing
so.
This talk will briefly introduce both AI and fuzzy logic, as well
as discuss the application of fuzzy logic into algorithms to
encompass more human-like decision processes. Adding a
“hunch-like” element can further enhance an algorithm’s
ability to mimic human decision making.
What I Am Going to
Talk About?
Brief Introduction to AI and the Turing Test
Brief Introduction to Fuzzy Logic
Framework for Creating Fuzzy Algorithms
The Hunch Factor
Applications of Fuzzy Algorithms and Future Work
The First Electronic Computers
Created in the late 1930s and early 1940s during World War 2 (Pictured ENIAC)
Artificial Intelligence (AI)
Artificial Intelligence
Movies and TV Shows
Facts on AI
Artificial Intelligence is a multifaceted field focused
on mimicking human behavior/mannerisms using
computer algorithms
AI attempts to both understand how we think and
how to build intelligent entities
AI became a field soon after World War II
The term “Artificial Intelligence” was coined in the
1950s
4
Categories
of Artificial
Intelligence
Thinking
Humanly
Thinking
Rationally
Acting
Humanly
Acting
Rationally
Alan Turing
Subject of the Film: The Imitation Game & Played by Benedict Cumberbatch
Acting Humanly: The
Turing Test
Proposed by Alan Turing in the 1950s
Designed to provide an operational definition of
machine intelligence
The basics of the test:
A human interrogator poses written questions. If
the interrogator cannot distinguish between the
written responses of a human or a computer then we consider the computer to be intelligent
The Total Turing Test
Note: the original avoided physical simulation of a
human
This version includes a video signal so that the
interrogator can test the subject’s perceptual
abilities
Also this version allows the interrogator to “give”
the test subject physical objects
The 6 Disciplines of AI
Between the two Turing Test versions, it was determined that to be considered
intelligent, the computer would need 6 capabilities - each became a
discipline/area of AI
1. Natural language processing: ability to communicate
2. Knowledge representation: store what it knows/hears
3. Automated reasoning: use stored information to answer questions and draw
new conclusions
4. Machine learning: adapt to new circumstances and detect/extrapolate
patterns
5. Computer vision: perceive objects
6. Robotics: manipulate objects and move
The 6 Disciplines of AI
My personal research focuses on 3 of the 6
1. Natural language processing: ability to communicate
2. Knowledge representation: store what it knows/hears
3. Automated reasoning: use stored information to answer
questions and draw new conclusions
4. Machine learning: adapt to new circumstances and
detect/extrapolate patterns
5. Computer vision: perceive objects
6. Robotics: manipulate objects and move
What is Fuzzy Logic?
Fuzzy
Logic
Introduced in the 1960s
by L. Zadeh as an
expansion of Boolean
logic
Fuzzy Logic Defined
Extremely popular in control systems (e.g., toasters,
high-speed train controls, camera filters)
A set of rules and techniques for dealing with logic
beyond a two-value (yes/no, on/off, true/false) system
An abstraction of two-value logic designed to mimic a
more human like approach to decision making
Allows for not only multiple values but also an overlap
of values between fuzzy sets
Fuzzy Logic
=
Degrees or
Ranges of Values
Membership Functions
Membership functions are used to represent the degree of membership an element has to a Fuzzy set and the
values range from 0 to 1.
0 represents not in the set
1 represents entirely in the set
Numbers between 0 and 1 represent some level of being part of the set
Fuzzification
Fuzzification
A method of adding abstraction to data, operators, or a concept
Fuzzification of data is the process of taking “raw”/non-fuzzy data and
converting it into fuzzy data
Fuzzification of operators is the process of converting a mathematical,
logical, or comparative operator to its fuzzy counterpart, which
operates on fuzzy sets instead of pure numbers
Fuzzification of concepts, the most difficult of the three, is the
conversion of an idea into a corresponding fuzzy version
These three techniques, together, can be used within my framework to
create a fuzzy algorithm
Fuzzy Algorithm
Fuzzy Algorithm
A fuzzy algorithm goes beyond simply fuzzy data and includes
fuzzified operators and/or concepts within the algorithm
It is trickier to determine if the algorithm is fuzzy when only the
operators have been fuzzified because of the fine line between an
operator and a fuzzy operator – even when operating on fuzzy data
A fuzzy operator is differentiated from the basic operator by being
re-written to accommodate the meaning of the fuzzy data
A fuzzy operator operates on fuzzy sets (not straight numbers)
When the algorithm is modified to include a fuzzy concept, the
algorithm is undeniable a fuzzy algorithm
Fuzzification of
Concept
Fuzzification of a concept is the most challenging of the 3 presented
mainly because a concept can be difficult to define
Concept = an essential element from the algorithm
Like the fuzzification of data or an operator, the purpose is to create an
abstract version of the non-fuzzy “concept”
Fuzzification of concepts allows for more human-like decisions and
algorithm processing
Humans fuzzify concepts without even thinking about it. The human
brain categorizes & sees connections between items easily.
(Computers fundamentally operate on a No/Yes, False/True, 0/1 level)
Example: Fuzzification
of Sorting
A common algorithm is the sorting of a list into alphabetical or numerical order
Example Grocery List: bananas, crackers, grapes, potatoes, cheese,
apples, pretzels, and powdered sugar
Sorted Alphabetical: apples, bananas, cheese, crackers, grapes, potatoes,
powdered sugar, and pretzels
We can fuzzify the concept of a sorted list by defining a fuzzy sorted list:
Contains all the elements in the original list (no lost of information)
Sorting is not completely alphabetical – just by the first letter (i.e., grouping
the items together by the 26 letters in the alphabet)
Fuzzy Sorted List: apples, bananas, crackers, cheese, grapes, potatoes,
pretzels, and powdered sugar
The Hunch Factor
The Hunch Factor
Mathematical attempt at mimicking
the human internal intuitive
decision process
Supplies a human “hunch-like”
element into the decisionmaking processes of an
algorithm
Acts as a fuzzy learning
component and is continually
altered during algorithm execution
Also provides memory for the
algorithm
The Hunch Factor is stored
as a fuzzy value and, thus,
represented by a
membership function
The Hunch Factor:
How It Works
Guessing well → the hunch factor
“encourages” continued behaviors
Guessing poorly → the hunch factor
“influences” the system to try a
different area of the solution space
The hunch Factor changes based on
observed information and can be
manipulated in various ways
Height Increase, Width Decrease
→ More Confidence
Height decrease, Width Increase
→ Less Confidence
Applications and Future
Work
Successful
Applications:
Fuzzy Process Particle Swarm Optimization (FP2SO) (with and without the
hunch)
Fuzzy Patterns Based Approach for Environment Analysis in Adversarial
Games
Fuzzy Search Strategy Generation for Adversarial Systems Using Fuzzy
Process Particle Swarm Optimization, Fuzzy Patterns, and a Hunch Factor
Fuzzification of the Special Simplex Method for the Transportation Problem
Fuzzification of the Golden Ratio Search (and preliminary research on other
search algorithms)
Fuzzification of Simple Sorting Algorithms
Results and Key
Observations
A fuzzy algorithm:
Often performs better than the traditional algorithm
because it takes advantage of the quickness of integer
calculations over double-precision calculations
Finds multiple “good enough” solutions within a
controllable range faster than the traditional algorithms
Is useful when the end user would prefer several
similar answers to select from and not just one answer
Future Work:
Questions to be
Answered
Continue exploration into the use of Fuzzy Algorithms
What algorithms benefit from being made fuzzy and how can the
gains be measured?
What algorithm characteristics make it a good candidate for
becoming a fuzzy algorithm?
How do these characteristics impact the solution of a problem when
a fuzzy algorithm is used to solve it?
Refining and further investigation into the Hunch Factor
What membership functions work best? In what situations does it
work best? What manipulation works best? etc.
Picture Citations
(in order of appearance)
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
https://www.technologyreview.com/s/601519/how-to-create-a-malevolent-artificial-intelligence/
https://fahmirahman.wordpress.com/2011/04/19/the-history-of-the-eniac-computer/
https://en.wikipedia.org/wiki/ENIAC
http://themadraspost.blogspot.com/2014/02/unknown-electronic-do-you-know-which-is.html
http://www.computerhistory.org/revolution/birth-of-the-computer/4/78
http://www.columbia.edu/cu/computinghistory/eniac.html
http://www.phillyvoice.com/70-years-ago-six-philly-women-eniac-digital-computer-programmers/
http://www.fanpop.com/clubs/star-trek-the-next-generation/images/31158790/title/data-wallpaper
http://www.dailymail.co.uk/tvshowbiz/article-2762469/Anthony-Daniels-reveals-initially-refused-playC-3PO-voice-role-new-Star-Wars-movie.html
https://s-media-cacheak0.pinimg.com/originals/28/91/aa/2891aa51b8fbb124a1478ae03a8008aa.jpg
http://coralis101.deviantart.com/art/Wall-E-and-EVE-Icons-97034881
http://also.kottke.org/misc/images/super-toy-teddy.jpg
https://www.cloudynights.com/uploads/profile/photo-224707.jpg?_r=0
https://www.mathworks.com/company/newsletters/articles/alan-turing-and-hisconnections-to-matlab.html
http://www.impawards.com/2014/imitation_game_ver6.html
http://zadeh.narod.ru/Lotfi_Zadeh_L.jpg