Emil VassevConcordia University · Department of Computer Science and Software Engineering
Emil Vassev
Ph.D. in Computer Science
About
141
Publications
29,443
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
1,043
Citations
Introduction
Skills and Expertise
Additional affiliations
June 2018 - present
Publications
Publications (141)
KnowLang is a framework for knowledge representation and reasoning (KR &R) that aims at efficient and comprehensive knowledge structuring and awareness based on logical and statistical reasoning. It tackles both explicit representation of domain concepts and relationships and explicit representation of particular and general factual knowledge, in t...
ASSL (Autonomic System Specification Language) is a framework dedicated to the development of self-managing systems whereby developers are helped with problem formation, system design, system analysis and evaluation, and system implementation. The bottom line is a special multi-tier approach to specification exposing a rich set of constructs allowi...
Software‐intensive systems require considerable knowledge provided by software engineers to help explain the problem domain. Still today, computers “talk” in a “binary” language that is simple, logical, and sound, with none of the ambiguity that characterizes human language. Artificial intelligence requires knowledge to be given to computers in wel...
Requirements engineering for adaptive and self‐adaptive systems targets requirements related to system adaptation when a system needs to cope with changes to ensure realization of its objectives. This entry outlines an approach to adaptation‐related requirements called autonomy requirements engineering (ARE). The approach converts adaptation issues...
Self-adaptive systems have the capability to autonomously modify their behavior at runtime in response to changes in their internal structure or execution environment. Therefore, often self-adaptation emerges as a means to solve problems related to performance or security, to increase efficiency, or to react to various hazards. Basically, self-adap...
When developing autonomous systems, designers employ different kinds of knowledge to specify systems. We present a visual modeling approach created for specifying self-adaptive systems. The approach uses model-based approach to specify the system context and ontology addressing both structural and behavioral parts. The resulting models are used wit...
The integration and promotion of autonomy in software-intensive systems is an extremely challenging task. Among the many challenges the engineers must overcome are those related to the elicitation and expression of autonomy requirements. Striving to solve this problem, Lero the Irish Software Engineering Research Center has developed an Autonomy Re...
In one aspect of our life or another, today we all live with AI. For example, the mechanisms behind the search engines operating on the Internet do not just retrieve information, but also constantly learn how to respond more rapidly and usefully to our requests. Although framed by its human inventors, this AI is getting stronger and more powerful e...
We introduce the special issue with the title of "Nature-inspired Computation and Communication: A Formal Approach" edited by Prof. Phan Cong Vinh and Dr. Emil Vassev to scientists, researchers, professionals and students in the field of computing. Hopefully, they will find this issue provoking for their research related to hot topics of computing...
Along with the traditional requirements, requirements engineering for autonomous and self-adaptive systems needs to address requirements related to adaptation issues, in particular: (1) what adaptations are possible; (2) under what constrains; and (3) how those adaptations are realized. Note that adaptations arise when a system needs to cope with c...
The KnowLang framework models uncertainty into the development of software-intensive systems to create enhanced possibilities for self-adaptation.
Urban environments are increasingly invaded by devices that acquire sensor information and pave the way for innovative forms of context awareness. Collecting knowledge from loosely-structured data streams and reasoning about changes are two key elements of the process. This paper illustrates a possible way to combine these two elements in a coordin...
Current space missions increasingly demand more autonomy in control architectures for Unmanned Space Vehicles (USVs), so unmanned long-term missions can be afforded. Continuous assurance of effective adaptation to unpredictable internal and external changes, along with efficient management of resources is essential for such requirements. One of the...
The ASCENS project deals with designing systems as ensembles of adaptive components. Among the outputs of the ASCENS project are multiple tools that address particular issues in designing the ensembles, ranging from support for early stage formal modeling to runtime environment for executing and monitoring ensemble implementations. The goal of this...
This chapter outlines an approach to Autonomy Requirements Engineering (ARE). ARE targets the integration and promotion of autonomy in software-intensive systems by providing a mechanism and methodology for elicitation and expression of autonomy requirements. ARE relies on goal-oriented requirements engineering to elicit and define system goals, an...
This chapter presents the ASCENS approach to knowledge representation and reasoning for self-adaptive systems. The approach targets both the integration and promotion of autonomy and self-adaptation in software-intensive systems by providing a mechanism and methodology for specification and operation of knowledge for self-adaptive behavior. The app...
Self-adaptive systems autonomously monitor their behavior and eventually modify that behavior according to changes in the operational environment or in the system itself. In this entry, we present an approach to implementing self-adaptation capabilities with KnowLang, a special framework for knowledge representation and reasoning. KnowLang provides...
Technology for Unmanned Space Vehicles (USVs) has inevitably evolved. Current USVs require continuous assurance of effective adaptation to unpredictable internal/external changes along with efficient management of resources. An attractive inspiration to tackle this issue is that provided by the physiology of living organisms to adapt with a vital g...
Swarm robotics has emerged as a paradigm whereby intelligent agents are considered to be autonomous entities that interact either cooperatively or non-cooperatively. The concept is biologically-inspired and offers many advantages compared with single-agent systems, such as: greater redundancy, reduced costs and risks, and the ability to distribute...
Cloud computing emerged as a paradigm offering new benefits to both social networking and IT business. However, to keep up with the increasing workload demand and to ensure that their services will be provided in a fail-safe manner and under consideration of their service-level agreement, contemporary cloud platforms need to be autonomous and self-...
From the NASA roadmaps and Space Technology Grand Challenges, it is clear that the use of autonomous and self-adaptive systems will be important for future space systems and missions as well as other life critical systems.
Verification of autonomy requirements needs to show a proof of compliance with the requirements the system can meet, i.e., each self-* objective is proven through performance of a test, analysis, inspection, or demonstration. Validation of autonomy requirements needs to demonstrate that the system pursuing a space mission accomplishes the intended...
Contemporary software-intensive systems, such as modern spacecraft and unmanned exploration platforms (e.g., ExoMars) generally exhibit a number of autonomic features resulting in complex behavior and complex interactions with the operational environment, often leading to a need for self-adaptation. To properly develop such systems, it is very impo...
This chapter discusses the state-of-the-art of software engineering for aerospace. To be successful, software engineering for aerospace must take into account the fact that aerospace systems need to meet a variety of standards and high safety requirements, and therefore, the development of aerospace systems emphasizes verification, validation, cert...
eMobility is a transportation concept based on a network of electrical vehicles and offering new benefits to both society and business. Due to CO2-emission reduction, legislation and decreasing oil availability, electric (e-) vehicles increasingly gain a greater share of the auto market. An eMobility system is composed of ensembles of cooperating e...
Long-term space missions are requiring more and more autonomy from Unmanned Space Vehicles (USVs). USV control architectures are required to support effective adaptation to unpredictable internal and external changes. Thus, continuous assurance of efficient management of resources is essential to realize such requirements. Inspiration on the self-r...
Self-adaptive clouds extend upstream the regular cloud platforms with special autonomy features dedicated to handling increasing workload and service failures. The identification of such features is not necessarily an easy task. Sometimes those can be explicitly stated by QoS requirements or in preliminary material available to requirements enginee...
Research related to context-aware u-learning system has proliferated during last decades. Systems identified in literature are developed in ad-hoc manner to resolve a specific problem in a given context; however, u-learning systems developers need to have a clear and a general view of how their intended systems make use of the ubiquitous context. T...
Current space missions are increasingly demanding more autonomy in control architectures for Unmanned Space Vehicles (USVs), so unmanned long-term missions can be afforded. Continuous assurance of effective adaptation to unpredictable internal and external changes along with efficient management of resources is essential for such requirements. One...
Advanced space exploration is performed by unmanned missions with integrated autonomy in both flight and ground systems. Risk and feasibility are major factors supporting the use of unmanned craft and the use of automation and robotic technologies where possible. Autonomy in space helps to increase the amount of science data returned from missions,...
This book constitutes the thoroughly refereed proceedings of the Second International Conference on Context-Aware Systems and Applications, ICCASA 2013, held in Phu Quoc Island, Vietnam in November 2013. The 36 revised full papers presented were carefully selected and reviewed from over 100 submissions and cover a wide spectrum of issues in the are...
Contemporary robotics relies on the most recent advances in automation and robotic technologies to promote autonomy and autonomic computing principles to robotized systems. However, it appears that the design and implementation of autonomous systems is an extremely challenging task. The problem is stemming from the very nature of such systems where...
To increase the overall reliability, modern computerization of complex systems such as spacecraft, airplanes, and automobiles strives to minimize the human control via self-adaptation. In such systems, special autonomic components are designed to handle performance problems via monitoring and automatic decision making. Successful development of aut...
The development of unmanned space exploration missions is closely related to integration and promotion of autonomy in robotic spacecraft. Elicitation and expression of autonomy requirements is one of the most significant challenges the autonomous spacecraft engineers need to overcome. Nowadays, requirements engineering for autonomous systems appear...
In new space exploration initiatives of NASA and ESA, there is emphasis on both human and robotic exploration. Risk and feasibility are major factors supporting the use of unmanned craft and the use of automation and robotic technologies where possible. In that context, an autonomous system is able to monitor its behavior and eventually modify the...
To become interaction-aware, an autonomic cyber-physical system needs to be aware of its physical environment and whereabouts and its current internal status. This ability is defined as artificial awareness and it helps intelligent software-intensive systems perceive changes, draw inferences for their own behavior and react. Originally, artificial...
Modern reasoning is based on inference techniques such as induction, deduction, abduction, subsumption, classification and recognition. These inference techniques are very inefficient when applied to large amounts of knowledge such as ones employed by contemporary unmanned spacecraft. For efficient reasoning, we aim at knowledge representation base...
Autonomous behavior and onboard decision making is the backbone of robotic space exploration. The enormous distance and communication latency make such missions hardly controllable from Earth and external decision making may overlap and often contradict with the onboard decision making. We propose a behavior model based on some sort of "laziness" t...
Closely related to artificial Intelligence, awareness depends on the knowledge transferred to software-intensive systems so they can use it to exhibit intelligence.
SUMMARY The increasing complexity of contemporary embedded computing systems requires the use of self-management in order to handle unforeseen changes in both hardware and control software. The idea behind computer systems capable of self-management is a complex concept compound by many aspects related to both artificial intelligence and awareness....
Formal methods aim to build correct software by eliminating both requirements and design flaws. Still, specification languages have a somewhat bad reputation in the software engineering community for being too heavy and difficult to use. This is mainly due to the use of complex mathematical notations often requiring experts in the field. We rely on...
Intelligent systems are capable of AI exhibited via knowledge representation and reasoning, which helps to connect abstract knowledge symbols to real-world meanings. This paper presents a formal language for knowledge representation called KnowLang. The language implies a multi-tier specification model emphasizing knowledge corpuses, knowledge base...
Constraints are widely used in information technologies and research fields such as programming languages, artificial intelligence, databases, information security, web technologies, etc. In this paper, we present our preliminary steps of using soft constraints for knowledge representation. We integrate soft constraints in KnowLang, a formal langua...
An autonomic system is considered to be a self-adaptive system that changes its behavior in response to stimuli from its execution and operational environment. Such behavior is considered autonomic and self-adaptive and is intended to drive intelligent systems in situations requiring adaptation. Such systems encapsulate rules, constraints and mecha...
Adaptive systems are critical for future space and other unmanned and intelligent systems. Verification of these systems is also critical for their use in systems with potential harm to human life or with large financial investments. Due to their nondeterministic nature and extremely large state space, current methods for verification of software s...
To link to this chapter: http://dx.doi.org/10.1081/E-ESE-120048262.
Cognitive robotics are autonomous systems capable of artificial reasoning. Such systems can be achieved with a logical approach, but still AI struggles to connect the abstract logic with real-world meanings. Knowledge representation and reasoning help to resolve this problem and to establish the vital connection between knowledge, perception, and a...
Developing space systems is a complex task, driven by standards and safety requirements to ensure reliability of sophisticated hardware and software. Future NASA missions will focus on the development of swarm-based spacecraft systems comprising multiple self-organizing and autonomous spacecraft.
One of the main objectives of self-adaptive systems is to reduce maintenance costs through automatic adaptation. Self-healing is a self-adapting property that helps systems return to a normal state after a fault or vulnerability exploit has been detected. The problem is intuitively appealing as a way to automate the different type of maintenance pr...
Building intelligent robotic systems is both stirring and extremely challenging. Researchers have realized that robot intelligence can be achieved with a logical approach, but still AI struggles to connect that abstract logic with real-world meanings. This paper presents KnowLang, a new formal language for knowledge representation in a special clas...
In this paper, we discuss our research towards developing special properties
that introduce autonomic behavior in pattern-recognition systems. In our
approach we use ASSL (Autonomic System Specification Language) to formally
develop such properties for DMARF (Distributed Modular Audio Recognition
Framework). These properties enhance DMARF with an a...
The Autonomic System Specification Language (ASSL) is a formal method dedicated to autonomic computing, and as such, assists developers with formal
specification, validation and code generation of autonomic systems. Due to the synthesis approach of automatic code generation, ASSL guarantees consistency between a specification and the corresponding...
NASA is currently exploring swarm-based technologies, targeting the development of prospective exploration missions to explore regions of space, where single large spacecraft would be impractical. Such systems are envisioned to operate autonomously and their success factor depends highly on self-awareness capabilities. This research emphasizes the...
A successful intelligent software system employs its knowledge to become more self-aware.
This work presents an approach to self-healing that deals with un-handled exceptions within an executing program. More precisely, we propose an approach based on control theory that automatically disables system functionalities that have led to runtime exceptions. This approach requires the system to be instrumented prior to deployment so that it c...
Both modularity and loose-coupling properties inherent to the self-adaptive systems offer the opportunity for ad-hoc service compositions, dynamic change and adaptation. To provide such a dynamic and self-adapting behavior, developers emphasize special self-management policies. ASSL (Autonomic System Specification Language) is a formal tool where s...
Reducing power consumption is an important design objective in energy-constrained embedded and mobile systems. Such systems must be designed to meet functional and often timing requirements facing the challenge of energy restriction. This paper presents a new approach for power management based on ZETA, a mathematical framework that utilizes comput...
Autonomic Service-Component Ensembles (ASCENS) is a class of multi-agent systems formed as mobile, intelligent and open-ended swarms of special autonomic service components capable of local and distributed reasoning. Such components encapsulate rules, constraints and mechanisms for self-adaptation and acquire and process knowledge about themselves,...
Knowledge is the source of intelligence and both knowledge representation and knowledge management are crucial for intelligent systems. Well employed knowledge helps such systems become aware of situations, recognize states and eventually respond to changes. This paper presents our vision of knowledge representation and awareness in mobile swarm sy...
Contemporary aerospace systems are complex conglomerates of components where control software drives rigid hardware to aid such systems meet their standards and safety requirements. The design and development of such systems is an inherently complex task where complex hardware and sophisticated software must exhibit adequate reliability and thus, t...
In this paper, autonomic systems are discussed. The rapidly growing field of autonomic computing promises a new approach to developing complex computing systems. Different implementations of awareness for intelligent systems can prove useful in developing autonomic systems such as commercially available server monitoring platforms.
We aim at identifying the content and design principles of KnowLang, a new formal language for knowledge representation in a particular class of autonomic systems termed ASCENS. Autonomic Service-Component Ensembles (ASCENS) are multi-agent systems formed as mobile, intelligent and open-ended swarms of special autonomic service components capable o...
ASSL (Autonomic System Specification Language) is an initiative for self-management of complex systems whereby the problem of formal specification, validation, and code generation of autonomic systems is approached within a framework. Being a formal method dedicated to autonomic computing, ASSL helps developers with problem formation, system design...
Self-managing policies provide a self-management behavior for autonomic systems developed with ASSL (Autonomic System Specification Language). With ASSL we have successfully developed special autonomic prototypes of both the NASA ANTS (Autonomous Nano-Technology Swarm) concept mission and NASAs Voyager Mission. In these prototypes, we applied ASSL...
Autonomic Computing is a rapidly growing IT field that promises a new approach to developing largescale complex computing systems. The AC paradigm aims at handling complexity through self-management by transforming computing systems into autonomic systems. There are many kinds of knowledge that need to be considered for the development of autonomic...
Intelligent swarms draw their inspiration from biology where many simple entities act independently, but when grouped, they appear to be highly organized. NASA is currently investigating swarm-based technologies for the development of prospective exploration missions to explore regions of space where a single large spacecraft would be impractical....
We describe the use of ASSL (Autonomic System Specification Language) and DMF (Demand Migration Framework) in the development of software systems for intelligent sensor networks. ASSL is used to formally specify and automatically generate autonomous intelligent sensor nodes. DMF is applied to connect those nodes in a sensor network. ASSL provides s...
peer-reviewed We target effective home automation based on wireless sensor networks. ASSL (Autonomic System Specification Language) is used to formally specify and generate prototype models for wireless sensor networks controlling a simulated virtual home environment. This approach allows for formal validation, experiments under simulated condition...
This preliminary conceptual work discusses a notion of self-forensics as an autonomic property to augment the Autonomic System Specification Language (ASSL) framework of formal specification tools for autonomic systems. The core of the proposed methodology leverages existing designs, theoretical results, and implementing systems to enable rapid com...
Sensor networks have inspired a wide spectrum of novel applications in environmental monitoring, homeland security, object tracking, and home automation. Smart sensors are connected together to collect and process data needed to accomplish high-level tasks. This paper describes a high-level approach to the development of intelligent sensor networks...
We present a technological convergence approach to developing sensor networks capable of self-management. We use ASSL (Autonomic System Specification Language) to formally develop autonomous intelligent sensor nodes and DMF (Demand Migration Framework) to connect these nodes in a sensor network. ASSL provides constructs for modeling special self-ma...
We discuss our experiences in building tools for software verification of autonomic systems developed with the Autonomic System
Specification Language (ASSL). ASSL is a software framework that aims to assist developers of autonomic systems by providing
a powerful combination of both notation and tools. One of the major objectives of the framework...
Rich and multifaceted domain specific specification languages like the Autonomic System Specification Language (ASSL) help to design reliable systems with self-healing capabilities. The GEAR game-based Model Checker has been used successfully to investigate in depth properties of the ESA ExoMars Rover. We show here how to enable GEAR’s gamebased ve...
NASA's new age of space exploration augurs great promise for deep space exploration missions whereby spacecraft should be independent, autonomous, and smart. Nowadays NASA increasingly relies on the concepts of autonomic computing, exploiting these to increase the survivability of remote missions, particularly when human tending is not feasible. Au...
LXG is a simple Pascal-like language. It is a functional programming language developed for studying compiler design and implementation. The language supports procedure and variable declarations, but no classes. This paper reports the design and implementation of an LXG compiler. Test results are presented as well. Comment: 37 pages, 2 figures, gra...
We describe our work on code generation of autonomic systems specified with the Autonomic System Specification Language (ASSL).
First, we present a brief overview of ASSL and then we describe the process of code generation together with features of the
generated code in terms of architecture, coding standards, base classes, and type mapping. Moreov...
This paper presents an operational semantics for ASSL (Autonomic System Specification Language). ASSL is a promising new formal language dedicated to the development of systems exploiting the benefits of autonomic computing, a highly-regarded technique in the development of self-managing complex systems which draws inspiration from the mammalian au...
In this paper, we discuss our work towards self-healing property specification of an autonomic behavior in the Distributed Modular Audio Recognition Framework (DMARF) by using the Autonomic System Specification Language (ASSL). ASSL aids in enhancing DMARF with an autonomic middleware that enables it to perform in autonomous systems that theoretica...
We present a new formal approach to the implementation of embedded systems, arrived at by introducing self-management capabilities to the same. We use the ASSL (Autonomic System Specification Language) framework to approach the problem of formal specification and automatic code generation of embedded systems. Some features of ASSL help to specify e...
For almost four decades, formal methods have been considered as a software engineering approach to developing reliable systems. Their power lies in the use of a mathematical notation to specify properties of a system, and computer computation to check correctness of the same. Although formal methods have successfully evolved over the years to meet...
The objective of this article is to provide for the reader a basic description of all the steps involved in the COM object life-cycle process. COM is a software technology and process performer. The first section briefly introduces the Component Object Model (COM), considering the process of the COM object life cycle as the baseline of all COM issu...
When we talk about databases there have always been problems concerning data synchronization. The latter is a technique for maintaining consistency among different copies of data (often called replicas). In general, there is no universal solution to this problem and often a particular situation requires a particular approach driven by specific cond...
This report presents results of our endeavor towards developing a failure-recovery variant of a CORBA-based bank server that provides fault tolerance features through message logging and checkpoint logging. In this group of projects, three components were developed to satisfy the requirements: 1) a message-logging protocol for the branch servers of...
Autonomic computing promises overall IT complexity reduction by hiding system complexity and intricacy via systems capable of self-management. However, despite the fact that such systems reduce software maintenance costs and complexity, the autonomic computing approach does not provide any means for complexity reduction in autonomic system developm...
ASSL provides a framework for formal specification, validation, and code generation of autonomic systems.
NASA exploration missions increasingly rely on the concepts of autonomic computing, exploiting these to increase the survivability of remote missions, particularly when human tending is not feasible. This paper presents initial results of long-term research targeted at the design and implementation of prototype models for future Voyager-like missio...