levels of abstractions
play

LEVELS OF ABSTRACTIONS IN DESIGNING & PROGRAMMING SYSTEMS OF - PowerPoint PPT Presentation

LEVELS OF ABSTRACTIONS IN DESIGNING & PROGRAMMING SYSTEMS OF COGNITIVE AGENTS A. Ricci DISI, University of Bologna OBJECTIVE OBJECTIVE Some glances about Agent-Oriented Programming and Multi- Agent Oriented Programming - examples


  1. LEVELS OF ABSTRACTIONS IN DESIGNING & PROGRAMMING SYSTEMS OF COGNITIVE AGENTS A. Ricci DISI, University of Bologna

  2. OBJECTIVE

  3. OBJECTIVE • Some glances about Agent-Oriented Programming and Multi- Agent Oriented Programming - examples using JaCaMo framework/technology

  4. OBJECTIVE • Some glances about Agent-Oriented Programming and Multi- Agent Oriented Programming - examples using JaCaMo framework/technology • Main viewpoint - Level of abstraction, from design to runtime through programming

  5. OBJECTIVE • Some glances about Agent-Oriented Programming and Multi- Agent Oriented Programming - examples using JaCaMo framework/technology • Main viewpoint - Level of abstraction, from design to runtime through programming • Some points for the discussion - AOP and (M)AOP for the web/hypermedia?

  6. AGENT-ORIENTED PROGRAMMING • AI view - modeling/designing/programming autonomous systems, referred as agents • SE view - using agents as first-class modeling/designing/programming abstraction

  7. AGENT ABSTRACTION

  8. AGENT ABSTRACTION sensors feedback percepts PERCEPTION ENVIRONMENT DECISION a action to do c t i o n s ACTION effectors / actuators

  9. AGENT ABSTRACTION sensors feedback percepts PERCEPTION • task/goal-oriented ENVIRONMENT • pro-active + reactive DECISION a • decision making action to do c t i o n s ACTION effectors / actuators

  10. PARADIGMS & METAPHORS machines imperative => math functional => OOP => world of objects agents =>

  11. PARADIGMS & METAPHORS machines imperative => math functional => OOP => world of objects world of humans agents =>

  12. ACTIONS & PERCEPTS ENVIRONMENT ACTIONS OBSERVABLE STATE AGENT PERCEPTS

  13. ACTIONS & PERCEPTS • control uncoupling ENVIRONMENT - action execution model is ACTIONS asynchronous ‣ success/failure events OBSERVABLE STATE - percepts as obs state events AGENT PERCEPTS

  14. ACTIONS & PERCEPTS • control uncoupling ENVIRONMENT - action execution model is ACTIONS asynchronous ‣ success/failure events OBSERVABLE STATE - percepts as obs state events AGENT • vs. other models - vs. method/proc calls PERCEPTS - vs. async msg (actor) passing

  15. AGENT COMMUNICATION AGENTS ENVIRONMENT ACTIONS OBSERVABLE STATE SPEECH ACTS PERCEPTS

  16. AGENT COMMUNICATION AGENTS • Agent Communication ENVIRONMENT Languages ACTIONS - “speech acts” - ~asynchronous message OBSERVABLE STATE passing + action SPEECH ACTS semantics PERCEPTS

  17. AGENT COMMUNICATION AGENTS • Agent Communication ENVIRONMENT Languages ACTIONS - “speech acts” - ~asynchronous message OBSERVABLE STATE passing + action SPEECH ACTS semantics • vs. other model PERCEPTS - vs. async (actor) msg passing

  18. “COGNITIVE” MODEL

  19. “COGNITIVE” MODEL • AOP as a computing paradigm - mentalistic and societal view of computation [Soham, 1993] - level of abstraction to design and program

  20. “COGNITIVE” MODEL • AOP as a computing paradigm - mentalistic and societal view of computation [Soham, 1993] - level of abstraction to design and program • BDI (Belief-Desire-Intention) model/architecture (80ies) - inspired by the theory of human practical reasoning [Bratman, 1987] - Procedural Reasoning System (PRS) [Georgeff et al, 1988]

  21. “COGNITIVE” MODEL • Beliefs - information state • Goals - tasks to do - achieve | maintenance • Plans - how to achieve the goals - modules of agent behaviour

  22. “COGNITIVE” MODEL • Beliefs • Beliefs - information state - information state temp BELIEF BASE 15° • Goals • Goals my_name(“ag0”) state temp(15) - tasks to do - tasks to do idle state(idle) - achieve | maintenance - achieve | maintenance … startCooling • Plans • Plans startWarming stop HVAC - how to achieve the goals - how to achieve the goals ENVIRONMENT AGENT - modules of agent behaviour - modules of agent behaviour

  23. “COGNITIVE” MODEL • Beliefs • Beliefs • Beliefs // examples in Jason - information state - information state - information state • Goals • Goals • Goals !achieve_temp(20). - tasks to do - tasks to do - tasks to do /* more declarative style */ - achieve | maintenance - achieve | maintenance - achieve | maintenance !temp(20). • Plans • Plans • Plans /* long-term task */ - how to achieve the goals - how to achieve the goals - how to achieve the goals !achieve_and_keep_temp(20). - modules of agent behaviour - modules of agent behaviour - modules of agent behaviour

  24. “COGNITIVE” MODEL • Beliefs • Beliefs • Beliefs • Beliefs - information state - information state - information state - information state PLAN LIBRARY • Goals • Goals • Goals • Goals - tasks to do - what tasks to do - tasks to do - tasks to do @myplanX - achieve | maintenance - achieve | maintenance - achieve | maintenance - achieve | maintenance • Plans • Plans • Plans • Plans - how to achieve the goals - how to achieve the goals - how to achieve the goals - how to achieve the goals - modules of agent behaviour - modules of agent behaviour - modules of agent behaviour - modules of agent behaviour AGENT

  25. PLAN MODEL | JASON EXAMPLE • Plan model • Plan model - pro-active plans - pro-active plans <event> : <context> - reactive plans - reactive plans <- <body>. • Hierarchical model • Hierarchical model - sub-goals - sub-goals

  26. PLAN MODEL | JASON EXAMPLE +!achieve_temp(Target) : temp(Current) & Target > Current <- startWarming; • Plan model • Plan model • Plan model !warm_until(Target). - pro-active plans - pro-active plans - pro-active plans +!achieve_temp(Target) : <event> : <context> - reactive plans - reactive plans - reactive plans temp(Current) & Target < Current <- <body>. <- startCooling; • Hierarchical model • Hierarchical model • Hierarchical model !cool_until(Target). - sub-goals - sub-goals - sub-goals +!achieve_temp(Target) : temp(Current) & Target == Current <- stopHVAC.

  27. PLAN MODEL | JASON EXAMPLE • Plan model • Plan model • Plan model • Plan model // long-term / maintenance task // target(T): belief used to track - pro-active plans - pro-active plans - pro-active plans - pro-active plans // the target temperature <event> : <context> - reactive plans - reactive plans - reactive plans - reactive plans <- <body>. +temp(Current) : • Hierarchical model • Hierarchical model • Hierarchical model • Hierarchical model target(Target) & Target != Current <- !achieve_temp(Target). - sub-goals - sub-goals - sub-goals - sub-goals

  28. PLAN MODEL | JASON EXAMPLE +!achieve_temp(Target) : temp(Current) & Target < Current <- startWarming; • Plan model • Plan model • Plan model • Plan model • Plan model !warm_until(Target). // long-term / maintenance task // target(T): belief used to track - pro-active plans - pro-active plans - pro-active plans - pro-active plans - pro-active plans // the target temperature +!achieve_temp(Target) : <event> : <context> - reactive plans - reactive plans - reactive plans - reactive plans - reactive plans temp(Current) & Target > Current <- <body>. <- startCooling; +temp(Current) : • Hierarchical model • Hierarchical model • Hierarchical model • Hierarchical model • Hierarchical model target(Target) & Target != Current !cool_until(Target). <- !achieve_temp(Target). - sub-goals - sub-goals - sub-goals - sub-goals - sub-goals +!achieve_temp(Target) : temp(Current) & Target == Current <- stopHVAC.

  29. “COGNITIVE” MODEL +!achieve_temp(Target) : temp(Current) & Target < Current • Intention <- startWarming; - a plan in execution !warm_until(Target). ‣ can fail => plan failure handling -!achieve_temp(Target) : <- print(“broken”); ‣ can be inspected, suspended, send_email. resumed, aborted +!warm_until(Target) : - multiple intentions can be in temp(Current) & Current > Target execution concurrently <- .drop_intention(warm_until); !achieve_temp(Target).

  30. “COGNITIVE” MODEL // adding a plan action +!g1 <- • Reflection/meta-level features … .add_plan(“+b : true <- .print(b).”); ‣ adding/changing plans at runtime … ‣ inspecting/changing motivation // checking for an intention state +!g1 : .intend(g2) <- … ‣ … .suspend_intention(g2); …

  31. CONTROL LOOP | REASONING CYCLE

  32. CONTROL LOOP | REASONING CYCLE • Abstract/general AGENT see action next state ENVIRONMENT

  33. CONTROL LOOP | REASONING CYCLE • (BDI) Reasoning cycle • Abstract/general AGENT begin 1 see action while true do 2 p ← perception () 3 B ← brf ( B , p ) ; // belief revision 4 D ← options ( B , I ) ; // desire revision next state 5 I ← filter ( B , D , I ) ; // deliberation 6 execute ( I ) ; // means-end 7 end 8 ENVIRONMENT

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend