This Article 
 Bibliographic References 
 Add to: 
Adaptive Programming
September 1991 (vol. 17 no. 9)
pp. 911-921

An adaptive program is one that changes its behavior base on the current state of its environment. This notion of adaptivity is formalized, and a logic for reasoning about adaptive programs is presented. The logic includes several composition operators that can be used to define an adaptive program in terms of given constituent programs; programs resulting from these compositions retain the adaptive properties of their constituent programs. The authors begin by discussing adaptive sequential programs, then extend the discussion to adaptive distributed programs. The relationship between adaptivity and self-stabilization is discussed. A case study for constructing an adaptive distributed program where a token is circulated in a ring of processes is presented.

[1] A. Arora, M. Gouda, and T. Herman, "Composite routing protocols," inProc. IEEE Symp. Parallel and Distributed Process., Dec. 1990.
[2] G. M. Brown, M. G. Gouda, and C. L. Wu, "Token systems that self-stabilize,"IEEE Trans. Computers, vol. 38, no. 6, pp. 845-852, 1989.
[3] J. Burns and J. Pachl, "Uniform self-stabilizing rings,"ACM Trans. Programming Languages Syst., vol. 11, no. 2, pp. 330-344, 1989.
[4] K. M. Chandy and J. Misra,Parallel Program Design: A Foundation. Reading, MA: Addison-Wesley, 1988.
[5] E. J. H. Chang, G.H. Gannet, and D. Rotem, "On the costs of self-stabilization,"Inform. Process. Lett., vol. 24, pp. 311-316, 1987.
[6] E. Dijkstra, "Self-stabilizing systems in spite of distributed control,"Commun. ACM, vol. 17, pp. 643-644, 1974.
[7] M. G. Gouda and M. Evangelist, "Convergence/response trade-offs in concurrent systems,"ACM Trans. Programming Languages and Systems, to be published.
[8] T. Herman, Ph.D. dissert., Dept. Computer Sci., Univ. Texas at Austin, 1991.
[9] IEEE 802.5 Token Ring Access Method. New York: IEEE, 1985.
[10] S. Katz and K. Perry, "Self-stabilizing extensions for message-passing systems," inProc. 9th Ann. Symp. Principles of Distributed Computing, 1990, pp. 91-101.
[11] R. M. Metcalfe and D. R. Boggs, "Ethernet: Distributed packet switching for local computer networks,"Commun. ACM, vol. 19, no. 7, pp. 395-404, 1976.
[12] A. S. Tanenbaum,Computer Networks. Englewood Cliffs, NJ: Prentice-Hall, 1981, pp. 302-303.

Index Terms:
token ring networks; adaptivity; composition operators; constituent programs; adaptive sequential programs; adaptive distributed programs; self-stabilization; adaptive systems; formal logic; parallel programming; programming theory
M.G. Gouda, T. Herman, "Adaptive Programming," IEEE Transactions on Software Engineering, vol. 17, no. 9, pp. 911-921, Sept. 1991, doi:10.1109/32.92911
Usage of this product signifies your acceptance of the Terms of Use.