SpaceCowMedia / commander-spellbook-backend

The Commander-Spellbook editor dashboard made with ❤, Python and Django.
https://spacecowmedia.github.io/commander-spellbook-backend/
MIT License
10 stars 2 forks source link

Variant generation should be improved #17

Closed ldeluigi closed 1 year ago

ldeluigi commented 2 years ago

Blocked by: https://github.com/Pyomo/pyomo/issues/2475

ldeluigi commented 1 year ago

Other improvements:

  1. A better cpu
  2. Parallelization (will come in the future eventually)
  3. Faster problem generation (someone must code it) - APPSI
  4. Using a better solver (I'm using the best free one, a better one has a paid license)
  5. Generating fewer variants at a single time (I'm working on exactly this)
  6. MILP model simplification
ldeluigi commented 1 year ago
  1. blocked by 2. + last resort
  2. eventually when pyomo releases
  3. """"
  4. not viable
  5. breaks consistency of "includes" and results
  6. but how???
ldeluigi commented 1 year ago

Profiling results: image 2/3 of the time is wasted writing to files 1/3 is spent solving

NEW PRIORITY LIST:

  1. parallelization
  2. appsi implementation for GLPK or moving to cbc
  3. better cpu / more cores
ldeluigi commented 1 year ago

Improvement points:

  1. https://pyomo.readthedocs.io/en/stable/advanced_topics/linearexpression.html
  2. https://pyomo.readthedocs.io/en/stable/advanced_topics/persistent_solvers.html
ldeluigi commented 1 year ago

Done. persistent_solvers seem to slow down

ldeluigi commented 1 year ago

Editors normally just need to generate new variants when they add a combo