Knowledge-based programming: a survey of program design and construction techniques
IEEE Transactions on Software Engineering
Communications of the ACM
Metainterpreters for expert system construction
Journal of Logic Programming
Introduction to algorithms
Seven Layers of Knowledge Representation and Reasoning in Support of Software Development
IEEE Transactions on Software Engineering - Special issue on knowledge representation and reasoning in software development
Specifications are (preferably) executable
Software Engineering Journal
The art of Prolog (2nd ed.): advanced programming techniques
The art of Prolog (2nd ed.): advanced programming techniques
Applying techniques to skeletons
Constructing logic programs
Applying Prolog programming techniques
International Journal of Human-Computer Studies
From logic programming to Prolog
From logic programming to Prolog
The Semantics of Predicate Logic as a Programming Language
Journal of the ACM (JACM)
Programming languages and systems for prototyping concurrent applications
ACM Computing Surveys (CSUR)
ACM Computing Surveys (CSUR)
Prolog (3rd ed.): programming for artificial intelligence
Prolog (3rd ed.): programming for artificial intelligence
Program development by stepwise refinement
Communications of the ACM
Communications of the ACM
Understanding agent systems
An abstract formalization of correct schemas for program synthesis
Journal of Symbolic Computation - Special Issue on Schemas
Skeleton-based agent development for electronic institutions
Proceedings of the first international joint conference on Autonomous agents and multiagent systems: part 2
ISLANDER: an electronic institutions editor
Proceedings of the first international joint conference on Autonomous agents and multiagent systems: part 3
Evolutionary programming in SADDE
Proceedings of the first international joint conference on Autonomous agents and multiagent systems: part 3
Heterogeneous Agent Systems
Introduction to Multiagent Systems
Introduction to Multiagent Systems
Introduction To Automata Theory, Languages, And Computation
Introduction To Automata Theory, Languages, And Computation
Approaches to Prototyping
From logic programming towards multi-agent systems
Annals of Mathematics and Artificial Intelligence
HTML and XHTML: The Definitive Guide
HTML and XHTML: The Definitive Guide
Rapid Prototyping: Lessons Learned
IEEE Software
A Practical Approach for Logic Program Analysis and Transformation
MICAI '00 Proceedings of the Mexican International Conference on Artificial Intelligence: Advances in Artificial Intelligence
LOPSTR '95 Proceedings of the 5th International Workshop on Logic Programming Synthesis and Transformation
Formalizing a Language for Institutions and Norms
ATAL '01 Revised Papers from the 8th International Workshop on Intelligent Agents VIII
A Lifecycle for Models of Large Multi-agent Systems
AOSE '01 Revised Papers and Invited Contributions from the Second International Workshop on Agent-Oriented Software Engineering II
An Approach to Rapid Prototyping of Large Multi-Agent Systems
Proceedings of the 17th IEEE international conference on Automated software engineering
Combining Logical Agents with Rapid Prototyping for Engineering Distributed Applications
STEP '99 Proceedings of the Software Technology and Engineering Practice
Expressive global protocols via logic-based electronic institutions
AAMAS '03 Proceedings of the second international joint conference on Autonomous agents and multiagent systems
ADK: An Agent Development Kit Based on a Formal Design Model for Multi-Agent Systems
Automated Software Engineering
Formalization of a voting protocol for virtual organizations
Proceedings of the fourth international joint conference on Autonomous agents and multiagent systems
Law-governed Linda as a semantics for agent dialogue protocols
Proceedings of the fourth international joint conference on Autonomous agents and multiagent systems
WI '06 Proceedings of the 2006 IEEE/WIC/ACM International Conference on Web Intelligence
Outlier detection by logic programming
ACM Transactions on Computational Logic (TOCL)
Real-time cooperative multi-target tracking by dense communication among Active Vision Agents
Web Intelligence and Agent Systems
Constraint rule-based programming of norms for electronic institutions
Autonomous Agents and Multi-Agent Systems
Normative conflict resolution in multi-agent systems
Autonomous Agents and Multi-Agent Systems
Formal methods in agent-oriented software engineering
AOSE'10 Proceedings of the 10th international conference on Agent-oriented software engineering
Annals of Mathematics and Artificial Intelligence
A distributed architecture for norm-aware agent societies
DALT'05 Proceedings of the Third international conference on Declarative Agent Languages and Technologies
Norm verification and analysis of electronic institutions
DALT'04 Proceedings of the Second international conference on Declarative Agent Languages and Technologies
Hi-index | 0.00 |
Prototyping is a valuable technique to help software engineers explore the design space while gaining insight on the dynamics of the system. In this paper, we describe a method for rapidly building prototypes of large multi-agent systems using logic programming. Our method advocates the use of a description of all permitted interactions among the components of the system, that is, the protocol, as the starting specification. The protocol is represented in a way that allows us to automatically check for desirable properties of the system to be built. We then employ the same specification to synthesise agents that will correctly follow the protocol. These synthesised agents are simple logic programs that engineers can further customise into more sophisticated software. Our choice of agents as logic programs allows us to provide semi-automatic support for the customisation activity. In our method, a prototype is a protocol with a set of synthesised and customised agents. Executing the prototype amounts to having these agents enact the protocol. We have implemented and described a distributed platform to simulate prototypes.