MATLAB求解非线性规划问题的例子
2010-01-08 10:36
429 查看
function solve___ %求解未知数小于方程数的非线性规划问题 % 三个未知数,十个方程 % 约束条件: % x1=a2*(1+5*b)=0; % x2=1000*a1*(1+b)=0.1 % x3=1000*a1*(1+3*b)=0.15 % x4=1000*a1*(1+5*b)=0.2 % x5=a2*(1+b)=0.1 % x6=a2*(1+3*b)=0.15 % x7=a2*(1+5*b)=0.2 % x8=a2*(1+b)=0.3 % x9=a2*(1+3*b)=0.45 % x10=a2*(1+5*b)=0.6 % 求解任意区间上的a1,a2,b的最优解;我们给定a1,a2,b的范围是(-1000,1000) % -1000<a1<1000 % -1000<a2<1000 % -1000<b<1000 % 求解(x1-0)^2+(x2-0.1)^2+(x3-0.15)^2+(x4-0.2)^2+(x5-0.1)^2+(x6-0.15)^2+(x7-0 % .2)^2+(x8-0.3)^2+(x9-0.45)^2+(x10-0.6)^2的最小值 A=[1 0 0;-1 0 0;0 1 0;0 -1 0;0 0 1;0 0 -1]; B=[1000 1000 1000 1000 1000 1000]'; m1 = [0; 0; 0]; [x,fval] = fmincon(@myfun,m1,A,B)%方差值最小 function f = myfun(m) a1=m(1);a2=m(2);b=m(3); x1=a2*(1+5*b); x2=1000*a1*(1+b); x3=1000*a1*(1+3*b); x4=1000*a1*(1+5*b); x5=a2*(1+b); x6=a2*(1+3*b); x7=a2*(1+5*b); x8=a2*(1+b); x9=a2*(1+3*b); x10=a2*(1+5*b); f = (x1-0)^2+(x2-0.1)^2+(x3-0.15)^2+(x4-0.2)^2+(x5-0.1)^2... +(x6-0.15)^2+(x7-0.2)^2+(x8-0.3)^2+(x9-0.45)^2+(x10-0.6)^2; % x = 0.0001 % 0.1965 % 0.0928 % fval =0.2598 % 结果为 a1=0.0001 % a2=0.1965 % b=0.0928
相关文章推荐
- 利用粒子群算法求解非线性二层规划问题(matlab)
- MatLab建模学习笔记8——非线性规划问题求解
- MatLab建模学习笔记8——非线性规划问题求解
- MatLab建模学习笔记10——利用罚函数求解非线性规划问题
- 非线性规划问题的matlab求解
- MatLab建模学习笔记10——利用罚函数求解非线性规划问题
- 非线性规划问题的matlab求解
- 规划问题的matlab求解
- 系统优化与调度——非线性规划问题:梯度投影法之MATLAB实现
- 利用Matlab求解线性规划问题
- matlab学习笔记之求解线性规划问题和二次型问题
- 遗传算法求解带非线性约束的单目标问题,matlab代码,基于K Deb的论文
- 规划问题的matlab求解
- MATLAB求解线性规划(含整数规划和0-1规划)问题
- 线性规划问题的matlab求解
- MATLAB求解线性规划(含整数规划和0-1规划)问题
- matlab求解非线性约束+线性规划+超定欠定普通方程组等优化问题
- matlab求解线性规划问题
- 线性规划问题的matlab求解
- 几类可以神奇转化为线性规划的问题matlab求解