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 (bigger interactive version) 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).