Skip to content

Fix power pairing logic #467

Description

@JoeyRubas

The speaks power pairing logic is flawed, because it relies on an imperfect pre-calculation of the ideal team to hit based on speaks alone. This fails for example when the pull up is in the middle of the bracket. An example at UVA:

5 teams in the bracket
the pull up logic gives the pull up to the 3 seed
ideally, the 1 hits the 5 and the 2 hits the 4
However, the pre-compute assumes the 1 gets the pull up, and therefore pre-computes the ideal opponent for the 2 seed as the 5 seed, and 3 seed as the 4 seed.
As a result, max weight matching pairs 1 to 4, and 2 to 5

We should fix by abaonding the ideal opponent logic, and instead trying to maximize symmetry (i.e. team a distance from top of bracket = team b distance from bottom of bracket)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions