24小时热门版块排行榜    

CyRhmU.jpeg
查看: 879  |  回复: 6

acalephs

捐助贵宾 (著名写手)

[求助] 已知fn(),x1~x9可取为为任意0-9离散整数,求fn()的最大值,求运算最快的方法已有1人参与

e=fn(x1,x2...x9),已知fn(),x1~x9可取为为任意0-9离散整数,求e的最大值,以及对应的x1~x9,求运算最快的方法
求思路,或简要编程,,我是想了一个for。。。但要for 9层,感觉会不会慢啊。。。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dbb627

荣誉版主 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
matlab中利用yalmip求解整数规划
The more you learn, the more you know, the more you know, and the more you forget. The more you forget, the less you know. So why bother to learn.
2楼2014-09-11 19:34:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

acalephs

捐助贵宾 (著名写手)

引用回帖:
2楼: Originally posted by dbb627 at 2014-09-11 19:34:39
matlab中利用yalmip求解整数规划

你好,能麻烦以一个这个工具吗。。。我的没装。。。
3楼2014-09-11 19:57:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dbb627

荣誉版主 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
acalephs: 金币+15, ★★★★★最佳答案 2014-09-11 20:22:39
yalmip使用方法

YALMIP工具箱
定义变量:
sqdvar()实型
intvar()整型
binvar()0-1型
设定目标函数 :
f=目标函数
设定限定条件:
F=set(限定条件)
多个限定条件用加号相连:
F=set(限定条件)+set(限定条件1)+set(限定条件2)……
求解: solvesdp(F,f)
这里解得是F条件下目标函数f的最小值,要求最大值f前面加个负号
求解之后查看数值 :
double(f) double(变量)

有个例子:
已知非线性整数规划为:
Max z=x1^2+x2^2+3*x3^2+4*x4^2+2*x5^2-8*x1-2*x2-3*x3-x4-2*x5
s.t.
0<=xi<=99(i=1,2,...,5)
x1+x2+x3+x4+x5<=400
x1+2*x2+2*x3+x4+6*x5<=800
2*x1+x2+6*x3<=800

x3+x4+5*x5<=200

在matlab中输入 x=intvar(1,5);

f=[1 1 3 4 2]*(x'.^2)-[8 2 3 1 2]*x';F=set(0<=x<=99);

F=F+set([1 1 1 1 1]*x'<=400)+set([1 2 2 1 6]*x'<=800)+set(2*x(1)+x(2)+6*x(3)<=800);

F=F+set(x(3)+x(4)+5*x(5)<=200);solvesdp(F,-f)

double(f) 80199

double(x) 53 99 99 99 0

intvar(m,n):生成整数型变量;

sdpvar(m,n):生产变量;

solvesdp(F,f):求解最优解(最小值),其中F为约束条件(用set连接),f为目标函数

double:显示求解的答案

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : MATLABCentralFileExchange-YALMIP.ZIP
  • 2014-09-11 20:10:38, 755.89 K
The more you learn, the more you know, the more you know, and the more you forget. The more you forget, the less you know. So why bother to learn.
4楼2014-09-11 20:11:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

acalephs

捐助贵宾 (著名写手)

太感谢了,我test之后出现很多N/A,正常吗。。。
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|                 Test|   Solution|                           Solver message|
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|   sdpvar/set methods|        N/A|                                 Problems|
|                   LP|    Correct|           No problems detected (LINPROG)|
|                   LP|    Correct|           No problems detected (LINPROG)|
|                   QP|        NAN|                Unknown problem in YALMIP|
|                   QP|    Correct|          No problems detected (QUADPROG)|
|                 SOCP|        N/A|   Unknown problem in solver (SeDuMi-1.1)|
|                 SOCP|        N/A|   Unknown problem in solver (SeDuMi-1.1)|
|                 SOCP|        N/A|   Unknown problem in solver (SeDuMi-1.1)|
|                  SDP|        N/A|   Unknown problem in solver (SeDuMi-1.1)|
|                  SDP|        N/A|   Unknown problem in solver (SeDuMi-1.1)|
|                  SDP|        N/A|   Unknown problem in solver (SeDuMi-1.1)|
|                  SDP|        N/A|   Unknown problem in solver (SeDuMi-1.1)|
|               MAXDET|        N/A|   Unknown problem in solver (SeDuMi-1.1)|
|               MAXDET|        N/A|   Unknown problem in solver (SeDuMi-1.1)|
|        Infeasible LP|        N/A|             Infeasible problem (LINPROG)|
|        Infeasible QP|        NAN|                Unknown problem in YALMIP|
|       Infeasible SDP|        N/A|   Unknown problem in solver (SeDuMi-1.1)|
|    Moment relaxation|        NAN|                Unknown problem in YALMIP|
|       Sum-of-squares|        N/A|   Unknown problem in solver (SeDuMi-1.1)|
|         Bilinear SDP|        N/A|                       No suitable solver|
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
5楼2014-09-11 20:18:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dbb627

荣誉版主 (著名写手)

引用回帖:
5楼: Originally posted by acalephs at 2014-09-11 20:18:31
太感谢了,我test之后出现很多N/A,正常吗。。。
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|                 Test|   Solution|                           Solver mess ...

只要能求解就没什么问题,
The more you learn, the more you know, the more you know, and the more you forget. The more you forget, the less you know. So why bother to learn.
6楼2014-09-11 20:42:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

acalephs

捐助贵宾 (著名写手)

引用回帖:
6楼: Originally posted by dbb627 at 2014-09-11 20:42:00
只要能求解就没什么问题,...

能求解了,谢谢了啊
7楼2014-09-11 21:03:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 acalephs 的主题更新
信息提示
请填处理意见