習題解答——姜啟源《數學模型》


1 建立數學模型

1.3 包餃子

  • 復習題二

    • 假設餃子越大面皮越厚,並且成正比例關系,即

      \[\begin{align*} SH &= n(sh) \\ H &= a h \end{align*} \]

      由此可以得到大餃子和小餃子的面皮面積滿足

      \[S = \frac{n}{a}s \]

      根據教材中的中間結論

      \[\begin{align*} V &= kS^{\frac{3}{2}},& v =ks^{\frac{3}{2}} \end{align*} \]

      可以得到餃子餡體積的關系滿足

      \[V = (\frac{n}{a})^{\frac{3}{2}}v = \sqrt{\frac{n}{a^3}}(nv) \]

      顯然,在這個新的 \(V-nv\) 關系中,“餃子數量減少一倍能多包多少餡”的回答是與厚度變化系數\(a\)相關的:

      1. \(a = \sqrt[3]{2} \approx 1.26\)時,能包的餡數量不變;
      2. \(a > 1.26\)時,能包的餡變少;
      3. \(a<1.26\)時,能包的餡增加。

      可以發現,厚度變化系數 \(a\) 存在一個臨界值 \(\sqrt[3]{n}\) ,當它大於臨界值時,能包的餡反而少了,反之則會更多。為了更好地觀察這一臨界值的變化,我們可以作出餃子數量變化倍數\(n\)\(a\)臨界值的關系圖:

      image-20200723170953206

2 初等模型

2.2 滑艇比賽的成績

復習題

考慮八人艇分重量組(槳手體重不超過86 kg)個輕量級組(槳手體重不超過73 kg),建立模型說明重量組的成績比輕量組的大約好 5%.

考慮艇重

使用與書中相同的假設。

根據槳手輸出的功率與阻力 \(f\) 和速度 \(v\) 的乘積成正比,有

\[\begin{equation} np \propto fv \label{2.2.1} \end{equation} \]

根據假設2,3,可得

\[\begin{align} f &\propto sv^2 &p \propto w \end{align} \]

代入\(\eqref{2.2.1}\)式,可得

\[\begin{equation} v \propto (\frac{nw}{s})^\frac{1}{3} \label{2.2.3} \end{equation} \]

教材中已經得到浸沒面積 \(s\) 與艇手數 \(n\) 的關系

\[\begin{equation} s \propto n^\frac{2}{3} \label{2.2.2} \end{equation} \]

加入艇手體重和艇重,式\(\eqref{2.2.2}\)進一步寫為

\[s \propto (kn+nw)^\frac{2}{3} \]

其中,\(k\) 是艇重與艇手數的比例系數.

代入\(\eqref{2.2.3}\)式,並考慮到同為八人艇,消去 $ n$,可以得到速度與艇手重量 \(w\) 的關系

\[v \propto \frac{w^\frac{1}{3}}{(w+k)^\frac{2}{9}} \]

因為比賽成績 \(t\)\(v\) 成反比,所以

\[\begin{equation} t \propto \frac{(w+k)^\frac{2}{9}}{w^\frac{1}{3}}\propto(\frac{1}{w}+\frac{2k}{w^2}+\frac{k^2}{w^3})^\frac{1}{9} \label{2.2.4} \end{equation} \]

由表1中最后一列的數據可知,對於八人艇,\(w_0=14.7n\),即\(k=14.7\). 代入\(\eqref{2.2.4}\)式,可得

\[t \propto(\frac{1}{w}+\frac{29.4}{w^2}+\frac{216.09}{w^3})^\frac{1}{9} \]

最終,可以得到重量組和輕量組的相對成績差為

\[\delta = \frac{t_{73}-t_{86}}{t_{73}} \approx 2.4\% \]

不考慮艇重

使用與書中相同的假設。

根據槳手輸出的功率與阻力 \(f\) 和速度 \(v\) 的乘積成正比,有

\[\begin{equation} np \propto fv \label{2.2.5} \end{equation} \]

根據假設2,3,可得

\[\begin{align} f &\propto sv^2 &p \propto w \end{align} \]

代入\(\eqref{2.2.5}\)式,可得

\[\begin{equation} v \propto (\frac{nw}{s})^\frac{1}{3} \end{equation} \label{2.2.7} \]

教材中已經得到浸沒面積 \(s\) 與艇手數 \(n\) 的關系

\[\begin{equation} s \propto n^\frac{2}{3} \end{equation} \label{2.2.6} \]

加入艇手體重和艇重,\(\eqref{2.2.6}\)式進一步寫為

\[s \propto (nw)^\frac{2}{3} \]

代入\(\eqref{2.2.7}\)式,並考慮到同為八人艇,消去 $ n$,可以得到速度與艇手重量 \(w\) 的關系

\[v \propto w^\frac{1}{9} \]

因為比賽成績 \(t\)\(v\) 成反比,所以

\[t \propto w^{-\frac{1}{9}} \]

最終,可以得到重量組和輕量組的相對成績差為

\[\delta = \frac{73^{-\frac{1}{9}} - 86^{-\frac{1}{9}}}{73^{-\frac{1}{9}}} \approx 1.8 \% \]

2.5 估計出租車的總數

復習題1

  • MATLAB程序代碼

    % estimate population with sample
    % based on 5 models, which are mean model, middle model, ends-symmeric
    % model, average interval model and average division model
    
    % 1. set parameters
    Population = 1:1000;
    n = 20;     %number of sample points
    m = 400;    %repeat 400 times
    
    % set models
    mMean =     @(sample)   2 * mean(sample) - 1;
    mMiddle =   @(sample)   2 * median(sample) - 1;
    mEndsSym =  @(sample)   max(sample) + min(sample) - 1;
    mAvInter =  @(sample)   (1+1/n)*max(sample) - 1;
    mAvDiv =    @(sample)   (1 + 1/(2*n-1))*(max(sample) - 1/(2*n));
    
    % initialize arrays for storing estimations
    eMean = zeros(1,m);
    eMiddle = zeros(1,m);
    eEndsSym = zeros(1,m);
    eAvInter = zeros(1,m);
    eAvDiv = zeros(1,m);
    
    % 2. generate results
    for i = 1:m
        sample = randi(1000, [1,n]);
        eMean(i) = mMean(sample);
        eMiddle(i) = mMiddle(sample);
        eEndsSym(i) = mEndsSym(sample);
        eAvInter(i) = mAvInter(sample);
        eAvDiv(i) = mAvDiv(sample);
    end
    
    %3. Analyze
    Mean = myAnalyze(eMean);
    Middle = myAnalyze(eMiddle);
    EndsSym = myAnalyze(eEndsSym);
    AvInter = myAnalyze(eAvInter);
    AvDiv = myAnalyze(eAvDiv);
    
    format bank;
    StatisticalFeatures = {'Mean';'Error';'Std'};
    result = table(StatisticalFeatures, Mean, Middle, EndsSym, AvInter, AvDiv)
    
    function result = myAnalyze(e)
        result = zeros(3,1);
        result(1) = mean(e);
        result(2) = result(1) - 1000;
        result(3) = std(e);
        
        result = round(result*100)/100;
    end
    
  • 運行結果

    Mean Middle EndsSym AvInter AvDiv
    'Mean' 1002.24 1002.93 998.22 1000.57 978.31
    'Error' 2.24 2.93 -1.78 0.57 -21.69
    'Std' 132.22 213.22 69.1 49.84 48.68
  • 分析

    • \(m\)\(n\) 增大時,主要有以下影響:
    1. 各個模型的誤差都變小了,標准差的也減小了一些;
    2. 平均間隔模型的優越性更加突出地顯現了出來。

2.8 核軍備競賽

復習題1

\[\begin{equation} y = \frac{y_0}{s^a}=\frac{y_0}{s^{x/y}},0<s<1 \end{equation} \label{2.8.1} \]

證明\(\eqref{2.8.1}\)具有以下性質:

  1. 圖線上凸
  2. 若威懾值 \(y_0\) 變大,則曲線整體上移,且變陡
  3. 若殘存率 \(s\) 變大,則曲線變平
性質一:

\(\eqref{2.8.1}\)可得到 \(x\) 的表達式

\[x={\frac {y}{\ln \left( s \right) }\ln \left( {\frac {y_{{0}}}{y}} \right) } \]

進一步地,可以求出其一階導數和二階導數

\[\begin{equation} x' = - \frac{1} {\ln \left( s \right)} +{\frac {1}{\ln \left( s \right) }\ln \left( {\frac {y_{{0}}}{y}} \right) } \end{equation} \label{2.8.2} \]

\[\begin{equation} x''=-{\frac {1}{y\ln \left( s \right) }} \end{equation} \label{2.8.3} \]

已知 \(0<s<1\),故

\[\frac{1}{\ln(s)} <0 \]

由假設可知,\(y_0 < y\),故

\[\ln(\frac{y_0}{y}) <0 \]

將上兩式代入\(\eqref{2.8.2}\)\(\eqref{2.8.3}\),可得

\[x'>0 \]

\[x''<0 \]

所以 \(x\)-\(y\) 圖線是下凹的,則可知 \(y\)-\(x\) 圖線是上凹的.

性質二:

\(y_0\) 的代數含義可知,當 \(y_0\) 增大時,圖線上移.

\(\eqref{2.8.2}\)可知,當 \(y_0\) 增大時,\(x\) 的一階導數變小,\(x\)-\(y\) 圖線是變平的,則可知 \(y\)-\(x\) 圖線是變陡的.

性質三:

\(\eqref{2.8.2}\)可知,當 \(s\) 增大時,\(x\) 的一階導數變大,\(x\)-\(y\) 圖線是變陡的,則可知 \(y\)-\(x\) 圖線是變平的.

證明完畢.

第 2 章訓練題

第2題:請你設計按照測量長度估計魚的質量的方法. 假定魚池中只有一種鱸魚,並且得到8條魚的如下數據(胸圍指魚身的最大周長):

身長/cm 36.8 31.8 43.8 36.8 32.1 45.1 35.9 32.1
質量/g 765 482 1162 737 482 1389 652 454
胸圍/cm 24.8 21.3 27.9 24.8 21.6 31.8 22.9 21.6

先用機理分析建立模型,再用數據確定參數.

問題分析

題中提供的測量長度分別為魚身的長度和最大周長。基於日常生活中對鱸魚的觀察,我們可以將鱸魚視為一個類圓柱體,其體積由等效高與等效底面周長來確定。同時,類圓柱體的等效高與等效底面周長分別與測量數據成正比例關系。在建立起測量長度與鱸魚體積的關系后,我們來考察鱸魚體積與質量的關系。考慮到魚池中只有一種鱸魚,並且被測量的魚都是成年魚(這一點可以從身長中推測出),我們不妨假設該魚池中所有成年鱸魚的密度相同。這樣鱸魚的體積與質量也成一致的正比例關系。

下面將建立模型並使用數據來確定參數.

模型假設

計魚身長度為 \(l\),胸圍為 \(C\), 體積為 \(V\), 質量為\(m\).

  1. 將魚視為類圓柱體,其高與底面周長同\(l\)\(C\) 成正比例關系. 由底面周長與底面面積的平方關系,可以得到魚體積

    \[\begin{equation} V = klC^2 \end{equation} \label{2.p.1} \]

    其中,\(k\) 是比例系數.

  2. 假設池中所有成年鱸魚的身體密度相同. 考慮到體積更小的幼年鱸魚必定密度不同(通常更小),所以對於整個鱸魚群體而言,\(m\) - \(V\) 不會成正比例關系. 因此,為了使成年鱸魚的 \(m\) - \(V\) 關系模型更接近實際情況,我們加入一個常數 \(b\),得到

    \[\begin{equation} m = \rho V + b \end{equation} \label{2.p.2} \]

模型建立與參數確定

\(\eqref{2.p.1}\)代入\(\eqref{2.p.2}\),可以得到

\[m = k\rho lC^2+b =alC^2+b \]

其中,\(a=k\rho\)

利用最小二乘法,根據所給數據擬合上式,得到

\[\begin{align} a&=0.035 &b=-45.16 \end{align} \]

\[m=0.035lC^2-45.16 \]

如下圖所示

image-20200729150033419

模型解釋

  1. 最終得到的常數 \(b=-45.16\),說明成年鱸魚的質量隨體積的增長速度比幼年鱸魚快,這與前文分析時猜測的“幼年鱸魚身體密度更小”是相符的;
  2. 擬合曲線在\(m=1389\) 的點誤差較大,意味着“過大鱸魚”可能會出現身體密度減小的情況;
  3. 擬合曲線在大部分的點上誤差很小,模型具有應用價值。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM