18,691 research outputs found

    Multi-agent Communication Protocols with Emergent Behaviour

    Get PDF
    The emergent behaviour of a multiagent system depends on the component agents and how they interact. A critical part of interaction between agents is communication. This thesis presents a multi-agent system communication model for physical moving agents. The work presented in this thesis provides all the tools to create a physical multi-agent communication system. The model integrates different agent technologies at both the micro and macro level. The micro structure involves the architecture of the individual components in the system whilst the macro structure involves the interaction relationships between these individual components in the system. Regarding the micro structure of the system, the model provides the description of a novel hybrid BDI-Blackboard architectured agent that builds-in a hybrid of reactive and deliberative agent. The macro structure of the system, provided by this model, provides the operational specifications of the communication protocols. The thesis presents a theory of communication that integrates an animal intelligence technique together with a cognitive intelligence one. This results in a local co-ordination of movements, and global task coordination. Accordingly, agents are designed to communicate with other agents in order to coordinate their movements via a set of behavioural rules. These behavioural rules allow a simple directed flocking behaviour to emerge. A flocking algorithm is used because it satisfies a major objective, i.e. it has a real time response to local environmental changes and minimises the cost of path planning. A higher level communication mechanism is implemented for task distribution that is carried out via a blackboard conversation and ii negotiation process with a ground based controller. All the tasks are distributed as team tasks. A novel utilization of speech acts as communication utterances through a blackboard negotiation process is proposed. In order to implement the proposed communication model, a virtual environment is built that satisfies the realism of representing the agents, environment, and the sensors as well as representing the actions. The virtual environment used in the work is built as a semi-immersive full-scale environment and provides the visualisation tools required to test, modify, compare and evaluate different behaviours under different conditions. The visualization tools allow the user to visualize agents negotiations and interacting with them. The 3D visualisation and simulation tools allow the communication protocol to be tested and the emergent behaviour to be seen in an easy and understandable manner. The developed virtual environment can be used as a toolkit to test different communication protocols and different agent’s architecture in real time

    Metrics and Tools to Guide Design of Graphical User Interfaces

    Get PDF
    User interface design metrics assist developers evaluate interface designs in early phase before delivering the software to end users. This dissertation presents a metric-based tool called GUIEvaluator for evaluating the complexity of the user interface based on its structure. The metrics-model consists of five modified structural measures of interface complexity: Alignment, grouping, size, density, and balance. The results of GUIEvaluator are discussed in comparison with the subjective evaluations of interface layouts and the existing complexity metrics-models. To extend this metrics-model, the Screen-Layout Cohesion (SLC) metric has been proposed. This metric is used to evaluate the usability of user interfaces. The SLC metric has been developed based on Aesthetic, structural, and semantic aspects of GUIs. To provide the SLC calculation, a complementary tool has been developed, which is called GUIExaminer. This dissertation demonstrates the potential of incorporating automated complexity and cohesion metrics into the user interface design process. The findings show that a strong positive correlation between the subjective evaluation and both the GUIEvaluator and GUIExaminer, at a significance level 0.05. Moreover, the findings provide evidence of the effectiveness of the GUIEvaluator and GUIExaminer to predict the best user interface design among a set of alternative user interfaces. In addition, the findings show that the GUIEvaluator and GUIExaminer can measure some usability aspects of a given user interface. However, the metrics validation proves the usefulness of GUIEvaluator and GUIExaminer for evaluating user interface designs

    Visualization and Animation of a Missile/Target Encounter

    Get PDF
    Existing missile/target encounter modeling and simulation systems focus on improving probability of kill models. Little research has been done to visualize these encounters. These systems can be made more useful to the engineers by incorporating current computer graphics technology for visualizing and animating the encounter. Our research has been to develop a graphical simulation package for visualizing both endgame and full fly-out encounters. Endgame visualization includes showing the interaction of a missile, its fuze cone proximity sensors, and its target during the final fraction of a second of the missile/target encounter. Additionally, this system displays dynamic effects such as the warhead fragmentation pattern and the specific skewing of the fragment scattering due to missile yaw at the point of detonation. Fly-out visualization, on the other hand, involves full animation of a missile from launch to target. Animating the results of VisSim fly-out simulations provides the engineer a more efficient means of analyzing his data. This research also involves investigating fly-out animation via the World Wide Web

    Software quality attribute measurement and analysis based on class diagram metrics

    Get PDF
    Software quality measurement lies at the heart of the quality engineering process. Quality measurement for object-oriented artifacts has become the key for ensuring high quality software. Both researchers and practitioners are interested in measuring software product quality for improvement. It has recently become more important to consider the quality of products at the early phases, especially at the design level to ensure that the coding and testing would be conducted more quickly and accurately. The research work on measuring quality at the design level progressed in a number of steps. The first step was to discover the correct set of metrics to measure design elements at the design level. Chidamber and Kemerer (C&K) formulated the first suite of OO metrics. Other researchers extended on this suite and provided additional metrics. The next step was to collect these metrics by using software tools. A number of tools were developed to measure the different suites of metrics; some represent their measurements in the form of ordinary numbers, others represent them in 3D visual form. In recent years, researchers developed software quality models which went a bit further by computing quality attributes from collected design metrics. In this research we extended on the software quality modelers’ work by adding a quality attribute prioritization scheme and a design metric analysis layer. Our work is all focused on the class diagram, the most fundamental constituent in any object oriented design. Using earlier researchers’ work, we extract a class diagram’s metrics and compute its quality attributes. We then analyze the results and inform the user. We present our figures and observations in the form of an analysis report. Our target user could be a project manager or a software quality engineer or a developer who needs to improve the class diagram’s quality. We closely examine the design metrics that affect quality attributes. We pinpoint the weaknesses in the class diagram, based on these metrics, inform the user about the problems that emerged from these classes, and advice him/her as to how he/she can go about improving the overall design quality. We consider the six basic quality attributes: “Reusability”, “Functionality”, “Understandability”, “Flexibility”, “Extendibility”, and “Effectiveness” of the whole class diagram. We allow the user to set priorities on these quality attributes in a sequential manner based on his/her requirements. Using a geometric series, we calculate a weighted average value for the arranged list of quality attributes. This weighted average value indicates the overall quality of the product, the class diagram. Our experimental work gave us much insight into the meanings and dependencies between design metrics and quality attributes. This helped us refine our analysis technique and give more concrete observations to the user

    An OpenEaagles Framework Extension for Hardware-in-the-Loop Swarm Simulation

    Get PDF
    Unmanned Aerial Vehicle (UAV) swarm applications, algorithms, and control strategies have experienced steady growth and development over the past 15 years. Yet, to this day, most swarm development efforts have gone untested and thus unimplemented. Cost of aircraft systems, government imposed airspace restrictions, and the lack of adequate modeling and simulation tools are some of the major inhibitors to successful swarm implementation. This thesis examines how the OpenEaagles simulation framework can be extended to bridge this gap. This research aims to utilize Hardware-in-the-Loop (HIL) simulation to provide developers a functional capability to develop and test the behaviors of scalable and modular swarms of autonomous UAVs in simulation with high confidence that these behaviors will prop- agate to real/live ight tests. Demonstrations show the framework enhances and simplifies swarm development through encapsulation, possesses high modularity, pro- vides realistic aircraft modeling, and is capable of simultaneously accommodating four hardware-piloted swarming UAVs during HIL simulation or 64 swarming UAVs during pure simulation

    The Impact Of Design Patterns In Refactoring Technique To Measure Performance Efficiency

    Get PDF
    Designing and developing software application has never been an easy task. The process is often time consuming and requires interaction between several different aspects. It will be harder in re-engineering the legacy system through refactoring technique, especially when consider to achieve software standard quality. Performance is one of the essential a quality attribute of software quality. Many studies in the literature have premise that design patterns improve the quality of object-oriented software systems but some studies suggest that the use of design patterns do not always result in appropriate designs. There are remaining question issues on negative or positive impacts of pattern refactoring in performance. In practice, refactoring in any part or structure of the system may take effect to another related part or structure. Effect of the process using refactoring technique and design patterns may improve software quality by making it more performable efficiency. Considerable research has been devoted in re-designing the system to improve software quality as maintainability and reliability. Less attention has been paid in measuring impact of performance efficiency quality factor. The main idea of this thesis is to investigate the impact, demonstrate how design patterns can be used to refactor the legacy software application in term of performance efficiency. It is therefore beneficial to investigate whether design patterns may influence performance of applications. In the thesis, an enterprise project named SIA (Sistem Informasi Akademik) is designed by applying Java EE platform. Some issues related to design patterns are addressed. The selection of design pattern is based on the application context issue. There are three kind of parameters measure, time behavior, resource utilization and capacity measures that based on standard guideline. We use tools support in experimentation as Apache JMeter and Java Mission Control. These tools provide convenient and generate appropriate result of performance measurement. The experiment results shown that the comparison between the legacy and refactored system that implemented design pattern indicates influence on application quality, especially on performance efficiency. ================================================================================================== Merancang dan mengembangkan aplikasi perangkat lunak bukan merupakan pekerjaan yang mudah karena membutuhkan waktu dan interaksi antara beberapa aspek. Proses desain pada rekayasa ulang akan lebih sulit meskipun melalui teknik refactoring, terutama untuk mencapai standar kualitas perangkat lunak. Kinerja merupakan salah satu atribut terpenting kualitas perangkat lunak. Banyak penelitian menjelaskan pola desain memperbaiki kualitas sistem perangkat lunak berorientasi objek, namun beberapa penelitian juga menunjukkan bahwa penggunaan pola desain tidak selalu menghasilkan desain yang sesuai. Masih ada pertanyaan tentang dampak negatif atau positif dari kinerja pola refactoring. Pada praktiknya, melakukan refactoring pada suatu bagian atau struktur sistem akan berpengaruh pada bagian atau struktur lain yang terkait. Penggunaan teknik refactoring dan pola desain dapat meningkatkan kualitas perangkat lunak dengan kinerja lebih efisien. Sudah banyak penelitian yang berfokus untuk merancang ulang sistem untuk meningkatkan kualitas perangkat lunak sebagai kemampuan rawatan dan keandalan. Tetapi masih kurang penelitian perhatian dalam mengukur dampak faktor kualitas efisiensi kinerja. Tujuan utama dalam tesis ini adalah untuk mengetahui dampaknya, menunjukkan bagaimana pola desain dapat digunakan untuk refactor aplikasi perangkat lunak terdahulu dalam hal efisiensi kinerja. Oleh karena itu, akan bermanfaat untuk menyelidiki apakah pola desain dapat mempengaruhi kinerja aplikasi. Dalam tesis ini, sebuah proyek perusahaan bernama SIA (Sistem Informasi Akademik) dirancang dengan menerapkan platform Java EE. Beberapa masalah yang terkait dengan pola desain diketahui. Pemilihan pola desain berdasarkan pada isu konteks aplikasi. Tiga jenis ukuran parameter dipakai untuk penilitian ini, perilaku waktu, pemanfaatan sumber daya dan ukuran kapasitas yang berdasarkan pada pedoman standar. Kami menggunakan Apache JMeter dan Java Mission Control sebagai alat bantu dalam eksperimen. Hasil percobaan menunjukkan bahwa perbandingan antara sistem terdahulu dengan penelitian ini yang menerapkan pola desain menunjukkan bahwa hasilnya berpengaruh terhadap kualitas aplikasi terutama pada efisiensi kinerja

    An Ontological Representation of the Characteristic Problems of Real-Time Systems

    Get PDF
    International audienceSoftware Architectural Assessment is becoming a key discipline to identify at early stages of a system synthesis the most important problems that may become relevant in operation. This matter is especially critical for those systems with real-time constraints. Special emphasis shall be made on concurrency issues. Typical RTOS mechanisms supporting concurrency, such as semaphores or monitors, usually lead to execution time penalties hard to identify, reproduce and solve. For this reason it is crucial to understand the root causes of these problems and to provide support to identify and mitigate them at early stages of the system lifecycle. The main objective of this paper is to propose a new classification of the most important problems related to real-time software systems and to provide mechanisms and guidelines to help engineers improve their architectural designs. The taxonomy has been applied to a particular architectural style (UML-PPOOA) and it is used as a reference to create a new assessment module on the PPOOA- Visio CASE tool [15] to support concurrency problems detection

    Painter training in virtual reality: conceptualization, design, and implementation

    Get PDF
    This thesis describes the conceptualization, design, and implementation of a tool which simulates the activity of spray painting, intended to augment the training of industrial spray painters at John Deere. Spray painting is a difficult task, and current methods of training do not result in the desired level of trainee expertise and performance. Through close cooperation with stakeholders at John Deere, a virtual reality-based simulation tool has been created, which provides a realistic recreation of the spray painting experience---particularly the feedback offered by the behavior and visual appearance of paint sprayed onto a surface. This paper discusses the motivation, intent, structure, and technical details which define and direct that simulation.;A number of technologies were used in this simulation, and a number of algorithms developed, in order to provide an accurate and effective reproduction of the spray painting experience. These include the use of a physical paint spray gun, the software modeling of various system components and their interactions with each other, the creation of several different tools and features for feedback and review, and the detailed simulation of both the behavior and the visual appearance of wet paint applied to a surface, in accordance with the specific attributes of the paint. These features provide feedback similar to---and in some cases greater than---the feedback available during the actual paint spraying process, allowing a trainee to develop the skills necessary to ensure proper paint application without incurring the monetary, material, and environmental costs associated with physical painting

    Code Smells and Refactoring: A Tertiary Systematic Review of Challenges and Observations

    Full text link
    In this paper, we present a tertiary systematic literature review of previous surveys, secondary systematic literature reviews, and systematic mappings. We identify the main observations (what we know) and challenges (what we do not know) on code smells and refactoring. We show that code smells and refactoring have a strong relationship with quality attributes, i.e., with understandability, maintainability, testability, complexity, functionality, and reusability. We argue that code smells and refactoring could be considered as the two faces of a same coin. Besides, we identify how refactoring affects quality attributes, more than code smells. We also discuss the implications of this work for practitioners, researchers, and instructors. We identify 13 open issues that could guide future research work. Thus, we want to highlight the gap between code smells and refactoring in the current state of software-engineering research. We wish that this work could help the software-engineering research community in collaborating on future work on code smells and refactoring
    corecore