Damn good question. Here's what I would do...
For each classification, find out how many groups there are and how
many belong to each group. For gender, you have 2 groups and they are
probably split 50/50. So every addition to each bucket of students
would be male, then female, etc. This is, clearly, pretty obvious.
Geo origin and race would have more buckets with less people per bucket.
I would start assigning students like this:
Bucket 1: Male, foreign origin (if any), any race
Bucket 2: Male, foreign origin (if any), any race
... ad nauseum through the first round. Second round choose women of
foreign origin of any race. If you run out of men or women before
running out of foreign origins, just keep assigning regardless of
gender.
When you run out of foreign origins, move to race and do the same
thing through all of the various races you describe.
Finally, you are left with American students, male and female of
whatever major racial category you have left. Start assigning them.
You may further divide them by origin in the US (West Coast, Mountain
states, midwest, east coast, etc).
This should roughly balance out the groups, but you may choose to do
some manual tweaking from there.
Hope this helps!
-dhs
Dean H. Saxe, CISSP, CEH
[EMAIL PROTECTED]
"[U]nconstitutional behavior by the authorities is constrained only by
the peoples' willingness to contest them"
--John Perry Barlow
On Jul 25, 2008, at 5:25 PM, Tepfer, Seth wrote:
I have a challenge laid out before me. I need to divide the incoming
Oxford student class into 25 groups of about 16 or 17 students each.
However, they want the groups to be as balanced as possible, across
number, sex, race, and geographic origin. Now, I can easily see how
to balance based on sex or any single characteristic. But how to
balance across all three at the same time? My head starts spinning
when I think about the issues that we won't necessarily have equal
distribution across any of the characteristics.
I don't need the code, just the concept. I am having a hard time
conceiving on how to do this if the people were standing in front of
me, much less by code. Any ideas?
Seth Tepfer 770-784-8487 [EMAIL PROTECTED]
Director of Administrative Computing, Oxford College
Proud Pappa (again): Zyle Caspian, born Thursday, April 17, 2:38 pm.
8 lbs, 19.5 inches. Baby Pix at: http://www.flickr.com/photos/[EMAIL PROTECTED]/
This e-mail message (including any attachments) is for the sole use of
the intended recipient(s) and may contain confidential and privileged
information. If the reader of this message is not the intended
recipient, you are hereby notified that any dissemination,
distribution
or copying of this message (including any attachments) is strictly
prohibited.
If you have received this message in error, please contact
the sender by reply e-mail message and destroy all copies of the
original message (including attachments).
-------------------------------------------------------------
To unsubscribe from this list, manage your profile @
http://www.acfug.org?fa
For more info, see http://www.acfug.org/mailinglists
Archive @ http://www.mail-archive.com/discussion%40acfug.org/
List hosted by http://www.fusionlink.com
-------------------------------------------------------------
-------------------------------------------------------------
To unsubscribe from this list, manage your profile @
http://www.acfug.org?fa=login.edituserform
For more info, see http://www.acfug.org/mailinglists
Archive @ http://www.mail-archive.com/discussion%40acfug.org/
List hosted by http://www.fusionlink.com
-------------------------------------------------------------