Evaluating the Effectiveness of Applying Genetic Algorithms for NVP System Design

Bibliographic Information

Other Title
  • NVPシステム設計に対する遺伝的アルゴリズム適用の有効性の評価
  • NVP システム セッケイ ニ タイスル イデンテキ アルゴリズム テキヨウ ノ ユウコウセイ ノ ヒョウカ

Search this article

Description

The N-version programming (NVP) approach is a kind of fault tolerant techniques and is a software system employing functionally equivalent, yet independently developed software components. It relies on the application of design diversity (i.e., program versions are independently designed to meet the same system requirements). A consistent set of inputs is supplied to all versions and all N versions are executed in parallel. A decision mechanism must gather the available results from N versions and determine the result to be delivered to the user. When constructing a large-size software system with extremely high reliability, we must use components with much higher reliability, however, this is very expensive. Therefore a large, highly reliable software system should be designed while minimizing cost. Genetic algorithms are known as one of the most powerful optimizers or near-optimizers of combinatorial optimization problems. We propose two genetic algorithms, one employing "random key representation", and the other employing "binary representation", for solving the N-version program design problem formulated as a 0-1 non-linear integer programming problem, respectively. Further, the efficiency of the proposed GAs is proven through some numerical experiments. Then, the characteristics of each representation scheme are investigated and evaluated.

Journal

Citations (3)*help

See more

References(10)*help

See more

Details 詳細情報について

Report a problem

Back to top