首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >非线性约束Cplex

非线性约束Cplex
EN

Stack Overflow用户
提问于 2018-09-29 14:45:11
回答 1查看 815关注 0票数 0

我正在尝试使用IBM的Cplex Python来解决二次编程问题。该问题具有非线性约束.对于二次规划,Cplex是否接受非线性约束?更具体地说,在未知数x1、x2、x3、x4、x5的情况下,我需要加入两个约束

约束A (x2+x3) / (1-x1) = z1

约束B (x4+x5) / (1-x1) = z2

其中z1和z2是已知的数字。

Cplex确实有关于如何输入二次约束的使用说明,但在一般情况下,我在输入非线性约束时都找不到。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-30 19:45:22

可能

代码语言:javascript
复制
from docplex.mp.model import Model


mdl = Model(name='example')

z1=2;
z2=3;


mdl.x1 = mdl.continuous_var(0,10,name='x1')
mdl.x2 = mdl.continuous_var(0,10,name='x2')
mdl.x3 = mdl.continuous_var(0,10,name='x3')
mdl.x4 = mdl.continuous_var(0,10,name='x4')
mdl.x5 = mdl.continuous_var(0,10,name='x5')


mdl.add_constraint(mdl.x2+mdl.x3==z1*(1-mdl.x1), 'A')
mdl.add_constraint(mdl.x4+mdl.x5==z2*(1-mdl.x1), 'B')

mdl.solve()

print(mdl.x1.solution_value);
print(mdl.x2.solution_value);
print(mdl.x3.solution_value);
print(mdl.x4.solution_value);
print(mdl.x5.solution_value);

帮忙?

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52569451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档