summaryrefslogtreecommitdiff
path: root/src/omt/integer_optimizer.cpp
AgeCommit message (Collapse)Author
2021-06-15[Optimization] Use Result in OptimizationResult (#6740)Ouyancheng
OptimizationResult now contains: - cvc5::Result - optimal value for objective - whether the objective is unbounded This gets benefit from cvc5::Result (e.g., we could get explanation for UNKNOWN) and it's slightly easier to integrate to the current API. Also refactors BV optimizer so that it uses switch statement (instead of if-then-else) to judge the checkSat results (I was planning to do this a long while ago)...
2021-05-27Add support for Box optimization (#6599)Ouyancheng
Add support for box optimization -- independently optimize each goal as if the other goals do not exist. Single minimize() / maximize() now maintains the pushed / popped context. Of course unit tests are here as well.
2021-05-05Add helper functions for multi-objective optimization + refactoring (#6473)Ouyancheng
add 3 helper functions judge whether a node is optimizable make strong improvement expression according to optimization objective make weak improvement expression according to optimization objective optChecker is now created by optimizationSolver instead of the minimize/maximize functions Slightly refactors function signatures so that they are accepting OptimizationObjective instead of accepting target, type in separate parameters.
2021-04-30Refactor optimization result and objective classes + add preliminary support ↵Ouyancheng
for multiple objectives (#6459) This PR is one part of multiple. Preliminary support means currently only supports single objective. It supports queue-ing up objectives and it always optimizes the first. Multiple-obj optimization algorithm will be up next. * Refactor optimization result and objective classes * Add preliminary support for multiple objectives * The unit tests are now comparing node values instead of node addresses
2021-04-12Refactor and update copyright headers. (#6316)Aina Niemetz
2021-04-05Optimizer for BitVectors (#6213)Yancheng Ou
Adds support for BitVector optimization, which is done via offline binary search. Units tests included. Also mildly refactors the optimizer architecture.
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback