JADE is a multiagent-based framework widely used for prototyping agent-oriented mechatronic architectures. JADE's messaging performance is normally rated unsuitable for real time operation in a mechatronic context...
详细信息
ISBN:
(纸本)9781479902248
JADE is a multiagent-based framework widely used for prototyping agent-oriented mechatronic architectures. JADE's messaging performance is normally rated unsuitable for real time operation in a mechatronic context and there are a few papers in the literature backing up this claim. The author's share this view however the main purpose of this paper is to highlight that distinct message exchange coding patters influence the round trip time (RTT) of the messages quite substantially. The paper presents a comparative performance analysis, based on the RTT, of these coding patterns. The majority of the published tests is focused in the evaluation of the RTT when pairs of communicating agents are added to the platform. The analysis presented in this work is focused on the efficiency of each method as the responder agent receives messages continuously.
Large-scale systems are often modeled and verified in a component-based way. BIP (Behavior, Interaction, Priority) is a flexible component-based framework which supports hierarchical design of heterogeneous systems. B...
详细信息
ISBN:
(纸本)9780769550077
Large-scale systems are often modeled and verified in a component-based way. BIP (Behavior, Interaction, Priority) is a flexible component-based framework which supports hierarchical design of heterogeneous systems. BIP components interact via connectors in which data can be passed among multiple components. It also support the modeling of time. Due to its expressiveness and flexibility, many real-time systems can be modeled easily in BIP. Verification, however, is not well supported in the current BIP framework. That is a major disadvantage when it is used in a model-driven design flow. To fill this gap, we propose a translation from slightly restricted BIP models to timed automata. Then model checking can be applied to the latter using UPPAAL (which is a sophisticated model checker for timed automata). The correctness of translation is proven formally and the translation is implemented as a tool BIP2UPPAAL. Three industrial case studies show that our approach is practical and effective.
In many reactive systems, programs run cyclically. In each cycle, they check the current status and handle the business for a single step. The business logic has to be blasted to pieces, which violates the way that pe...
详细信息
ISBN:
(纸本)9780769549866
In many reactive systems, programs run cyclically. In each cycle, they check the current status and handle the business for a single step. The business logic has to be blasted to pieces, which violates the way that people are used to. Cyclic programs are difficult to develop and their reliability is hard to guarantee. To tackle these problems, we propose a model-based formal design flow which is more rigorous and rapid than the V-model. Our method consists of three phases: modeling, verification and code synthesis. In the modeling phase, BIP (Behavior-Interaction-Priority) language, which is expressive and allows flexible modeling, is used as the modeling language. Real-time behavior, that is highly concerned in reactive systems, can be modeled as well. In the verification phase, the system model is translated to timed automata and checked by UPPAAL. Verification helps to ensure the correctness of the model. In the code synthesis phase, the software part of the system model is synthesized to cyclic code. We propose an algorithm which can generate high-performance cyclic code from a model which describes the business work-flow. This feature significantly simplifies program development. A set of tools is implemented to support our design flow and they are successfully applied to an industrial case study for a PLC (Programmable Logic Controller) system which is used to control several physical devices in a huge palace.
Contract-based design enriches a component model with properties structured in pairs of assumptions and guarantees. These properties are expressed in term of the variables at the interface of the components, and speci...
详细信息
ISBN:
(纸本)9781479902156
Contract-based design enriches a component model with properties structured in pairs of assumptions and guarantees. These properties are expressed in term of the variables at the interface of the components, and specify how a component interacts with its environment: the assumption is a property that must be satisfied by the environment of the component, while the guarantee is a property that the component must satisfy in response. Contract-based design has been recently proposed in many methodologies for taming the complexity of embedded systems. In fact, contract-based design enables stepwise refinement, compositional verification, and reuse of components. However, only few tools exist to support the formal verification underlying these methods. OCRA (Othello Contracts Refinement Analysis) is a new tool that provides means for checking the refinement of contracts specified in a linear-time temporal logic. The specification language allows to express discrete as well as metric real-time constraints. The underlying reasoning engine allows checking if the contract refinement is correct. OCRA has been used in different projects and integrated in CASE tools.
In this article, we study how learning affects the dynamics of opinion formation in a population of agents modeled through the so-called naming game. This agent-based model captures the essential features of the agree...
详细信息
ISBN:
(纸本)9780769551371
In this article, we study how learning affects the dynamics of opinion formation in a population of agents modeled through the so-called naming game. This agent-based model captures the essential features of the agreement dynamics by means of a memory-driven negotiation process. We analyze the impact of learning in such social agreement model through a control parameter a describing the resistance toward learning. We show that there exists a critical a above which the consensus time diverges. In particular, we embed this model on various interaction topologies and real-world face-to-face interaction data and, thereby, point out the important differences in the agreement dynamics that take place in a real time-varying social settings vis-a-vis different static social settings. Remarkably, in all types of topology, we observe that beyond the critical value of a, the number of unique words increase manifold in the system and hence the time to consensus diverges possibly pointing to an universal aspect of language learning. In order to support the simulation results, we further develop a web-based online game - the 'tagging game' - which is a close correlate of the naming game and observe the game dynamics when human subjects are exposed to play the game. Remarkably, similar characteristic properties as that of the modified naming game is observed here even while different people from different geographical location play the game. This shows that synthetic modeling has nowadays reached the maturity to answer certain long-standing questions in cognitive science reasonably well.
We present a technique to make applications resilient to failures. This technique is intended to maintain a faulty application functional in the field while the developers work on permanent and radical fixes. We targe...
详细信息
ISBN:
(纸本)9781467330763
We present a technique to make applications resilient to failures. This technique is intended to maintain a faulty application functional in the field while the developers work on permanent and radical fixes. We target field failures in applications built on reusable components. In particular, the technique exploits the intrinsic redundancy of those components by identifying workarounds consisting of alternative uses of the faulty components that avoid the failure. The technique is currently implemented for Java applications but makes little or no assumptions about the nature of the application, and works without interrupting the execution flow of the application and without restarting its components. We demonstrate and evaluate this technique on four mid-size applications and two popular libraries of reusable components affected by real and seeded faults. In these cases the technique is effective, maintaining the application fully functional with between 19% and 48% of the failure-causing faults, depending on the application. The experiments also show that the technique incurs an acceptable runtime overhead in all cases.
The purpose of this study was twofold: to investigate students' concept images about class, object, and their relationship and to help them enhance their learning of these notions with a visualization tool. Fifty-...
详细信息
The purpose of this study was twofold: to investigate students' concept images about class, object, and their relationship and to help them enhance their learning of these notions with a visualization tool. Fifty-six second-year university students participated in the study. To investigate his/her concept images, the researcher developed a survey including open-ended questions, which was administered to the participants. Follow- up interviews with 12 randomly selected students were conducted to explore their answers to the survey in depth. The results of the first part of the research were utilized to construct visualization scenarios. The students used these scenarios to develop animations using Flash software. The study found that most of the students experienced difficulties in learning object-oriented notions. Overdependence on code-writing practice and examples and incorrectly learned analogies were determined to be the sources of their difficulties. Moreover, visualization was found to be a promising approach in facilitating students' concept images of basic object-oriented notions. The results of this study have implications for researchers and practitioners when designing programming instruction.
Test suites, just like the applications they are testing, evolve throughout their lifetime. One of the main reasons for test-suite evolution is test obsolescence: test cases cease to work because of changes in the cod...
详细信息
ISBN:
(纸本)9781467330763
Test suites, just like the applications they are testing, evolve throughout their lifetime. One of the main reasons for test-suite evolution is test obsolescence: test cases cease to work because of changes in the code and must be suitably repaired. There are several reasons why it is important to achieve a thorough understanding of how test cases evolve in practice. In particular, researchers who investigate automated test repair-an increasingly active research area-can use such understanding to develop more effective repair techniques that can be successfully applied in real-world scenarios. More generally, analyzing test-suite evolution can help testers better understand how test cases are modified during maintenance and improve the test evolution process, an extremely time consuming activity for any non-trivial test suite. Unfortunately, there are no existing tools that facilitate investigation of test evolution. To tackle this problem, we developed TESTEVOL, a tool that enables the systematic study of test-suite evolution for Java programs and JUnit test cases. This demonstration presents TESTEVOL and illustrates its usefulness and practical applicability by showing how TESTEVOL can be successfully used on real-world software and test suites. Demo video at http://***/similar to orso/software/testevol/
Our undergraduate curriculum includes a one semester course on object-oriented programming in the C# language and the. NET platform. The course underwent a major change in its labs organization two years ago - an intr...
详细信息
ISBN:
(纸本)9781467351409
Our undergraduate curriculum includes a one semester course on object-oriented programming in the C# language and the. NET platform. The course underwent a major change in its labs organization two years ago - an introduction of regular one-week lab assignments motivated by a need to enhance unsatisfactory skills of students attending the course. However such change of the course scheme would not be possible without introduction of an automated evaluation system of the lab assignments. Besides the expected positive results, we were worried about any unforeseen consequences of the change. Having enough data from before and after the change of the course scheme the paper presents a unique analysis of impact of such a change on students and the course itself. The paper provides two main contributions: (1) to our best knowledge, we provide the first empirical validation of expected impacts on real-world data and (2) we identify and discuss several unexpected aspects and drawbacks of introduction of such a new scheme.
The notion of object-based storage devices (OSDs) has been proposed to overcome the limitations of the traditional block-level interface which hinders the development of intelligent storage devices. The main idea of O...
详细信息
ISBN:
(纸本)9781479902170;9781479902187
The notion of object-based storage devices (OSDs) has been proposed to overcome the limitations of the traditional block-level interface which hinders the development of intelligent storage devices. The main idea of OSD is to virtualize the physical storage into a pool of objects and offload the burden of space management into the storage device. We explore the possibility of adopting this idea for solid state drives (SSDs). The proposed object-based SSDs (OSSDs) allow more efficient management of the underlying flash storage, by utilizing object-aware data placement, hot/cold data separation, and QoS support for prioritized objects. We propose the software stack of OSSDs and implement an OSSD prototype using an iSCSI-based embedded storage device. Our evaluations with various scenarios show the potential benefits of the OSSD architecture.
暂无评论