Crystal-growth-inspired algorithms for computational grids
by Yuriy Brun, Nenad Medvidovic
Abstract:

Biological systems surpass man-made systems in many important ways. Most notably, systems found in nature are typically self-adaptive and self-managing, capable of surviving drastic changes in their environments, such as internal failures and malicious attacks on their components. Large distributed software systems have requirements common to those of some biological systems, particularly in the number and power of individual components and in the qualities of service of the system. However, it is not immediately clear how engineers can extract useful properties from natural systems and inject them into software systems.

In this paper, we explore the nature's process of crystal growth and develop mechanisms inspired by that process for designing large distributed computational grid systems. The result is the tile architectural style, a set of design principles for building distributed software systems that solve complex computational problems. Systems developed using the tile style scale well to large computations, tolerate faults and malicious attacks, and preserve the privacy of the data.

Citation:
Yuriy Brun and Nenad Medvidovic, Crystal-growth-inspired algorithms for computational grids, in Proceedings of the Workshop on Bio-Inspired Algorithms for Distributed Systems (BADS), 2009, pp. 19–26.
Bibtex:
@inproceedings{Brun09bads,
  author = {Yuriy Brun and Nenad Medvidovic},
  title =
  {\href{http://people.cs.umass.edu/brun/pubs/pubs/Brun09bads.pdf}{Crystal-growth-inspired
  algorithms for computational grids}},
  booktitle = {Proceedings of the Workshop on Bio-Inspired Algorithms for
  Distributed Systems (BADS)},
  venue = {BADS},
  address = {Barcelona, Spain},
  month = {June},
  date = {19},
  year = {2009},
  pages = {19--26},
  isbn = {978-1-60558-584-0},
  doi = {10.1145/1555284.1555288},

  note = {\href{http://dx.doi.org/10.1145/1555284.1555288}{DOI:
  10.1145/1555284.1555288}},

  abstract = {<p>Biological systems surpass man-made systems in many important
  ways. Most notably, systems found in nature are typically self-adaptive and
  self-managing, capable of surviving drastic changes in their environments,
  such as internal failures and malicious attacks on their components. Large
  distributed software systems have requirements common to those of some
  biological systems, particularly in the number and power of individual
  components and in the qualities of service of the system. However, it is not
  immediately clear how engineers can extract useful properties from natural
  systems and inject them into software systems.</p>

  <p>In this paper, we explore the nature's process of crystal growth and develop
  mechanisms inspired by that process for designing large distributed
  computational grid systems. The result is the tile architectural style, a
  set of design principles for building distributed software systems that
  solve complex computational problems. Systems developed using the tile style
  scale well to large computations, tolerate faults and malicious attacks, and
  preserve the privacy of the data.</p>},
}