A Theory of Semantic Relevance Exemplified through

advertisement
Employing Cognitive Calculus for
Determinations of Relevance in NLU
Daniel Arista, Matthew Peveler,
Rikhiya Ghosh, Selmer Bringsjord, & Paul Bello
{aristd, pevelm, ghoshr3, selmer}@rpi.edu, paul.bello@nrl.navy.mil
Presentation Outline
Part I : A Use Case & the NLU Challenge it Presents
Part II : One Theory of Conditional Reasoning
Part III : The Cognitive Calculus Approach
Part IV : Implementation Details
Part V : Technology Demonstration
Part I
A Use Case & the NLU
Challenge it Presents
Use Case
MedBot’s mission is to “identify
and transport casualties”
Human/Robot Interaction Use Case
Commander1 at t0:
“If you need a MedEvac, it’s at location ECHO!"
MedBot at t1:
“Copy."
Commander2 at t2:
“MedBot, do you know where the MedEvac is?“
How should MedBot answer at t3?
Where would he transport a casualty to?
Human/Robot Interaction Use Case
“If you need it, the MedEvac is
at location ECHO!"
Interpret as a conditional
or a ‘relevant’ fact?
Part II
One Theory of
Conditional Reasoning
The Mental Model Theory of Deductive Reasoning
Phillip Johnson-Laird (1975)
Mental Models of Conditionals
Johnson-Laird, Byrne (2002)
Modulating Meaning of Conditionals
The principle of semantic modulation: The meanings of the
antecedent and consequent, and coreferential links between these
two clauses, can add information to models…
The principle of pragmatic modulation: The context of a conditional
depends on general knowledge in long-term memory and
knowledge of the specific circumstances of its utterance.
Johnson-Laird, Byrne (2002)
Semantic Relevance
Ten Sets of Possibilities for Interpreting Conditionals
The relevance interpretation. Content or context precludes the
possibility in the conditional interpretation in which the
consequent does not occur. Typical examples occur when the
antecedent asserts merely a condition to which the consequent may be
relevant, for example, “If you are interested in Vertigo, then it is on TV
tonight.” Individuals know that the antecedent possibility has no bearing
on the occurrence of the consequent, and so the consequent holds in
any case…
Johnson-Laird, Byrne (2002)
The Effect of Modulation
… is logically equivalent to c, the consequent
MMT Shortcomings
…what is relevance?
...how does modulation occur?
Desiderata
Other capabilities one might find in a cognitive
agent: meta-cognition, planning, decision-making,
etc.
Multi-modal reasoning (epistemic, deontic,
bouletic, etc.)
Part III
The Cognitive Calculus Approach
Cognitive Calculi CC
purely
extensional level:
FOL SOL TOL IFOL …
…
ATPs: SPASS-T SNARK ShadowProver
… DyCEC* DCEC*
dialects:
theories:
PA ZFC axiomatic physics…
model finders: MACE
DCSC* CEC CSC…
…
…
…
…
…
analogico-deductive reasoning
…
analogico-inductive reasoning
inference schemas
And NLU in Connection with Cognitive Calculi?
purely
extensional level:
FOL SOL TOL IFOL …
…
ATPs: SPASS-T SNARK ShadowProver
… DyCEC* DCEC*
dialects:
theories:
PA ZFC axiomatic physics…
model finders: MACE
DCSC* CEC CSC…
…
…
…
…
…
analogico-deductive reasoning
…
analogico-inductive reasoning
inference schemas
Event Calculus
Kowalski & Sergot (1986)
Deontic Cognitive Event Calculus*
Excerpt from Original Dialect of CEC
Arkoudas-Bringsjord (2009)
Towards NLU-infused Cognitive Calculi
knowledge-base of a
string
background theory
parse to intermediary form
mapping to formulae
Part IV
Implementation Details
Some Definitions
Information is relevant if it is a necessary
part of a plan, or if it invalidates it.
A plan is a proof from an agent’s situation to a goal.
A situation is the set of an agent’s beliefs, knowledge
(including common knowledge), obligations,
intentions, and desires at some time.
0. Parsing “Relevance” Conditionals
S(a,b,“If you want to watch Game of Thrones (GoT), I recorded it")
AddGoal(a*,Watch(a*,GoT)) → Recorded(a,GoT)
0. Parsing “Relevance” Conditionals
S(a,b,“If you need a MedEvac, it's at location ECHO!")
AddGoal( ... (a*,MedEvac)) → Location(MedEvac,ECHO)
0.5 Recovering Elided ‘Planning’ Verb
S(a,a*“If you need a MedEvac, it's at location ECHO!")
AddGoal( ... (a*,MedEvac)) → Location(MedEvac,ECHO)
O(a,t,P(a,t,Casualty(a)),happens(action(a*,Transport(a*,a,MedEvac))))
1.0 Adjudicating Relevance Relation
1.1 Generate a plan from the agent’s situational
variables and the goal implied/stated in the
antecedent
1.2 Search for the fluent (or its negation) asserted
in the consequent.
1.Located(MedBot, "x")
Introducing some fluents
2.Located(Casualty, "y")
3.Located(MedEvac, "z")
4.
5.[forall loc, time] Holds(Located(MedBot, loc), time) & Holds(Located(Casualty, loc),time)
6.
& Holds(Located(MedEvac, loc),time) -> Holds(Tranpsort(MedBot, Casualty, MedEvac),time)
7.
8.forall([agent,loc1,loc2,time]) Initiates(Move(agent, loc1, loc2), Located(MedBot, loc2), time)
9.forall([agent,loc1,loc2,time]) Terminates(Move(agent, loc1, loc2), Located(MedBot, loc1), time)
10.forall([agent, object, loc1, loc2]) Holds(Grabbed(agent, object),time) -> Initiates(Move(agent, loc1, loc2),
Located(object, loc2), time)
11.forall([agent, object, loc1, loc2]) Holds(Grabbed(agent, object),time) -> Terminates(Move(agent, loc1, loc2),
Located(object, loc1), time)
12.
13.forall([agent, loc, time]) Holds(Located(Medbot, loc), time) & Holds(Located(Casualty, loc),time) ->
happens(Grab(MedBot, Casualty), time)
14.forall([agent,object,time]) Initiates(Grab(agent, object), Grabbed(agent, object), time)
15.
16.forall([loc1, loc2, time]) loc1 != loc2 -> Happens(Move(MedBot, loc1, loc2), time)
17.
18.Goal: exists([time]) Holds(Transport(MedBot, Casualty, MedEvac), time)
19.
20.------21.Required moves:
domain
22.
23.Happens(Move(MedBot, "x", "y"), 0)
Generated plan
24.Happens(Grab(MedBot, Casualty), 1)
25.Happens(Move(MedBot, "y", "z"), 2)
26.
27.Holds(Trasnport(MedBot, Casualty, MedEvac), 2)
axioms
The Relevance Relation
If the fluent in the consequent is a term
in the plan, (or it’s negation)
…it is relevant
Is_Relevant(a*,Location(MedEvac,ECHO),[plan])
Resulting List of Formulas
A successful search leads the hearer to interpret the
utterance as meaning that the speaker believes that the
consequent holds at the time of utterance, the hearer would
find the consequent relevant b/c it is either necessary for
the stated (or implied) plan in the antecedent to be valid
or b/c it would make it invalid, and the content of the
consequent holds.
B(b,Location(MedEvac,ECHO)
B(b,B(a,Is_Relevant(b,Location(MedEvac,ECHO),[plan]))
B(b,Is_Relevant(b,Location(MedEvac,ECHO),[plan]))
Human/Robot Interaction Use Case
Commander1 at t0:
“If you need it, the MedEvac is at location ECHO!"
MedBot at t1:
“Copy."
Commander2 at t2:
“MedBot, do you know where the MedEvac is?“
How should MedBot answer at t3?
Where would he transport a casualty to?
Human/Robot Interaction Use Case
“If you need it, the MedEvac is
at location ECHO!"
Interpret as a conditional
or a ‘relevant’ fact!
Part V
Technology Demonstration
PAGI-World
Psychometric Artificial General Intelligence
(PAGI) World is a simulation environment. It is
platform independent, free to use, open-source,
compatable with AI programs written in almost
any programming language; agnostic as
possible regarding which AI approach is used;
and easy to set up and get started with.
Transporting a Casualty
O(a,t,P(a,t,Casualty(a)),happens(action(a*,Transport(a*,a,MedEvac))))
Demo 1: MedBot believes MedEvac is in two locations a the same time!
#fail
Demo 2: MedBot knows where to go, and transports the casualty!
#success
Technology Demonstration
<<This is where the demo was embedded>>
Grazie per tua attenzione!
...domande?
Deontic Cognitive Event Calculus*
Commander1 says to MedBot, at time t, “ … “.
S(Commander1,MedBot*,t,”If you need it, the MedEvac is at location
ECHO”)
An agent perceives at time t, that an agent is a casualty.
P(a,t,Is_Casualty(a))
Agents are obligated to transport any casualty to a MedEvac
O(a,t,P(a,t,Is_Casualty(a)),happens(action(a*,Transport(a*,a,MedEvac))))
Download