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

ENH: modularize presolve in linprog #11691 #12510

Closed
wants to merge 38 commits into from
Closed

Commits on Mar 2, 2020

  1. Configuration menu
    Copy the full SHA
    f463c83 View commit details
    Browse the repository at this point in the history
  2. Remove semicolon

    janvle committed Mar 2, 2020
    Configuration menu
    Copy the full SHA
    e84067a View commit details
    Browse the repository at this point in the history

Commits on Mar 10, 2020

  1. Update if-branches _clean_input()

    Added corresponding tests
    Revert tox.ini
    janvle committed Mar 10, 2020
    Configuration menu
    Copy the full SHA
    232bc0c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f7bad2d View commit details
    Browse the repository at this point in the history
  3. Remove build log

    janvle committed Mar 10, 2020
    Configuration menu
    Copy the full SHA
    6762307 View commit details
    Browse the repository at this point in the history
  4. Missing tox.ini

    Needed to pass standard PR checks
    janvle committed Mar 10, 2020
    Configuration menu
    Copy the full SHA
    467cd2a View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4233745 View commit details
    Browse the repository at this point in the history

Commits on Mar 12, 2020

  1. Update presolve changes so far

    Add _presolve subfunctions to detect infeasible constraints, remove variables
    which arre fixed by bounds, remove variable which are fixed by row singletons.
    Add tests for these functions. Row singleton tests are not complete.
    janvle committed Mar 12, 2020
    Configuration menu
    Copy the full SHA
    2e5f937 View commit details
    Browse the repository at this point in the history
  2. Fix errors in presolve row singleton removal

    Add two tests
    janvle committed Mar 12, 2020
    Configuration menu
    Copy the full SHA
    061ac48 View commit details
    Browse the repository at this point in the history

Commits on Mar 13, 2020

  1. Configuration menu
    Copy the full SHA
    1e3514b View commit details
    Browse the repository at this point in the history

Commits on Mar 18, 2020

  1. Configuration menu
    Copy the full SHA
    7876d37 View commit details
    Browse the repository at this point in the history

Commits on Mar 21, 2020

  1. Merge branch 'revstack' into presolve

    Included asv.conf.json and reverted .gitignore to original.
    janvle committed Mar 21, 2020
    Configuration menu
    Copy the full SHA
    57dcafa View commit details
    Browse the repository at this point in the history

Commits on Mar 29, 2020

  1. Introduce modular implementation of _presolve()

    The code in _presolve() is split into parts, allowing the process to loop until no furter reduction is obtained.
    In the redundancy-removal, the initial zero-row test is removed; _presolve() does that now as a final step.
    janvle committed Mar 29, 2020
    Configuration menu
    Copy the full SHA
    f34b291 View commit details
    Browse the repository at this point in the history

Commits on Apr 6, 2020

  1. Add presolve summary to linprog result structure

    Removed variables, equations, inequalities & redundancy removal result.
    janvle committed Apr 6, 2020
    Configuration menu
    Copy the full SHA
    25af139 View commit details
    Browse the repository at this point in the history

Commits on Apr 28, 2020

  1. Ouput presolve results

    Including redundancy-removal result
    janvle committed Apr 28, 2020
    Configuration menu
    Copy the full SHA
    c47d26f View commit details
    Browse the repository at this point in the history

Commits on Jul 5, 2020

  1. Merge remote-tracking branch 'upstream/master'

    Preparing final PR
    janvle committed Jul 5, 2020
    Configuration menu
    Copy the full SHA
    8ae73d6 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'master' into presolve

    Resolved conflict in test__linprog_clean_inputs.py and asv.conf.json
    janvle committed Jul 5, 2020
    Configuration menu
    Copy the full SHA
    00d3e85 View commit details
    Browse the repository at this point in the history

Commits on Jul 6, 2020

  1. Update presolve routines and associated tests

    Corrected errors in tests mainly. These were written to an earlier version of the presolve routines.
    janvle committed Jul 6, 2020
    Configuration menu
    Copy the full SHA
    70494ed View commit details
    Browse the repository at this point in the history

Commits on Jul 7, 2020

  1. Modify equalities feasibility check for sparse matrices

    This code was rather slow.
    janvle committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    e726f66 View commit details
    Browse the repository at this point in the history
  2. Update _presolve_infeasible_inequality_constraints()

    Same reason and same change as the previous commit.
    janvle committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    8d16b73 View commit details
    Browse the repository at this point in the history
  3. Decrease number of calls to sparse __get_item, to speed up presolve i…

    …nfeasibility checks
    
    These calls are still timing bottlenecks.
    janvle committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    80bd64a View commit details
    Browse the repository at this point in the history
  4. Removed spurious comments and test with dense matrices G and H in _pr…

    …esolve_infeasibile_..._constraints()
    
    The benchmarks improve, but having dense intermediate matrices of the same shape as sparse A_eq and/or A_ub defies logic.
    janvle committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    c6348bb View commit details
    Browse the repository at this point in the history
  5. Update test__presolve.py tests

    Actually a redo. Preferred parameter formats and comments explaining the tests.
    janvle committed Jul 7, 2020
    Configuration menu
    Copy the full SHA
    98e3cff View commit details
    Browse the repository at this point in the history

Commits on Jul 8, 2020

  1. Redo updates to test__prosolve.py

    Also suppressed efficiency warning in feasibility checks with sparse matrices
    janvle committed Jul 8, 2020
    Configuration menu
    Copy the full SHA
    84f3b1c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9c4cb6e View commit details
    Browse the repository at this point in the history
  3. Merge branch 'master' into presolve

    Resolved conflicts, small updates to _linprog.py and _linprog_util.py
    janvle committed Jul 8, 2020
    Configuration menu
    Copy the full SHA
    33de625 View commit details
    Browse the repository at this point in the history
  4. Disable warning in modified _remove_redundancy.py

    The _remove_zero()-function is not necessary now that the _presolve() guarantees that there are no zero-rows im the problem matrices.
    I modified this function to do a light check, but the warning makes the tests fail.
    janvle committed Jul 8, 2020
    Configuration menu
    Copy the full SHA
    c4da5a4 View commit details
    Browse the repository at this point in the history
  5. Change sparse format intermediat matrices from CSR to LIL

    Resolves SparseEfficiencyWarning
    janvle committed Jul 8, 2020
    Configuration menu
    Copy the full SHA
    05ccf96 View commit details
    Browse the repository at this point in the history
  6. Add files via upload

    This file miraculously missing.
    janvle committed Jul 8, 2020
    Configuration menu
    Copy the full SHA
    f09b046 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    bda2a1a View commit details
    Browse the repository at this point in the history
  8. Update test__presolve.py to conform to PEP8

    Aligning matrix elements does not fit PEP8 rules.
    janvle committed Jul 8, 2020
    Configuration menu
    Copy the full SHA
    a0422c5 View commit details
    Browse the repository at this point in the history

Commits on Jul 10, 2020

  1. Configuration menu
    Copy the full SHA
    0bc033d View commit details
    Browse the repository at this point in the history
  2. Revert unintended change (sphinx theme)

    These two directories are empty. Will see if this is all.
    janvle committed Jul 10, 2020
    Configuration menu
    Copy the full SHA
    ef50b47 View commit details
    Browse the repository at this point in the history
  3. Revert unintended change: directory scipy-mathjax

    Directory is empty. Will see if that is sufficient.
    janvle committed Jul 10, 2020
    Configuration menu
    Copy the full SHA
    3857745 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6bb8402 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    a65a814 View commit details
    Browse the repository at this point in the history
  6. Add files via upload

    Permissions of the previously uploaded file were wrong (644 rw-r--r-- instead of 755 rwxr-xr-x)
    janvle committed Jul 10, 2020
    Configuration menu
    Copy the full SHA
    1db9caf View commit details
    Browse the repository at this point in the history
  7. Merge remote-tracking branch 'refs/remotes/origin/presolve' into pres…

    …olve
    
    As far as I can see only sobol_vec.gz
    janvle committed Jul 10, 2020
    Configuration menu
    Copy the full SHA
    cd18687 View commit details
    Browse the repository at this point in the history