I think you normally don't want to produce different chromosomes/results using the same seed. That is the whole point of replicating previous runs. The same results are produced because the same "randomizer" is used.

If you want to produce a different result while using the same seed, you can choose to use some randomizer of your own. I think this might be a useful technique, say, if you want to use the same breeding process between runs, but use selection methods with different randomizer, you can implement your own randomizer in the selection methods (and you will not be using the default randomizer offered by ECJ in the selection methods).

My first question extends from the previous post's example. Let's say we specify
only one seed 8000, there is only one thread and we run it for 10 generations.
What can we expect the breeder to breed? Would it breed the same chromosome
set across all 10 generations?

I have read that when the same seeds are used, we can replicate the result. This
helps in testing and debugging. My second question is in what condition would
two runs of the ecj, using the same seeds, produce different
chromosomes/results?