مطالعه تجربی از مدل سازی قابلیت های خودمدیریتی در سیستم های خودکار با استفاده از استدلال مبتنی بر مورد
|کد مقاله||سال انتشار||مقاله انگلیسی||ترجمه فارسی||تعداد کلمات|
|12775||2011||20 صفحه PDF||سفارش دهید||محاسبه نشده|
Publisher : Elsevier - Science Direct (الزویر - ساینس دایرکت)
Journal : Simulation Modelling Practice and Theory, Volume 19, Issue 10, November 2011, Pages 2256–2275
Autonomic systems promise to inject self-managing capabilities in software systems. The major objectives of autonomic computing are to minimize human intervention and to enable a seamless self-adaptive behavior in the software systems. To achieve self-managing behavior, various methods have been exploited in past. Case-based reasoning (CBR) is a problem solving paradigm of artificial intelligence which exploits past experience, stored in the form of problem–solution pairs. We have applied CBR based modeling approach to achieve autonomicity in software systems. The proposed algorithms have been described and CBR implementation on externalization and internalization architectures of autonomic systems using two case studies RUBiS and Autonomic Forest Fire Application (AFFA) have been shown. The study highlights the effect of 10 different similarity measures, the role of adaptation and the effect of changing nearest neighborhood cardinality for a CBR solution cycle in autonomic managers. The results presented in this paper show that the proposed CBR based autonomic model exhibits 90–98% accuracy in diagnosing the problem and planning the solution.
With the passage of time, the reliance and dependence on computers has increased tremendously due to automation and computerization of manual processes. This has led to increased process speed and higher accuracies, but has added to the complexity. The software systems have grown in size, functionality and complexity. As a result, it has become difficult to solve an unexpected problem. Solving a problem manually after its diagnosis in large scale systems is not a trivial job. Immediate solution strategies are needed that not just minimize the downtime but also the involvement of the human administrator. Inspired from the human nervous system, in which most of the activities are performed without explicit permission of human itself, autonomic computing , , ,  and  is a concept which injects some self-managing capabilities in the large systems. The complexity of the systems increases by adding autonomic capabilities but in return the human intervention for managing such systems can be minimized. The additional layer of complexity thus ensures a lot of problem solving responsibilities to be performed automatically and autonomously. Two architectures are available that incorporate autonomic behavior in a computing system: externalization and internalization. In externalization architecture, autonomic manager which is responsible for injecting the self-managing behavior, resides outside the self-managed component. In internalization architecture, autonomic manager is built in within the self-managed component. The properties of autonomic systems are collectively known as self-* properties. These include: self-configuration, self-optimization, self-protection, self-healing, self-awareness, context-awareness, open, and anticipatory  and . Self-configuration capability enables seamless adaptation of a new component or a new execution environment without significant human intervention. Self-configuring systems also need to configure themselves according to user-defined high level goals. User only specifies what is needed and not how it should be achieved. Autonomic manager prepares a configuration plan to seamlessly adapt changes in environment according to user-defined specifications ,  and . A self-optimizing system is supposed to continuously seek for the possibilities of optimization in the computing environment. Self-optimization capability optimizes various parameters at run time according to environmental conditions  and . It enables monitoring, experimenting and tuning various parameters to make best use of the existing resources . Systems having the self-protection capability are expected to defend against various malicious attacks and risks causing large-scale system-wide problems or localized problems within the components  and . Self-healing property detects various system failures and recovers from failures to enable minimum downtime of the system , ,  and . A self-healing system is supposed to remain conscious of the failures or abnormal behaviors of services and should diagnose and plan recovery action . Autonomic systems should be self-aware of their state, contextually aware of environmental changes, open for portability and common standards, and anticipate their needs, context and behavior  and . In the literature, various intelligent techniques like rule-based systems ,  and , artificial intelligence planning , hot swapping , PeerPressure , process query systems based on Hidden Markov Model (HMM) and state machines , active probing , and control theoretic approach  and , etc. have been used to enable various self-management capabilities in autonomic systems. Conversational case-based reasoning  has been applied for diagnosis of system failures and recovery which exploits the knowledge gained from recent successes and failures but has been applied at a very limited level in context of autonomic systems. Rule-based systems required rich well-formalized domain knowledge to construct the rule-base. Planning-based techniques require complete state space before searching the goal state. Hot swapping has been applied for self-configuration and adaptation of various code snippets dynamically. Hence, its application scope is limited. Control theory is model-based approach which uses mathematical models that are developed based on certain assumptions, thus reducing their applicability. Other probabilistic approaches like PeerPressure, HMM, state machines, active probing, etc. also rely on the availability of rich prior knowledge for learning the models. These techniques get benefit from the past experience to some extent but recent experiences are not considered while devising the solution. So, experience base is not continuously updated and utilized. These approaches limit the learning growth with passage of time and having new experiences. They do not learn from the recent failures or successes. Case-based reasoning (CBR) , , ,  and  is a lazy learning paradigm which is an attractive option to be used in the domain of autonomic computing because of the re-occurring nature of the autonomic computing problems in particular and computing systems in general. CBR is a reasoning methodology which uses past experience to find solution of a new problem. It is a good candidate technique to be adapted for autonomic systems due to various reasons. The detailed discussion on CBR cycle follows in Section 4. CBR works well where well-structured knowledge is not available before hand because it offers a flexible case structure. Its proposed solution is not rigid and can be revised using adaptation algorithms or human intervention. Revised solution is then finally adapted as the solution of the current problem. Current problem–solution pair may be retained in the case-base to add new knowledge for future use. Past experience is maintained in a repository called case-base. Though some work on CBR has been performed in autonomic computing earlier  and , the focus of this research work is to evaluate the impact of CBR based modeling approach in autonomic systems for the externalization and internalization architectures. The details follow in Section 5. Their focus was on improving the effectiveness of CBR cycle by presenting a clustered CBR approach that resulted in the reduced computational cost and case-base size. However the focus of the present work is to apply CBR in both of the autonomic architectures exploiting its different similarity measures and adaptation algorithms. In this paper, we present CBR-based autonomic computing models and self-management algorithms for externalization and internalization options of self-management. We propose to apply CBR model within autonomic manager as an analysis and planning tool. Our proposed approach promises to change and improve the way autonomic managers analyze the monitored problem and plan the remedial action. We have designed and implemented a tool called CaseBasedAutonome (CBA) which can be tailored to be used for both externalization and internalization options of self-management. We have investigated the efficiency and effectiveness of our proposed approach empirically. The empirical study is based on a multi-dimensional research methodology. These dimensions include similarity measure for retrieval of nearest neighbors, cardinality of set of nearest neighbors, solution algorithm, adaptation algorithm and two different case studies pertaining to externalization and internalization respectively. We selected Rice University Bidding System (RUBiS)  for our experiments based on externalization architecture. RUBiS is used as a benchmark for performance and optimization of distributed systems. It is a Java based three tier application which provides basic functionality of an auction site like eBay. It uses MySQL as the database management system at back-end. Inherently, RUBiS is a non-autonomic system. We implemented emulator of an external autonomic manager based on CBA for self-configuration, self-tuning and self-healing capabilities of RUBiS. The second case study selected for our experiments is Autonomic Forest Fire Application (AFFA)  and  based on internalization architecture. This is a simulation of forest fire and has built-in autonomic capabilities of self-optimization using a rule agent which uses rule-based system. The limitations of rule-based system include its dependence on complete prior domain knowledge and its rigidness in terms of adaptability and revision of a proposed solution. We have replaced the rule-agent with CBA and studied its behavior for self-protection and self-configuration. Rest of the paper is organized as: Section 2 gives an overview of autonomic computing, Section 3 presents an overview of existing self-management techniques in context of externalization and internalization and Section 4 gives an overview of CBR. Section 5 discusses the proposed CBR-based approach for externalization and internalization and Section 6 presents the research methodology adopted in this paper. Section 7 presents the empirical results and analysis of the proposed approach on RUBiS case study and Section 8 presents the empirical results and analysis of the proposed approach on AFFA case study. Finally, Section 9 concludes the paper and discusses some future work.
نتیجه گیری انگلیسی
In this paper, a CBR-based modeling approach has been presented for the externalization and internalization architectural options of autonomic systems. A CBR-based solution finder for autonomic systems CaseBasedAutonome (CBA) has been proposed and discussed in implementation level details. An empirical investigation has been conducted for exploring effect of different CBR parameters in externalization and internalization domains. Two case studies namely RUBiS and AFFA have been used in this empirical study. The results show that the proposed framework promises upto 98% accuracy in externalization architecture and 90% accuracy in internalization architecture. The study also reveals that Manhattan distance and Squared Chord distance perform as good as Euclidean distance in the externalization case study. But Euclidean distance is the best similarity measure for the internalization architecture across all cardinalities of nearest neighborhood and different adaptation schemes. This variation in performance is due to the nature of the datasets. The study also discusses the effect of cardinality (Nn) of nearest neighborhood and adaptation algorithms. No significant improvement in the performance of CBA has been observed for the larger values of Nn. Smaller values of Nn show adequate performance and have been used for confining the solution space of the monitored problem. Adaptation mechanisms of CBR presented in this paper have resulted in 18% and 6% performance improvement in externalization and internalization architectures respectively. This study considers only discrete cases. In many scenarios, it is not possible to fetch the precise information from the managed element. Incorporating the vague and imprecise knowledge in autonomic manager by applying fuzzy theory along with CBR is the intended future direction of this work.