Copyright (C) 2009-2021 Victor M. Becerra
This is the PSOPT library, a software tool for computational optimal control
PSOPT is an open source optimal control package written in C++ that uses direct collocation methods. These methods solve optimal control problems by approximating the time-dependent variables using global or local polynomials. This allows to discretize the differential equations and continuous constraints over a grid of nodes, and to compute any integrals associated with the problem using well known quadrature formulas. Nonlinear programming then is used to find local optimal solutions. PSOPT is able to deal with problems with the following characteristics:
The implementation has the following features:
The PSOPT interface uses both Eigen3 (a linear algebra template library) and ADOL-C (an automatic differentiation library).
The first release of PSOPT was published in 2009. This is release 5 of PSOPT.
The PSOPT website is http://www.psopt.net.
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA, or visit http://www.gnu.org/licenses/
Author: Professor Victor M. Becerra
Address:
University of Portsmouth
School of Energy and Electronic Engineering
Portsmouth PO1 3DJ
United Kingdom
e-mail: v.m.becerra@ieee.org
Please consult the detailed installation instructions in the PSOPT PDF documentation. In the following, we only summarize some main points.
PSOPT requires the following libraries:
Optionally, the user may wish to employ the following software
Moreover, PSOPT is built using CMake. CMake is an open-source, cross-platform family of tools designed to build, test and package software. The build process also requires the pkg-config tool.
After installation of dependencies, a typical PSOPT build and installation on a Unix-like operating system follows these steps (please see the PDF documentation for futher details):
git clone https://github.com/PSOPT/psopt.git
cd psopt; mkdir build; cd build
cmake -DBUILD_EXAMPLES=ON ..
make
sudo make install
Please note that the minimum version of CMake that is required by the build process is 3.12. Earlier versions of CMake are not suitable.
If you use Ubuntu 20.04, all dependencies plus GNUplot can simply be installed as follows:
sudo apt-get install libboost-dev
sudo apt-get install libboost-system-dev
sudo apt-get install coinor-libipopt-dev
sudo apt-get install libadolc-dev
sudo apt-get install gnuplot
sudo apt-get install libeigen3-dev
sudo apt-get install libblas-dev
sudo apt-get install liblapack-dev
This software is provided for free in the hope that it may be useful to others, and we would very much like to hear about your experience with it. If you find PSOPT helpful for your work or research, please emai the author at v.m.becerra@ieee.org to incorporate a feature on the PSOPT web page.
Given that a great deal of time and effort has gone into PSOPT's development, please cite the following publication if you are using PSOPT for your own research:
BibTex entry:
@INPROCEEDINGS{5612676,
author={V. M. Becerra},
booktitle={2010 IEEE International Symposium on Computer-Aided Control System Design},
title={Solving complex optimal control problems at no cost with PSOPT},
year={2010},
pages={1391-1396},
doi={10.1109/CACSD.2010.5612676}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。