|
|
lucid
0.0.2
Lifting-based Uncertain Control Invariant Dynamics
|
Linear optimiser using the Alglib mathematical library. More...
#include <AlglibOptimiser.h>
Public Member Functions | |
| std::string | to_string () const override |
| Obtain the string representation of this object. | |
| Optimiser (std::string problem_log_file="", std::string iis_log_file="") | |
| Construct a new Optimiser object. | |
| Public Member Functions inherited from lucid::Optimiser | |
| Optimiser (std::string problem_log_file="", std::string iis_log_file="") | |
| Construct a new Optimiser object. | |
| bool | solve_fourier_barrier_synthesis (const FourierBarrierSynthesisProblem &problem, const SolutionCallback &cb) const |
| Solve the FourierBarrierCertificate synthesis optimisation problem by solving the corresponding LP. | |
| const std::string & | problem_log_file () const |
| Get read-only access to the problem log file of the solver. | |
| const std::string & | iis_log_file () const |
| Get read-only access to the irreducible infeasible set log file of the solver. | |
| bool | has_problem_log_file () const |
| Get read-only access to the problem log file of the solver. | |
| bool | has_iis_log_file () const |
| Get read-only access to the irreducible infeasible set log file of the solver. | |
| std::string & | m_problem_log_file () |
| Get read-write access to the problem log file of the solver. | |
| std::string & | m_iis_log_file () |
| Get read-write access to the irreducible infeasible set log file of the solver. | |
| bool | should_log_problem () const |
| Check whether the solver is configured to log the lp problem. | |
| bool | should_log_iis () const |
| Check whether the solver is configured to log the iis. | |
Private Member Functions | |
| bool | solve_fourier_barrier_synthesis_impl (const FourierBarrierSynthesisProblem &problem, const SolutionCallback &cb) const override |
| Implementation of the Fourier barrier synthesis solver. | |
Additional Inherited Members | |
| Public Types inherited from lucid::Optimiser | |
| using | SolutionCallback = std::function<void(bool, double, const Vector&, double, double, double)> |
| Callback function called when the optimisation is done. | |
| Protected Attributes inherited from lucid::Optimiser | |
| std::string | problem_log_file_ |
| File to log the problem to, if provided. | |
| std::string | iis_log_file_ |
| File to log the IIS (Irreducible Inconsistent Subsystem) to, if found. | |
Linear optimiser using the Alglib mathematical library.
|
explicit |
Construct a new Optimiser object.
If problem_log_file is provided, the optimiser will log the LP problem to the specified file. If iis_log_file is provided, the optimiser will log the Irreducible Inconsistent Subsystem (IIS) to the specified file if the problem is found to be infeasible.
| problem_log_file | file to log the problem to |
| iis_log_file | file to log the IIS to |
|
overrideprivatevirtual |
Implementation of the Fourier barrier synthesis solver.
It interfaces with the specific LP solver backend. See FourierBarrierCertificate::synthesize for more details.
| params | problem definition |
| cb | callback function called when the optimisation is done |
Implements lucid::Optimiser.
|
nodiscardoverridevirtual |
Obtain the string representation of this object.
Reimplemented from lucid::Optimiser.