Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consider alternatives to the tactic selection algorithm #3372

Open
3 tasks
itsarune opened this issue Oct 19, 2024 · 0 comments
Open
3 tasks

Consider alternatives to the tactic selection algorithm #3372

itsarune opened this issue Oct 19, 2024 · 0 comments
Labels
Difficulty - 13 Require a good understanding of relevant systems and tools, and may require some pathfinding Gameplay Triage When it's unclear if it's worth doing or how to start

Comments

@itsarune
Copy link
Contributor

Description of the task

Currently, our tactic-to-robot assignment uses the Hungarian algorithm which uses a "cost" for assigning a robot to each tactic and tries to minimize the net cost in its assignments. It aims to make sure that the total cost for assigning 1 robot to each tactic is minimized.

In our gameplay stack, tactic assignment occurs AFTER we have selected tactics. This has added some strange complexity to our code. For example, our FSMs must simulate the state machine for every single robot, because we don't know which robot will end up being assigned to this tactic.

We should look into how other teams perform tactic assignment. Can we do it earlier so that tactics don't have to simulate tactics for all robots? This seems to be Tigers Mannheim's approach.

Approach:

  1. Look into how other teams do tactic assignment
  2. Investigate if it's worth changing our tactic assignment algorithm
  3. Update the tactic assignment logic in Play::get

Acceptance criteria

  • Research other tactic assignment algorithms
  • Replace (if necessary) the Hungarian algorithm
  • Migrate the following tests for the new tactic assignment algorithm

Blocked By

@itsarune itsarune added Difficulty - 13 Require a good understanding of relevant systems and tools, and may require some pathfinding Triage When it's unclear if it's worth doing or how to start Gameplay labels Oct 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Difficulty - 13 Require a good understanding of relevant systems and tools, and may require some pathfinding Gameplay Triage When it's unclear if it's worth doing or how to start
Projects
None yet
Development

No branches or pull requests

1 participant