Abstract

Cellular automata provide a mathematical way to represent complex systems and effectively run them on parallel computers achieving scalable performance. A high-level programming model is an essential tool for the practical development of computational science applications using the cellular automata model. This paper introduces and discusses the CARPET (Cellular Automata Programming Environment) language and shows its practical use for programming cellular automata simulations on parallel architectures. CARPET provides a user with a programming layer that offers constructs for the direct definition of the cellular automata features, such as lattice dimension, cell state, neighborhood, and transition function. In this way, CARPET offers a natural correspondence between program and application domain. The CARPET parallel run-time system maps CA programs on a parallel computer, hiding the architecture issues from the user, and it provides advanced visualization of the output of the program. The paper describes how practical cellular automata algorithms for computational modeling and simulation can be designed using the CARPET programming language.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call