由买买提看人间百态

topics

全部话题 - 话题: quadprog
1 (共1页)
d*********a
发帖数: 255
1
【 以下文字转载自 Mathematics 讨论区 】
发信人: dragoninsea (龙哥), 信区: Mathematics
标 题: 请教如何用matlab中quadprog解决这个二次规划问题
发信站: BBS 未名空间站 (Tue Jun 5 22:17:33 2007)
minf=x1^2+x2^2+x1*x2+x1+x2+|x1|+|x2|
谢谢
b******r
发帖数: 548
2
来自主题: Statistics版 - R 中lm的问题
可以考虑用quadratic programming package
for example,
http://cran.r-project.org/web/packages/quadprog/quadprog.pdf
positive constraint is a linear constraint.
H***a
发帖数: 735
3
题目本身是一个标准quadratic programming with linear constraints问题。
需要 maximize: f(x) = r'*x - a*x'*V*x
subject to constraints:
(1) sum(x_i) = e'x = 1, e代表向量(1,1,1..)
(2) 0 <= x_i <=1
现在使用Matlab的quadprog函数如下。
**********************************************************************
clear all;
r = [0.0667; 0.0900; 0.0717; 0.0733];
V = [0.00019 0.00065 0.00004 0.00038;
0.00065 0.00883 0.00218 0.00327;
0.00004 0.00218 0.00125 0.00063;
0.00038 0.00327 0.00063 0.00162];
e = ones(len
H***a
发帖数: 735
4
经一位大侠指点,问题已经解决. 就是 lb 和 ub 也必须写成向量,自己汗一下
x = quadprog(tempV, -r', [], [], e', 1, [0 0 0 0], [1 1 1 1], [], options);
f*****c
发帖数: 3257
5
来自主题: Programming版 - 包子求助matlab编程问题
一直不熟悉matlab语言,特别是循环问题,最近终于碰到大麻烦了,10个包子求助!
我用如下的代码,对38个国家的货币回报分别跟10个跨国公司的季度回报做资产组合,
但是写完这个代码,matlab居然停不下来了,请问各位大神,这是怎么回事?
----------------------------------
for y=1:38
%currency equity return
eval(['su',num2str(y),'=r',num2str(y),'-cost']); % net currency return
eval(['rr',num2str(y),'=zeros(q,s)']); % construct the whole currency return
matrix for (s+1) leverage
for i=1:s
for j=1:q
eval(['rr',num2str(y),'(j,i)=(su',num2str(y),'(j)-(fai(j,i)*leverage
(i)))/(1-leverage(i))']);
... 阅读全帖
f*****c
发帖数: 3257
6
来自主题: Programming版 - 包子求助matlab编程问题

是小弟无能,每次都要对38个国家做同样的操作~~下面是其中一个国家r1表示第一个
国家的货币回报。
s=100;% 100 types of currency
currency=zeros(s,1); %100*1
q=size(r1,1); % 100 quarters
a=6;%risk aversion
a=5;% this is value of V/NW
for i=1:s %1:100
currency(i)=0.8+0.002*(i-1);
end
%s_h=[1;zeros(s-1,1)];
s_h=zeros(s,1);% share of currency
for i=1:s
s_h(i)=a*(1-currency(i));% now assume NW/V=20%
end
cost=0.014.*ones(s,1);%assume annual rate of cost+tax=1.4%*4=5.6%;
%currency equity return
su=r1-cost; % net currency return
rr1=zeros(q,s... 阅读全帖
h*****c
发帖数: 569
7
来自主题: Computation版 - 请教一个optimization的问题
minimize :
x'Hx
under the constraints:
x'Ix=1 and x'Nx=n
x是个 m by 1 vector, x'是x的转置复共轭,
H,I,N是m by m方阵。其中I是单位矩阵。
matlab里有没有现成的东西来解这个问题???
quadprog好像是解二次型最小化的函数,能搞定这个问题吗?
l*****i
发帖数: 3929
8
分区间讨论吧,但是好像笔算就行
d*********a
发帖数: 255
9
MATLAB可以解决吗
如果这个问题解决了,就可以解决自变量多的类似问题。
笔算对于在变量多的不适合。
l******n
发帖数: 9344
10
分情况打开绝对值,分别求,最后求最小的
d*********a
发帖数: 255
11
谢谢回复。
如果自变量是10个,那不得要求1024次吗
l*****i
发帖数: 3929
12
来自主题: Computation版 - 问个Matlab优化求解的问题.
linprog
quadprog
fmincon
H***a
发帖数: 735
13
【 以下文字转载自 Programming 讨论区 】
发信人: Hyena (阿盆), 信区: Programming
标 题: 一个quadratic programming的问题,请指教!
发信站: BBS 未名空间站 (Fri Aug 21 18:53:05 2009, 美东)
题目本身是一个标准quadratic programming with linear constraints问题。
需要 maximize: f(x) = r'*x - a*x'*V*x
subject to constraints:
(1) sum(x_i) = e'x = 1, e代表向量(1,1,1..)
(2) 0 <= x_i <=1
现在使用Matlab的quadprog函数如下。
**********************************************************************
clear all;
r = [0.0667; 0.0900; 0.0717; 0.0733];
V = [0.00019 0.00065
H***a
发帖数: 735
14
经一位大侠指点,问题已经解决. 就是 lb 和 ub 也必须写成向量,自己汗一下
x = quadprog(tempV, -r', [], [], e', 1, [0 0 0 0], [1 1 1 1], [], options);
A****1
发帖数: 726
15
来自主题: Computation版 - 怎么提高Matlab的计算精度?
你是用lsqlin或quadprog的吗?
貌似精度对高维矩阵运算有影响,不好意思,我不时学算数的,我工作中有遇到类似问
题,不过不管怎么样,结果差不多也凑或了。
好像16位的精度没法改的,
s*******a
发帖数: 921
16
可以用二次规划来解.将原问题转化成:
min f=y1^2+y2^2+y1+y2
s.t. x1<=y1
-x1<=y1
x2<=y2
-x2<=y2
y1>=0, y2>=0
matlab里面可以用quadprog来求解.
c*******v
发帖数: 2599
17
你的维数太高了。
你试试看上面一帖的方法用quadprog求解看。
我看reasonable time内很难求出来。

模型其实很简单。遇到的问题是这样的,min x'Ax+b|x| 其中x是未知的向量,A,b是
已知的矩阵,向量。
d*********a
发帖数: 255
18
minf=x1^2+x2^2+x1*x2+x1+x2+|x1|+|x2|
谢谢
d******e
发帖数: 7844
19
来自主题: Mathematics版 - 问个简单的优化
Quadprog
b******v
发帖数: 1493
20
我也是这样做的,可是引入新变量后H矩阵就变成半正定了
用matlab的quadprog求解时经常不收敛
i******t
发帖数: 370
21
对阿,用cvx就好了,如果担心效率可以考虑mosek。
matlab的linprog, quadprog就是一陀s**t.
B*********h
发帖数: 800
22
☆─────────────────────────────────────☆
stonexu1984 (stonexu1984) 于 (Tue Apr 3 13:48:52 2007) 提到:
max 1/dC *Y(N)*x
s.t. e+[1/(1-a)*N]*sum[z(k))]<= v*C
z(k)>= u(k)-y(k)*x-e
z(k)>=0
u(k)>=y(k)*x
u(k)>=u(k-1)
u(0) = 0
x(min) <= x <= x(max)
就是这么样的东西,最后要求的是x,但是s.t.当中是z(k),似乎有两个LP在里面,matlab(
是linprog?)里如何定义那么多限制条件啊?
谢谢啦!
☆─────────────────────────────────────☆
Westwild (WestWild) 于 (Tue Apr 3 17:21:51 2007) 提到:
Quadprog?
Check it out.

matlab(
L******g
发帖数: 1371
23
来自主题: Quant版 - c++ optimization
Other than Mosek,
Is there any free c++ package for optimization?
Google it found CGAL, OOQP,QuadProg++,
any one have experience to use these?
any comment are more than welcome!
1 (共1页)