After I've been playing with Random 1D Cellular Automaton, I also played with the idea of modifying the probabilities at each new line: for every probability p1, p2 and p3 we linearly interpolate between the values on the top and the values on the bottom (that are 0 or 1 only on the extremities). Below is an interactive automaton (a bigger interactive version is here) and some interesting transitions (the last one, 001 to 000 is sometimes very dull, but not always):
This idea of random 1d cellular automaton transitions has been used in a bootsector (512 bytes) demo for Atari ST that you can find here: My Atari demos and tools. Direct links: [pouet], [YouTube]
Moreover you can find this random 1d cellular automaton transitions in my fab tool.
Here's the principle: We compute one line after another,
and to know the new living/dead state of a cell, we check
the previous state of it and both its neighbours. Let's mark
* a living cell and . a dead
one. Then we have 8 possibilities (with a lot so symmetries though) according to neighbours:
*** : center cell will live with probability p1
*.* : center cell will live with probability p2
**. : center cell will live with probability p3
.** : center cell will live with probability p3
..* : center cell will live with probability 1-p3
*.. : center cell will live with probability 1-p3
.*. : center cell will live with probability 1-p2
... : center cell will live with probability 1-p1
The probabilities are linearily interpolated between the 3 values on top to the 3 values on the bottom (0 or 1 only
on those extremities).