Luke said:
If nothing else, by aiming for the stars you can hit the moon.
You can also hit the sun and burn up...
Read the CADD and your research goals Jamis and am still unsure if you are categorizing generation and random generation as the same generic concept. I guess you are looking to create a system (or theroize a system) that would allow from 0-100% randomization of the complex "object", in this problem domain, is a roleplaying game character. And where 0% randomness is the user entering in everything.
My input is that there are really two systems there, the system that defines the "order" and the system that defines the "rules".
In the above "order" is defined to mean wether the entity is a valid construct. Can I have a strength of 5 and still weild a huge greatsword. This has nothing to with generation, since you'll never generate an entity that disobeys the "order". (Think as opposite to chaos. Other analogies, the order creates truth/true entities, all other entities are lies.

)
And then the "rules" are what will flesh out and create a specific entity. Be it a greatsword wielding giant sorcerer, or an intelligent laser mounted turret. These can be thought of as possibilties only, you can have the giant just mentioned or one that uses a longsword. Neither of them are more "correct" than the other but both are true if they saitisfy the order. But you would never make a greatsword wielding kobold (too weak) in D&D because that violates the order.
So order would be the objects from your CADD with all the inter-relations checking a valid character. I don't see any value in making this also a random process inless you wanted to randomly generate game rule systems, which could be done if you think of this first process as bootstrapping (in the often used sense for building compilers). But thats another topic...
I would recommend you check out the d20xml yahoo group if you haven't already, they are currently trying to define that exact thing, the order of characters (using xml of course). This seems to me as a reasonably simple task of defining your data set. However much generic you want it extends that task considerably.
The second would be the rules, and this is where I am interested. Some of the things suggested are routes I would research, however I've done a bit of research on genetic algorithms and they would certainly be an approach to accomplish the random task. I support that because its here today and works, and is actually surrounding all thing in the world, solving problems and has been for billions of years. (Talk about tried and true.)
But, and these are unknown to me from your posts, what are the current problems as you see in random generation?
Generating invalid characters won't happen since the order system would prevent that.
The only problem I currently see (with your generators for instance) is that they only satisfy one segment of the randomness table, that is completely random. There are no connections between the random data, I want to generate a specialized wizard that favors defensive spells, or a bard that is passive aggressive, or a half-orc that was raised by orcs and now lives in a human city as a rogue. (These things can be solved by RI which means real intelligence, humans, you and me. Trying to get expert systems or AI is really pie in the sky at this point, there are not at our level so will fail in some of the tasks I want, because you see I want intelligent selection of spells, not AI selection of spells.)
Anyway, the reason I see this as two systems is because of the desire for random generation. And that random generation isn't a static beast. I want all my wizards of Thay to share a similar list of attack spells, or spells that only they have, and then whatever else is left randomly generate. SO each target in the order dataset can be randomly generated from a list, or many lists, or combinations of static lists and random lists.
Neither of these systems are all that difficult sounding, doing it to be completely generic is impossible, unless your systems are also systems of this system.

In other words, you have still another system that you use to define your order system, which in of itself is an order system. For instance your generators have parts of a "random generation and validity grammar", but only partially.
So something like Definer-of-all-Things is definately needed, and while I know nothing about it, there may be things of this nature to define project time and other similar tasks (tasks with dependencies) in the buisness world.
Things like simulated annelling would definately be helpful, as would genetic algorithms. But with approaches like that you then have to "build" the order system each time a change is made, in those cases the building is the genetic selection or annelling process which is time consuming for any complex order.
Or your user end product only represents and understands your genetic code, whereas its built by another process, (either selection for random generated, or engineered which would be needed to match an already existing system.) SO the user would have to generate a new genetic code to add a new primary ability to D&D, but a new item or skill or feat will not since they are in the second system mentioned and only target data.
The idea of a game rules system defined as genetic code is very interesting. The possibilties are endless, by definition.
Tis getting a bit long, I'll leave it at that for now.