This Article 
 Bibliographic References 
 Add to: 
A Class of Inherently Fault Tolerant Distributed Programs
October 1988 (vol. 14 no. 10)
pp. 1432-1442

Software for industrial process-control systems, such as nuclear power plant safety control systems and robots, can be very complex because of the large number of cases that must be considered. A design approach is proposed that uses decentralized control concepts, and is based on E.W. Dijkstra's concept of self-stabilizing systems (1974). This method greatly simplifies the software, so that its correctness can be verified more easily. A simple control system is described for a simulated robot that is tolerant of partial failure of controllers and mechanisms, and permits online repair and enhancement of the control functions.

[1] J. S. Albus, A. J. Barbera, and R. N. Nagel, "Theory and practice of hierarchical control," inProc. COMPCON Fall '81, Washington, Sept. 1981, pp. 18-39.
[2] F. B. Bastani and I. L. Yen, "Analysis of an inherently fault tolerant program," inProc. COMPSAC '85, Chicago, IL, Oct. 1985.
[3] I. R. Chen and F. B. Bastani, "Telescopic replication in hierarchically structured process-control programs," Univ. Houston--University Park, Houston, TX, Tech. Rep. UH-CS-87-9, Nov. 1987.
[4] E. W. Dijkstra, "The solution to a cyclic relaxation problem,"Selected Writings on Computing: A Personal Perspective, E. W. Dijkstra, Ed. New York: Springer-Verlag, 1982.
[5] E. Dijkstra, "Self-stabilizing systems in spite of distributed control,"Commun. ACM, vol. 17, pp. 643-644, 1974.
[6] G. E. Hinton, "Parallel computations for controlling an arm,"J. Motor Behavior, vol. 16, no. 2, pp. 171-194, 1984.
[7] G. E. Hinton and T. J. Sejnowski, "Learning and relearning in Boltzmann machines," inPARALLEL DISTRIBUTED PROCESSING: Explorations in the Microstructure of Cognition, Vol. 1: Foundations, pp. 282-317.
[8] H. Ihara and K. Mori, "Autonomous decentralized computer control systems,"Computer, vol. 17, no. 8, pp. 57-66, Aug. 1984.
[9] E. Jensen, "Distributed control," inDistributed Systems--Architecture and Implementation, B. W. Lampson, M. Paul, and H. J. Siegert, Eds. New York: Springer-Verlag, 1981, pp. 175-190.
[10] K. H. Kim, "Evolution of a virtual machine supporting fault-tolerant distributed processes at a research laboratory," inProc. Int. Conf. Data Eng., Los Angeles, CA, Apr. 1984, pp. 620-628.
[11] H. S. M. Kruijer, "Self-stabilization (in spite of distributed control) in tree-structured systems,"Inform. Processing Lett., vol. 8, no. 2, pp. 91-95, Feb. 1979.
[12] L. Lamport, R. Shostak, and M. Pease, "The Byzantine Generals Problem,"ACM Trans. Programming Languages and Systems, Vol. 4, No. 3, July 1982, pp. 382-401.
[13] L. Lamport, "Solved problems, unsolved problems and nonproblems in concurrency,"Oper. Syst. Rev., vol. 19, pp. 34-44, Oct. 1985.
[14] W. L. Luyben,Process Modeling, Simulation, and Control for Chemical Engineers. New York: McGraw-Hill, 1973.
[15] K. Mori, H. Ihara, Y. Suzuki, K. Kawano, M. Koizumi, M. Orimo, K. Nakai, and H. Nakanishi, "Autonomous decentralized software structure and its application," inProc. FJCC '86, Dallas, TX, Nov. 1986.
[16] R. D. Schlichting and F.B. Schneider, "Fail-stop processors: An approach to designing fault-tolerant computing systems,"ACM Trans. Comput. Syst., vol. 1, no. 3, pp. 222-238, Aug. 1983.
[17] P. Smolensky, "Information processing in dynamical systems: Foundations of harmony theory," inParallel Distributed Processing: Vol. 1, D. E. Rumelhart and J. L. McClelland, Eds. Cambridge, MA: MIT Press, 1986.
[18] J. A. Stankovic, N. Chowdhury, R. Mirchandaney, and I. Sidhu, "An evaluation of the applicability of different mathematical approaches to the analysis of decentralized control algorithms," inProc. COMPSAC '82, Chicago, IL, Nov. 1982, pp. 62-69.

Index Terms:
fault tolerant distributed programs; industrial process-control; decentralized control concepts; self-stabilizing systems; correctness; robot; distributed processing; fault tolerant computing; industrial robots; program verification; programming theory; robot programming
"A Class of Inherently Fault Tolerant Distributed Programs," IEEE Transactions on Software Engineering, vol. 14, no. 10, pp. 1432-1442, Oct. 1988, doi:10.1109/32.6188
Usage of this product signifies your acceptance of the Terms of Use.