Alinson S. Xavier
|
ec69464794
|
Refactor primal
|
5 years ago |
Alinson S. Xavier
|
9cf28f3cdc
|
Add variables to model features
|
5 years ago |
Alinson S. Xavier
|
1224613b1a
|
Implement component.fit, component.fit_xy
|
5 years ago |
Alinson S. Xavier
|
205a972937
|
Add StaticLazyComponent.xy
|
5 years ago |
Alinson S. Xavier
|
07388d9490
|
Remove unused composite component
|
5 years ago |
Alinson S. Xavier
|
64a63264c7
|
Rename xy to xy_sample
|
5 years ago |
Alinson S. Xavier
|
e8adeb28a3
|
Add ObjectiveValueComponent.xy
|
5 years ago |
Alinson S. Xavier
|
9266743940
|
Add Component.xy and PrimalSolutionComponent.xy
|
5 years ago |
Alinson S. Xavier
|
75d1eee424
|
DropRedundant: Make x_y parallel
|
5 years ago |
Alinson S. Xavier
|
3b61a15ead
|
Add after_solve_lp callback; make dict keys consistent
|
5 years ago |
Alinson S. Xavier
|
6ae052c8d0
|
Rename before/after_solve to before/after_solve_mip
|
5 years ago |
Alinson S. Xavier
|
bcaf26b18c
|
Sklearn: Handle the special case when all labels are the same
|
5 years ago |
Alinson S. Xavier
|
b6ea0c5f1b
|
ConstraintFeatures: Store lhs and sense
|
5 years ago |
Alinson S. Xavier
|
3a60deac63
|
LearningSolver: Handle exceptions in parallel_solve
|
5 years ago |
Alinson S. Xavier
|
bca6581b0f
|
DropRedundant: Clear pool before each solve
|
5 years ago |
Alinson S. Xavier
|
1397937f03
|
Add first model feature (constraint RHS)
|
5 years ago |
Alinson S. Xavier
|
31ca45036a
|
Organize test fixtures; handle infeasibility in DropRedundant
|
5 years ago |
Alinson S. Xavier
|
8153dfc825
|
DropRedundant: Update for new classifier interface
|
5 years ago |
Alinson S. Xavier
|
d3c5371fa5
|
VarIndex: Use tuples instead of lists
|
5 years ago |
Alinson S. Xavier
|
d1bbe48662
|
GurobiSolver: Small fix to _update_vars
|
5 years ago |
Alinson S. Xavier
|
9abcea05cd
|
Objective: Use LP value as feature
|
5 years ago |
Alinson S. Xavier
|
fe47b0825f
|
Remove unused extractors
|
5 years ago |
Alinson S. Xavier
|
603902e608
|
Refactor ObjectiveComponent
|
5 years ago |
Alinson S. Xavier
|
edd0c8d750
|
Remove RelaxationComponent
|
5 years ago |
Alinson S. Xavier
|
a97089fc34
|
Primal: Add tolerance in binary check
|
5 years ago |
Alinson S. Xavier
|
203afc6993
|
Primal: Compute statistics
|
5 years ago |
Alinson S. Xavier
|
b0b013dd0a
|
Fix all tests
|
5 years ago |
Alinson S. Xavier
|
3ab3bb3c1f
|
Refactor PrimalSolutionComponent
|
5 years ago |
Alinson S. Xavier
|
f68cc5bd59
|
Refactor thresholds
|
5 years ago |
Alinson S. Xavier
|
4da561a6a8
|
AdaptiveClassifier: Refactor and add tests
|
5 years ago |
Alinson S. Xavier
|
8dba65dd9c
|
Start refactoring of classifiers
|
5 years ago |
Alinson S. Xavier
|
b87ef651e1
|
Document and simplify Classifier and Regressor
|
5 years ago |
Alinson S. Xavier
|
f90d78f802
|
Move tests to separate folder
|
5 years ago |
Alinson S. Xavier
|
f755661fa6
|
Simplify BenchmarkRunner; update docs
|
5 years ago |
Alinson S. Xavier
|
c342a870d1
|
Minor fixes to docstrings; make some classes private
|
5 years ago |
Alinson S. Xavier
|
7dbbfdc418
|
Minor fixes
|
5 years ago |
Alinson S. Xavier
|
f7ce441fa6
|
Add types to internal solvers
|
5 years ago |
Alinson S. Xavier
|
d500294ebd
|
Add more types to LearningSolver
|
5 years ago |
Alinson S. Xavier
|
fc0835e694
|
Add type annotations to components
|
5 years ago |
Alinson S. Xavier
|
a98a783969
|
Update tests
|
5 years ago |
Alinson S. Xavier
|
a42c5ebdc3
|
Remove unused methods
|
5 years ago |
Alinson S. Xavier
|
868675ecf2
|
Implement some constraint methods in Pyomo
|
5 years ago |
Alinson S. Xavier
|
13e142432a
|
Add types to remaining InternalSolver methods
|
5 years ago |
Alinson S. Xavier
|
0cf963e873
|
Fix tests for Python 3.6
|
5 years ago |
Alinson S. Xavier
|
6890840c6d
|
InternalSolver: Better specify and test infeasibility
|
5 years ago |
Alinson S. Xavier
|
372d6eb066
|
Instance: Reformat comments
|
5 years ago |
Alinson S. Xavier
|
a1b959755c
|
Fix solve_lp_first=False and add tests
|
5 years ago |
Alinson S. Xavier
|
06402516e6
|
Move collected data to instance.training_data
|
5 years ago |
Alinson S. Xavier
|
23dd311d75
|
Reorganize imports; start moving data to instance.training_data
|
5 years ago |
Alinson S. Xavier
|
947189f25f
|
Disallow untyped calls and incomplete defs
|
5 years ago |
Alinson S. Xavier
|
7555f561f8
|
Use TypedDict from typing_extensions
|
5 years ago |
Alinson S. Xavier
|
1971389a57
|
Add types to InternalSolver
|
5 years ago |
Alinson S. Xavier
|
69a82172b9
|
Fix some _compute_gap corner cases; add tests
|
5 years ago |
Alinson S. Xavier
|
a536d2ecc6
|
Fix various warnings
|
5 years ago |
Alinson S. Xavier
|
36061d5a14
|
Make _compute_gap static
|
5 years ago |
Alinson S. Xavier
|
9ddb952db0
|
Make LearningSolver.add internal
|
5 years ago |
Alinson S. Xavier
|
4b8672870a
|
Add XpressPyomoSolver
|
5 years ago |
Alinson S. Xavier
|
34e1711081
|
Remove incorrect import
|
5 years ago |
Alinson S. Xavier
|
0371b2c7a9
|
Simply Pyomo solvers
|
5 years ago |
Alinson S. Xavier
|
185025e86c
|
Remove methods to set solver parameters
|
5 years ago |
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 |