The BaseLadder class now filters a subselection of players by match_func, then randomly chooses one of those players. This is to prevent playing the same players repeatedly due to Elo similarity.
Test Cases
ladder_tests/weighted_ladder_test.py
selection_size of 1, default behavior preserved
selection_size of 1 & pool of 15 players; subselection returns 1 player with closest elo
selection_size of 5 & pool of 15 players; subselection returns 5 players with closest elo
selection_size of 5 & pool of 15 players; subselection returns all 15 players
Addresses Issue #135
Updates
The
BaseLadder
class now filters a subselection of players bymatch_func
, then randomly chooses one of those players. This is to prevent playing the same players repeatedly due to Elo similarity.Test Cases
ladder_tests/weighted_ladder_test.py
selection_size
of 1, default behavior preservedselection_size
of 1 & pool of 15 players; subselection returns 1 player with closest eloselection_size
of 5 & pool of 15 players; subselection returns 5 players with closest eloselection_size
of 5 & pool of 15 players; subselection returns all 15 players