Cellular automata: From modeling to applications