Stay organized with collections
Save and categorize content based on your preferences.
C++ Reference: pdlp_proto_solver
Note: This documentation is automatically generated.
Uses pdlp::PrimalDualHybridGradient to solve the problem specified by the MPModelRequest. Users of this interface should be aware of the size limitations of MPModelProto (see, e.g., large_linear_program.proto).
The optional interrupt_solve can be used to interrupt the solve early. The solver will periodically check its value and stop if it holds true.
If relax_integer_variables is true, integrality constraints are relaxed before solving. If false, integrality constraints result in an error. The solver_specific_info field in the MPSolutionResponse contains a serialized SolveLog.
Returns an error if the conversion from MPModelProto to pdlp::QuadraticProgram fails. The lack of an error does not imply success. Check the SolveLog's termination_reason for more refined status details.
Function |
Type |
Arguments |
Comments |
PdlpSolveProto | Return type: absl::StatusOr<MPSolutionResponse> Arguments: const MPModelRequest& request, bool relax_integer_variables = false, const std::atomic<bool>* interrupt_solve = nullptr |
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-08-06 UTC.
[null,null,["Last updated 2024-08-06 UTC."],[[["\u003cp\u003eUtilizes the PrimalDualHybridGradient algorithm to address optimization problems defined in MPModelRequest, but users should be mindful of MPModelProto's size constraints.\u003c/p\u003e\n"],["\u003cp\u003eOffers an optional interrupt mechanism through \u003ccode\u003einterrupt_solve\u003c/code\u003e, allowing early termination of the solving process.\u003c/p\u003e\n"],["\u003cp\u003eEnables relaxation of integrality constraints via \u003ccode\u003erelax_integer_variables\u003c/code\u003e or triggers an error if they are enforced; the solution includes a serialized SolveLog for detailed analysis.\u003c/p\u003e\n"],["\u003cp\u003eReturns an error if the problem conversion fails, and even without errors, the SolveLog's \u003ccode\u003etermination_reason\u003c/code\u003e should be checked for success verification.\u003c/p\u003e\n"]]],["The `PdlpSolveProto` function utilizes `pdlp::PrimalDualHybridGradient` to solve an `MPModelRequest`. It can optionally relax integer constraints and be interrupted using `interrupt_solve`. The solution status is detailed in the `SolveLog` within the `MPSolutionResponse`. Errors occur if conversion from `MPModelProto` to `pdlp::QuadraticProgram` fails, and success is not implied by the absence of errors, so the `SolveLog` termination reason should be checked.\n"],null,["# pdlp_proto_solver\n\nC++ Reference: pdlp_proto_solver\n================================\n\n\nNote: This documentation is automatically generated.\n\n\u003cbr /\u003e\n\nUses pdlp::PrimalDualHybridGradient to solve the problem specified by the MPModelRequest. Users of this interface should be aware of the size limitations of MPModelProto (see, e.g., large_linear_program.proto). \n\nThe optional interrupt_solve can be used to interrupt the solve early. The solver will periodically check its value and stop if it holds true. \n\nIf relax_integer_variables is true, integrality constraints are relaxed before solving. If false, integrality constraints result in an error. The solver_specific_info field in the MPSolutionResponse contains a serialized SolveLog. \n\nReturns an error if the conversion from MPModelProto to pdlp::QuadraticProgram fails. The lack of an error does not imply success. Check the SolveLog's termination_reason for more refined status details.\n\n| Function | Type | Arguments | Comments |\n|----------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------|----------|\n| [`PdlpSolveProto`](https://github.com/google/or-tools/blob/v9.4/ortools/linear_solver/pdlp_proto_solver.h#L39) | Return type: `absl::StatusOr\u003cMPSolutionResponse\u003e ` Arguments: ` const MPModelRequest& request, bool relax_integer_variables = false, const std::atomic\u003cbool\u003e* interrupt_solve = nullptr` \u003cbr /\u003e |"]]