安装线性规划库glpk及其Python/R语言的封装库
来源:互联网 发布:网络映射连接不上 编辑:程序博客网 时间:2024/05/16 05:36
线性规划算法
1. windows版本需要安装glpk应用
2. glpk是GNU的一个项目GNU Linear Programming Kit,是c/c++代码,需要编译安装,网址在http://www.gnu.org/software/glpk. 能解决The GLPK package supplies a solver for large scale linear programming (LP) and mixed integer programming (MIP)
3. 而windows版本需要编译安装,通常使用visual c++ 2008编译; 但也可以通过winglpk项目获得直接可以再windows下使用的glpk.项目在http://winglpk.sourceforge.net/,项目名称是GLPK for Windows
4. 直接从https://sourceforge.net/projects/winglpk/下载最新的GLPK for Windows的zip包,解压到指定的目标路径下<glpk-4.58安装目录>,之后64位系统将“<glpk-4.58安装目录>\w64”加入到系统环境变量path,就可以全局使用glpsol.exe执行线性规划算法
5. glpsol.exe是glpk的主执行程序,使用如下glpsol -m file_to_solve -o file_solved类似的指令解决线性规划问题。-m指定输入的脚本文件,是GNU MathProg格式的文件,-o指定输出的结构文件。
6. GNU MathProg格式的文件格式如下
set players;
set func_name;
set positions;
param values { i in players , j in func_name };
param pos_values { i in players, j in positions };
var x { i in players } binary >=0;
maximize z: sum{ i in players } ( sum{j in func_name} x[i]*values[i,j] );
s.t. back : sum{ i in players} x[i]*pos_values[i,"is back"]>=3;
s.t. front : sum{ i in players} x[i]*pos_values[i,"is front"]>=1;
s.t. middle : sum{ i in players} x[i]*pos_values[i,"is middle"]>=2;
s.t. ability{ j in func_name } : (sum{ i in players } x[i]*values[i,j])/5>=2;
s.t. a3_6 : x[3]+x[6]<=1;
s.t. a1_4 : x[4]>=x[1];
s.t. a1_5 : x[5]>=x[1];
s.t. a2_3 : x[2]+x[3]=1;
s.t. all_5 : sum{i in players} x[i]=5;
7. 其中windows版本的glpk也可以使用gnuwin32项目的glpk,网址http://gnuwin32.sourceforge.net/packages/glpk.htm,但是版本有些老
8. Python环境中使用glpk则使用PuLP的python封装库, R语言环境中使用Rglpl封装库
0 0
- 安装线性规划库glpk及其Python/R语言的封装库
- 线性规划工具 GLPK 的安装及基本使用
- 线性规划工具 GLPK 的安装及基本使用
- GLPK - GNU 线性规划工具包(安装、例子、使用手记)
- Python PuLP and Glpk 安装步骤
- 技术-Mac版本的GLPK安装使用
- C语言的线性规划
- Python GLPK interfaces
- python : 批量下载R语言库包
- mac上安装GLPK
- GLPK Mac 安装 例子
- Ubuntu 安装 GLPK软件
- Hadoop的Python语言封装
- 安装R语言及R与python接口Rpy
- windows 7 visual studio 2010 下配置线性规划开源包 GLPK
- windows下 python及其第三方库的安装
- GLPK 安装配置与使用
- R语言及其学习资源
- C++ 文件操作
- linux kernel BT 实现 -- 赏析
- Add Two Numbers
- 物联网用到自己的新家里第二步:灯的控制电路图
- 性能调优
- 安装线性规划库glpk及其Python/R语言的封装库
- 作业成本法的matlab实现
- 程序core dump了要记得保留现场
- android基础部分再学习---Android中的APK,TASK,PROCESS,USERID之间的关系 UID和PID
- JavaScript之数据类型
- bzoj 2510: 弱题
- iOS使用block从后往前传值
- cvCaptureFromCAM 分析
- eclipse项目导入as