数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】

【学习网址:MOOC---郑州轻工业大学---数学建模与实验】数学建模专栏

  • 笔记01【第1、2章】【概述、软件介绍】
  • 笔记02【第3章】【数据处理方法】
  • 笔记03【第4章】【规划模型】
  • 笔记04【第5章】【图与网络模型】

目   录

第2章 软件介绍

第2章 软件介绍作业1

1、指数函数-平面图形-作图(plot)

2、极坐标作图(polar)

3、参数函数作图(plot)

4、空间曲面图形作图(meshgrid)

5、题解and运行截图

第2章 软件介绍作业2

第3章 数据处理方法

3.1、数据插值练习题

1、估计每隔1/10小时的温度值。

2、作出山区的地貌图和等高线图,并对几种插值方法进行比较。

3.2、数据拟合练习题

3、多项式拟合方法

4、非线性最小二乘拟合获得待定系数

第4章 规划模型

1.求下列线性规划问题的解.

1、原始输入

2、集合法

2.使用 fmincon 求解下列非线性规划问题。

第5章 图与网络模型

作业1、给出8个城市间的最小生成树

作业2、试求从仓库可运往市场的最大流量


第2章 软件介绍

第2章 软件介绍作业1

用subplot分别在不同的坐标系下作出四条曲线:

  • 平面图形(参数方程):plot
  • 空间三维曲线:plot3
  • 空间曲面:mesh
  • 极坐标:polar

步长越小,越密集,光滑程度越好!

1、指数函数-平面图形-作图(plot)

1)曲线y=e^{-x^{2}}的图形,要求曲线颜色为蓝色,曲线形式为虚线,标记符为“o”,图形的标题为“平面图形作图”;

exp 指数函数   【 x0本身是矢量(向量),矢量运算要用“.”。

x0 = -5:0.1:5;
y0 = exp(-x0.^2);
plot(x0,y0,'b--o')   %  b:蓝色;--:虚线;o:标记符号(英文字母o)

plot(x, y, style)描点分段拟合(x, y),style有三部分:b--o (颜色,线条,点)

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第1张图片

x0 = -5:0.1:5;
y0 = exp(-x0.^2);
plot(x0,y0,'b--*')

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第2张图片

2、极坐标作图(polar)

四叶玫瑰线 \rho =sin2\Theta ;(polar函数),要求图形的标题为“极坐标作图”;

polar(r, p, style):做极坐标(r, p)图像。 

3、参数函数作图(plot)

叶形线,要求图形颜色为红色,图形曲线为点画线”.-”,图形标题为:“参数函数作图”;

向量运算:加“.” 。

% 3、叶形线
t = 0:0.1:5000;
x2 = 3*t./(1+t.^3);
y2 = 3*t.^2./(1+t.^3);
% plot(x2,y2,'r-.*')

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第3张图片

4、空间曲面图形作图(meshgrid)

z=sin(\pi \sqrt{x^{2}+y^{2}}) ,其中-30

meshgrid(x, y) :以x轴、y轴做出平面格点;mesh(X, Y, Z)做空间图像。

% 4、空间曲面
x = -10:0.05:10; % x是向量
y = x; % y也是向量
[X, Y] = meshgrid(x,y);
R = sqrt(X.^2 + Y.^2) + eps; % eps:一个很小的正数【开根号,可能会有误差,eps相当于误差的补偿。】
Z = sin(pi*R);

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第4张图片

5、题解and运行截图

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第5张图片

subplot(m, n, i)做一个m*n的画布,下一张图画在第i个位置。 

title(str)设置当前图像的标题为str。

% 1、指数函数
x0 = -5:0.1:5;
y0 = exp(-x0.^2);
% plot(x0,y0)    plot(x0,y0,'b--o')

% 2、四叶玫瑰线 
theta = 0:0.01*pi:2*pi;
rho = sin(2*theta);

% 3、叶形线
t = 0:0.1:5000;
x2 = 3*t./(1+t.^3);
y2 = 3*t.^2./(1+t.^3);
% plot(x2,y2,'r-.*')

% 4、空间曲面
x = -10:0.05:10;
y = x;
[X, Y] = meshgrid(x,y);
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(pi*R);

subplot(2,2,1),plot(x0,y0,'r--o'),title('平面图形作图')
subplot(2,2,2),polar(theta,rho,'*'),title('极坐标作图')
subplot(2,2,3),plot(x2,y2,'r.-'),title('参数函数作图')
subplot(2,2,4),mesh(X,Y,Z),title('空间曲线图形作图')

保存图形【英文 命名】【文件 --> 另存为】

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第6张图片

  • .fig:保留文件所有信息。
  • .jpg
  • .png(文件小,不太清晰)
  • .bmp(所占空间大)

第2章 软件介绍作业2

建立一个命令M-文件:求所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。

例如,153是一个水仙花数,因为153=13+53+33。

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第7张图片

i = 0; j = 0; m = 0; k = 1;
a = zeros(); % 空数组 未定义几维
for i = 1:9 % 百位
    for j = 0:9 % 十位
        for m = 0:9 % 个位
            if i*100 + j*10 + m == i^3 + j^3 + m^3;
                a(k,1) = i; %第1行的第1个位置 存放i
                a(k,2) = j; %第1行的第2个位置 存放j
                a(k,3) = m; %第1行的第3个位置 存放m
                a(k,4) = i^3 + j^3 + m^3; %第1行的第4个位置 存放和
                k = k + 1;
            end
        end
    end
end
a

第3章 数据处理方法

3.1、数据插值练习题

1、估计每隔1/10小时的温度值。

在1-12的11小时内,每隔1小时测量一次温度,测得的温度依次为:5,8,9,15,25,29,31,30,22,25,27,24。试估计每隔1/10小时的温度值。

hours = 1:12;
temps = [5 8 9 15 25 29 31 30 22 25 27 24];
h = 1:0.1:12;
t = interp1(hours,temps,h,'spline')  % (直接输出数据将是很多的)
plot(hours, temps, '+')
hold on
plot(h, t, hours, temps, 'r:')     %作图
xlabel('Hour'),ylabel('Degrees Celsius')

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第8张图片

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第9张图片

2、作出山区的地貌图和等高线图,并对几种插值方法进行比较。

某山区地貌:

在某山区测得一些地点的高程如下表。平面区域为

           (1200<=x<=4000,1200<=y<=3600)

试作出该山区的地貌图和等高线图,并对几种插值方法进行比较。

    X

 Y

1200

1600

2000

2400

2800

3200

3600

4000

1200

1130

1250

1280

1230

1040

900

500

700

1600

1320

1450

1420

1400

1300

700

900

850

2000

1390

1500

1500

1400

900

1100

1060

950

2400

1500

1200

1100

1350

1450

1200

1150

1010

2800

1500

1200

1100

1550

1600

1550

1380

1070

3200

1500

1550

1600

1550

1600

1600

1600

1550

3600

1480

1500

1550

1510

1430

1300

1200

980

通过此题对最近邻点插值、双线性插值方法和双三次插值方法的插值效果进行比较。

相似题目

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第10张图片

3.2、数据拟合练习题

3、多项式拟合方法

分别用多项式拟合的方法,在不同阶次下 拟合 函数y=(x2-3x+5)e-5xsinx中给出的数据。

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第11张图片

该数据的三次多项式拟合:

>> x0=0:0.1:1; y0=(x0.^2-3*x0+5).*exp(-5*x0).*sin(x0);

>> p3=polyfit(x0,y0,3); vpa(poly2sym(p3),10)

ans =

2.839962923*x^3-4.789842696*x^2+1.943211631*x+.5975248921e-1

绘制拟合曲线:

>> x=0:0.01:1; ya=(x.^2-3*x+5).*exp(-5*x).*sin(x);

>> y1=polyval(p3,x); plot(x,y1,x,ya,x0,y0,'o')

>>p6=polyfit(x0,y0,6); y2=polyval(p6,x);

>>vpa(poly2sym(p6),10)

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第12张图片

就不同的次数进行拟合:

>> p4=polyfit(x0,y0,4); y2=polyval(p4,x);

>> p5=polyfit(x0,y0,5); y3=polyval(p5,x);

>> p8=polyfit(x0,y0,8); y4=polyval(p8,x);

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第13张图片

拟合最高次数为8的多项式:

>> vpa(poly2sym(p8),5)

ans =

-8.2586*x^8+43.566*x^7-101.98*x^6+140.22*x^5-125.29*x^4+74.450*x^3-27.672*x^2+4.9869*x+.42037e-6

Taylor幂级数展开:

>> syms x; y=(x^2-3*x+5)*exp(-5*x)*sin(x);

>> vpa(taylor(y,9),5)

ans =

5.*x-28.*x^2+77.667*x^3-142.*x^4+192.17*x^5-204.96*x^6+179.13*x^7-131.67*x^8  

4、非线性最小二乘拟合获得待定系数

由下面语句生成一组数据,其中ai为待定系数。

>> x=0:.1:10;

>> y=0.12*exp(-0.213*x)+0.54*exp(-0.17*x).*sin(1.23*x);

并且该数据满足y(x)=a1*exp(-a2*x)+a3exp(-a4*x)*sin(a5*x)采用非线性最小二乘拟合获得待定系数,使得目标函数的值最小。

2、编写函数:

>> f=inline('a(1)*exp(-a(2)*x)+a(3)*exp(-a(4)*x).*sin(a(5)*x)','a','x');

>> [xx,res]=lsqcurvefit(f,[1,1,1,1,1],x,y);

>>xx'

>>res

输出结果:

Optimization terminated successfully:

 Relative function value changing by less than OPTIONS.TolFun

ans =

    0.1197

    0.2125

    0.5404

    0.1702

    1.2300

res =

  7.1637e-007

修改最优化选项:

>> ff=optimset; ff.TolFun=1e-20; ff.TolX=1e-15; % 修改精度限制

>> [xx,res]=lsqcurvefit(f,[1,1,1,1,1],x,y,[],[],ff); xx',res

Optimization terminated successfully:

 Relative function value changing by less than OPTIONS.TolFun

ans =

    0.1200

    0.2130

    0.5400

    0.1700

    1.2300

res =

  9.5035e-021

绘制曲线:

>> x1=0:0.01:10; y1=f(xx,x1); plot(x1,y1,x,y,'o')

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第14张图片

第4章 规划模型

1.求下列线性规划问题的解.

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第15张图片

1、原始输入

Max = 400*x1 + 1000*x2 + 300*x3 - 200*x4;
-2*x2 + x3 + x4 = 0;
2*x1 + 3*x2 <= 16;
3*x1 + 4*x2 <= 24;
x3 < 5;
end

 数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第16张图片

2、集合法

!Max = 400*x1 + 1000*x2 + 300*x3 - 200*x4;
! -2*x2 + x3 + x4 = 0  等式约束;
! 2*x1 + 3*x2 <= 16    不等式约束;
! 3*x1 + 4*x2 <= 24    不等式约束;
! x3 < 5               不等式约束;
!四行四列的约束矩阵 ;

sets:
k/1..4/:c,x,b; ! 四维变量集合k, ;
h/1..3/; !;
links(k,k):constr; !四行四列   矩阵用constr表示;
endsets
data:
c = 400 1000 300 -200;
b=0 16 24 5;
constr = 0,-2,1,1
	   2,3,0,0
	   3,4,0,0
	   0,0,1,0;
enddata
max=@sum(k(I):c(I)*x(I)); ! 目标函数 c*x  k(I): I从1到4  Σci*xi;
@sum(k(J):constr(1,J)*x(J))=b(1); !等式约束  k(J): J从1到4  矩阵的第1行 ;
@for(h(I):@sum(k(J):constr(I+1,J)*x(J))<=b(I+1));
end

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第17张图片

2.使用 fmincon 求解下列非线性规划问题。

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第18张图片

% xiti2.m文件
function ff = xiti2(x)
         ff = x(1)^2 - 2*x(1)*x(2) + 2*x(2)^2 - 4*x(1) - 12*x(2) + x(3)^2;


% contxiti2.m文件
function [c1, ceq1] = contxiti2(x)  % c1 不等式、ceq1 等式
    c1 = 2*x(1)^2 + x(2) - 3*x(3) - 2;
    ceq1 = 2*x(1)^2 + 5*x(2)^2 + 8*x(3)^2 - 4;


% xiti2tiaoyong.m文件
x0 = [0 1 1];

    A = [-2, 2, -1]; % 线性不等式约束
    b = -5;

    Aeq = [1, 1, 2];
    beq = 2;

    lb = [];ub = [8, 4, 1];
    [x, fval] = fmincon(@xiti2, x0, A, b, Aeq, beq, lb, ub, @contxiti2);
    %  @xiti2:调用目标函数   @contxiti2:调用非线性约束   x0:初始条件
    % A、b 不等式线性约束   Aeq, beq:等式线性约束   lb 下界, ub 上界

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第19张图片

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第20张图片

第5章 图与网络模型

作业1、给出8个城市间的最小生成树。

北京(Pe)、东京(T)、莫斯科(Mo)、纽约(N)、渥太华(O)、墨西哥城(Me)、伦敦(L)、巴黎(Pa)各城市之间的航线距离如表5.1所列,给出8个城市间的最小生成树。

                                                                             表5.1八城市间的航线距离

 

L

Me

Mo

N

O

Pa

Pe

T

L

 

56

26

35

53

21

51

60

Me

56

 

55

33

36

91

124

113

Mo

26

55

 

180

31

28

57

80

N

35

33

180

 

5

58

150

108

O

53

36

31

5

 

56

104

96

Pa

21

91

28

58

56

 

82

94

Pe

51

124

57

150

104

82

 

20

T

60

113

80

108

98

94

20

 

% 将伦敦(L)、墨西哥城(Me)、莫斯科(Mo)、纽约(N)、渥太华(O)、巴黎(Pa)、北京(Pe)、东京(T)
% 分别标为顶点1、2、3、4、5、6、7、8.记图G(V, E, W),用matlab求最小生成树如下:
a=zeros(8);
a(1,2)=56;a(1,3)=26;a(1,4)=35;a(1,5)=53;a(1,6)=21;a(1,7)=51;a(1,8)=60;
a(2,3)=55;a(2,4)=33;a(2,5)=36;a(2,6)=91;a(2,7)=124;a(2,8)=113;
a(3,4)=180;a(3,5)=31;a(3,6)=28;a(3,7)=57;a(3,8)=80;
a(4,5)=5;a(4,6)=58;a(4,7)=150;a(4,8)=108;
a(5,6)=56;a(5,7)=104;a(5,8)=96;
a(6,7)=82;a(6,8)=94;
a(7,8)=20;
a=a+a'; % 以上:构造8个城市间的模型
G=sparse(a); % 转稀疏矩阵
% G必须是稀疏矩阵 直接调用算法,可以不转化为稀疏矩阵 Tree:最小生成树 Pred:前驱节点
[Tree,pred]=graphminspantree(G, 'method', 'Kruskal')

nodestr={'L', 'Me', 'Mo', 'N', 'O', 'Pa', 'Pe', 'T'} % 给8个点命名
h=view(biograph(Tree,nodestr,'ShowArrows','off','ShowWeights','on'))
% view转可视图 biograph画图 'ShowArrows','off' 给不给箭头,不给箭头(无向图);给不给权重 给

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第21张图片

建模过程中,如果能够将结果转为可视化的图(或 表...),一定要转化为可视化的图(或 表...)。 

文字描述,看起来 比较费劲(尤其对于 非专业阅读者)。

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第22张图片

view()函数:画图 biograph 【解法2:直接使用Kruskal算法,可以不将矩阵转为稀疏矩阵】

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第23张图片

作业2、试求从仓库可运往市场的最大流量

某产品从仓库运往市场销售。已知各仓库的可供量、各市场需求量及从i仓库至j市场的路径的运输能力如表5.2所列(0表示无路可通),试求从仓库可运往市场的最大流量,各市场需求能否满足?

市场j

仓库i

1

2

3

4

可供量

A

30

10

0

40

20

B

0

0

10

50

20

C

20

10

40

5

100

需求量

20

20

60

20

 

3个发点,4个收点 --> 构造虚拟点:1个发点、1个收点 ------ 集中发货点 发给 A、B、C(容量是可供应量),收点(需求量)

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第24张图片

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第25张图片

发点到收点的最大流(两点之间,经过中间网络的最大流)

% 解:应用最大流算法必须是单源单汇的网络,因此,构造一个虚拟发点Vs,
% A、B、C的可供应量分别为20、20、100,可令弧VsA、VsB、VsC上的容量分别为
% 20、20、100。构造一个虚拟收点Vt,由于市场1、2、3、4的需求量分别为20、20、
% 60、20,可令弧1vt、2vt、3vt、4vt的容量分别为20、20、60、20。构造赋权有
% 向图G=(V,E,W),其中顶点集V,弧集为E,W为对应各弧容量的邻接矩阵,计算时,
% 将点Vs,A,B,C,1,2,3,4,vt分别编号为1、2、3、4、5、6、7、8、9
% 从仓库到市场的最大流问题归结为求Vs到Vt的最大流。用matlab求解如下:
a=zeros(n); % 生产0矩阵
a(1,2)=20;a(1,3)=20;a(1,4)=100;
a(2,5)=30;a(2,6)=10;a(2,8)=40;
a(3,7)=10;a(3,8)=50;
a(4,5)=20;a(4,6)=10;a(4,7)=40;a(4,8)=5;
a(5,9)=20;a(6,9)=20;a(7,9)=60;a(8,9)=20; % 建立9*9的邻接矩阵 上三角
a=sparse(a); % 转为稀疏矩阵
[b,c]=graphmaxflow(a,1,9) % 用命令函数求两点之间的最大流  点1到点9之间的最大流
% 求得从仓库运往1、2、3、4市场流量为20、20、50、20,最大流量为110,其中市场3不能满足需求。

数学建模【作业题-解析(数据处理方法、规划模型、图与网络模型)】_第26张图片

 

 

你可能感兴趣的:(数学建模与实验)