Skip to content

Latest commit

 

History

139 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DAEO Solver with Optima Tracking

Solve equations of the form $$ x(0, x) = x_0\ x'(t, x, y) = f(t, x, y)\ y(t) ∈ \argmin_y h(x, y) $$ by tracking all possible local optima $y_i$ of the objective function $h$.

Build Guide

  • This project requires some of C++23 (std::ranges).

  • This project requires fmt/libfmt, Eigen 3.4+ and Boost (boost interval depends on boost::limits...)

  • NAG's dco/c++ CMake scripts cannot locate dco/c++ installations with the new product code. In this case, you'll need to make sure dco.hpp and libdcoc.a are in your build path by default.

  • This project uses our fork of Boost's interval, which updates some parts of the library to C++11 and fixes some bugs caused by use with Eigen 3.4. It is provided as a submodule here.

  • Output logs are, by default, placed in data/out, which is created when CMake configures.

To-Do List for AD2024

  • Investigate the use of the implicit function theorem to find $\partial_x y^k$.
  • Handle the emergence and disappearance of local optima.
  • Implement a (justifiable) heuristic for re-running global optimization.

About

DAEO Solver with Local Optimizer Tracking

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages