Skip to content

dazzmo/bopt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Basic OPTimisation (BOPT) Library

A work-in-progress optimisation library to express optimisation problems and provide a common interface to solvers, as well as offering a framework to create and develop custom optimisation programs. This library is designed to be as generic as possible to allow any type of BLAS package to be interfaced to it.

About The Project

This is a basic implementation of the necessary components required to represent optimisation problems within a programatic context. This library offers a means to easily express cost and constraints in a unified manner, to which we can interface to solvers (existing or customly made) to solve.

In addition, we provide add-ons for automatic differentiation tools to provide the necessary derivatives.

(back to top)

Getting Started

Prerequisites

bopt requires the following third-party libraries in order to be built and installed.

  • Boost (Version 1.70 or higher)

For testing purposes we have (this is later be a toggle-able option):

We also include interfaces to open-source solvers for numerical optimisation, we currently include:

  • Ipopt
  • qpOASES (-DWITH_QPOASES=ON in Installation). Be sure to install qpOASES as a shared library, as this is what is expected by bopt.

(back to top)

Installation

  1. Clone the repo
    git clone https://github.com/dazzmo/bopt
  2. Build the library
    cd bopt
    mkdir build && cd build
    cmake ..
    make
  3. Installation of the library can then be performed by
    make install

(back to top)

License

Distributed under the GNU LESSER GENERAL PUBLIC LICENSE License. See LICENSE.txt for more information.

(back to top)

Contact

Damian Abood - damian.abood@sydney.edu.au

(back to top)

Acknowledgements

Thank you to Jesse Morris for his assistance with build-related concerns and improving the layout of the library.

(back to top)

About

A basic numerical optimisation library

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published