Commit Graph

204 Commits (6ae052c8d0aac0c9cea0d2ffd58b35a12f49c062)

Author SHA1 Message Date
Alinson S. Xavier ffc77075f5 Require a callable as the internal solver
5 years ago
Alinson S. Xavier 3ff773402d Remove unused variable
5 years ago
Alinson S. Xavier fb006a7880
Merge branch 'dev' of github.com:iSoron/miplearn into dev
5 years ago
Alinson S. Xavier 872ef0eb06
Benchmark: Move relative statistics to benchmark script
5 years ago
Alinson S. Xavier d7aac56bd9
Benchmark: Remove unused save_chart; load multiple results
5 years ago
Alinson S. Xavier aecc3a311f
Merge branch 'feature/convert-ineqs' into dev
5 years ago
Gregor Hendel 601bfa261a make gap computation robust against missing upper/lower bounds
5 years ago
Alinson S. Xavier 088a4a0355
Fix formatting
5 years ago
Alinson S. Xavier 5a062ad97e
ConvertTight: Use x function from DropRedundant
5 years ago
Alinson S. Xavier fab7b5419b
BenchmarkRunner: Create parent dirs in save_results
5 years ago
Alinson S. Xavier 137247aed9
GurobiSolver: Randomize seed
5 years ago
Alinson S. Xavier 7e4b1d77a3
DropRedundant: Collect data from multiple runs
5 years ago
Alinson S. Xavier e12a896504
Add training_data argument to after_solve
5 years ago
Alinson S. Xavier 30d6ea0a9b
Benchmark: Include solver log in results file
5 years ago
Alinson S. Xavier beee252fa2
simulate_perfect: Do not overwrite original file
5 years ago
Alinson S. Xavier b01d97cc2b
ConvertTight: Always check feasibility
5 years ago
Alinson S. Xavier d67af4a26b
ConvertTight: Detect and fix sub-optimality
5 years ago
Alinson S. Xavier c9ad7a3f56
Benchmark: Add extra columns to CSV
5 years ago
Alinson S. Xavier f77d1d5de9
ConvertTight: Detect and fix infeasibility
5 years ago
Alinson S. Xavier dfe0239dff
LearningSolver: Implement simulate_perfect
5 years ago
Alinson S. Xavier bdfe343fea
Silence debug statements
5 years ago
Alinson S. Xavier 7f55426909
Remove debug print statements
5 years ago
Alinson S. Xavier 3f1aec7fad RelaxationComponent: Always use np arrays
5 years ago
Alinson S. Xavier 4057a65506 ConvertTightIneqs: Convert only inequalities, not equalities
5 years ago
Alinson S. Xavier 1e3d4482f4 ConvertTightIneqs: Reduce default slack_tolerance to zero
5 years ago
Alinson S. Xavier 317e16d471 ConvertTight: Don't take any action on constraints with negative slack
5 years ago
Alinson S. Xavier ec00f7555a Export steps
5 years ago
Alinson S. Xavier d8dc8471aa Implement tests for ConvertTightIneqsIntoEqsStep
5 years ago
Alinson S. Xavier 0377b5b546 Minor changes to docstrings
5 years ago
Alinson S. Xavier 191da25cfc Split relaxation.py into multiple files
5 years ago
Alinson S. Xavier 144ee668e9 Fix failing tests
5 years ago
Alinson S. Xavier c1b4ea448d PyomoSolver: Never query values of fixed variables
5 years ago
Alinson S. Xavier 4a26de5ff1 RelaxationComponent: Convert tight inequalities into equalities
5 years ago
Alinson S. Xavier 5b5f4b7671 InternalSolver: set_constraint_sense, set_constraint_rhs
5 years ago
Alinson S. Xavier 8bb9996384 Break down RelaxationComponent into multiple steps
5 years ago
Alinson S. Xavier 6540c88cc5 Component: Add default implementations to all methods
5 years ago
Alinson S. Xavier 94b493ac4b Implement CompositeComponent
5 years ago
Alinson S. Xavier d99600f101 Reformat source code with Black; add pre-commit hooks and CI checks
5 years ago
Alinson S. Xavier 3823931382 RelaxationComponent: max_iterations
5 years ago
Alinson S. Xavier 0b41c882ff Merge branch 'feature/files' into dev
5 years ago
Alinson S. Xavier 388b10c63c Train without loading all instances to memory
5 years ago
Alinson S. Xavier 54d80bfa85 RelaxationComponent: Implement check_dropped
5 years ago
Alinson S. Xavier 51b5d8e549 Component: rename iteration_cb and lazy_cb
5 years ago
Alinson S. Xavier e7426e445a Make tests compatible with Python 3.7+
5 years ago
Alinson S. Xavier 57d185dfc2 Merge branch 'gh-actions' into dev
5 years ago
Alinson S. Xavier 272eb647fd Switch to GitHub runners; temporarily disable CPLEX
5 years ago
Alinson S. Xavier f03cc15b75 Allow solve and parallel_solve to operate on files
5 years ago
Alinson S. Xavier 1b6982ae8d Implement RelaxationComponent
5 years ago
Alinson S. Xavier 3c4045f64b StaticLazy: Add tolerance to tests
5 years ago
Alinson S. Xavier 4144b8b6b3 Primal: In evaluate, skip variables without predictions
5 years ago
Alinson S. Xavier 0cf88ded89 LearningSolver: Silence logging during parallel_solve
5 years ago
Alinson S. Xavier 92615958fb GurobiSolver: Flip upper/lower bound for minimization problems
5 years ago
Alinson S. Xavier b51c367257 UserCutsComponent: ignore training instances without cut data
5 years ago
Alinson S. Xavier 75570ceaeb Minor fixed to BenchmarkRunner
5 years ago
Alinson S. Xavier a221740ac5 Implement lazy callbacks & two-phase gap
5 years ago
Alinson S. Xavier 86e7b1981f Revert changes to default variable category
5 years ago
Alinson S. Xavier ba96338d2d Small fixes to lazy constraints
5 years ago
Alinson S. Xavier 0fe6aab98f Modify Instance defaults
5 years ago
Alinson S. Xavier e527e75481 Implement iteration_cb for LearningSolver; reactivate TSP
5 years ago
Alinson S. Xavier 5390a5b656 Rename LazyConstraintsComponent to DynamicLazyConstraintsComponent
5 years ago
Alinson S. Xavier 425ea2b7cc Temporarily remove native solver callbacks; add iteration_cb
5 years ago
Alinson S. Xavier e731f46b72 Implement preliminary version of static lazy component
5 years ago
Alinson S. Xavier 5ccd65c809 Remove empty tests
5 years ago
Alinson S. Xavier 6b104433be Improve logging
5 years ago
Alinson S. Xavier 25f336aac9 Fix failing test
5 years ago
Alinson S. Xavier 5663ced0be Move python files to root folder; remove built docs
5 years ago
Alinson S. Xavier 7765d1f822
Reorganize directories
6 years ago
Alinson S. Xavier 303750a7dd
Restore add_constraint method
6 years ago
Alinson S. Xavier 19453f5ee5
LearningSolver: only compute all_vars once
6 years ago
Alinson S. Xavier 2750447f6d
Use lazy constraints callback (Gurobi only)
6 years ago
Alinson S. Xavier 72fc65cae0
LazyConstraintsComponent: make threshold configurable
6 years ago
Alinson S. Xavier 570ac09286
Only relax binary variables; do not clear value of fixed variables
6 years ago
Alinson S. Xavier 5eee00c626
Plot predicted objective value
6 years ago
Alinson S. Xavier b609b4a0ee
Include objective sense in benchmark file; update charts
6 years ago
Alinson S. Xavier 0b04fa93da
Finish TSP implementation; improve performance of Extractors
6 years ago
Alinson S. Xavier b1f674fcc6
Improve solve_lp performance
6 years ago
Alinson S. Xavier d2a2de9183
Instance: document find_violations and build_lazy_constraint
6 years ago
Alinson S. Xavier 959cb54d27
Remove load_state and save_state
6 years ago
Alinson S. Xavier 7a01d9cbcf
Implement TSP generator and LazyConstraintsComponent
6 years ago
Alinson S. Xavier f713a399a8 Merge branch 'master' into feature/tsp
6 years ago
Alinson S. Xavier 30e7d7313c Fix failing test
6 years ago
Alinson S. Xavier 996b16f1b7 Add missing files
6 years ago
Alinson S. Xavier a2fbb9f8d8 Implement PrimalSolutionComponent; remove deprecated predictors
6 years ago
Alinson S. Xavier ccd694af9b Implement ObjectiveValueComponent
6 years ago
Alinson S. Xavier 7de1db047f Implement InstanceFeaturesExtractor and ObjectiveValueExtractor
6 years ago
Alinson S. Xavier b428a4fc36 Add option to solve root relaxation only
6 years ago
Alinson S. Xavier 9e4004ae8a Silence Gurobi
6 years ago
Alinson S. Xavier b60afab5ef Extract value of LP relaxation
6 years ago
Alinson S. Xavier 10ad8e0a9e Make Gurobi the default solver
6 years ago
Alinson S. Xavier 212e38d004 Make SolutionExtractor use instance.solution and instance.lp_solution
6 years ago
Alinson S. Xavier 0048fcce13 Extract root relaxation solution
6 years ago
Alinson S. Xavier f8e8aeb973 Better encapsulate solvers
6 years ago
Alinson S. Xavier 141c8f0fdf Store solution into instance object after solving
6 years ago
Alinson S. Xavier 4bf7636f51 Fix tests for CPLEX; temporarily disable incompatible tests
6 years ago
Alinson S. Xavier 4ab957b686 Update copyright notices
6 years ago
Alinson S. Xavier 7d8279a3bb Merge branch 'master' into dev
6 years ago
Alinson S. Xavier 635c16386d Update copyright notices
6 years ago
Alinson S. Xavier d3b5b43b94 Implement AdaptiveSolver; reorganize imports
6 years ago
Alinson S. Xavier 1213f1d0a5 LearningSolver: fix node count for non-compatible solvers
6 years ago
Alinson S. Xavier ffb29d2bbb BenchmarkRunner: add solve method
6 years ago