interaction oriented software engineering
play

Interaction-Oriented Software Engineering Amit K. Chopra Lancaster - PowerPoint PPT Presentation

Interaction-Oriented Software Engineering Amit K. Chopra Lancaster University a.chopra1@lancaster.ac.uk (Joint work with Munindar P. Singh) Dagstuhl March 25, 2015 Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 1 / 16


  1. Interaction-Oriented Software Engineering Amit K. Chopra Lancaster University a.chopra1@lancaster.ac.uk (Joint work with Munindar P. Singh) Dagstuhl March 25, 2015 Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 1 / 16

  2. Interaction-Orientation Designing a multiagent system means designing interaction protocols Sociotechnical System Principal Principal Interaction Agent Messages Agent Database Database ◮ How to specify interaction protocols and how to support their enactments via software? Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 2 / 16

  3. Current Software Engineering: Machine-Oriented SE considers only two “participants”: the software and the environment Monitored Input Input Devices variables data (Sensors) Environment Software to be Output Devices (Actuators) Controlled Output variables data Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 3 / 16

  4. Current Approaches: Integration m X Y API API Communication Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 4 / 16

  5. Interaction Protocols Specify rules of encounter ◮ Low-level ◮ Among objects, sensors, devices, software agents, and so on ◮ Specify constraints on messaging ◮ E.g. in the Blindingly Simple Protocol Language (Singh) ◮ High-level (traditional focus in MAS) ◮ Specify how social expectations among principals progress as they interact ◮ E.g., commitment protocols Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 5 / 16

  6. Expectations Accountability in reverse ◮ Arise in an organizational context ◮ Directed from expector to expectee ◮ For something conditional ◮ E.g., in commitments, creditor is expector and debtor is expectee ◮ Norms are expectations Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 6 / 16

  7. Cupid: A Commitment-Based Information Layer Enables tracking commitments in databases ◮ With Cupid, one writes simple canonical commitment queries ◮ All created commitment of a type (analogously, detached, expired, violated, and discharged). ◮ Instead of complex low-level SQL queries or rules Agent Messaging Agent Cupid queries Cupid queries Database Database Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 7 / 16

  8. An Information Model and Commitment Specification Quote (mID , cID , qID , itemID , uPrice , t ) with key qID Order ( cID , mID , oID , qID , qty , addr , t ) with key oID Payment ( cID , mID , pID , oID , pPrice , t ) with key pID Shipment (mID , cID , sID , oID , addr , t ) with key sID Refund (mID , cID , rID , pID , rAmount , t ) with key rID Coupon ( cID , mID , uID , oID , rebate , t ) with key uID commitment DiscountQuote mID to cID create Quote detach Order and Payment [ , Quote + 10] where pPrice > = 0.9 ∗ uPrice ∗ qty discharge Shipment [ , Payment + 5] Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 8 / 16

  9. Calypso: Commitment Alignment Fundamental notion of interoperability ◮ Each agent observes messages sequentially ◮ System state is a vector of observation sequences, one for each agent ◮ Invariant: In any system state, if a creditor infers an active commitment from its observations , then debtor must infer that commitment as active from its own observations . Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 9 / 16

  10. Asynchrony Problems Scenarios (B), (C), and (D) end in misalignment Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 10 / 16

  11. Problems Due to NonFIFO Message Delivery In (B) and (C) messages are not delivered on FIFO basis, which causes misalignment Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 11 / 16

  12. Transaction-Related Problems Aligned but unrealistic outcomes due to the lack of transactions Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 12 / 16

  13. Completeness In (A) and (B), misaligned at dotted line, but not in (C) Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 13 / 16

  14. Cupid and Calypso Done independently, but deep connections ◮ Cupid tells us what is in a database; Calypso ensures multiple databases are sufficiently synced up ◮ Parts of the same puzzle: a commitment-based middleware that simplifies agent programming Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 14 / 16

  15. Layered Architecture for MAS Low-level and high-level protocols Agent Agent Cupid & Calypso Cupid specifications Cupid & Calypso LoST (BSPL) BSPL specifications LoST (BSPL) Transport Transport Messages Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 15 / 16

  16. Summary ◮ Approach normative multiagent systems as distributed systems ◮ Understand norms as expectations among principals ◮ Understand norms in terms of information in databases ◮ Build an abstraction layer that addresses issues of information and distribution Chopra (a.chopra1@lancaster.ac.uk) IOSE March 25, 2015 16 / 16

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