实用数学建模与软件应用实验报告。
学院名称:理学院专业年级:信计142班姓名:高梓涵学号:2014014515
课程:实用数学建模与软件应用报告日期:2016.11.9
问题重述:设某团体有n个单位,每个单位有人数a,总席位为s=,现有席位p个待分配。问:
各单位分配多少个席位是公平的?这就是席位公平分配问题,有的文章又称为资源公平分配问题。
模型一:比例法。
比例法的思想就是按比例分配给单位席位。
设各单位分配的席位为,则, 表示向下取整。设各单位分得席位的小数部分为,尚未完成分配的席位为,则将k个尚未分配完的席位依次分给小数部分最大的单位。
表4.1 6个系人数分布。
解按比例计算,得各席位名额如表所示。
表4.2 6个系的席位分配结果。
模型二:q值法。
设各单位分配的席位为,i=1,2...n,则个单位每个席位代表的人数为。显然。该数值越大,对该单位不公平。考察两个单位i和j之间席位分配的不公平程度。
若,则定义对单位i的相对不公平程度为。
若,则定义对单位j的相对不公平程度为。
建立相对不公平程度指标后,制定的分配方案应使相对不公平程度尽量小。
假定,,当再增加一个席位的时,有下列情况:
1),即当增加一个席位分配给单位i的时候,仍然对单位i不公平,自然该席位分配给单位i。
2)当,,即当增加一个席位分配给单位i时,就会对单位j不公平。而如果将该席位分配给单位j,自然就会对单位i 不公平。这个席位到底分给哪一方?
需要考察两种方案对另一方造成的不公平程度最小。
该席位分配给i,对单位j的相对不公平程度为。
该席位分配给j,对单位i的相对不公平程度为。
为使不公平程度最小,若,则该席位分配给单位i。若,则该席位分配给单位j.
若,即。则此时席位分配给单位i。
同理,当时,则席位分配给单位j。
记,则席位分配给q大的一方。
对情形(1)同样有。
将该方法推广到n个单位的席位分配情况。设各单位分配的席位已经确定,当再增加1个单位时,计算各单位的q值。其中q值为,i=1,2...n
将该席位分配给q值最大的一方 ,这样可使造成的不公平程度最小。
实际计算时,可按照以下方式进行:
1)给个单位1个席位,即令,i=1,2...n,。
2)增加1个席位,i=1,2...n.记,则令。
3)计算已经分配席位。若lmatlab程序:
a=[100,202,67,40,59,32];
n=length(a);
p=30;s=sum(a);
x=ones(1,n);
q=zeros(1,n);
l=sum(x);
while(lfor i=1:n
q(i)=a(i)^2/(x(i)*(x(i)+1));
endu,k]=max(q);
x(k)=x(k)+1;
l=l+1;
end> fprintf('各单位分配席位:')
各单位分配席位:>>for i=1:n
fprintf('%2d',x(i));
end结果:6 12 4 2 4 2
问题重述。司机与前面的车保持多大的距离是安全的?安全的刹车距离跟什么有关?
该刹车距离能否用时间来度量?如何度量?下表列出了某种车型不同速度下的安全刹车距离,试找出其函数关系,并求出该种车型时速100km/h下的安全刹车距离。
表不同速度下的刹车距离。
解答分析:1.刹车距离模型。
刹车距离由反应距离和制动距离组成。
反应距离指从司机决定刹车到制动开始起作用汽车行驶的距离。
制动距离指制动器开始起作用到汽车完全停止行驶的距离。
2.模型假设。
1)刹车距离d等于距离d1和制动距离d2之和。
2)反应距离d1余车速v 成正比,比例系数为反应时间t1.
3)刹车时使用最大制动力f,f做的功等于汽车动能的改变吗,且f与车的质量m 成正比。
3.模型的建立与求解。
由假设(2),得 d1=t1v
由假设(3),有。其中a 为刹车加速度,时常数,则。
刹车距离与速度的模型为。
其中t1根据经验取0.75s,现利用实际数据来确定k。
表车速与刹车距离。
由将表中第2列和第3列数据代入,有。
则刹车距离与速度关系为。
表4.5中第4列为根据式计算刹车距离,第5列时采用实际刹车距离时的刹车时间。
由式(4.4)还可以看出刹车时间与车速的关系为t=0.75v+0.095v
可以计算出,当v=100km/h=27.8m/s时,安全刹车距离d=94.18m,安全时间为d/s=3.4s。
matlab程序:
> v=10:10:90;
v=v*1000/3600;
d=[3,7,13,21,29,39,50,63,77];
s1=0.0;
s2=0.0;
for i=1:7
s1=s1+(d(i)-0.75*v(i))*v(i)*v(i);
s2=s2+v(i)^4;
end;k=s1/s2;
ds=0.75*v+k*v.^2;
plot(v,ds,v,d,'*
xlabel('速度(米/秒)')
ylabel('距离(米)')
t=d./v;
fprintf('车速实际刹车距离计算刹车距离刹车时间');
车速实际刹车距离计算刹车距离刹车时间。
> for i=1:9
fprintf(' 6.2f %6.1f %6.1f %6.1f',v(i),d(i),ds(i),t(i));end;
> v1=100*1000/3600;
> d1=0.75*v1+k*v1^2;
> fprintf('v=%5.2f d=%5.2f',v1,d1);
v=27.78 d=94.18
实验小结:这节课学习了2个初等数学模型:席位公平分配模型,汽车刹车距离模型。
这些模型虽然比较简单,但是都是从实际问题出发,解决现实生活中的小问题。而且在建模过程中,建立了关于该问题的一些新的概念和独特方法,很好的解决了问题。这对生活中问题的数学建模具有启发作用。
数学建模实验
1 计算 汽车刹车距离 中的k值。解答过程 用最小二乘法来计算,过程如下 我们已知该曲线方程为d kv2 bv 令s 0 得出 0 0 得出 0 用matlab计算,其程序如下 x 29.3,44,58.7,73.3,88,102.7,117.3 y 42,73.5,116,173,248,343,...
数学建模实验
实验题目 人口类型。实验类型 基本操作。实验目的 掌握聚类分析的基本原理及方法。实验内容 要求学生在学习 掌握一些数学模型之后,能够理论联系实际,给出实际问题的相关数学模型,并能够编程求解,给出其结果。本次数学建模实习题目为 问题一 分析我国人口普查公报的相关数据,利用所学数学模型给出我国人口特征。...
数学建模实验
一 函数用法。形式功能。expand expr展开expr nn的阶乘。f x expr 定义函数f 二 软件使用感想。mathematica软件在第一次使用后给我的感觉是相对于matlab更加容易操作,功能更全面,许多matlab解决不了的它都能做到。它的函数功能在图像绘制方面更加直观简介,命令语...