presentation

advertisement
HUMANOBS
Toward a programming paradigm for
control systems with high levels of
existential autonomy
Eric Nivel, Kristinn R. Thorisson
Reykjavik University / Icelandic Institute for Intelligent Machines
AGI 2013 - Beijing – August 2013
Overview
> A G I: domain independence  scalability (in terms of
complexity)
> Natural intelligence vs manageable complexity
> Constructivist approach: delegate to the system (some
of) its own construction
> Used for S1, an AERA based system, that learns socioCommunicative skills by observing people
(HUMANOBS EU-funded FP7 project)
Overview
> Main characteristics of Replicode:
- Based on a non-axiomatic logic: real-valued and time
constrained.
- Data-driven, computation based on pattern-matching.
- Stateless executable code (models, composite states,
programs).
- No explicit ifs, loops, OR, AND.
- All executable code run concurrently: massively parallel
- Code can be an input for some other code.
- Code can be active or inactive.
Overview
> Main characteristics of Replicode:
- A kind of functional language, LISP-like syntax, not
typed.
- Data can be salient or not.
- Data and code (objects) have a limited life time
(resilience).
- Once produced, objects cannot be modified.
- Objects live in workspaces (groups), possibly in several
of them.
- Groups control the lifecycle and state of objects at
various frequencies.
- Extensible set of operators; hooks for custom C++ code
Dynamic Model Hierarchy
> A model captures a causal relationship (deduction, i.e.
prediction).
> A model can thus be used to perform abductions (ex:
sub-goaling).
> A model is bidirectional and performs deductions and
abductions concurrently.
A(X,Z,W) M0 B(X,Y,Z)
Forward: a  predicted b and  iM0(x,z,w,y); Y can be a function of X, Z and W.
Backward: goal b  sub-goal a; W can be a function of X, Y and Z
Predicted b and sub-goal a are monitored, success of M0 is assessed in due time
Dynamic Model Hierarchy
> Indirect coupling / pattern affordances.
M0: [A  B]
M1: [B  C]
M2: [C  D]
M3: [E  C]
M4: [C  F]
M0
M5: [|G  C]
Forward: a  predicted b  predicted c  predicted d
Backward: goal d  sub-goal c  sub-goal b  sub-goal a
 sub-goal e
 sub-goal |g
M1
M2
M3
M4
M5
Dynamic Model Hierarchy
> Pre-conditions.
M0: [A  B]
M1: [C  iM0]
iM0 = instance of M0, NOT M0 itself
IF M0 fires (at some time), it will succeed
M2
Pre-conditions (weak) - OR
M1
M2: [|D  iM0]
M0
M3: [E  |iM0]
Pre-conditions (strong) - AND
M4: [|F  |iM0]
M3
M4
IF M0 fires (at some time), it will fail
Execution of a model, success/failure thereof ARE REGULAR (INTERNAL) INPUTS.
Dynamic Model Hierarchy
> Post-conditions.
M0: [A  B]
WHEN M0 has fired (at some time)
M6
M5: [iM0  C]
M0
M6: [|iM0  D]
WHEN M0 has not fired (at some time)
M15
M7: [iM12  iM0]
M12
M8: [iM13  |iM0]
M9: [|iM14  iM0]
M5
M10
M7
Combinations
M0
M8
M10: [|iM15  |iM0]
M9
M13
M14
Dynamic Model Hierarchy
> Control hierarchy
predictions
I/O
goals
> Dynamic: models are built/deleted dynamically.
Dynamic Model Hierarchy
> Dynamic: models are activated accordingly to their
success rate: under a threshold, no execution.
> Inputs hold a confidence value (saliency): under a
threshold, no input.
> pred.cfd=input.cfd*modl.sr (likelyhood for the pred to be
true).
> goal.cfd=super-goal.cfd*model.sr (likelyhood for a goal
to succeed).
Dynamic Model Hierarchy
> Given limited resources, only the paths consisting of the
best models will be followed.
I/O
Dynamic Model Hierarchy
> Drives and top-level models are hand-coded.
> Drives are non-observable states.
drives
I/O
top-level models
learned models
> Drives are re-generated dynamically (defined by the
programmer).
> Top-level models are given ways to satisfy drives.
Dynamic Model Hierarchy
> States: atomic or composite; constitute the patterns
found in models.
> States can be composed of other states  state
hierarchy.
S0 A(X,Z,W)
B(X,Y,Z)
A, B and C are synchronous states
C(X,T)
synchronous: hold within a common time
interval
> Reflectivity: internal operations are reflected as states.
Composite states can encode concepts in an operational
fashion.
> In addition to a control hierarchy (procedural) we also
have a concept (structural) hierarchy.
Dynamic Model Hierarchy
> Indirect coupling: models are not hardwired to each
other. They are coupled via events in the workspace.
> Pattern affordance.
> Control hierarchy: affordances, pre- and post-conditions.
> Dynamicity:
continuouslsy.
models
are
added/deleted/activated
> Concept hierarchy: states encode concepts at different
levels of specification.
Logic
> Real valued: confidence (not a probability) in [0,1].
> Time constrained: time interval [after, before[; bounds in
µs.
> Inference rules govern:
- Deduction (forward chaining)
- Abduction (backward chaining)
- Induction
- Commitment (resolution of simulation)
Download