- We refactored the matchmaking system to make it more robust, more
powerful, and easier to use.
- You can now *randomize* and *chain* group
creation through `alfred3_interact.MatchMaker.match_random` and
`alfred3_interact.MatchMaker.match_chain`. Both of these methods enable
you to take the special challenges of interactive experiments into
account. *Chaining* group creation is handy, for example when you want
to create groups of different sizes. Larger groups are harder to realize,
and thus you may wish to prioritize them: When possible, create a
large group. Only when large group creation fails, create the smaller
groups. Please refer to the documentation for more details.
- Matchmaking now requires the definition of "Group specs". These specs
currently come in three different flavours: `alfred3_interact.ParallelSpec`
for parallel (synchronous) groups, `alfred3_interact.SequentialSpec` for sequential
(asynchronous) groups, and `alfred3_interact.IndividualSpec` for
"groups" of size one. The latter allow you to include individual-sized
conditions in group experiments via `match_random` and `match_chain`.
You can use group specs to control the maximum number of groups that
should be created based on a specific spec via their parameter `nslots`.
- We changed the admin facilities to use the new admin mode introduced
in alfred3 v2.2.0. You can now add `alfred3_interact.MatchMakerActivation`
and `alfred3_interact.MatchMakerMonitoring` to your experiment
individually.