A Multi-Agent System for the automated handling of experimental protocols in biological laboratories Alessandro Maccagnan∗ , Tullio Vardanega∗ , Erika Feltrin† , Giorgio Valle† , Mauro Riva‡ , Nicola Cannata§ ∗ Department of Pure and Applied Mathematics, University of Padua, via Trieste 63, 35121 Padova, Italy † CRIBI Biotechnology Centre, University of Padua, viale G. Colombo 3, 35121 Padova, Italy ‡ BMR Genomics, Via Redipuglia 21/a, 35131 Padova, Italy § School of Sciences and Technologies, University of Camerino, Via Madonna delle Carceri 9, 62032 Camerino, Italy Abstract—Software-based Laboratory Information Manage- unambiguous semantic of ontologies with the expressive power ment Systems can handle samples, plates, instruments, users, of workflows for formalizing protocols adopted in biological potentially up to the automation of whole workflows. One laboratories [3]. By means of workflows, protocols can be frustrating element of this predicament is that Life Sciences laboratory protocols are normally expressed in natural languages intuitively and visually represented and can be stored and and thus are scarcely amenable to real automation. We want to shared using the XPDL standard interchange language [4]. By defeat this major limitation by way of a project combining Model- means of ontologies the knowledge related to the laboratory Driven Engineering, Workflows, Ontologies and Multiagent sys- environment is directly incorporated into the workflow model tems (MAS). This paper describes the latter ingredient. Our MAS and can be exchanged using the standard OWL model [5]. has been implemented with JADE and WADE to automatically interpret and execute a structured representation of laboratory Building on this formal foundations (we named this meta- protocols expressed in XPDL+OWL. Our work has recently been model COW - Combining Ontologies and Workflows) to tested on a real test case and will shortly be deployed in the field. represent laboratory knowledge and procedures we envision a Next Generation LIMS as logically composed of three main building blocks (see Fig.1): a Protocol Visual Editor, I. I NTRODUCTION a Compiler, and a MAS Runtime Environment. Following the explosion of automation technologies in life The Protocol Visual Editor allows end-users, expert of bio- science experimentation, biological laboratories are drown- logical laboratory domain, to easily design their experiments ing in data to handle, store, and analyze. High-throughput by using controlled, well-defined domain terms to describe ”-omics” experiments permit to rapidly characterize whole samples, equipments and experimental actions. End users are populations of molecules (e.g. genes, transcripts, proteins, not required to have particular programming skills and the metabolites) in different samples at varying physiologi- specifications they devise, that on the visual editor are rendered cal/pathological/environmental conditions. Automatic process- as intuitive workflows, are stored in the COW format. The ing of samples has therefore become essential in modern editor, built on the underlying meta-model, is semantically life sciences. For decades, Information Technology supports ”cultured”, and therefore able to interpret the constructs of the laboratories by means of LIMS (Laboratory Information Man- meta-model. Hence, the protocols designed with the editor are agement Systems), software for the management of sam- syntactically and semantically correct, as the editor prevents ples, plates, laboratory users and instruments and for the the introduction of statements not conforming to the meta- automation of work flow. Furthermore, formal representation model rules. of experimental knowledge is increasingly used, so that ”robot- The end-user specification is then automatically translated scientists” [1] could even automatically infer new knowledge and plan subsequent experimental steps in order to confirm experimental hypotheses [2]. In natural sciences a protocol is a predefined procedural method, defined as a sequence of activities, used to design laboratory experiments and operations. In general they are still commonly described, published and exchanged in nat- ural language and come therefore accompanied by intrinsic ambiguity, lack of structure and ”disconnection” from the surrounding execution environment. This make experiments hardly repeatable, not machine-understandable, even not easily comprehensible by a laboratory expert and most definitively not directly automatable and unfit for automated reasoning. We Fig. 1. The components of a Next Generation LIMS, built upon the COW have therefore undertaken we have proposed to combine the meta-model Fig. 2. The Model Driven Engineering paradigm, used in combination with software agents, for interfacing laboratory resources by a Compiler into a runtime specification ready to be di- Our project aims at simplifying the work of laboratory rectly interpreted by a suitable execution environment. This operators. With the drastic increment of formalization and step is analogous to the compilation process in programming automation, the room for man-made errors will be greatly languages. A program, written in a higher level programming reduced and all the bookkeeping activities will not absorb any language, perhaps RAD-designed by means of a visual editor, more the staff time. is translated into a lower level code that can be interpreted by In this paper we introduce the Executable model of a a suitable runtime environment. protocol that can be interpreted by a MAS and then we con- The MAS Runtime Environment is able to execute, con- centrate our attention on the MAS Runtime Environment itself, stantly monitoring it, the (translated) protocol, acting as an describing its architecture, its components and its coordination. interface and a virtualized representation of the real laboratory The paper is organized as follows: Section II presents the environment, in which the protocol will physically take place. Executable model of a protocol; Section III describes the Automated stations or human operators will be automatically architecture of the Multi Agent System Runtime Environment invoked at runtime and they will be required to execute the supporting the execution of the protocols; Section IV presents actions planned in the workflows. The execution is actually a demo case study; Section V concludes with final remarks delegated to a Multi Agent System, the most natural solution and possible future improvements. for a complex environment characterized by autonomous, distributed entities that need to be coordinated. II. E XECUTABLE M ODEL OF A PROTOCOL The Next Generation LIMS that we propose exploits the In this section we describe the Executable model of a Model Driven Engineering paradigm [6]. The end users (see protocol, that we have defined for coding executable protocols Fig.2) is able to describe the experiment model in its own in our Next Generation LIMS. An essential issue in LIMS is language. The corresponding formal specification (in the COW the necessity of monitoring a protocol during its execution, meta-model) produced by the Visual Editor is then automat- saving both the information on data and on procedures. It ically translated into an executable specification that will be must be underlined that the executable protocol is not the one executed by a system of software agents. The product of the defined by the end-user by mean of the Visual Editor and transformation is a set of Java classes that can be compiled stored in the COW format, but its translation generated by the and used directly in the runtime system. The transformation Compiler. preserves the requirements and the constrainst specified by the A laboratory protocol can be seen as the composition of end-users at design time. precisely defined activities [7]. The executors of the activities The main requirements set on the system from a laboratory could be instruments (e.g. a centrifuge) or laboratory staff. point of view are: As an example of the huge quantity of data produced by an • traceability of the processes applied to the samples; activity we could cite the mass of raw data generated by a • automation of the laboratory processes; single DNA sequencing experiment, that is nowadays in the • integration of heterogeneous systems and devices used in order of the Terabytes. Beside the data, all the procedural the laboratory. steps must be tracked. Returning to the DNA sequencing Fig. 3. XML schema for an Action laboratory example, the protocol would probably require to execute also ”virtual” operations like converting the raw data into DNA sequences and subsequently assemble them by means of alignment algorithms. In the typical protocol we can found three kind of activities, depending on their performer: • those performed by a physical device, like a liquid Fig. 4. XML document for a centrifugate action handler workstation (e.g. Biomek FX); • those performed by a virtual device, like an assembling software; libraries. We use the XPDL [4] meta-model to describe the • those performed by a human operator, like shaking a plate execution and the orchestration of different actions. In XPDL or taking a sample of DNA through a swab. a process is a structured composition of piece of works, called Starting from these considerations we have defined a general Activities, that could be of various type [8]. In our system a notion of activity, called Action. An Action is defined by a Valid Protocol is a XPDL compliant model with some minor name and a list of parameters. Each parameter is characterized limitations and differences. by a name, a type and by the mode in which it is passed (read- In order to guarantee the correct interpretation of a COW only, read/write, write-only) (Fig.3). An Action is an atomic protocol we do require that every piece of work must be step in our execution model and could be seen as the simplest described by means of an Action concept. In this manner instruction that our MAS is able to interpret and execute the COW meta-model is semantically enriched and we want Referring again to the programming language metaphor we to preserve at runtime the ontological constraints defined can assimilate an Action in the Executable model of a protocol at design-time. In XPDL the notion of ”piece of work” is to a single machine instruction in a machine code program. A described by the concept of Activity. Hence we impose that single machine instruction can be directly executed by the pro- every Activity is allowed to invoke only Actions. In order to cessor. The definition of Action is general enough to include satisfy this condition in the Executable model, we imposed the three cases above mentioned. Given the heterogeneity and two restrictions to the XPDL meta-model. the complexity of the laboratory environment, this solution The first one is to limit the types of Activity only to Route represents a good trade-off between the need of describing a and SubFlow. The Route activity performs no work and simply protocol with enough granularity and the need of having a supports routing decisions among the incoming transitions common interface for every activity involved. and/or among the outgoing transitions. The SubFlow activity Fig.4 shows the XML document describing a ”centrifugate” enables the reuse of processes and could be usefully used to Action. A centrifugate Action is defined by three parameters. encapsulate parts of protocols in self-contained modules. The parameter named ”performed”, is of boolean type and its Second, we provide a specific SubFlow (ExecuteActionW) mode is OUT, so that it is actually an output parameter of the around an invocation of an Action. The ExecuteActionW action, representing whether the action has been successfully SubFlow (Fig.5) simply invokes the execution of the Action performed. The second and the third parameters are inputs of and checks if it is performed with or without errors. Actions integer type representing respectively the g-force to be applied can be executed only encapsulated within such construct. in the centrifugation and the centrifugation time. Using only Route and SubFlow activities and using the It must be recalled that an Executable Action has a semantic ExecuteActionW SubFlow we can therefore ensure that every counterpart in the Action concept, formally defined in the lab- piece of work is backed by an Action concept. In the next oratory domain ontology of the COW meta-model supporting section we will describe how we have built a MAS runtime the Next Generation LIMS [3]. system able to execute a Valid Protocol. In the Executable model, a Protocol is an articulated flow of Actions. A Valid Protocol is a protocol that our runtime III. MAS RUNTIME E NVIRONMENT environment is able to interpret and to execute. A Protocol in the model could be composed using different Actions The enactment of workflows using multiagent systems has available in the runtime environment or loaded from external already been proposed in the literature [9], [10], including devices. • DA: controls a resource (physical or virtual) • PM: executes a protocol in the MAS • APE: allows the loading of new protocols • RA: user interface for mobile devices The RA agent is created at the boot of the system. For each resource in the laboratory environment that should be automatically managed from the LIMS, it is then created a DA Agent counterpart. One APE is also created in the boot Fig. 5. The ExecuteActionW SubFlow that encapsulate the execution of actions phase, however two (or more) instances can co-exist without any problem. The same apply for the RA. A PM agent instead is created dynamically on user demand, being responsible the development [11], [12] of workflow management systems for the execution of a particular protocol. Once completed based on the popular open source MAS platform JADE [13]. the protocol, the PM agents automatically disappear from the Recently, a new software platform has been proposed as system. an extension to JADE by the JADE development group itself. A. Device Agent WADE (Workflow and Agent Development Environment) has In the past years the literature recognized the need to explic- been developed on top of JADE, with the implementation itly embody the notion of resource in a MAS [16], [17]. A well of new features for supporting the use of workflows in the known approach is to use the notion of “artifact”. Artifacts deployment of multi-agent applications [14]. WADE includes can be considered as complementary abstractions to agents a micro-engine embedded in a set of dedicated agents which populating a MAS. While agents are goal-oriented pro-active are specifically developed for the execution of workflows entities, artifacts are a general abstraction to model function- defined in an extended version of XPDL. Doing this, the new oriented passive entities. MAS designers employs artifacts to engine permits to directly execute the Java code associated to encapsulate some kind of functionality, by representing (or a specific workflow activity. Moreover, this new tool allows wrapping) existing resources or instruments mediating agent to choose and assign secondary agents for the execution of activities [18]. The purpose is to encapsulate functionalities subflows. Additional components have been also defined in and services in suitable first class abstractions at the agent level WADE in order to manage administration and fault tolerance [16]. Artifacts could be used for wrapping existing resources issues. and therefore are a suitable model for our purpose. Particularly The main challenge in WADE consists in bringing the fitting is the Agent and Artifact model [16], in which an workflow approach from the business process level to the level Artifact is structured as a set of operations. of system internal logics [15]. In other words, the objective We therefore propose a combination of a Driver and an is not to support an orchestration of services provided by Agent in order to make available in the MAS a service that different systems at high level, but to implement the internal can be executed by a physical or virtual resource. A Driver in behavior of the single systems. our model actually performs the communication with a legacy The new functionality offered by WADE is of special resource as a centrifuge or a robotized station. Since our model importance for us. The capabilities to run a slightly different is inspired from the A&A model, our Driver is structured in model of XPDL workflows fits with our requirements. We terms of Actions. The similarity with the model lies on the fact hence decided to build our MAS on top of the JADE/WADE that a Driver represents a resource in the MAS environment framework. (Artifact in the A&A model). The main difference is that we The architecture of the MAS Runtime Environment is strictly bind an instance of a Driver with exactly one instance designed to closely resemble the laboratory environment, with of a DA. As a consequence every request of Actions must be the additional capability of being able to interpret and execute posed to a specific DA that acts as a proxy to the driver and Actions as described in Section II. The Executable Model of a therefore to the resource. protocol involves one main kind of entities. These entities are A Resource exposes a set of Actions, one for every function- heterogeneous and distributed resources that actually expose ality. In the Centrifuge example the Centrifuge is the resource and, on request, performs Actions. We therefore dedicated itself, and it is described by means of the functionalities it one class of agent to these entities, the Device Agent (DA). exposes and hence by a set of different Actions i.e. the actions Another distinctive characteristic of the Runtime Environment it can actually perform (e.g. ”centrifugate” or ”open lid”). A is an entity that does read an executable protocol and handles DA is responsible for executing the single actions, therefore its execution. A Protocol Manager agent (PM) is appointed to it needs to knows how to physically communicate with the control this aspect. A user interface agent (APE) is designed related resource. It needs also to communicate with other for loading new protocols in the MAS. A Reporter Agent agents in order to satisfy any request for its functionalities. We (RA) is built specifically as a User Interface for mobile therefore structured a DA in two layers as depicted in Fig.6. quirements. During the initialization phase the agent loads the driver, analyzes the metadata and fills a set of Action objects compliant to our model. The set of these objects provides the descriptions of the capabilities of the Device agent. The last step of the initialization phase is to register itself (with the exposed capabilities) in the MAS. 2) Top Layer: This layer is responsible for the interaction with other agents in the MAS, responding to to request of Actions. The main capability consists in being able to execute the ExecuteActionW SubFlow (see Fig.5). A different agent, intending to execute an action available on the interfaced device, should first retrieve the corresponding Action object. Then, this agent should ask to the DA to perform the Execute- ActionW SubFlow using as parameter the Action object and the actual parameters (if any) of the action. The DA then tries to execute the action, communicating with the resources by means of the driver. If some error occurs the caller is notified. In case of no errors, the resulting output parameters are filled in the Action object and the caller is notified. Fig. 6. Layers of the Device Agent B. Protocol Manager agent The Protocol Manager agent is responsible for the correct The bottom layer is responsible the communication with the execution of a protocol. It incorporates the capabilities to resource using a specific driver. The top layer possesses the execute a restricted (according to Section II) XPDL protocol. normal agents duties as behaviors and social capabilities. Since the restriction imposed to XPDL in our Executable 1) Bottom layer: The bottom layer is to load, extract the Model are minor, a normal WADE agent could be used. In related metadata, and it uses a resource specific driver. In the order to develop a protocol directly in the MAS system it is development of such a complex and heterogeneous system like therefore possible to use the WOLF tool [19]. However, in a biological laboratory, the design of a new driver can become the future, we intend to translate a protocol, structured in the a hard bottleneck. Hence we made some effort to simplify the COW meta-model, directly in the underlying Java code. process of driver creation. In our approach, a driver could be On the launch of a new protocol a new PM is created. The any piece of Java code. This choice enables the reuse of legacy first step performed by a PM is to check if the protocol can run code as well as direct interfacing with the instrument. The only on the current environment. Therefore the PM tries to verify added requirement for a developer is to declare which services the existence of every Action used in the protocol before ac- the driver does expose. This is done via the Java annotation tually starting the execution. Only if that control is successful mechanism, which allows to add metadata to the code. then the execution of the protocol can take place. When the We provide a set of annotations like @Action and @Par. PM agent encounters an Action invocation it first finds which Every method that is going be exposed as a first class entity DA is actually able to perform it. The search is performed in the system (Action) must be annotated with the @Action using the classic yellow pages system of Jade. Then, the agent tag. In case of parameters the @Par tag should be used. As delegates the execution of the ExecuteActionW SubFlow to illustrated in Fig.7 the method centrifugate is promoted to an the proper DA. The standard WADE mechanism used to enact Action entity in the MAS. Two parameters are declared plus distribuited workflow execution is applied. an extra one for the return value of the method. The XML If multiple protocols require the same action, the requests document of Fig.4 it is actually created from the annotated are queued and acted upon by the DA. The requests are then centrifugate Java method of Fig.7. executed on FIFO bases (first in first out). In the future, using Using a driver manager the Device Agent is able to load a separate scheduler more complex policies could be applied. and extract the metadata for a driver that fulfill these re- C. Agent Protocol Environment The APE agent provides a user interface [UI] to laboratory operators in order to load new protocols. A protocol is enclosed in a package that contain three different categories of elements: • main protocols as well as the sub-protocols used in them; • local resources like images or spreadsheet files required Fig. 7. Example of a method annotated with an @Action tag by the activities of the protocols; • specific external libraries used to obtain some extra feature like PDF documents generation. APE loads a package and does visualize the content to the operator. It then extracts all the resources and does deploy them into the runtime system. It is also responsible for creating a new PM agent and to charge it with the execution of the loaded protocol. D. Reporter Agent Fig. 8. The protocol formally describing the Paternity Test A Reporter Agent has been built specifically to handle requests from mobile devices that provide GUIs to laboratory Fig.9 shows a subprotocol that describes the steps involved operators. We currently support ANDROID [20] based mobile in the PCR SubFlow. In it we can see a use of the centrifugate devices using the peer-to-peer approach proposed by [21]. action of Fig.4. In the PCRCycle Action the DNA material The RA is able to query the system and to provide informa- is amplified by means of the Polymerase Chain Reaction so tion about the state of a sample processed in the laboratory. that its quantity becomes sufficient for the following steps It interacts with the other agents of the runtime system and of the analysis. It can be noticed that the protocols does queries the database in order to determine detailed information include not only the physical processing of samples but also like: the management of the produced data and of the history of • the customer order that activate the laboratory analysis; the sample (e.g. by mean of the DBReg Action, that interacts • the type of the biological analysis in which the sample is with a database). Doing so permits to support existing legacy involved; systems without changing their structure. • the current phase of processing reached by the sample; It is worth underlining that since the PCR sub-protocol • the relationship with other samples produced in the is self-contained in the SubFlow is possible to reuse it in laboratory for the same customer order. other contexts without writing a single line of code. This Finally, after collecting all pieces of information, the RA is drastically reduces the time needed for the implementation of able also to produce a report and to send it to the operator’s new protocols. GUI on its mobile device. Using the proposed approach an explicit knowledge of the concepts involved protocol exists in the system. The MAS is IV. A DEMO CASE STUDY therefore able to interpret this knowledge and to act correctly The Paternity Test aims at establishing if a man is the depending on the real environment. In the case study of the biological father of an individual. A customer, willing to paternity test only the tracking activities have been totally perform the test, places an order through a website. Afterward, automated. The operator is therefore notified when he can start DNA samples belonging to the individual and to the supposed the physical steps, to be executed from a device. Nevertheless, child are collected, usually by means of buccal swabs, and with propers drivers and proper hardware, also physical actions sent to the analysis laboratory. When the material reaches the could be automated. The system notifies with the next steps laboratory, some biological analysis can actually be executed, to be performed. In the example the operator is notified to according to the protocol described in Fig.8. Through several perform a PCR on some specific samples. After the sequencing sub-protocols, the samples are processed and, at every step, phase an automatically analysis is performed and the results transformed into specific types of succeeding samples. In the are delivered to the laboratory operator. final steps of the protocol, by DNA sequencing techniques, In our test case a total of 31 activities are included to define some data results are obtained. The DNA sequencing output the paternity protocol (included the sub-protocol SwabExtrac- is then used to compute the profile of the individuals involved tion, PCR, Sequencing and Analysis). Using our model we in the specific test and finally a medical report that explain automatized 12 of those activities. Once automatized these the results is produced by an expert. activities become transparent to the end user and they could Each action of the protocol is currently activated manually be also easily reused in other protocols with minimal effort. by a laboratory operator, following the workflow. In different On respect of the initial requirement of traceability, automa- phases of the process the operator is bounded to fill some tion and integration our test case show promising results. The digital resources and execute some bioinformatics analysis. requirement of traceability is easily guaranteed, and all the In order to test the potential of our system the protocol related - and heavy - duties are now transparent to the end described above has been formalized in the COW meta-model. user. The graphical representation of the workflow of Fig.8 is The second requirement of automation is met. In our rendered using the WOLF tool [19] of the WADE framework. test case only some activities have been automatized. The Every depicted activity block could represent either a normal bottleneck is the legacy environment and the development of SubFlow or an Action invocation by means of the ExecuteAc- the drivers. However, also without producing drivers for the tionW SubFlow. specific hardware, we automated 12 of the 31 initial activities [2] R. D. King, J. Rowland, S. G. Oliver, M. Young, W. Aubrey, E. Byrne, M. Liakata, M. Markham, P. Pir, L. N. Soldatova, A. Sparkes, K. E. Whelan, and A. Clare, “The Automation of Science,” Science, vol. 324, no. 5923, pp. 85–89, 2009. [Online]. Available: http://www.sciencemag.org/cgi/content/abstract/324/5923/85 [3] A. Maccagnan, M. Riva, E. Feltrin, B. Simionati, T. Vardanega, G. Valle, and N. Cannata, “Combining ontologies and workflows to design formal protocols for biological laboratories,” Automated Experimentation, vol. 2, no. 1, p. 3, 2010. [Online]. Available: http://www.aejournal.net/content/2/1/3 [4] Xml process definition language. [Online]. Available: http://www.wfmc.org/xpdl.html Fig. 9. The PCR subprotocol of the paternity protocol [5] Ontology web language. [Online]. Available: http://www.w3.org/TR/owl-ref/ [6] R. France and B. Rumpe, “Model-driven development of complex software: A research roadmap,” FOSE ’07: 2007 Future of Software (38%). Engineering, pp. 37–54, 2007. The last requirement is met under the constraint to produce [7] M. Courtot, W. Bug, F. Gibson, A. Lister, J. Malone, D. Schober, specific drivers for the specific devices used in the laboratory. R. Brinkman, and A. Ruttenberg, “The owl of biomedical investigations,” in Proceedings of the Fifth OWLED Workshop on OWL: Experiences, 2008, xx 2008. V. C ONCLUSION [8] R. Shapiro and M. Marin, Workflow Management Coalition Workflow StandardProcess Definition Interface– XML Process Definition Lan- In our vision a Next Generation LIMS will ease the man- guage, The Workflow Management Coalition, 99 Derby Street, Suite agement of a biological laboratory. The laboratory knowledge, 200 Hingham, MA 02043 USA, October 2008. [9] P. A. Buhler and J. M. Vidal, “Towards adaptive workflow enactment including the procedural one, would be formalized and would using multiagent systems,” Inf. Technol. and Management, vol. 6, no. 1, become easy, for automatic systems, to exchange, control, pp. 61–87, 2005. analyze and exploit. On the other hand, laboratory protocols [10] E. Bartocci, F. Corradini, and E. Merelli, “Enacting proactive workflows engine in e-science,” in International Conference on Computational would become easy to specify, read and maintain also by Science (3), 2006, pp. 1012–1015. domain experts. [11] C. V. Trappey, A. J. Trappey, C.-J. Huang, and C. Ku, “The Protocols could be statically validated in a given execution design of a jade-based autonomous workflow management system for collaborative soc design,” Expert Systems with Applications, environment (i.e. “MAS interfaced” laboratory) according to vol. 36, no. 2, Part 2, pp. 2659 – 2669, 2009. [On- specifications to be met. In this way it will be possible line]. Available: http://www.sciencedirect.com/science/article/B6V03- to know if the environment is able to execute the protocol 4RV7Y9W-2/2/f933cced0e8af5448692818153bb1648 [12] G. Fortino, A. Garro, and W. Russo, “Distributed workflow enactment: ensuring the expected quality of service respecting all the an agent-based framework,” in Atti del 7 Workshop dagli Oggetti agli critical constraints. Agenti (WOA) Sistemi GRID, Peer-to-peer e Self-*, Catania (Italia). A Scheduler agent could also perform a dynamic validation [13] F. L. Bellifemine, G. Caire, and D. Greenwood, Developing Multi-Agent Systems with JADE (Wiley Series in Agent Technology). Wiley, April and optimization of a protocol at runtime. In this way it will 2007. be possible to effectively and efficiently answer to possible [14] G. Caire, D. Gotta, and M. Banzi, “Wade: a software platform to sudden changes in the environment, like e.g. the breakdown develop mission critical applications exploiting agents and workflows,” in AAMAS ’08: Proceedings of the 7th international joint conference on of a resource. The actions to be taken in order to recover Autonomous agents and multiagent systems. Richland, SC: International from abnormal situations could be based on a set of rules. Foundation for Autonomous Agents and Multiagent Systems, 2008, pp. The agents should perform some reasoning upon that rules in 29–36. [15] A. Poggi and P. Turci, “An agent-based bridge between business process order to react in a proper and fast way to the changes of the and business rules,” in Decimo Workshop Nazionale Dagli Oggetti agli environment. Agenti, 2009. It could also dynamically schedule groups of samples acting [16] A. Ricci, M. Viroli, and A. Omicini, “The a&a programming model and technology for developing agent environments in mas,” in ProMAS’07: on the current state of the resources, in order to optimize the Proceedings of the 5th international conference on Programming multi- resource consumption. agent systems. Berlin, Heidelberg: Springer-Verlag, 2008, pp. 89–106. [17] A. Omicini, A. Ricci, and M. Viroli, “Artifacts in the a&a meta-model The system will permit an easier tracking of all the transfor- for multi-agent systems,” Autonomous Agents and Multi-Agent Systems, mations applied to the analyzed samples, including the virtual vol. 17, no. 3, pp. 432–456, 2008. (i.e. digital) ones. Automation will be naturally enhanced: [18] R. Kitio, O. Boissier, J. F. Hbner, and R. Ricci, “Organisational artifacts and agents for open multi-agent organisations: giving the power back to physical devices will undergo a direct control performed by the agents.” software agents, in turn controlled by protocol “instructions”. [19] G. Caire, M. Porta, E. Quarantotto, and G. Sacchi, “Wolf - an eclipse The integration of heterogeneous systems and instruments, plug-in for wade,” in WETICE ’08: Proceedings of the 2008 IEEE 17th Workshop on Enabling Technologies: Infrastructure for Collaborative including the communications with laboratory operators, also Enterprises. Washington, DC, USA: IEEE Computer Society, 2008, via mobile platforms, will thus become possible. pp. 26–32. [20] Android platform. [Online]. Available: http://code.google.com/android R EFERENCES [21] M. Ughetti, T. Trucco, and D. Gotta, “Development of agent-based, peer- to-peer mobile applications on android with jade,” Mobile Ubiquitous [1] R. King, K. Whelan, F. Jones, P. Reiser, C. Bryant, S. Muggleton, Computing, Systems, Services and Technologies, International Confer- D. Kell, and S. Oliver, “Functional genomic hypothesis generation and ence on, vol. 0, pp. 287–294, 2008. experimentation by a robot scientist,” Nature, vol. 427, pp. 247–252, 2004.