Commit Graph

158 Commits

Author SHA1 Message Date
5a062ad97e ConvertTight: Use x function from DropRedundant 2021-01-14 21:01:34 -06:00
7e4b1d77a3 DropRedundant: Collect data from multiple runs 2021-01-14 11:27:47 -06:00
e12a896504 Add training_data argument to after_solve 2021-01-14 10:37:48 -06:00
beee252fa2 simulate_perfect: Do not overwrite original file 2021-01-13 11:04:33 -06:00
b01d97cc2b ConvertTight: Always check feasibility 2021-01-13 09:28:55 -06:00
d67af4a26b ConvertTight: Detect and fix sub-optimality 2021-01-12 11:56:25 -06:00
c9ad7a3f56 Benchmark: Add extra columns to CSV 2021-01-12 11:22:42 -06:00
f77d1d5de9 ConvertTight: Detect and fix infeasibility 2021-01-12 10:05:57 -06:00
3f1aec7fad RelaxationComponent: Always use np arrays 2021-01-07 12:29:43 -06:00
4057a65506 ConvertTightIneqs: Convert only inequalities, not equalities 2021-01-07 11:54:00 -06:00
1e3d4482f4 ConvertTightIneqs: Reduce default slack_tolerance to zero 2021-01-07 11:07:12 -06:00
317e16d471 ConvertTight: Don't take any action on constraints with negative slack 2021-01-07 11:03:02 -06:00
d8dc8471aa Implement tests for ConvertTightIneqsIntoEqsStep 2021-01-07 10:29:22 -06:00
0377b5b546 Minor changes to docstrings 2021-01-07 10:08:14 -06:00
191da25cfc Split relaxation.py into multiple files 2021-01-07 10:01:04 -06:00
144ee668e9 Fix failing tests 2021-01-07 09:41:55 -06:00
4a26de5ff1 RelaxationComponent: Convert tight inequalities into equalities 2020-12-05 21:11:08 -06:00
8bb9996384 Break down RelaxationComponent into multiple steps 2020-12-05 20:34:29 -06:00
6540c88cc5 Component: Add default implementations to all methods 2020-12-05 20:34:00 -06:00
94b493ac4b Implement CompositeComponent 2020-12-05 20:16:22 -06:00
d99600f101 Reformat source code with Black; add pre-commit hooks and CI checks 2020-12-05 10:59:33 -06:00
3823931382 RelaxationComponent: max_iterations 2020-12-04 10:30:55 -06:00
0b41c882ff Merge branch 'feature/files' into dev 2020-12-04 09:41:23 -06:00
388b10c63c Train without loading all instances to memory 2020-12-04 09:37:41 -06:00
54d80bfa85 RelaxationComponent: Implement check_dropped 2020-12-04 09:33:46 -06:00
51b5d8e549 Component: rename iteration_cb and lazy_cb 2020-12-04 08:35:43 -06:00
1b6982ae8d Implement RelaxationComponent 2020-10-08 15:03:17 -05:00
3c4045f64b StaticLazy: Add tolerance to tests 2020-10-05 11:44:51 -05:00
4144b8b6b3 Primal: In evaluate, skip variables without predictions 2020-10-05 11:28:30 -05:00
b51c367257 UserCutsComponent: ignore training instances without cut data 2020-10-05 11:26:36 -05:00
a221740ac5 Implement lazy callbacks & two-phase gap 2020-09-25 06:02:07 -05:00
ba96338d2d Small fixes to lazy constraints 2020-09-24 14:30:29 -05:00
e527e75481 Implement iteration_cb for LearningSolver; reactivate TSP 2020-09-23 17:46:18 -05:00
5390a5b656 Rename LazyConstraintsComponent to DynamicLazyConstraintsComponent 2020-09-23 17:34:19 -05:00
425ea2b7cc Temporarily remove native solver callbacks; add iteration_cb 2020-09-23 17:30:39 -05:00
e731f46b72 Implement preliminary version of static lazy component 2020-09-23 14:27:17 -05:00
5ccd65c809 Remove empty tests 2020-09-23 14:25:30 -05:00
6b104433be Improve logging 2020-09-15 08:46:49 -05:00
5663ced0be Move python files to root folder; remove built docs 2020-08-29 11:42:02 -05:00
7765d1f822 Reorganize directories 2020-03-05 17:58:56 -06:00
72fc65cae0 LazyConstraintsComponent: make threshold configurable 2020-03-05 12:55:00 -06:00
5eee00c626 Plot predicted objective value 2020-02-26 15:45:02 -06:00
0b04fa93da Finish TSP implementation; improve performance of Extractors 2020-02-25 22:31:03 -06:00
959cb54d27 Remove load_state and save_state 2020-02-24 22:16:51 -06:00
7a01d9cbcf Implement TSP generator and LazyConstraintsComponent 2020-02-24 22:01:12 -06:00
30e7d7313c Fix failing test 2020-02-24 10:11:19 -06:00
996b16f1b7 Add missing files 2020-02-24 10:02:52 -06:00
a2fbb9f8d8 Implement PrimalSolutionComponent; remove deprecated predictors 2020-02-24 10:01:21 -06:00
ccd694af9b Implement ObjectiveValueComponent 2020-02-23 15:09:57 -06:00
212e38d004 Make SolutionExtractor use instance.solution and instance.lp_solution 2020-02-22 22:19:30 -06:00