今天学习了一些matlab线性规划相关的知识
A*B’: '和T都是转置的意思。
A.B: 必须保证A、B形状一样,同为mn矩阵。
C=A(i,j)B(i,j)
AB: 与线性代数里的矩阵相乘计算方法一样,不需A、B形状一样,只需满足A的列数与B的行数一样。
线性规划的 Matlab 标准形式
线性规划的目标函数可以是求最大值,也可以是求最小值,约束条件的不等号可以是小于号也可以是大于号。为了避免这种形式多样性带来的不便,Matlab 中规定线性规划的标准形式为
其中 c 和x 为n 维列向量, A 、Aeq 为适当维数的矩阵, b 、beq 为适当维数的列向量。
基本函数形式为 linprog(c,A,b),它的返回值是向量x 的值。还有其它的一些函数调用形式(在 Matlab 指令窗运行 help linprog 可以看到所有的函数调用形式),如:
[x,fval]=linprog(c,A,b,Aeq,beq,LB,UB,X0,OPTIONS)
这里fval 返回目标函数的值,LB 和UB 分别是变量x 的下界和上界,X0 是x 的初始值,
OPTIONS 是控制参数。
一般都是这样的形式:
x=linprog(c,A,b,Aeq,beq,zeros())
zeros(n):生成全0矩阵
zeros(m,n):生成mn全0矩阵
ones(n):生成nn全1矩阵
ones(m,n):生成mn全1矩阵
size(A):返回A的大小参数,若A是一个34矩阵,则返回的参数应该是3 4
one(size(A)):产生的矩阵是与A大小相同的全1矩阵
投资问题:
在实际投资中,投资者承受风险的程度不一样,若给定风险一个界限a ,使最大的一个风险
,可找到相应的投资方案。这样把多目标规划变成一个目标的线
性规划。
模型一 固定风险水平,优化收益