Thesis Title:
Designing the Ontology Learning Model: Prototyping in a Farsi Text Understanding system
Abstract:
Research on ontology is becoming increasingly widespread in the computer science community and ontologies are widely used to provide common understanding between different information agents. The major problems in building ontologies are the bottleneck of conceptual knowledge acquisition and time-consuming construction of various ontologies for various domains/applications. Meanwhile moving toward automation of ontology construction is a solution. In this dissertation I present a model for automatic ontology learning and construction from scratch based on natural language texts. By scratch I mean there are no semantic lexicon and no base general or specific ontologies to facilitate the learning process. In this model the system starts form a small ontology kernel and constructs various ontologies through text understanding automatically. The kernel is language neutral and domain independent and contains the primitive concepts, relations and operators to build an ontology. The presented model is able to extract and learn words, concepts, taxonomic and non-taxonomic relations and axioms, exploiting a symbolic, hybrid ontology learning approach consisting of logical, linguistic based, template driven and semantic analysis methods with several usage of heuristics. The presented ontology learning model is adapted for Persian language and prototyped in a system named “Hasti”. Hasti extracts lexical and ontological knowledge from Persian (Farsi) texts and build semantic lexicons and ontologies based on them. Hasti is tested on simple texts from the Farsi book of first grade of primary school and achieved good results. In this dissertation I will first present some theoretical background issues on ontology learning from texts and then describe the model and the system implemented based on it and at last will discuss the experimental results of testing the system.
Thesis Title:
Extending the Knowledge Representation Model Based on Flexible Inference Engine
Abstract:
The basic knowledge representation models such as logic, rules, frames and semantic networks, has their specific inference mechanisms, each one suitable for simulating one of the intelligent characteristics of human. In this project, a uniform structure for keeping all above KR models has been selected and extended to be capable of encoding/representing the inference mechanism too. Storing the inference mechanism beside the knowledge itself, has the benefit of dominating the issues of (1) uncertainty, (2) learning, (3) self evaluation and (4) self modification to the area of inference procedures. Putting knowledge and inference procedures all together will not eliminate the need for an inference engine. The inference engine should grab the procedures from the KB as knowledge itself. The intelligent part of a soccer softbot has been implemented based on the flexible inference engine model. The effect of the use of engine on self-localization methods has been shown.
Thesis Title:
Design and Implementation of a tool for knowledge validation and verification in intelligent systems
Abstract:
Verification and Validation (V&V) are the most crucial phases in building knowledge base systems. Researchers and practitioners in the field of AI applications generally agreed that knowledge base of any intelligent systems must be adequately verified and validated. We present an active OAV-VVT expert to verify and validate the knowledge during the building of knowledge base or refinement of existing KB. We define “validation” as the correctness and existence of system output according to the test cases that have been defined by expert and “verification” as the checking of the consistency, completeness and logical & semantic contradiction of KB. All of these definitions are presented by logical formal language. Consequently with this definition, OAV-VVT expert will cover all the common issues in V&V of the knowledge.
In OAV-VVT expert, we introduce Ex-OAV KB based on new approach to representation and reasoning techniques to create new KB from the existing KB. Ex-OAV KB is based on Object-Attribute-Value (OAV) Knowledge representation. We will present and demonstrate how the major techniques of knowledge representation (i.e. semantic network, frames, production rules) could be transformed to Ex-OAV KB. It is application and knowledge representation independent. In our work the syntax of knowledge is changed but the semantic of knowledge has been remained unchanged. Ex-OAV KB will be verified and validated by OAV-VVT expert and this process is iterative and all the invalid knowledge will be recorded and then modified. The process of modification of invalid knowledge in OAV-VVT expert will be done by using the existing V&V methods or knowledge engineer. This process will be completed when not new invalid knowledge is discovered in Ex-OAV KB.
OAV-VVT expert by using the explanation component, which is an essential part in any expert system, can explain “how” an invalid Knowledge has been discovered and “why” it is invalid. All common issues of verification and validation (V&V) such as consistency, completeness, logical & semantic contradiction and correctness of knowledge base are considered in OAV-VVT expert.
OAV-VVT expert improves the performance of V&V phase in building the knowledge base by checking unreferenced attribute values and illegal attribute values, during the transforming the existing KB to Ex-OAV KB. All necessary algorithms to transform the different knowledge representation techniques have been presented in this work to justify that the Ex-OAV KB is feasible.
Thesis Title:
Computational Argumentation-based Flexible Negotiation System
Abstract:
The main goal of this project is to develop a flexible argumentation-based negotiation system for agent-based systems that operate in open environments. In this project, we will design and develop a flexible argumentation protocol for negotiation, a suitable argumentation strategy for negotiation and an appropriate architecture for arguing agents. The results can be used in many applications areas such as electronic commerce, semantic Web, virtual organizations, agent cities and grid computing.
Thesis Title:
Active View Prediction, to Store Aggregated Data in order to Efficient OLAP System
Abstract:
On-Line Analytical Processing (OLAP) systems based on Data Warehouses are main working systems for managerial decisions making. Therefore these systems should have quick response time. Several algorithms have been presented to select proper set of data and elicit suitable structured environments to handle the queries submitted to OLAP systems, which are called view selection algorithms to materialize. Some of these algorithms are static and the others are dynamic. Since users’ requirements may change during the run time, we have to consider view materialization dynamically. In this thesis, we propose a new solution for dynamic view selection. We test and verify this solution through a dynamic view management system with new and improved architecture. This system extracts sequential patterns of incoming queries and predicts the next query through three probabilistic reasoning approaches: Conditional probability, Bayes’ rule, and Naïve Bayes’ rule. The proposed system is compared with DynaMat system (a well-known dynamic view management system), Hybrid system (the only dynamic view management system based on probabilistic reasoning approaches and outperforms DynaMat for drill-down queries), and extended Hybrid system (without constraints) through two standard measures which have been used in related works to evaluation. These measures are Detailed Cost Saving Ratio and Cumulative Replacement Count which are the average cost saving to answer input queries and the total number of view replacements in the pool with new selections respectively. Our experimental results show that the proposed dynamic view selection system improves these measures.
Thesis Title:
Analysis Patterns for Agent’s Intelligence Engineering
Abstract:
Exploiting Artificial Intelligence (AI) techniques to software systems helps software systems to handle the complexity of dynamic and unexpected sitiations. From software engineering perspective, all the capabilities of software systems (including intelligence) should be developed through a set of pre-defined development processes. Requirments Engineering (RE) is an important process for elicitation, analysis and specification of requirements.
In this thesis, intelligence is introduced as a new requirement of software systems, and a framework is presented for elicitation, specification and analysis of intelligence requirements via designing software pattens. This framework contains the taxonomy of intelligence. It categorizes the sub-characteristics of intelligence via a quantitative analysis on 71 definitions of intelligence in public notion, psychology and AI. These characteristics are considered as the potential requirements of intelligent software systems. The presented categorization is used for elicitation of intelligence requirements. This framework also contains software requirements patterns and analysis patterns, as tools that are used in RE process. Theses patterns are presented for learning and planning, as two candidate intelligence characteristics.
In this thesis, two approaches are used for evaluation: 1- Empirical Study: In this study, requirements patterns are applied for requirements specification. The resulted functional, quality and intelligence requirements are compared for validity, completeness, relation with other requirements, changability, implementability and testability. The results show that intelligence requirements are similar to the functional and quality requirements based on the measured criteria. 2- Integration with the existing agent-oriented methodologies: In this approach, O-MaSE meta-model and learning analysis meta-models are mapped. Based on this mapping, an O-MaSE based process is presented for developing learning as an intelligence requirement.
Thesis Title:
Reliable yet Flexible Software Development Process with Formal and Visual Modeling Methods
Abstract:
The results of literature review show that the need for both reliability and flexibility is increasingly becoming important among the various classes of software applications. Developing reliable yet flexible software is a hard problem. Although modeling methods enjoy a lot of advantages, the use of just one of them, in many cases, may not guarantee the development of reliable and flexible software. Formal modeling methods ensure reliability. However, lack of knowledge and high cost practically force developers to use semi-formal methods instead. Semi-formal (visual) modeling methods, which are widely used in practical large-scale software development, are not good enough for reliable software development.
This dissertation proposes a new practical process to the development of reliable yet flexible software. In the proposed process, formal (Object-Z) and semi-formal (UML) models are transformed into each other using a set of bidirectional formal rules. Formal modeling and refinement ensure the reliability of software. Visual models facilitate the interactions among stakeholders who are not familiar enough with the complex mathematical concepts of formal methods. Visual models help detect the unexpected behavior and inconsistencies of software. Applying design patterns to visual models improves the flexibility of software. The transformation of formal and visual models into each other through the iterative and evolutionary process, proposed in this dissertation, helps develop the software applications that need to be highly reliable yet flexible. The feasibility and the applicability of the proposed process have been investigated using the multi-lift case study. Moreover, the flexibility and the reliability of the process have been quantitatively measured using the proposed systematic methods.
Thesis Title:
Active ontology based on Evolutionary Methodology
Abstract:
Ontology is a tool that can add meaning to a software system and can be used to represent the elements and knowledge of a domain. For the term ontology, various definitions have been seen in literature which has led to lack of integrity and sometimes ambiguity in the definition of ontology itself. In our study of the definitions of ontology, we found that over the past years, more than 15 definitions have been presented, which we have compared and their differences and similarities are shown. One of the challenges in this field is the lack of a general representation structure for the term ontology, so we aim to provide a computational and specific representation model for the term ontology, which we shall call Cognibase.
The domain of an ontology is dynamic, which over time causes the ontology to become out of date and therefore must be changed to keep it up to date. These changes may occur due to different reasons which we have addressed in this research. It should be noted that if a change occurs, then the ontology must be recreated or regenerated. The process of rebuilding of an ontology is a time-consuming process, also, if it is to be repeated with the occurrence of every change, the cost of maintaining an ontology for a software system will be very expensive. Ontology evolution methods have been proposed to reduce the cost and overhead of ontology development methods. A system that can complete the ontology evolution process with little or no human intervention and high accuracy, has not yet been seen in research. Another challenge of this thesis is to help achieve this goal. On the other hand, analyzing extensive log files of ontology changes for an ontology engineer is very difficult and time consuming. Therefore, another goal and challenge presented is that we try to simplify the evolution management process for the ontology engineer, which is possible with use of high-level processes and process simplification. After reviewing different ontology evolution process models, we concluded that the ontology evolution process model should be designed in accordance with the system in which it is to be used in, and since our ontology evolution is based on the Cognibase model, a novel process model is presented. Also, a software system (OntoEvol) which supports our ontology evolution process based on the Cognibase model is presented. Another achievement of this research is the introduction of a taxonomy of ontology changes that is able to categorize various ontological changes for better analysis of ontology changes.
Thesis Title:
Q-STAR: Data Quality Engineering Framework
Abstract:
Data quality is one of the key factors in the success or failure of business intelligence and data warehousing projects. Recently, different methods have been introduced to “manage” and “control” the quality of data. Due to the high volume of multidimensional data stored in data warehouse, an important issue that has been overlooked in previous studies, is engineering constraints (time, cost, and scope), and their quantitative impact on the final quality of data, called “data quality engineering”. In this thesis, “quality” is equivalent to the “user requirement” and the final goal is to provide a framework for engineering quality of data. This thesis is divided into two main sections. In the first section (problem domain), a comprehensive survey of “constraint-based algorithms” is presented. At the end of the first section, the main problems of these methods are presented as follows: (1) the presented algorithms are inefficient for processing large data sets due to their complexity (2) they are unable to identify variant data quality problems (3) These algorithms are limited to the structured data sets. In the second section (solution domain), a “crowdsourcing” approach is proposed to solve the identified problems. Introduction of human factors into the field of computing creates some new challenges. One of the most important challenges, is the behavior of the crowd workers in performing micro-tasks. Malicious workers might provide poor responses for faster and easier rewards. In the past, various methods have been developed to identify and control the effect of malicious workers which were mainly based on: investigating the intrinsic and behavioral characteristics of crowd workers, using experts review and design of fraud proof micro-tasks. Although these methods might be useful in detecting and controlling malicious workers, but they impose significant costs on the system, which might contradict with the main philosophy of crowdsourcing. In this thesis, a new approach based on dynamic weighted majority is proposed. New algorithms, measures and indicators are presented for quality engineering of the system outputs, as well as identifying and controlling the effects of malicious workers. In addition to solving the three problems identified in the problem domain, the proposed approach also provides the possibility of data quality engineering by tuning engineering constraints (time, cost, and scope) and their quantitative impact on the final quality of data is measured also. Experiments show effectiveness and efficiency of the proposed method. In addition, the proposed method does not depend on “fraud-proof activities”, “intrinsic behaviors”, “golden standards” or “expert review” making it versatile and scalable.
Thesis Title:
Semantic Traceability of Quality Attributes based on Architectural Tactics
Abstract:
Traceability is a technique that allows all kinds of software artifacts to be monitored at all stages of the software life cycle. Tracing functional requirements is a relatively mature field of research. However, the traceability of quality attributes remains a challenge. Quality attributes have a wide range of effects on a system and are achieved from various architectural perspectives. Architectural patterns and tactics are commonly used to obtain quality attributes. The main goal of this thesis is to prevent architecture erosion by establishing trace links between quality attributes and source code, which is provided through the identification of architectural tactics in source code. The proposed approach in this thesis has been evaluated by conducting a case study.
This paper introduces a new quality attributes traceability approach based on Clone Microtactics. A Microtactic is a microstructure associated with an architectural tactic that is automatically identifiable in the conceptual representation of the source code. This approach identifies parts of source code with behavioral and contextual similarities with microtactics described in a reference model as Clone Microtactics. Identifying architectural tactics also enables quality attribute traceability in the source code. Identifying Microtactics in the source code as parts of an architectural tactic enables the traceability of quality attributes in the source code by an ontology-based semantic infrastructure. Our approach is evaluated by conducting a case study on a dataset related to the Apache Hadoop framework, which includes ten architectural tactics related to availability, performance, and security. Obtaining an average of 0.99 for recall shows that the proposed approach was able to identify almost all architectural tactics. Also, comparing the results with similar methods in this field indicates that in 80% of cases, the proposed approach has obtained better results.