AGERE

AGERE! @ SPLASH 2011

1st International Workshop on Programming Systems, Languages, and Applications based on

Agents, Actors, and Decentralized Control Abstractions

Workshop held at ACM SPLASH 2011

Monday, 24 October 2011 - Portland, USA

OOPSLASPLASH2011.png ws042o.png

AGERE! Follow-up document

Notes and points raised during the workshop panel & discussion have been collected in the following work-in-progress doc: ==

https://docs.google.com/document/pub?id=1pd2aiCq8_x5WT1DG2Mwb9Oe5wdLcindjhPuMwSC1iqs

To contribute, just sign in to the AGERE! @ SPLASH group.

AGERE! Forum & Live Workshop

Join the AGERE! @ SPLASH group: https://groups.google.com/group/agere-at-splash to interact with organizers / contributors / participants, put questions, know latest news about the workshop.

Program & Pre-proceedings

The full schedule is available here: https://docs.google.com/spreadsheet/pub?key=0Ai4lSQe0n1R0dGVHYXVFT2JvSEdfc04xa2hldWx1QlE&output=html

Schedule in PDF (last update: 20111021)

Pre-proceedings can be downloaded here (Last update: Oct 14, 2011 - 3:00pm).

Introductory talk:

  • Actors and Agents as Programming Paradigms - An Overview
    • Gul Agha (University of Illinois at Urbana-Champaign, US)
    • Alessandro Ricci (University of Bologna, Italy)
    • Slides

Invited talk:

Panel (the list of panelists is partial):

  • Actors and Agents as Programming Paradigms - Next
    • Gul Agha (University of Illinois at Urbana-Champaign, US)
    • Mark Miller (Google, US)
    • Wolfgang De Meuter (Vrije Universiteit Brussel, Belgium)
    • Alessandro Ricci (University of Bologna, Italy)
    • Slides

Accepted papers:

  • A Feature Model of Actor, Agent, and Object Programming Languages
    • Howell Jordan, Goetz Botterweck, Marc-Philippe Huget and Rem Collier - Lero, University College Dublin, Lero, University of Limerick, University of Savoie, UCD
    • Slides
  • Designing a General-Purpose Programming Language based on Agent-Oriented Abstractions: The simpAL Project
    • Alessandro Ricci, Andrea Santi
    • Slides 
  • Behavioral Programming, Decentralized Control, and Multiple Time Scales
    • David Harel, Assaf Marron, Guy Wiener and Gera Weiss - Weizmann Institute of Science, Ben Gurion University
    • Slides
  • Cloudscape: Language Support to Coordinate and Control Distributed Applications in the Cloud
    • Andi Bejleri, Andrew Farrell and Patrick Goldsack - Imperial College London, HP Labs, Bristol
    • Slides
  • Higher-Order Contracts for Actor Based Languages
    • Christophe Scholliers, Wolfgang De Meuter and Eric Tanter - Vrije Universiteit Brussel, PLEIAD Laboratory
    • Slides 
  • AF-Raf: An Agent-Oriented Programming Language with Algebraic Data Types
    • Claudia Grigore and Rem Collier - University College Dublin
    • Slides
  • An Agent Framework for Agent Societies
    • Kyle Usbeck and Jacob Beal - BBN Technologies
    • Slides 
  • No More Design Patterns for Multi-Agent Systems
    • Mario Henrique Cruz Torres, Tony Van Beers, Tom Holvoet
    • Slides 
  • Integrating Jason in a Multi-Agent Platform with support for Interaction Protocols
    • Bexy Alfonso, Emilio Vivancos, Vicent Botti and Ana García-Fornes
    • Slides 

Accepted demo:

  • AmbientTalk: Modern Actors for Modern Networks
    • Tom Van Cutsem - Vrije Universiteit Brussel
  • Exploiting Intelligent Agent-Based Technologies for Programming Smart Mobile Applications
    • Andrea Santi and Alessandro Ricci - University of Bologna
  • The GMF-based Syntax Tool of a DSML for the Semantic Web enabled Multi-Agent Systems
    • Sinem Getir, Sebla Demirkol, Moharram Challenger and Geylani Kardas - Ege University International Computer Institute, Turkey
  • Exploiting the JaCaMo Framework for Realising an Adaptive Room Governance Application
    • Alexandru Sorici, Olivier Boissier, Gauthier Picard and Andrea Santi

What AGERE! is About

The fundamental turn of software into concurrency and distribution is not only a matter of performance, but also of design and abstraction, calling for programming paradigms that would allow more naturally than the current ones to think, design, develop, execute, debug and profile programs exhibiting different degrees of concurrency, reactiveness, autonomy, decentralization of control, distribution. This workshop aims at exploring programming approaches explicitly providing a level of abstraction that promotes a decentralized mindset in solving problems and programming systems. To this end, the abstractions of agents and actors (and systems of agents and actors) are taken as a natural reference: the objective of the workshop is then to foster the research in all aspects of agent-oriented programming and actor-oriented programming as evolution of mainstream paradigms (such as OOP), including the theory and the practice of design and programming, bringing together researchers working on the models, languages and technologies, and practitioners developing real-world systems and applications.

Important dates

Papers can be submitted in two different moments:

Early Submissions

Paper Submission: Friday, 19 August 2011 Notification: Monday, 19 September 2011\ Early SPLASH registration: Friday, 23 September 2011 \ Final version: Monday, 10 October 2011\

This submission time is for whom would like to have the time to apply for the early SPLASH registration (23 Sept) if the paper is accepted. 

Late Submissions 

Paper Submission: Friday, 9 September 2011 \ Notification: Monday, 3 October 2011 \ Final version: Monday, 10 October 2011\

Demo

Demo submission: Friday, 9 September 2011\ Demo notification: Monday, 19 September 2011\

Motivations and Goals

The fundamental turn of software into concurrency, interactivity, distribution is not only a matter of performance, but also design and abstraction. "The free lunch is over" [15] calls for devising new programming paradigms - being evolution of existing ones or not - that would allow to naturally think, design, develop, execute, debug and profile programs exhibiting different degree of concurrency, reactiveness, autonomy, decentralization of control, distribution. Almost any application today includes the need of programming software components that actively - pro-actively and re-actively - do concurrently some jobs, reacts to various kind of events, communicate each other by means of some interaction model. How to properly program these entities and systems of entities, what kinds of programming abstractions can help in systematically structuring complex reactive and proactive behaviors, what kinds of programming abstractions can be effective in organizing applications as ensemble of relatively autonomous entities working together, are important research questions. \

Given this premise, the focus of this workshop is to investigate the definition of proper levels of abstraction, programming languages and platforms to support and promote a decentralized mindset [12] in solving problems, designing systems, programming applications, including teaching computer programming. So, thinking about problems and programs taking decentralization of control and interaction as basic features. To this end, we start from agents (and multi-agent systems) and actors, which can be recognized as two main families of concepts, abstractions and programming tools described in literature that explicitly promote such a decentralized thinking-even if assuming different facets depending on the context in which they are discussed, being it concurrent programming or Distributed Artificial Intelligence. Accordingly, in this workshop we aim at promoting the discussion about agent-oriented and actor-oriented programming languages (models, theories, applications, systems), so as to explore agents and actors as a general-purpose paradigm for software development. Any stage of programming is interesting for the workshop, including requirements, modeling, prototyping, design, implementation, testing, and any other means of producing running software based on actors and agents as first-class abstractions.

The workshop aims at fostering the development of the research in all aspects of actor and agent oriented programming in the same vein that OOPSLA did for OOP at the beginning of the 80ies. So promoting the investigation of all the features that would make agent-oriented / actor-oriented programming effective tools for developing software systems, as an evolution of the OO paradigm.  Including aspects that concern both the theory and the practice of design and programming using such paradigms, so as to bring together researchers working on the models, languages and technologies, and practitioners using such technologies to develop real-world systems and applications.  

This overall perspective - oriented to impact on mainstream programming paradigms and software development - is what distinguishes this event from related venues about agents and actors, organized in different contexts.  Nevertheless, the event aims at being a good forum for collecting, discussing and confronting related research works that typically appear in different communities in the context of (Distributed) Artificial Intelligence, distributed computing, computer programming and software engineering. Examples include: research work on agent oriented programming and multi-agent programming [3, 4], either rooted in Distributed Artificial Intelligence [14, 5, 9, 6] or computer programming contexts [11, 13, 16]; research work on actor-oriented programming [1, 8], including well-known programming languages/systems providing directly or indirectly support for actor oriented programming: examples are Erlang [2], Scala [7], Axum [17]; research work on new programming paradigm and reinvention of programming [10]; research work on the extension of OO programming languages towards actor or agent like level of abstraction.

Topics

The workshop welcomes papers providing an original contribution on all the topics that concern agent and actor oriented programming and software development, including:

  • Programming languages and frameworks
    • theory and practice
  • Foundations
    • ideas, concepts, reflections about computation and programming models based on actors/agents
  • Design
    • design principles underlying actors/agents thinking
    • bridging the gap from design to programming
  • Tool  design and development
    • interpreters, compilers, virtual machines, platforms
  • Testing, debugging, profiling actor/agent systems
    • ...
  • Applications
    • ....
  • Teaching
    • the impact that these paradigms can have in teaching computer science and engineering,
    • how to teach these computing paradigms and when

Submissions

We solicit submissions on original research not previously published or currently submitted for publication elsewhere.  Different types of original contributions are interesting for the workshop:

  • position/perspective papers
    • introducing novel ideas, perspectives, reflections
  • research/technical papers
    • providing technical contributions on research issues
  • application papers
    • about applying the technologies to relevant application domains
  • survey/state-of-the-art
    • helping to frame and discuss  existing models/technologies
  • teaching experiences
    • ideas and experiences related to teaching actors/agents programming in courses or exploring these paradigms for teaching traditional courses (concurrent and distributed programming, but also CS101 in perspective)

Submissions should be PDF or PostScript in standard SIGPLAN 9pt conference format for a US-letter size page. Templates are available at: 

http://www.acm.org/sigs/sigplan/authorInformation.htm

Submissions can be up to 12 pages.

Papers can be submitted until the deadline at:

https://www.easychair.org/conferences/?conf=ageresplash2011

Demos

The workshop will run also a demonstration session, whose goal is to give participants, from industry and academia an opportunity to present their latest developments on technologies (platforms, frameworks, tools, applications). The workshop welcomes also valuable demos resulting from students' projects or thesis work. 

A description of the demo must be submitted using the same submission format & channel (https://www.easychair.org/conferences/?conf=ageresplash2011) of the regular papers. 

The description should be a 2-pages paper in which the authors describe the system to be demonstrated. The tag {DEMO} must be clearly reported at the end of the title. 

A demo paper can possibly refers also to a regular paper, accepted for the main track.

Proceedings and post-proceedings

Accepted papers will be included in the ACM DL proceedings after the conference and (to be confirmed) in the SPLASH Companion DVD. 

Besides, depending on the results of the workshop, a selected set of papers will be invited to be extended and included in a special issue on a reference journal for the area about the state of the art related to actor and agent oriented programming technologies and related applications. More details about this point will be available in the short future.

Committees

Organizing Committee

Gul Agha, University of Illinois at Urbana-Champaign, USA \ Rafael  H.   Bordini, Federal University of Rio Grande do Sul, Brazil \ Alessandro Ricci, University of Bologna, Italy 

Program Committee

(in alphabetic order, to be completed)\

Gul Agha, University of Illinois at Urbana-Champaign, USA \ Joe Armstrong,  SICS / Ericsson, Sweden \ Olivier Boissier, LSTI ENS Mines Saint-Etienne, France\ Rafael Bordini, Federal University of Rio Grande do Sul, Brazil \ Jean-Pierre Briot, LIP6, Paris 6, France \ Rem Collier, UCL, Dublin \ Mehdi Dastani, Utrecht University, The Netherlands \ Jürgen Dix, Technical University of Clausthal, Germany \ Koen Hindriks, Delft University of Technology, The Netherlands\ Tom Holvoet, Dept. Computer Science K.U.Leuven, Belgium \ Jomi Hübner, Federal University of Santa Catarina, Brazil \ João Leite, New University of Lisbon, Portugal\ Jorge Gomez-Sanz, Universidad Complutense Madrid, Spain \ Jamali Nadeem, University of Saskatchewan, Saskatoon, Canada\ Ravi Pandya, Microsoft \ Jens Palsberg, UCLA, Los Angeles, USA \ Alessandro Ricci, University of Bologna, Italy \ Birna van Riemsdijk, Delft University of Technology, The Netherlands\ Giovanni Rimassa, Whitestein Technologies\ Amal El Fallah Seghrouchni,  LIP6 - University Pierre and Marie Curie \ Munindar Singh, North Carolina State University, USA \ Akinori Yonezawa, University of Tokyo, Japan \ ...    \

Starting the Workshop Now! forum

A Google group called AGERE! at SPLASH has been setup as a forum to solicit both suggestions/comments about both the fore-coming AGERE! workshop and - more generally -  interactions/discussions about the core topics on which the workshop is focussed.

The forum is public and open to anyone interested to read about ongoing discussions and eventually contribute to it -- join us at AGERE! at SPLASH

References

[1] G. Agha. Actors: a model of concurrent computation in distributed sys- tems. MIT Press, Cambridge, MA, USA, 1986.
[2] J. Armstrong. Erlang. Commun. ACM, 53(9):68-75, 2010.
[3] R. Bordini, M. Dastani, J. Dix, and A. El Fallah Seghrouchni, editors. Multi-Agent Programming Languages, Platforms and Applications - Volume 1, volume 15 of Multiagent Systems, Artificial Societies, and Simu- lated Organizations. Springer, 2005.
[4] R. Bordini, M. Dastani, J. Dix, and A. El Fallah Seghrouchni, editors. Multi-Agent Programming Languages, Platforms and Applications - Vol- ume 2, Multiagent Systems, Artificial Societies, and Simulated Organizations. Springer, 2009.
[5] R. Bordini, J. Hubner, and M. Wooldridge. Programming Multi-Agent Systems in AgentSpeak Using Jason. John Wiley & Sons, Ltd, 2007.
[6] M. Dastani. 2apl: a practical agent programming language. Autonomous Agents and Multi-Agent Systems, 16(3):214-248, 2008.
[7] P. Haller and M. Odersky. Scala actors: Unifying thread-based and event- based programming. Theoretical Computer Science, 2008.
[8] C. Hewitt. Viewing control structures as patterns of passing messages. Artif. Intell., 8(3):323-364, 1977.
[9] K. V. Hindriks. Programming rational agents in GOAL. In R. H. Bor- dini, M. Dastani, J. Dix, and A. El Fallah Seghrouchni, editors, Multi- Agent Programming: Languages, Platforms and Applications (2nd vol- ume), pages 3-37. Springer-Verlag, 2009.
[10] A.Kay.Programmingandprogramminglanguages,2010.VPRIResearch Note RN-2010-001.
[11] J. J. Odell. Objects and agents compared. Journal of Object Technology, 1(1):41-53, 2002.
[12] M. Resnick. Turtles, Termites and Traffic Jams. Explorations in Mas- sively Parallel Microworlds. MIT Press, 1994.
[13] A. Ricci, M. Viroli, and G. Piancastelli. simpa: An agent-oriented ap- proach for programming concurrent applications on top of java. Science of Computer Programming, 76(1):37 - 62, 2011.
[14] Y. Shoham. Agent-oriented programming.    Artificial Intelligence, 60(1):51-92, 1993.
[15] H. Sutter and J. Larus. Software and the concurrency revolution. ACM Queue: Tomorrow's Computing Today, 3(7):54-62, Sept. 2005.
[16] M. D. Travers. Programming with Agents: New metaphors for thinking about computation. Massachusetts Institute of Technology, 1996.
[17] Axum project, 2011. http://msdn.microsoft.com/en-us/devlabs/dd795202.)))