http://fairdice.livejournal.com/ ([identity profile] fairdice.livejournal.com) wrote in [personal profile] jducoeur 2007-01-01 05:11 pm (UTC)

From the algorithmic point of view — which is to say, paying attention to some mathematical abstraction, and ignoring how close it is to the real problem — I think you're okay. Edmonds's "blossom" algorithm (Canad. J. Math 1965) is a polynomial-time algoritm for solving the minimal-weight perfect-matching problem: given a score for how much "cognitive dissonance" each person would have playing each character (which could just be a distance between the high-dimensional points corresponding to their questionnaire responses, but more involved is ok too), the algorithm will produce the matching with the minimal total dissonance.

One glaring shortcoming for your real problem is that it can't take inter-assignment relationships into account: "Player A will be much happier playing role X if B plays Y than if C plays Y" is right out. (Mathematically, that would mean your objective function isn't linear in the matching.) I don't know how much you do that sort of thing.

Post a comment in response:

(will be screened)
(will be screened if not validated)
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting