Integrated Influence :
The Six Million Dollar Man
           of AI

          L Dicken
What is AI?




2
What is AI?
    • Any time a computer makes any sort of decision
     between a number of options, it can be thought of
  ...
What is AI?
    • Any time a computer makes any sort of decision
     between a number of options, it can be thought of
  ...
AI Applications




3
AI Applications
    • Automatic Translation




3
AI Applications
    • Automatic Translation
    • Statistical Analysis




3
AI Applications
    • Automatic Translation
    • Statistical Analysis
    • Optimising Resource Usage




3
AI Applications
    • Automatic Translation
    • Statistical Analysis
    • Optimising Resource Usage
    • Scheduling Pr...
AI Applications
    • Automatic Translation
    • Statistical Analysis
    • Optimising Resource Usage
    • Scheduling Pr...
AI Applications
    • Automatic Translation
    • Statistical Analysis
    • Optimising Resource Usage
    • Scheduling Pr...
AI Applications
    • Automatic Translation
    • Statistical Analysis
    • Optimising Resource Usage
    • Scheduling Pr...
Basics




4
Basics
    • Broadly, two conceptual paradigms in AI
      ‣ Reaction
      ‣ Deliberation




4
Basics
    • Broadly, two conceptual paradigms in AI
      ‣ Reaction
      ‣ Deliberation
    • Reaction aims to program ...
Basics
    • Broadly, two conceptual paradigms in AI
      ‣ Reaction
      ‣ Deliberation
    • Reaction aims to program ...
Automated Planning




5
Automated Planning
    • AP is a deliberative technique




5
Automated Planning
    • AP is a deliberative technique
    • Given a description of




5
Automated Planning
    • AP is a deliberative technique
    • Given a description of
       ‣ Current state of the world

...
Automated Planning
    • AP is a deliberative technique
    • Given a description of
       ‣ Current state of the world
 ...
Automated Planning
    • AP is a deliberative technique
    • Given a description of
       ‣ Current state of the world
 ...
Automated Planning
    • AP is a deliberative technique
    • Given a description of
       ‣ Current state of the world
 ...
PDDL




6
PDDL
    • Planning Domain Description Language




6
PDDL
    • Planning Domain Description Language
    • Propositional representation of world




6
PDDL
    • Planning Domain Description Language
    • Propositional representation of world
    • All things not asserted ...
PDDL
    • Planning Domain Description Language
    • Propositional representation of world
    • All things not asserted ...
PDDL
    • Planning Domain Description Language
    • Propositional representation of world
    • All things not asserted ...
PDDL
    • Planning Domain Description Language
    • Propositional representation of world
    • All things not asserted ...
Example Domain
    (define (domain logistics)
      (:requirements :strips :typing)
      (:types truck - vehicle
         ...
Planning Graphs
Planning Graphs

At(T1, L1)



At(P1, L1)




   f0
Planning Graphs
             Move(T1,
               L2)
At(T1, L1)
             Move(T1,
               L3)
At(P1, L1)
  ...
Planning Graphs
             Move(T1,
               L2)
At(T1, L1)              At(T1, L1)
             Move(T1,
        ...
Planning Graphs
         Move(T1,             Move(T
           L2)                 1, L2)
At(T1, L1)          At(T1, L1)
...
Planning Graphs
         Move(T1,             Move(T
           L2)                 1, L2)
At(T1, L1)          At(T1, L1) ...
Planning Graphs
         Move(T1,             Move(T            Move(T1,
           L2)                 1, L2)            ...
Planning Graphs
         Move(T1,             Move(T            Move(T1,
           L2)                 1, L2)            ...
The Core of Planning




9
The Core of Planning
    • Previous example made it look so easy.




9
The Core of Planning
    • Previous example made it look so easy.
    • Trivial example, worked out in advance.




9
The Core of Planning
    • Previous example made it look so easy.
    • Trivial example, worked out in advance.
    • At e...
The Core of Planning
    • Previous example made it look so easy.
    • Trivial example, worked out in advance.
    • At e...
The Core of Planning
    • Previous example made it look so easy.
    • Trivial example, worked out in advance.
    • At e...
The Core of Planning
    • Previous example made it look so easy.
    • Trivial example, worked out in advance.
    • At e...
Problems




10
Problems
     • Search space is massive.




10
Problems
     • Search space is massive.
        ‣ Computational complexity high




10
Problems
     • Search space is massive.
        ‣ Computational complexity high
        ‣ Processing time required also h...
Problems
     • Search space is massive.
        ‣ Computational complexity high
        ‣ Processing time required also h...
Problems
     • Search space is massive.
        ‣ Computational complexity high
        ‣ Processing time required also h...
Problems
     • Search space is massive.
        ‣ Computational complexity high
        ‣ Processing time required also h...
Problems
     • Search space is massive.
        ‣ Computational complexity high
        ‣ Processing time required also h...
Time Constraints




11
Time Constraints
     • International Planning Competition entrants get
      around 30m to generate a plan for a single p...
Time Constraints
     • International Planning Competition entrants get
      around 30m to generate a plan for a single p...
Time Constraints
     • International Planning Competition entrants get
      around 30m to generate a plan for a single p...
Time Constraints
     • International Planning Competition entrants get
      around 30m to generate a plan for a single p...
Time Constraints
     • International Planning Competition entrants get
      around 30m to generate a plan for a single p...
Reactive AI




12
Reactive AI
     • Reactive AI makes snap decisions based on current
      state of the world.




12
Reactive AI
     • Reactive AI makes snap decisions based on current
      state of the world.
     • More tolerant to act...
Reactive AI
     • Reactive AI makes snap decisions based on current
      state of the world.
     • More tolerant to act...
Subsumption Arch.




13
Subsumption Arch.
     • Quintessential reactive approach.




13
Subsumption Arch.
     • Quintessential reactive approach.
     • Library of behaviours ordered by priority.




13
Subsumption Arch.
     • Quintessential reactive approach.
     • Library of behaviours ordered by priority.
     • Each b...
Subsumption Arch.
     • Quintessential reactive approach.
     • Library of behaviours ordered by priority.
     • Each b...
Subsumption
              Behaviour 1


              Behaviour 2
Input   Mux
              Behaviour 3


              Be...
Influence Maps




15
Influence Maps
     • Much more simplistic approach




15
Influence Maps
     • Much more simplistic approach
     • Influence radiates from objects similarly to magnetic
      fields...
Influence Maps
     • Much more simplistic approach
     • Influence radiates from objects similarly to magnetic
      fields...
Influence Maps
     • Much more simplistic approach
     • Influence radiates from objects similarly to magnetic
      fields...
Influence Maps




16
Neural Networks




17
Stateful vs. Stateless




18
Stateful vs. Stateless
     • Deliberative reasoning is by its nature stateful




18
Stateful vs. Stateless
     • Deliberative reasoning is by its nature stateful
     • Reactive systems typically are state...
Stateful vs. Stateless
     • Deliberative reasoning is by its nature stateful
     • Reactive systems typically are state...
Stateful vs. Stateless
     • Deliberative reasoning is by its nature stateful
     • Reactive systems typically are state...
Stateful vs. Stateless
     • Deliberative reasoning is by its nature stateful
     • Reactive systems typically are state...
Limitations of AI




19
Limitations of AI
     • Contemporary AI is capable of very sophisticated
      insightful decision making.
       ‣ ....e...
Six Million Dollar Man




20
Six Million Dollar Man
     • We can rebuild it!




20
Six Million Dollar Man
     • We can rebuild it!
        ‣ Better




20
Six Million Dollar Man
     • We can rebuild it!
        ‣ Better
        ‣ Stronger




20
Six Million Dollar Man
     • We can rebuild it!
        ‣ Better
        ‣ Stronger
        ‣ Faster




20
Six Million Dollar Man
     • We can rebuild it!
        ‣ Better
        ‣ Stronger
        ‣ Faster




20
Six Million Dollar Man
     • We can rebuild it!
        ‣ Better
        ‣ Stronger
        ‣ Faster
     • But, we don’t...
Integrated Influence




21
Integrated Influence
     • My work focuses on trying to bridge the gap
      between reaction and deliberation in novel wa...
Integrated Influence
     • My work focuses on trying to bridge the gap
      between reaction and deliberation in novel wa...
Integrated Influence
     • My work focuses on trying to bridge the gap
      between reaction and deliberation in novel wa...
Integrated Influence
     • My work focuses on trying to bridge the gap
      between reaction and deliberation in novel wa...
Integrated Influence
     • My work focuses on trying to bridge the gap
      between reaction and deliberation in novel wa...
Concept




22
Concept
     • We take the view that many aspects of the world
      can’t be tackled by one or other paradigm, but
      ...
Concept
     • We take the view that many aspects of the world
      can’t be tackled by one or other paradigm, but
      ...
Search vs. Evaluation




23
Search vs. Evaluation
     • Searching spaces is a complex task.
       ‣ Typically at least NP-Hard, PDDL domains can be ...
Propositions




24
Propositions
     • PDDL’s propositional representation gives a state
      representation of very high dimension, with ea...
SAS+




25
SAS+
     • SAS+ groups mutually exclusive PDDL props
      together.
       ‣ Propositional - at(P1, L1), at(P1, L2), at(...
SAS+
     • SAS+ groups mutually exclusive PDDL props
      together.
       ‣ Propositional - at(P1, L1), at(P1, L2), at(...
SAS+
     • SAS+ groups mutually exclusive PDDL props
      together.
       ‣ Propositional - at(P1, L1), at(P1, L2), at(...
DTGs
           T1




     L1    L2    L3


26
Influence Landscapes
     • Introduced the concept of Influence Map earlier




27
Influence Landscapes
     • Introduced the concept of Influence Map earlier
     • Influence Landscapes extend the idea away ...
Influence Landscapes
     • Introduced the concept of Influence Map earlier
     • Influence Landscapes extend the idea away ...
Influence Landscape
             T1




     L1      L2      L3


28
Caveats




29
Caveats
     • It isn’t quite this easy




29
Caveats
     • It isn’t quite this easy
     • Need to consider ‘Causal Links’




29
Caveats
     • It isn’t quite this easy
     • Need to consider ‘Causal Links’
     • To load the package at L1, the truck...
Caveats
     • It isn’t quite this easy
     • Need to consider ‘Causal Links’
     • To load the package at L1, the truck...
DTG with CG

              T1




        L1    L2   L3
30
DTG with CG

                     T1
     L1   L2    L3




               L1    L2   L3
30
Landscape Generators




31
Landscape Generators
     • Previous example generated using a simple critical
      path analysis.




31
Landscape Generators
     • Previous example generated using a simple critical
      path analysis.
     • Need to get muc...
Landscape Generators
     • Previous example generated using a simple critical
      path analysis.
     • Need to get muc...
Landscape Generators
     • Previous example generated using a simple critical
      path analysis.
     • Need to get muc...
Stacks




32
Stacks
     • Stacks are the name given to Landscape Generators




32
Stacks
     • Stacks are the name given to Landscape Generators
     • Each stack is tasked with assigning a numerical val...
Stacks
     • Stacks are the name given to Landscape Generators
     • Each stack is tasked with assigning a numerical val...
Stacks
     • Stacks are the name given to Landscape Generators
     • Each stack is tasked with assigning a numerical val...
Stacks
     • Stacks are the name given to Landscape Generators
     • Each stack is tasked with assigning a numerical val...
Deliberative - Plan




33
Deliberative - Plan
     • We can guide the search by bringing in the
      information a deliberative reasoner provides.
...
Deliberative - Plan
     • We can guide the search by bringing in the
      information a deliberative reasoner provides.
...
Deliberative - Plan
     • We can guide the search by bringing in the
      information a deliberative reasoner provides.
...
Deliberative - Plan
     • We can guide the search by bringing in the
      information a deliberative reasoner provides.
...
Conformity




34
Conformity
     • How heavily do we want to reward conforming to
      the plan?




34
Tight Conformity




35
Tight Conformity
     • Reward every node the plan requires the agent to
      visit in the graph, Royal Road style.




35
Tight Conformity
     • Reward every node the plan requires the agent to
      visit in the graph, Royal Road style.
     ...
Tight Conformity
     • Reward every node the plan requires the agent to
      visit in the graph, Royal Road style.
     ...
Tight Conformity
     • Reward every node the plan requires the agent to
      visit in the graph, Royal Road style.
     ...
Tight Conformity
     • Reward every node the plan requires the agent to
      visit in the graph, Royal Road style.
     ...
Loose Conformity




36
Loose Conformity
     • Use the plan to mark out a general path without
      strictly defining each node of the plan.




...
Loose Conformity
     • Use the plan to mark out a general path without
      strictly defining each node of the plan.
    ...
Loose Conformity
     • Use the plan to mark out a general path without
      strictly defining each node of the plan.
    ...
Focal Nodes




37
Focal Nodes
     • Focal Nodes are these waypoints in the plan.




37
Focal Nodes
     • Focal Nodes are these waypoints in the plan.
     • Previous work with SAS+ has shown that a DTG
      ...
Focal Nodes
     • Focal Nodes are these waypoints in the plan.
     • Previous work with SAS+ has shown that a DTG
      ...
Focal Nodes
     • Focal Nodes are these waypoints in the plan.
     • Previous work with SAS+ has shown that a DTG
      ...
Focal Nodes
     • Focal Nodes are these waypoints in the plan.
     • Previous work with SAS+ has shown that a DTG
      ...
Clustering




38
Clustering
     • We can pick out the FNs by hand, but that’s no fun.




38
Clustering
     • We can pick out the FNs by hand, but that’s no fun.
     • Instead, using the structure of the graph to ...
Clustering
     • We can pick out the FNs by hand, but that’s no fun.
     • Instead, using the structure of the graph to ...
Clustering
     • We can pick out the FNs by hand, but that’s no fun.
     • Instead, using the structure of the graph to ...
Fuzzy Clustering




39
Focal Nodes




40
Using Focal Nodes




41
Using Focal Nodes
     • FNs can be identified offline for every DTG in the
      domain.




41
Using Focal Nodes
     • FNs can be identified offline for every DTG in the
      domain.
     • FNs that the plan indicates...
Using Focal Nodes
     • FNs can be identified offline for every DTG in the
      domain.
     • FNs that the plan indicates...
Plan Data




42
Environmental Data




43
Environmental Data
     • We can overcome the deficiencies in deliberative
      landscape by bringing in data about the en...
Environmental Data
     • We can overcome the deficiencies in deliberative
      landscape by bringing in data about the en...
Environmental Data
     • We can overcome the deficiencies in deliberative
      landscape by bringing in data about the en...
Preferences




44
Preferences
     • Preferences allow the agent to bias the influence of
      nodes in the graph at execution time based on...
Preferences
     • Preferences allow the agent to bias the influence of
      nodes in the graph at execution time based on...
Preferences
     • Preferences allow the agent to bias the influence of
      nodes in the graph at execution time based on...
Road Blocks




45
Road Blocks
     • Road Block is an edge that should be in the domain
      but for some reason is not traversable at this...
Road Blocks
     • Road Block is an edge that should be in the domain
      but for some reason is not traversable at this...
Road Blocks
     • Road Block is an edge that should be in the domain
      but for some reason is not traversable at this...
Road Blocks
     • Road Block is an edge that should be in the domain
      but for some reason is not traversable at this...
Road Blocks
     • Road Block is an edge that should be in the domain
      but for some reason is not traversable at this...
Road Blocks
     • Road Block is an edge that should be in the domain
      but for some reason is not traversable at this...
Integrated Landscape




46
Integrated Landscape
     • By combining the landscape from each of the
      individual stacks, we get the “Integrated In...
Integrated Landscape
     • By combining the landscape from each of the
      individual stacks, we get the “Integrated In...
Integrated Landscape
     • By combining the landscape from each of the
      individual stacks, we get the “Integrated In...
Using the IIL




47
Using the IIL
     • Given an IIL, the agent can then climb the gradient
      towards the goal, changing between DTGs as
...
Using the IIL
     • Given an IIL, the agent can then climb the gradient
      towards the goal, changing between DTGs as
...
Using the IIL
     • Given an IIL, the agent can then climb the gradient
      towards the goal, changing between DTGs as
...
Using the IIL
     • Given an IIL, the agent can then climb the gradient
      towards the goal, changing between DTGs as
...
Using the IIL
     • Given an IIL, the agent can then climb the gradient
      towards the goal, changing between DTGs as
...
Integrated Influence



     Plan Landscape                         Env Landscape




                      Structure Lands...
Integrated Influence




     Integrated Influence Landscape
49
Bonus Feature!




50
Bonus Feature!
     • Brought up earlier time constraints of the Game
      Industry - around 1ms per frame.




50
Bonus Feature!
     • Brought up earlier time constraints of the Game
      Industry - around 1ms per frame.
     • Games ...
Bonus Feature!
     • Brought up earlier time constraints of the Game
      Industry - around 1ms per frame.
     • Games ...
Bonus Feature!
     • Brought up earlier time constraints of the Game
      Industry - around 1ms per frame.
     • Games ...
Parrallelisation




51
Parrallelisation
     • By its nature, the stack paradigm is very flexible




51
Parrallelisation
     • By its nature, the stack paradigm is very flexible
     • Designed for each stack to be updated
   ...
Parrallelisation
     • By its nature, the stack paradigm is very flexible
     • Designed for each stack to be updated
   ...
Parrallelisation
     • By its nature, the stack paradigm is very flexible
     • Designed for each stack to be updated
   ...
Vector Operations




52
Vector Operations
     • The vast majority of the maths mentioned can be
      stated as vector and matrix operations.



...
Vector Operations
     • The vast majority of the maths mentioned can be
      stated as vector and matrix operations.
   ...
Vector Operations
     • The vast majority of the maths mentioned can be
      stated as vector and matrix operations.
   ...
Vector Operations
     • The vast majority of the maths mentioned can be
      stated as vector and matrix operations.
   ...
Vector Operations
     • The vast majority of the maths mentioned can be
      stated as vector and matrix operations.
   ...
Experiments




53
Experiments
     • Majority of work to date has been conceptual




53
Experiments
     • Majority of work to date has been conceptual
     • Initial prototype has been developed based on a
   ...
Experiments
     • Majority of work to date has been conceptual
     • Initial prototype has been developed based on a
   ...
Experiments
     • Majority of work to date has been conceptual
     • Initial prototype has been developed based on a
   ...
Results




54
Results
     • Early tests have shown some promising results




54
Results
     • Early tests have shown some promising results
       ‣ Noticeable decrease in time taken to make decisions
...
Results
     • Early tests have shown some promising results
       ‣ Noticeable decrease in time taken to make decisions
...
Results
     • Early tests have shown some promising results
       ‣ Noticeable decrease in time taken to make decisions
...
Results
     • Early tests have shown some promising results
       ‣ Noticeable decrease in time taken to make decisions
...
Results
     • Early tests have shown some promising results
       ‣ Noticeable decrease in time taken to make decisions
...
Future Work




55
Future Work
     • A lot of work remains to develop this into a
      polished technique that will revolutionise AI.




55
Future Work
     • A lot of work remains to develop this into a
      polished technique that will revolutionise AI.
     ...
Future Work
     • A lot of work remains to develop this into a
      polished technique that will revolutionise AI.
     ...
Future Work
     • A lot of work remains to develop this into a
      polished technique that will revolutionise AI.
     ...
Future Work
     • A lot of work remains to develop this into a
      polished technique that will revolutionise AI.
     ...
Questions?
Upcoming SlideShare
Loading in …5
×

Integrated Influence - The Six Million Dollar Man of AI

1,015 views
963 views

Published on

This presentation introduces the fundamentals of contemporary AI research and highlights a significant challenge that we have still not addressed - namely that we have to trade quality of decision making against speed of decision making.

It goes on to discuss the concepts behind the "Integrated Influence Architecture", a new approach to making high-speed and high-quality decisions currently under development at University of Strathclyde.

Published in: Technology, Real Estate
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,015
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide



























































































































































































  • Integrated Influence - The Six Million Dollar Man of AI

    1. 1. Integrated Influence : The Six Million Dollar Man of AI L Dicken
    2. 2. What is AI? 2
    3. 3. What is AI? • Any time a computer makes any sort of decision between a number of options, it can be thought of as acting “intelligently”. 2
    4. 4. What is AI? • Any time a computer makes any sort of decision between a number of options, it can be thought of as acting “intelligently”. • Whether or not those decisions are the right ones is how “good” the intelligence is. 2
    5. 5. AI Applications 3
    6. 6. AI Applications • Automatic Translation 3
    7. 7. AI Applications • Automatic Translation • Statistical Analysis 3
    8. 8. AI Applications • Automatic Translation • Statistical Analysis • Optimising Resource Usage 3
    9. 9. AI Applications • Automatic Translation • Statistical Analysis • Optimising Resource Usage • Scheduling Problems 3
    10. 10. AI Applications • Automatic Translation • Statistical Analysis • Optimising Resource Usage • Scheduling Problems • Automated Planning 3
    11. 11. AI Applications • Automatic Translation • Statistical Analysis • Optimising Resource Usage • Scheduling Problems • Automated Planning • Image/Facial Recognition 3
    12. 12. AI Applications • Automatic Translation • Statistical Analysis • Optimising Resource Usage • Scheduling Problems • Automated Planning • Image/Facial Recognition • And many more... 3
    13. 13. Basics 4
    14. 14. Basics • Broadly, two conceptual paradigms in AI ‣ Reaction ‣ Deliberation 4
    15. 15. Basics • Broadly, two conceptual paradigms in AI ‣ Reaction ‣ Deliberation • Reaction aims to program “instinctive” reactions to minimal subsets of stimuli. 4
    16. 16. Basics • Broadly, two conceptual paradigms in AI ‣ Reaction ‣ Deliberation • Reaction aims to program “instinctive” reactions to minimal subsets of stimuli. • Deliberation describes reasoning-based approaches, using all the information available. 4
    17. 17. Automated Planning 5
    18. 18. Automated Planning • AP is a deliberative technique 5
    19. 19. Automated Planning • AP is a deliberative technique • Given a description of 5
    20. 20. Automated Planning • AP is a deliberative technique • Given a description of ‣ Current state of the world 5
    21. 21. Automated Planning • AP is a deliberative technique • Given a description of ‣ Current state of the world ‣ Actions that can be applied and the way they affect the world 5
    22. 22. Automated Planning • AP is a deliberative technique • Given a description of ‣ Current state of the world ‣ Actions that can be applied and the way they affect the world ‣ A set of goals to be achieved 5
    23. 23. Automated Planning • AP is a deliberative technique • Given a description of ‣ Current state of the world ‣ Actions that can be applied and the way they affect the world ‣ A set of goals to be achieved • Automatically determines a sequence of actions that will complete the task. 5
    24. 24. PDDL 6
    25. 25. PDDL • Planning Domain Description Language 6
    26. 26. PDDL • Planning Domain Description Language • Propositional representation of world 6
    27. 27. PDDL • Planning Domain Description Language • Propositional representation of world • All things not asserted true are false 6
    28. 28. PDDL • Planning Domain Description Language • Propositional representation of world • All things not asserted true are false • All things true now will remain true unless negated 6
    29. 29. PDDL • Planning Domain Description Language • Propositional representation of world • All things not asserted true are false • All things true now will remain true unless negated • Extensions deal with a variety of extras 6
    30. 30. PDDL • Planning Domain Description Language • Propositional representation of world • All things not asserted true are false • All things true now will remain true unless negated • Extensions deal with a variety of extras ‣ e.g. Numerical values, Temporal actions, Continuous effects etc. 6
    31. 31. Example Domain (define (domain logistics) (:requirements :strips :typing) (:types truck - vehicle package vehicle - physobj location - place place physobj - object) (:predicates (in-city ?loc - place ?city - city) (at ?obj - physobj ?loc - place) (in ?pkg - package ?veh - vehicle)) (:action LOAD :parameters (?pkg - package ?truck - truck ?loc - place) :precondition (and (at ?truck ?loc) (at ?pkg ?loc)) :effect (and (not (at ?pkg ?loc)) (in ?pkg ?truck))) (:action UNLOAD :parameters (?pkg - package ?truck - truck ?loc - place) :precondition (and (at ?truck ?loc) (in ?pkg ?truck)) :effect (and (not (in ?pkg ?truck)) (at ?pkg ?loc))) (:action MOVE :parameters (?truck - truck ?loc-from - place ?loc-to - place ?city - city) :precondition (and (at ?truck ?loc-from) (in-city ?loc-from ?city) (in-city ?loc-to ?city)) :effect (and (not (at ?truck ?loc-from)) (at ?truck ?loc-to))) 7
    32. 32. Planning Graphs
    33. 33. Planning Graphs At(T1, L1) At(P1, L1) f0
    34. 34. Planning Graphs Move(T1, L2) At(T1, L1) Move(T1, L3) At(P1, L1) Load(P 1,T1) f0 a1
    35. 35. Planning Graphs Move(T1, L2) At(T1, L1) At(T1, L1) Move(T1, L3) At(P1, L1) In(P1, T1) Load(P 1,T1) f0 a1 f1
    36. 36. Planning Graphs Move(T1, Move(T L2) 1, L2) At(T1, L1) At(T1, L1) Move(T1, Move(T1, L3) L3) At(P1, L1) In(P1, T1) Load(P Unload(P 1,T1) 1,T1) f0 a1 f1 a2
    37. 37. Planning Graphs Move(T1, Move(T L2) 1, L2) At(T1, L1) At(T1, L1) At(T1, L2) Move(T1, Move(T1, L3) L3) At(P1, L1) In(P1, T1) In(P1, T1) Load(P Unload(P 1,T1) 1,T1) f0 a1 f1 a2 f2
    38. 38. Planning Graphs Move(T1, Move(T Move(T1, L2) 1, L2) L1) At(T1, L1) At(T1, L1) At(T1, L2) Move(T1, Move(T1, Move(T1, L3) L3) L3) At(P1, L1) In(P1, T1) In(P1, T1) Load(P Unload(P Unload( 1,T1) 1,T1) P1,T1) f0 a1 f1 a2 f2 a3
    39. 39. Planning Graphs Move(T1, Move(T Move(T1, L2) 1, L2) L1) At(T1, L1) At(T1, L1) At(T1, L2) At(T1, L2) Move(T1, Move(T1, Move(T1, L3) L3) L3) At(P1, L1) In(P1, T1) In(P1, T1) At(P1, L2) Load(P Unload(P Unload( 1,T1) 1,T1) P1,T1) f0 a1 f1 a2 f2 a3 f3
    40. 40. The Core of Planning 9
    41. 41. The Core of Planning • Previous example made it look so easy. 9
    42. 42. The Core of Planning • Previous example made it look so easy. • Trivial example, worked out in advance. 9
    43. 43. The Core of Planning • Previous example made it look so easy. • Trivial example, worked out in advance. • At every action layer, many choices don’t help 9
    44. 44. The Core of Planning • Previous example made it look so easy. • Trivial example, worked out in advance. • At every action layer, many choices don’t help ‣ Easy to disappear down a rabbit hole 9
    45. 45. The Core of Planning • Previous example made it look so easy. • Trivial example, worked out in advance. • At every action layer, many choices don’t help ‣ Easy to disappear down a rabbit hole • Planning all about guiding search across the action/ fact layer space. 9
    46. 46. The Core of Planning • Previous example made it look so easy. • Trivial example, worked out in advance. • At every action layer, many choices don’t help ‣ Easy to disappear down a rabbit hole • Planning all about guiding search across the action/ fact layer space. ‣ Different heuristics, search strategies, pruning techniques 9
    47. 47. Problems 10
    48. 48. Problems • Search space is massive. 10
    49. 49. Problems • Search space is massive. ‣ Computational complexity high 10
    50. 50. Problems • Search space is massive. ‣ Computational complexity high ‣ Processing time required also high 10
    51. 51. Problems • Search space is massive. ‣ Computational complexity high ‣ Processing time required also high • Not only that but models used are “abstractions” 10
    52. 52. Problems • Search space is massive. ‣ Computational complexity high ‣ Processing time required also high • Not only that but models used are “abstractions” ‣ Typically removes chance to fail an action 10
    53. 53. Problems • Search space is massive. ‣ Computational complexity high ‣ Processing time required also high • Not only that but models used are “abstractions” ‣ Typically removes chance to fail an action ‣ Typically removes other agents and the consequences of their actions 10
    54. 54. Problems • Search space is massive. ‣ Computational complexity high ‣ Processing time required also high • Not only that but models used are “abstractions” ‣ Typically removes chance to fail an action ‣ Typically removes other agents and the consequences of their actions ‣ Typically removes a lot of the detail e.g. Driver for truck 10
    55. 55. Time Constraints 11
    56. 56. Time Constraints • International Planning Competition entrants get around 30m to generate a plan for a single problem. 11
    57. 57. Time Constraints • International Planning Competition entrants get around 30m to generate a plan for a single problem. • AAAI General Game Playing entrants get 5-10s to decide on their next move. 11
    58. 58. Time Constraints • International Planning Competition entrants get around 30m to generate a plan for a single problem. • AAAI General Game Playing entrants get 5-10s to decide on their next move. • Games Industry aims for 60fps execution - 16ms per frame. 11
    59. 59. Time Constraints • International Planning Competition entrants get around 30m to generate a plan for a single problem. • AAAI General Game Playing entrants get 5-10s to decide on their next move. • Games Industry aims for 60fps execution - 16ms per frame. ‣ Most of that is spent on graphics, physics etc. 11
    60. 60. Time Constraints • International Planning Competition entrants get around 30m to generate a plan for a single problem. • AAAI General Game Playing entrants get 5-10s to decide on their next move. • Games Industry aims for 60fps execution - 16ms per frame. ‣ Most of that is spent on graphics, physics etc. ‣ AI gets maybe 1ms to work out everything it needs to 11
    61. 61. Reactive AI 12
    62. 62. Reactive AI • Reactive AI makes snap decisions based on current state of the world. 12
    63. 63. Reactive AI • Reactive AI makes snap decisions based on current state of the world. • More tolerant to action failure - one action isn’t part of a long chain of actions that depend on it. 12
    64. 64. Reactive AI • Reactive AI makes snap decisions based on current state of the world. • More tolerant to action failure - one action isn’t part of a long chain of actions that depend on it. • Typically gives a very good response time to input received from the environment. 12
    65. 65. Subsumption Arch. 13
    66. 66. Subsumption Arch. • Quintessential reactive approach. 13
    67. 67. Subsumption Arch. • Quintessential reactive approach. • Library of behaviours ordered by priority. 13
    68. 68. Subsumption Arch. • Quintessential reactive approach. • Library of behaviours ordered by priority. • Each behaviour maps detected input to relevant response. 13
    69. 69. Subsumption Arch. • Quintessential reactive approach. • Library of behaviours ordered by priority. • Each behaviour maps detected input to relevant response. • Higher priority behaviours are able to “subsume” or override the output of the lower priority ones. 13
    70. 70. Subsumption Behaviour 1 Behaviour 2 Input Mux Behaviour 3 Behaviour 4 Output 14
    71. 71. Influence Maps 15
    72. 72. Influence Maps • Much more simplistic approach 15
    73. 73. Influence Maps • Much more simplistic approach • Influence radiates from objects similarly to magnetic fields. 15
    74. 74. Influence Maps • Much more simplistic approach • Influence radiates from objects similarly to magnetic fields. • Good things attract the agent, bad things repel the agent. 15
    75. 75. Influence Maps • Much more simplistic approach • Influence radiates from objects similarly to magnetic fields. • Good things attract the agent, bad things repel the agent. • Interaction of influence is typically (but not necessarily) additive. 15
    76. 76. Influence Maps 16
    77. 77. Neural Networks 17
    78. 78. Stateful vs. Stateless 18
    79. 79. Stateful vs. Stateless • Deliberative reasoning is by its nature stateful 18
    80. 80. Stateful vs. Stateless • Deliberative reasoning is by its nature stateful • Reactive systems typically are stateless 18
    81. 81. Stateful vs. Stateless • Deliberative reasoning is by its nature stateful • Reactive systems typically are stateless • Trying to retrofit them to include states typically adds the type of complexity they were designed to avoid. 18
    82. 82. Stateful vs. Stateless • Deliberative reasoning is by its nature stateful • Reactive systems typically are stateless • Trying to retrofit them to include states typically adds the type of complexity they were designed to avoid. ‣ E.g. Trying to capture state in a NN involves a separate NN designed to have a delayed feedback into the input 18
    83. 83. Stateful vs. Stateless • Deliberative reasoning is by its nature stateful • Reactive systems typically are stateless • Trying to retrofit them to include states typically adds the type of complexity they were designed to avoid. ‣ E.g. Trying to capture state in a NN involves a separate NN designed to have a delayed feedback into the input • Reactive Systems struggle to make long term plans 18
    84. 84. Limitations of AI 19
    85. 85. Limitations of AI • Contemporary AI is capable of very sophisticated insightful decision making. ‣ ....eventually • Also able to make very rapid decision making. ‣ ...at the expense of long-term decision quality • Range of problems require both high quality and short time frame decisions. 19
    86. 86. Six Million Dollar Man 20
    87. 87. Six Million Dollar Man • We can rebuild it! 20
    88. 88. Six Million Dollar Man • We can rebuild it! ‣ Better 20
    89. 89. Six Million Dollar Man • We can rebuild it! ‣ Better ‣ Stronger 20
    90. 90. Six Million Dollar Man • We can rebuild it! ‣ Better ‣ Stronger ‣ Faster 20
    91. 91. Six Million Dollar Man • We can rebuild it! ‣ Better ‣ Stronger ‣ Faster 20
    92. 92. Six Million Dollar Man • We can rebuild it! ‣ Better ‣ Stronger ‣ Faster • But, we don’t yet have the technology... 20
    93. 93. Integrated Influence 21
    94. 94. Integrated Influence • My work focuses on trying to bridge the gap between reaction and deliberation in novel ways 21
    95. 95. Integrated Influence • My work focuses on trying to bridge the gap between reaction and deliberation in novel ways • Previous approaches have typically either : 21
    96. 96. Integrated Influence • My work focuses on trying to bridge the gap between reaction and deliberation in novel ways • Previous approaches have typically either : ‣ Created an agent that deliberates about certain aspects of the world and reacts to others 21
    97. 97. Integrated Influence • My work focuses on trying to bridge the gap between reaction and deliberation in novel ways • Previous approaches have typically either : ‣ Created an agent that deliberates about certain aspects of the world and reacts to others ‣ Created an agent that reacts within the parameters of a deiberatively generated trajectory 21
    98. 98. Integrated Influence • My work focuses on trying to bridge the gap between reaction and deliberation in novel ways • Previous approaches have typically either : ‣ Created an agent that deliberates about certain aspects of the world and reacts to others ‣ Created an agent that reacts within the parameters of a deiberatively generated trajectory • Neither approach has proven particularly robust 21
    99. 99. Concept 22
    100. 100. Concept • We take the view that many aspects of the world can’t be tackled by one or other paradigm, but require both. 22
    101. 101. Concept • We take the view that many aspects of the world can’t be tackled by one or other paradigm, but require both. • To this end, our architecture aims to constantly use all information available, both deliberative and reactive, to make decisions 22
    102. 102. Search vs. Evaluation 23
    103. 103. Search vs. Evaluation • Searching spaces is a complex task. ‣ Typically at least NP-Hard, PDDL domains can be as complex as PSPACE-Complete • What if, instead of performing search, we could reformulate the problem into something closer to function evaluation? 23
    104. 104. Propositions 24
    105. 105. Propositions • PDDL’s propositional representation gives a state representation of very high dimension, with each dimension having exactly two possible values. • Can we do better with another representation format? 24
    106. 106. SAS+ 25
    107. 107. SAS+ • SAS+ groups mutually exclusive PDDL props together. ‣ Propositional - at(P1, L1), at(P1, L2), at(P1, L3), in(P1, T1) ‣ SAS+ - locationP1 ∈ {L1, L2, L3, T1} 25
    108. 108. SAS+ • SAS+ groups mutually exclusive PDDL props together. ‣ Propositional - at(P1, L1), at(P1, L2), at(P1, L3), in(P1, T1) ‣ SAS+ - locationP1 ∈ {L1, L2, L3, T1} • Also captures the ordering that the values take ‣ E.g. From any Lx to Ly, locationP1 take value T1 between 25
    109. 109. SAS+ • SAS+ groups mutually exclusive PDDL props together. ‣ Propositional - at(P1, L1), at(P1, L2), at(P1, L3), in(P1, T1) ‣ SAS+ - locationP1 ∈ {L1, L2, L3, T1} • Also captures the ordering that the values take ‣ E.g. From any Lx to Ly, locationP1 take value T1 between • Identifies the dependencies between different types of object 25
    110. 110. DTGs T1 L1 L2 L3 26
    111. 111. Influence Landscapes • Introduced the concept of Influence Map earlier 27
    112. 112. Influence Landscapes • Introduced the concept of Influence Map earlier • Influence Landscapes extend the idea away from a purely spatial representation and into a conceptual representation. 27
    113. 113. Influence Landscapes • Introduced the concept of Influence Map earlier • Influence Landscapes extend the idea away from a purely spatial representation and into a conceptual representation. • Allows for the same function-based approach to be applied to reasoning. 27
    114. 114. Influence Landscape T1 L1 L2 L3 28
    115. 115. Caveats 29
    116. 116. Caveats • It isn’t quite this easy 29
    117. 117. Caveats • It isn’t quite this easy • Need to consider ‘Causal Links’ 29
    118. 118. Caveats • It isn’t quite this easy • Need to consider ‘Causal Links’ • To load the package at L1, the truck needs to be at L1 too. 29
    119. 119. Caveats • It isn’t quite this easy • Need to consider ‘Causal Links’ • To load the package at L1, the truck needs to be at L1 too. • Interlinked set of DTGs allow this to be captured and represented. 29
    120. 120. DTG with CG T1 L1 L2 L3 30
    121. 121. DTG with CG T1 L1 L2 L3 L1 L2 L3 30
    122. 122. Landscape Generators 31
    123. 123. Landscape Generators • Previous example generated using a simple critical path analysis. 31
    124. 124. Landscape Generators • Previous example generated using a simple critical path analysis. • Need to get much more informed view of the world around the agent. 31
    125. 125. Landscape Generators • Previous example generated using a simple critical path analysis. • Need to get much more informed view of the world around the agent. • Illustrates the concept though - also useful for providing the “naive” view of the world. 31
    126. 126. Landscape Generators • Previous example generated using a simple critical path analysis. • Need to get much more informed view of the world around the agent. • Illustrates the concept though - also useful for providing the “naive” view of the world. • Critical path analysis gives some info about the structure of the world, but is not fully informed. 31
    127. 127. Stacks 32
    128. 128. Stacks • Stacks are the name given to Landscape Generators 32
    129. 129. Stacks • Stacks are the name given to Landscape Generators • Each stack is tasked with assigning a numerical value to every node within the DTG/CG space. 32
    130. 130. Stacks • Stacks are the name given to Landscape Generators • Each stack is tasked with assigning a numerical value to every node within the DTG/CG space. ‣ Remember that this is a smaller space than propositional 32
    131. 131. Stacks • Stacks are the name given to Landscape Generators • Each stack is tasked with assigning a numerical value to every node within the DTG/CG space. ‣ Remember that this is a smaller space than propositional • Each stack deals with a specific aspect of the world or a specific approach 32
    132. 132. Stacks • Stacks are the name given to Landscape Generators • Each stack is tasked with assigning a numerical value to every node within the DTG/CG space. ‣ Remember that this is a smaller space than propositional • Each stack deals with a specific aspect of the world or a specific approach ‣ E.g. Reactive, Deliberative (or some other information) 32
    133. 133. Deliberative - Plan 33
    134. 134. Deliberative - Plan • We can guide the search by bringing in the information a deliberative reasoner provides. 33
    135. 135. Deliberative - Plan • We can guide the search by bringing in the information a deliberative reasoner provides. ‣ E.g. Automated Planning 33
    136. 136. Deliberative - Plan • We can guide the search by bringing in the information a deliberative reasoner provides. ‣ E.g. Automated Planning • We can implement this as a stack generating a landscape reflecting the influence the plan exerts on our agent. 33
    137. 137. Deliberative - Plan • We can guide the search by bringing in the information a deliberative reasoner provides. ‣ E.g. Automated Planning • We can implement this as a stack generating a landscape reflecting the influence the plan exerts on our agent. • Typically this will be a best-case assumption. 33
    138. 138. Conformity 34
    139. 139. Conformity • How heavily do we want to reward conforming to the plan? 34
    140. 140. Tight Conformity 35
    141. 141. Tight Conformity • Reward every node the plan requires the agent to visit in the graph, Royal Road style. 35
    142. 142. Tight Conformity • Reward every node the plan requires the agent to visit in the graph, Royal Road style. • Visualise landscape as a ridge to the summit 35
    143. 143. Tight Conformity • Reward every node the plan requires the agent to visit in the graph, Royal Road style. • Visualise landscape as a ridge to the summit ‣ Excellent in best-cases 35
    144. 144. Tight Conformity • Reward every node the plan requires the agent to visit in the graph, Royal Road style. • Visualise landscape as a ridge to the summit ‣ Excellent in best-cases ‣ Poor when flexibility required 35
    145. 145. Tight Conformity • Reward every node the plan requires the agent to visit in the graph, Royal Road style. • Visualise landscape as a ridge to the summit ‣ Excellent in best-cases ‣ Poor when flexibility required • After deviating from the plan, best approach seems to be to rejoin the ridge - this may not be the case. 35
    146. 146. Loose Conformity 36
    147. 147. Loose Conformity • Use the plan to mark out a general path without strictly defining each node of the plan. 36
    148. 148. Loose Conformity • Use the plan to mark out a general path without strictly defining each node of the plan. • Much more flexible approach, guides the agent rather than dictating to it. 36
    149. 149. Loose Conformity • Use the plan to mark out a general path without strictly defining each node of the plan. • Much more flexible approach, guides the agent rather than dictating to it. • But how do you determine which nodes to mark and which to ignore? 36
    150. 150. Focal Nodes 37
    151. 151. Focal Nodes • Focal Nodes are these waypoints in the plan. 37
    152. 152. Focal Nodes • Focal Nodes are these waypoints in the plan. • Previous work with SAS+ has shown that a DTG can be deformed to be laid out in any way. 37
    153. 153. Focal Nodes • Focal Nodes are these waypoints in the plan. • Previous work with SAS+ has shown that a DTG can be deformed to be laid out in any way. ‣ Logistics-style domain overlaid on a map of Europe. 37
    154. 154. Focal Nodes • Focal Nodes are these waypoints in the plan. • Previous work with SAS+ has shown that a DTG can be deformed to be laid out in any way. ‣ Logistics-style domain overlaid on a map of Europe. • Highlights by inspection clumps of nodes and connections between them 37
    155. 155. Focal Nodes • Focal Nodes are these waypoints in the plan. • Previous work with SAS+ has shown that a DTG can be deformed to be laid out in any way. ‣ Logistics-style domain overlaid on a map of Europe. • Highlights by inspection clumps of nodes and connections between them ‣ E.g. Channel Tunnel, Dover ferry etc. 37
    156. 156. Clustering 38
    157. 157. Clustering • We can pick out the FNs by hand, but that’s no fun. 38
    158. 158. Clustering • We can pick out the FNs by hand, but that’s no fun. • Instead, using the structure of the graph to find them automagically. 38
    159. 159. Clustering • We can pick out the FNs by hand, but that’s no fun. • Instead, using the structure of the graph to find them automagically. • Clustering the nodes of the graph allows us to group nodes together by proximity 38
    160. 160. Clustering • We can pick out the FNs by hand, but that’s no fun. • Instead, using the structure of the graph to find them automagically. • Clustering the nodes of the graph allows us to group nodes together by proximity • Fuzzy Clustering allows us to identify nodes that lie between groups 38
    161. 161. Fuzzy Clustering 39
    162. 162. Focal Nodes 40
    163. 163. Using Focal Nodes 41
    164. 164. Using Focal Nodes • FNs can be identified offline for every DTG in the domain. 41
    165. 165. Using Focal Nodes • FNs can be identified offline for every DTG in the domain. • FNs that the plan indicates should be passed through then become “Activated”. 41
    166. 166. Using Focal Nodes • FNs can be identified offline for every DTG in the domain. • FNs that the plan indicates should be passed through then become “Activated”. • These nodes are given influence in the landscape and this is propagated out across the graph to guide the agent to these key nodes. 41
    167. 167. Plan Data 42
    168. 168. Environmental Data 43
    169. 169. Environmental Data • We can overcome the deficiencies in deliberative landscape by bringing in data about the environment 43
    170. 170. Environmental Data • We can overcome the deficiencies in deliberative landscape by bringing in data about the environment • Gives the kind of insight that a reactive system would use to make decisions. 43
    171. 171. Environmental Data • We can overcome the deficiencies in deliberative landscape by bringing in data about the environment • Gives the kind of insight that a reactive system would use to make decisions. • Allows us to inform the agent about things that may require it to deviate from the planned trajectory 43
    172. 172. Preferences 44
    173. 173. Preferences • Preferences allow the agent to bias the influence of nodes in the graph at execution time based on data being sensed. 44
    174. 174. Preferences • Preferences allow the agent to bias the influence of nodes in the graph at execution time based on data being sensed. • Can be either positive or negative. 44
    175. 175. Preferences • Preferences allow the agent to bias the influence of nodes in the graph at execution time based on data being sensed. • Can be either positive or negative. • Applies an influence of appropriate strength to the target node and then propagates that out 44
    176. 176. Road Blocks 45
    177. 177. Road Blocks • Road Block is an edge that should be in the domain but for some reason is not traversable at this time. 45
    178. 178. Road Blocks • Road Block is an edge that should be in the domain but for some reason is not traversable at this time. • Two conceptual models 45
    179. 179. Road Blocks • Road Block is an edge that should be in the domain but for some reason is not traversable at this time. • Two conceptual models ‣ Cancelled flight - this edge will never be traversable 45
    180. 180. Road Blocks • Road Block is an edge that should be in the domain but for some reason is not traversable at this time. • Two conceptual models ‣ Cancelled flight - this edge will never be traversable ‣ Blocked road - this edge may be traversable later 45
    181. 181. Road Blocks • Road Block is an edge that should be in the domain but for some reason is not traversable at this time. • Two conceptual models ‣ Cancelled flight - this edge will never be traversable ‣ Blocked road - this edge may be traversable later • Should the edge be removed? 45
    182. 182. Road Blocks • Road Block is an edge that should be in the domain but for some reason is not traversable at this time. • Two conceptual models ‣ Cancelled flight - this edge will never be traversable ‣ Blocked road - this edge may be traversable later • Should the edge be removed? ‣ Opted to implement the ‘Road Block’ model as this allows resensing later to check the state of the edge. 45
    183. 183. Integrated Landscape 46
    184. 184. Integrated Landscape • By combining the landscape from each of the individual stacks, we get the “Integrated Influence Landscape” from which the architecture draws its name. 46
    185. 185. Integrated Landscape • By combining the landscape from each of the individual stacks, we get the “Integrated Influence Landscape” from which the architecture draws its name. • Currently using an unweighted additive model for combining 46
    186. 186. Integrated Landscape • By combining the landscape from each of the individual stacks, we get the “Integrated Influence Landscape” from which the architecture draws its name. • Currently using an unweighted additive model for combining ‣ This may prove to be sub-optimal in further testing 46
    187. 187. Using the IIL 47
    188. 188. Using the IIL • Given an IIL, the agent can then climb the gradient towards the goal, changing between DTGs as required by the Causal Graph. 47
    189. 189. Using the IIL • Given an IIL, the agent can then climb the gradient towards the goal, changing between DTGs as required by the Causal Graph. • Hill Climbing algorithm obvious choice, but gets stuck at local maxima 47
    190. 190. Using the IIL • Given an IIL, the agent can then climb the gradient towards the goal, changing between DTGs as required by the Causal Graph. • Hill Climbing algorithm obvious choice, but gets stuck at local maxima ‣ Experimented with Forced-movement Hill Climbing 47
    191. 191. Using the IIL • Given an IIL, the agent can then climb the gradient towards the goal, changing between DTGs as required by the Causal Graph. • Hill Climbing algorithm obvious choice, but gets stuck at local maxima ‣ Experimented with Forced-movement Hill Climbing ‣ Also Neighbourhood-bounded A* 47
    192. 192. Using the IIL • Given an IIL, the agent can then climb the gradient towards the goal, changing between DTGs as required by the Causal Graph. • Hill Climbing algorithm obvious choice, but gets stuck at local maxima ‣ Experimented with Forced-movement Hill Climbing ‣ Also Neighbourhood-bounded A* ‣ Currently using Forced HC with ties broken randomly 47
    193. 193. Integrated Influence Plan Landscape Env Landscape Structure Landscape 48
    194. 194. Integrated Influence Integrated Influence Landscape 49
    195. 195. Bonus Feature! 50
    196. 196. Bonus Feature! • Brought up earlier time constraints of the Game Industry - around 1ms per frame. 50
    197. 197. Bonus Feature! • Brought up earlier time constraints of the Game Industry - around 1ms per frame. • Games give us a great context for testing “real world” style applications, and often already have the fast/smart requirements 50
    198. 198. Bonus Feature! • Brought up earlier time constraints of the Game Industry - around 1ms per frame. • Games give us a great context for testing “real world” style applications, and often already have the fast/smart requirements • Fully controllable simulation environment 50
    199. 199. Bonus Feature! • Brought up earlier time constraints of the Game Industry - around 1ms per frame. • Games give us a great context for testing “real world” style applications, and often already have the fast/smart requirements • Fully controllable simulation environment • Very pretty demos 50
    200. 200. Parrallelisation 51
    201. 201. Parrallelisation • By its nature, the stack paradigm is very flexible 51
    202. 202. Parrallelisation • By its nature, the stack paradigm is very flexible • Designed for each stack to be updated asynchronously 51
    203. 203. Parrallelisation • By its nature, the stack paradigm is very flexible • Designed for each stack to be updated asynchronously • Very suitable to parallel execution 51
    204. 204. Parrallelisation • By its nature, the stack paradigm is very flexible • Designed for each stack to be updated asynchronously • Very suitable to parallel execution ‣ Increasingly a big factor in modern computing 51
    205. 205. Vector Operations 52
    206. 206. Vector Operations • The vast majority of the maths mentioned can be stated as vector and matrix operations. 52
    207. 207. Vector Operations • The vast majority of the maths mentioned can be stated as vector and matrix operations. • Makes the whole architecture very suitable to execution on Cell SPUs. 52
    208. 208. Vector Operations • The vast majority of the maths mentioned can be stated as vector and matrix operations. • Makes the whole architecture very suitable to execution on Cell SPUs. ‣ Synergistic Processing Units are vector-based coprocessors in Cell-based systems such as PS3. 52
    209. 209. Vector Operations • The vast majority of the maths mentioned can be stated as vector and matrix operations. • Makes the whole architecture very suitable to execution on Cell SPUs. ‣ Synergistic Processing Units are vector-based coprocessors in Cell-based systems such as PS3. • SPUs are typically not used efficiently or fully. 52
    210. 210. Vector Operations • The vast majority of the maths mentioned can be stated as vector and matrix operations. • Makes the whole architecture very suitable to execution on Cell SPUs. ‣ Synergistic Processing Units are vector-based coprocessors in Cell-based systems such as PS3. • SPUs are typically not used efficiently or fully. ‣ Effectively “free” processing power. 52
    211. 211. Experiments 53
    212. 212. Experiments • Majority of work to date has been conceptual 53
    213. 213. Experiments • Majority of work to date has been conceptual • Initial prototype has been developed based on a number of assumptions 53
    214. 214. Experiments • Majority of work to date has been conceptual • Initial prototype has been developed based on a number of assumptions • Work currently ongoing to make sure all of these assumptions are valid. 53
    215. 215. Experiments • Majority of work to date has been conceptual • Initial prototype has been developed based on a number of assumptions • Work currently ongoing to make sure all of these assumptions are valid. • Experiments being run on small problem instances as translation from SAS+ encoding to internal architecture rep. currently by hand. 53
    216. 216. Results 54
    217. 217. Results • Early tests have shown some promising results 54
    218. 218. Results • Early tests have shown some promising results ‣ Noticeable decrease in time taken to make decisions over a purely deliberative method. 54
    219. 219. Results • Early tests have shown some promising results ‣ Noticeable decrease in time taken to make decisions over a purely deliberative method. - 1-2ms for a 12 decision point execution with 6ms of processing in advance. 54
    220. 220. Results • Early tests have shown some promising results ‣ Noticeable decrease in time taken to make decisions over a purely deliberative method. - 1-2ms for a 12 decision point execution with 6ms of processing in advance. ‣ Increased robustness to changes detected in the domain 54
    221. 221. Results • Early tests have shown some promising results ‣ Noticeable decrease in time taken to make decisions over a purely deliberative method. - 1-2ms for a 12 decision point execution with 6ms of processing in advance. ‣ Increased robustness to changes detected in the domain - Rapid discovery of alternative paths through the space 54
    222. 222. Results • Early tests have shown some promising results ‣ Noticeable decrease in time taken to make decisions over a purely deliberative method. - 1-2ms for a 12 decision point execution with 6ms of processing in advance. ‣ Increased robustness to changes detected in the domain - Rapid discovery of alternative paths through the space • Much more rigorous testing required. 54
    223. 223. Future Work 55
    224. 224. Future Work • A lot of work remains to develop this into a polished technique that will revolutionise AI. 55
    225. 225. Future Work • A lot of work remains to develop this into a polished technique that will revolutionise AI. ‣ Further testing on wider range of problems 55
    226. 226. Future Work • A lot of work remains to develop this into a polished technique that will revolutionise AI. ‣ Further testing on wider range of problems ‣ Full testing of all assumptions made and techniques chosen without substantiation 55
    227. 227. Future Work • A lot of work remains to develop this into a polished technique that will revolutionise AI. ‣ Further testing on wider range of problems ‣ Full testing of all assumptions made and techniques chosen without substantiation ‣ Development into a working system, rather than proof- of-concept prototype 55
    228. 228. Future Work • A lot of work remains to develop this into a polished technique that will revolutionise AI. ‣ Further testing on wider range of problems ‣ Full testing of all assumptions made and techniques chosen without substantiation ‣ Development into a working system, rather than proof- of-concept prototype ‣ Proof of extensibility of system by addition of additional Stacks representing other sources of information. 55
    229. 229. Questions?

    ×