mosaic icon indicating copy to clipboard operation
mosaic copied to clipboard

Scheduler: Assign participants to roles they got less

Open matiroy opened this issue 5 years ago • 3 comments

The most affected participants have a 4:1 ratio of role assignments (see: https://docs.google.com/spreadsheets/d/1-TzBe8BiMW3x2XGae5ZxLByX3yNUmKwMpneuEjy-cmw/ ; probably even worse given those metrics also include older workspaces). It's mostly bad insofar as participants prefer to vary roles, and it would probably also be good for people to evolve at a similar paste on all roles for strategy evolution (I don't think specializing is the way to go, at least not at this stage, although I'm not confident about this).

Improving role assignment based on scheduling priorities when creating trees would also help (maybe improve by up to 50%): https://github.com/oughtinc/mosaic-api-scripts/issues/17

But to solve it entirely, the scheduler would need to assign participants to roles based on what roles they've done the less so far.

@zjmiller , Jungwon and I are discussing this issue, and I would like to have your take on it as well. What do you think we should do?

An idea would be to still have the scheduler look at schedulingPriority first, and then have it look at roles less done. But then update the schedulingPriority of trees in such a way that there are ten for each levels (10 with priority 1, 10 with priority 2, etc.).

Other ways to do it: -to look at past roles first -do a combination of past roles and scheduling Priority

Or we could disregard this issue entirely, and just create the following feature instead: "Make it possible for participants to choose which role to get a workspace from (out of roles where there are available workspaces)" (see: https://github.com/oughtinc/mosaic/issues/625).

matiroy avatar Sep 03 '19 19:09 matiroy

Hmm, I think any of these would be a significant change to the scheduler. What seems better to you all (@Mati-Roy @jungofthewon @brachbach): Having the scheduler try to balance the different roles (i.e., judge, honest, malicious) or letting participants set a preference for a certain role (that they can change in between workspaces).

zjmiller avatar Sep 05 '19 03:09 zjmiller

  1. I think it's much better to let participants set preferences, rather than just trying to balance between the roles.
  2. Regardless of which way we go, we need to figure out how to balance this against other priorities in scheduling. I think this might be the time to switch to score-based scheduling a la https://github.com/oughtinc/mosaic/pull/677/files

(Note: I think my comment here is a bit scanty and doesn't move things forward as much as it should. I'm planning to revisit this issue within the next day once I have a better idea of what we should be working on dev-wise with Mosaic.)

brachbach avatar Sep 05 '19 03:09 brachbach

(I haven't added more thoughts yet on this issue because I don't think it's a top priority)

brachbach avatar Sep 17 '19 02:09 brachbach