Randomizing crowd scenes with instanced models I want to set up a crowd scene using instanced models with a lot of randomization. Say I have a library that consists of several bodies, hairstyles, and outfit pieces. I want to make a crowd where each member has their pieces randomly drawn from this library, as well as random colors in their materials, but also drawn from a list or predefined colors. And then have a random pose from a pose library, but still each have their own rig intact so that their individual poses can be changed/tweaked. And i want to do it all without breaking instancing to the original models, so that if any of the assets are updated, all of the members of the crowd using those pieces will get the update.

Is this possible, and what is the best workflow for it?
My hammer is python, and your problem looks like a nail.  I would develop python that can instantiate copies of the bodies and hairpieces at the proper locations (http://web.purplefrog.com/~thoth/blender/python-cookbook/link-mesh-array.html illustrates the basics of this technique).

Linking meshes with armatures is done with modifiers like in http://web.purplefrog.com/~thoth/blender/python-cookbook/bone-orientation-demo.html (which also includes examples of adjusting the orientation of bones).

A python solution to your problem is somewhat involved, but I am optimistic that there are examples of all the techniques you need somewhere on stackexchange or google.