An experimental evaluation of the assumption of independence in multiversion programming
IEEE Transactions on Software Engineering
Fault-tolerant multiprocessor and distributed systems: principles
Fault-tolerant computer system design
Optimal linear combinations of neural networks
Neural Networks
Genetic programming: an introduction: on the automatic evolution of computer programs and its applications
Proceedings of the sixth ACM SIGKDD international conference on Knowledge discovery and data mining
N-Version Design Versus One Good Version
IEEE Software
Diversity in the Software Development Process
WORDS '97 Proceedings of the 3rd Workshop on Object-Oriented Real-Time Dependable Systems - (WORDS '97)
INBS '95 Proceedings of the First International Symposium on Intelligence in Neural and Biological Systems (INBS'95)
A study of cross-validation and bootstrap for accuracy estimation and model selection
IJCAI'95 Proceedings of the 14th international joint conference on Artificial intelligence - Volume 2
An empirical evaluation of bagging and boosting
AAAI'97/IAAI'97 Proceedings of the fourteenth national conference on artificial intelligence and ninth conference on Innovative applications of artificial intelligence
Improving model accuracy using optimal linear combinations of trained neural networks
IEEE Transactions on Neural Networks
Behavioral Diversity and a Probabilistically Optimal GP Ensemble
Genetic Programming and Evolvable Machines
Cooperative evolution on the intertwined spirals problem
EuroGP'03 Proceedings of the 6th European conference on Genetic programming
Hi-index | 0.00 |
We introduce a new method, N-Version Genetic Programming (NVGP), for building fault tolerant software by building an ensemble of automatically generated modules in such a way as to maximize their collective fault masking ability. The ensemble itself is an example of n-version modular redundancy for fault tolerance, where the output of the ensemble is the most frequent output of n independent modules. By maximizing collective fault masking, NVGP approaches the fault tolerance expected from n version modular redundancy with independent faults in component modules. The ensemble comprises individual modules from a large pool generated with genetic programming, using operators that increase the diversity of the population. Our experimental test problem classified promoter regions in Escherichia coli DNA sequences. For this problem, NVGP reduced the number and variance of errors over single modules produced by GP, with statistical significance.