PSOPT在Ubuntu22.04下的安装

求解器pospt的原链接如下:

PSOPT/psopt: PSOPT Optimal Control Software (github.com)

在该文件夹下提供了安装的指导文件,文件内容如下:


在 Ubuntu 22.04 中,如果按照适用于 Ubuntu 20.04 的说明执行 PSOPT 代码,目前会报告与 adolc 库相关的运行时错误。以下是在 Ubuntu 22.04 下安装 PSOPT 所需的具体说明。

首先,应在终端窗口运行以下程序,安装一些必要的软件包:

  1. sudo apt-get install git
  2. sudo apt-get install cmake
  3. sudo apt-get install gfortran
  4. sudo apt-get install g++
  5. sudo apt-get install libboost-dev
  6. sudo apt-get install libboost-system-dev
  7. sudo apt-get install coinor-libipopt-dev
  8. sudo apt-get install gnuplot
  9. sudo apt-get install libeigen3-dev
  10. sudo apt-get install libblas-dev
  11. sudo apt-get install liblapack-dev

其次,运行以下命令下载、编译并安装 adolc 和 ColPack。

安装 ColPack

1. 下载 ColPack 源代码

进入一个工作目录并下载 ColPack 源代码:

cd $HOME/ThirdParty
wget http://archive.ubuntu.com/ubuntu/pool/universe/c/colpack/colpack_1.0.10.orig.tar.gz
tar zxvf colpack_1.0.10.orig.tar.gz
2. 编译和安装 ColPack

进入 ColPack 源代码目录并编译安装:

cd ColPack-1.0.10
./autoconf.sh
./configure
make
sudo make install
3. 确认安装

确认 ColPack 的库文件和头文件是否在正确的位置:

ls /usr/local/lib/libColPack.so
ls /usr/local/include/ColPack

安装 ADOL-C

1. 下载 ADOL-C 源代码

确保你已经在工作目录中有 ADOL-C 源代码。

2. 配置 ADOL-C

通过设置 CPPFLAGSLDFLAGS 环境变量明确指定 ColPack 的路径来配置 ADOL-C:

cd $HOME/ADOL-C-2.6.3
CPPFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib ./configure --enable-sparse --with-colpack=/usr/local

3. 编译 ADOL-C 和安装ADOL-C

make
sudo make install

4.确认安装

ls /usr/local/lib/libadolc.so
ls /usr/local/include/adolc

安装psopt:

先安装其他依赖库:

sudo apt-get update
sudo apt-get install git cmake gfortran g++ libboost-dev libboost-system-dev coinor-libipopt-dev gnuplot libeigen3-dev libblas-dev liblapack-dev

下载代码并进入构建目录:

cd $HOME
git clone https://github.com/PSOPT/psopt.git
cd psopt
mkdir build
cd build

配置:

cmake -DBUILD_EXAMPLES=ON ..

编译安装:

make
sudo make install

验证安装:

cd ~/MyOpt/psopt/examples/goddard/build
cmake ..
make
./goddard

经过上述步骤,即可完成对psopt的安装,可以顺利使用。

注:经过上述安装,adolc库在我电脑中位置是:

  • 库文件 :在 /home/gz/adolc_base/lib64
  • 头文件 :在 /home/gz/adolc_base/include/adolc

另外参考:

一、最优控制软件包PSOPT安装方法_依赖库 hsl(通常是high speed library的简写,用于线性代数和数值优化的库)没有正-CSDN博客

最优控制理论 七、关于数值求解算法的总结及软件分享_最优控制算法-CSDN博客

相关推荐
大丈夫立于天地间8 小时前
ISIS基础知识
网络·网络协议·学习·智能路由器·信息与通信
Chambor_mak9 小时前
stm32单片机个人学习笔记14(USART串口数据包)
stm32·单片机·学习
PaLu-LI10 小时前
ORB-SLAM2源码学习:Initializer.cc⑧: Initializer::CheckRT检验三角化结果
c++·人工智能·opencv·学习·ubuntu·计算机视觉
yuanbenshidiaos10 小时前
【大数据】机器学习----------计算机学习理论
大数据·学习·机器学习
汤姆和佩琦10 小时前
2025-1-20-sklearn学习(42) 使用scikit-learn计算 钿车罗帕,相逢处,自有暗尘随马。
人工智能·python·学习·机器学习·scikit-learn·sklearn
Tech智汇站10 小时前
Quick Startup,快捷处理自启程序的工具,加快电脑开机速度!
经验分享·科技·学习·学习方法·改行学it
qq_3127384510 小时前
jvm学习总结
jvm·学习
执念斩长河12 小时前
Go反射学习笔记
笔记·学习·golang
陈王卜13 小时前
html与css学习笔记(2)
笔记·学习
Rinai_R13 小时前
【Golang/gRPC/Nacos】在golang中将gRPC和Nacos结合使用
经验分享·笔记·学习·微服务·nacos·golang·服务发现