“Having employed dozens of designers, I’ve never once taken into account a candidate’s academic qualification. I might take into account with design college, but I’m not swayed by the quality of degree.. I just know that too many good designers achieved poor grades at design school and it is always worth looking beyond academic marks.”
Adrian Shaughnessy
Definition of Scripts
Definition of Scripts
A causally coherent set of events.
1. Each event sets off, or causes, the next event.
2. The causal connections between events make sense.
3. The parts are actions or scenes in the world.
Restaurant Script
Script: restaurant
track: formal dining
props: tables, menu, check, money, F = food, P = place
roles: S = customer, W = waiter, C = cook, M = cashier, O = owner
entry: S is hungry, S has money
result: S has less money, O has more money, S is not hungry, S is pleased
scenes:
Thematic Role System
David went to the meeting with Ashok by car.
Thematic Role
verb : go
agent : David
coagent : Ashok
destination : meeting
conveyance : car
Prepositional Constraints
Preposition, Themantic Roles
by | agent, conveyance, location
for | beneficiary, duration
from | source
to | destination
with | coagent, instrument
e.g.
That was written by Ashok.
David went to New York by train
David stood by the statue.
formal logic
Why do we need formal logic?
Soundness: Only valid conclusions can be proven.
Completeness: All valid conclusions can be proven.
Vertebrate -> Bird -> Eagle, Bluebird, Penguin
If an animal has feathers, then it is a bird.
If an animal lays eggs and it files, then it is a bird.
Frame: How do we make sense of a sentence?
Ashok ate a frog.
subject: Ashok
object: a frog
time:
utensils:
object-alive: false
object-is: in-subject
subject-mood: happy
David ate a pizza at home:
subject: David
object: a pizza
time:
utensils:
object-alive: false
object-is: in-subject
subject-mood: happy
Angela ate lasagna with her dad last night at Olive Garden.
subject : Angela
object : lasagna
location : Olive Garden
time : night
utensils :
object-alive : false
object-is : in-subject
subject-mood : happy
Levels of Cognitive Architectures
Low Level <-> High Level
Hardware/Implementation Level(e.g. a brain, transister), Algrithm/Symbol Level(e.g. means-ends analysis, semantic networks), Task/Knowledge Level(e.g. selecting a pitch, playing baseball)
The layers of Watson: the physical computer searching and decision-making answering the inputted clue
Assumptions of a Cognitive Architecture
– Goal-oriented
– Rich, complex envrionment
– Significant knowledge
– Symbols and abstractions
– Flexible and function of the environment
– Learning
Architecture + Content = Behavior
Function for cognitive architectures: f:P* -> A
Percepts -> Action
SOAR
Procedural, Semantic, Episodic
-> Working Memory
Semantic Networks
A:B
x -> x :unchanged
y -> y :expanded
z -> z :deleted
lexically: nodes
structurally: directional links
semantically: application specific labels
Guards and prisonaers
similarity weight
5point for unchanged, 4 for reflected, 3 for rotated, 2 for scaled, 1 for deleted, 0 for shape changed
Fundamental Conundrums of Artificial Intelligence
-intelligent agents have limited resources
-computation is local, but problems have global constraints
-logic is deductive, but many problems are not
-The world is dynamic, but knowledge is limited
-Problem solving, reasoning, and learning are complex, but explanation and justification are even more complex
Characteristics of AI Agents
-Agent have limited computing power
-Agent have limited sensors
-Agent have limited attention
-Computational logic is fundamentally deductive
-AI agents’ knowledge is incomplete relative to the world
input ->
Cognitive System
Metacognition
Deliberation:Reasoning, Learning, Memory
Reaction
-> output
Foundation
machine learning, semantic web, airplane autopilot, improvisational robots
Java Unit Testing
apply plugin: 'java'
repositories {
mavenCentral()
}
dependencies {
testCompile 'junit:junit:4.11'
}
[vagrant@localhost ud867]$ gradle test :compileJava UP-TO-DATE :processResources UP-TO-DATE :classes UP-TO-DATE :compileTestJava UP-TO-DATE :processTestResources UP-TO-DATE :testClasses UP-TO-DATE :test UP-TO-DATE BUILD SUCCESSFUL Total time: 7.617 secs
Dependency Reports
apply plugin: 'java'
repositories {
mavenCentral()
}
dependencies {
compile 'org.springframework:spring-core:4.1.1.RELEASE'
}
[vagrant@localhost ud867]$ gradle dependencies
:dependencies
------------------------------------------------------------
Root project
------------------------------------------------------------
archives - Configuration for archive artifacts.
No dependencies
compile - Compile classpath for source set 'main'.
Download http://repo1.maven.org/maven2/org/springframework/spring-core/4.1.1.RELEASE/spring-core-4.1.1.RELEASE.pom
Download http://repo1.maven.org/maven2/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.pom
Download http://repo1.maven.org/maven2/org/apache/commons/commons-parent/28/commons-parent-28.pom
Download http://repo1.maven.org/maven2/org/apache/apache/13/apache-13.pom
\--- org.springframework:spring-core:4.1.1.RELEASE
\--- commons-logging:commons-logging:1.1.3
default - Configuration for default artifacts.
\--- org.springframework:spring-core:4.1.1.RELEASE
\--- commons-logging:commons-logging:1.1.3
runtime - Runtime classpath for source set 'main'.
\--- org.springframework:spring-core:4.1.1.RELEASE
\--- commons-logging:commons-logging:1.1.3
testCompile - Compile classpath for source set 'test'.
\--- org.springframework:spring-core:4.1.1.RELEASE
\--- commons-logging:commons-logging:1.1.3
testRuntime - Runtime classpath for source set 'test'.
\--- org.springframework:spring-core:4.1.1.RELEASE
\--- commons-logging:commons-logging:1.1.3
BUILD SUCCESSFUL
Total time: 12.807 secs
$ gradle dependencies –configuration runtime
$ gradle dependencyInsight –dependency commons-logging
apply plugin: 'java'
repositories {
mavenCentral()
}
dependencies {
compile 'commons-logging:commons-logging:1.1.3'
testCompile 'junit:junit:4.11'
}
[vagrant@localhost ud867]$ gradle dependencies
:dependencies
------------------------------------------------------------
Root project
------------------------------------------------------------
archives - Configuration for archive artifacts.
No dependencies
compile - Compile classpath for source set 'main'.
\--- commons-logging:commons-logging:1.1.3
default - Configuration for default artifacts.
\--- commons-logging:commons-logging:1.1.3
runtime - Runtime classpath for source set 'main'.
\--- commons-logging:commons-logging:1.1.3
testCompile - Compile classpath for source set 'test'.
Download http://repo1.maven.org/maven2/junit/junit/4.11/junit-4.11.pom
Download http://repo1.maven.org/maven2/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.pom
Download http://repo1.maven.org/maven2/org/hamcrest/hamcrest-parent/1.3/hamcrest-parent-1.3.pom
+--- commons-logging:commons-logging:1.1.3
\--- junit:junit:4.11
\--- org.hamcrest:hamcrest-core:1.3
testRuntime - Runtime classpath for source set 'test'.
+--- commons-logging:commons-logging:1.1.3
\--- junit:junit:4.11
\--- org.hamcrest:hamcrest-core:1.3
BUILD SUCCESSFUL
Total time: 10.61 secs