2017數學建模b題優(yōu)秀論文(2)
2017數學建模b題優(yōu)秀論文篇3
淺析MATLAB軟件在數學建模中的應用
摘要: 本文首先介紹了MATLAB軟件的相關特點,然后對數學建模的概念及其建模過程做出介紹,其次以一個全國數學建模比賽的實例介紹了開發(fā)基于MATLAB的數學建模詳細步驟。實踐證明將MATLAB軟件用于數學建??梢蕴岣邤祵W建模的效率和質量,豐富了數學建模的方法和手段,同時對數學課程的運用具有重要的教學意義。
關鍵詞: MATLAB軟件;數學建模;數學模型
0 引言
數學軟件就是專門用來進行數學運算、數學規(guī)劃、統計運算、工程運算、繪制數學圖形或制作數學動畫的軟件。其中常用的數學軟件有:MATLAB、Mathematica、Maple、SAGE等;目前在科技和工程界中使用的比較多的數學軟件主要是MATLAB,其應用的非常廣泛。MATLAB是1984年由美國MathWorks公司推出的數學軟件,其優(yōu)秀的數值計算能力和數據可視化能力使它很快在數學軟件中脫穎而出,歷經十幾年發(fā)展和競爭,MATLAB現已成為適合多學科、多種工作平臺的功能強大的大型科技應用軟件。
MATLAB主要面對科學計算、可視化及交互式程序設計的高科技計算環(huán)境。它將數值分析、矩陣計算、科學數據可視化及非線性動態(tài)系統的建模和仿真等諸多強大功能集成在一個易于使用的視窗環(huán)境中,為科學研究、工程設計及必須進行有效數值計算的眾多科學領域提供了一種全面的解決方案,并在很大程度上擺脫了傳統的非交互式程序設計語言,代表了當今國際科學計算軟件的先進水平。MATLAB經過三十多年的研究和不斷完善,現已成為國際上最流行的科學計算與工程計算軟件工具之一,現在MATLAB已經不僅僅是最初“矩陣實驗室”了,它已發(fā)展成為一種具有廣泛應用前景的、全新的計算機高級編程語言。
1 MATLAB的語言特點
1.1 語言簡潔緊湊,程序設計自由度大,可移植性好
MATLAB是一個高級的矩陣列語言,它包含控制語句、函數、數據結構、輸入輸出和面向對象編程特點。MATLAB以矩陣為基礎,不需要預先定義變量矩陣(包括數組)的維數,可以方便地進行矩陣的算術運算、關系運算和邏輯運算等。而且MATLAB有特殊矩陣專門的庫函數,可以高效地進行信號處理、圖像處理、控制處理等問題。
1.2 用戶使用方便 MATLAB中以復數矩陣或數組作為基本編程單元,使得矩陣操作變得輕而易舉。另外MATLAB語句功能強大,一條語句往往相當于其他高級語言中的幾十條、幾百條甚至幾千語句,而且MATLAB中提供了非常多的功能函數,從而使得用戶使用起來非常方便。
1.3 方便的繪圖功能 MATLAB的繪圖是十分方便的,它有一系列繪圖函數,例如線性坐標、對數坐標、半對數坐標及極坐標,均只需要調用不同的繪圖函數,在圖上標出圖題、XY軸標注,網絡線的繪制也只需要調用相應的命令,簡單易行。另外,在調用繪圖函數時調整自變量可繪出不變顏色的點、線、復線或多重線。這種為科學研究著想的設計是通用的編程語言所不能及的。
1.4 擴充能力強,交互性好 高版本的MATLAB語言有豐富的庫函數,在進行復雜的數序運算時可以直接調用,而且MATLAB的庫函數同用戶文件在形成上一樣,所以用戶文件也可作為MATLAB的庫函數來調。因而,用戶可以根據自己的需要方便地建立和擴充新的庫函數,以便提高MATLAB的使用效率和擴充它的功能。另外,為了充分利用FORTRAN、C等語言的資源,用戶可以通過混合編程,方便地調用有關的FORTRAN、C語言的子程序,還可以在FORTRAN、C語言中方便地使用MATLAB的數值計算功能。這樣良好的交互性使用程序使用以前編寫過的程序,減少重復性工作,也使現在編寫的程序具有重復利用的價值。
1.5 編程效率高 MATLAB是一種面向科學與工程計算的高級語言,允許使用數學形式的語言編程序,而且比BASIC、FORTRAN等語言更加接近我們書寫計算公式的思維方式。用MATLAB編寫程序猶如在演算紙上排列出公式與求解問題。因此,MATLAB語言也可通俗地稱為演算紙式科學算法語言。由于它編寫簡單,所以編程效率高,易學易懂。
2 數學建模簡介
2.1 數學模型與數學建模 當我們研究一個問題時需要從定量的角度分析和研究,人們就要在深入調查研究、了解對象信息、作出簡化假設、分析內在規(guī)律等工作的基礎上,用數學符號和語言,把它表述為數學式子,也是數學模型,所以數學模型是對于一個特定的對象為了一個特定的目標,根據特有的內在規(guī)律,做出一些必要的簡化假設,運用適當的數學工具,得到一個數學結構。數學結構可以是數學公式、算法、表格、圖示等。數學建模就是建立數學模型,建立數學模型的過程就是數學建模的過程。數學建模的語言和方法,通過抽象、簡化建立能近似刻化并“解決”實際問題的一種強有力的數學手段。 建立數學模型的過程是把錯綜復雜的實際問題簡化、抽象為合理的數學模型的過程。要通過調查、收集原始信息,觀察和研究實際對象的固有特征和內在規(guī)律,抓住問題的主要矛盾,建立起反映實際問題的數量關系,然后利用數學的理論和方法去分析和解決問題。這需要深厚扎實的數學基礎,敏銳的想象力和洞察力,對實際問題的濃厚興趣和廣博的知識面。數學建模是聯系實際問題與數學的橋梁,是數學在各個領域應用的媒介,數學建模的作用越來越受到數學工程界的普遍重視,它已成為現代科技工作者必備的重要能力之一。
2.2 數學建模的一般步驟 下面結合數學建模的幾個環(huán)節(jié)和數學建模實例,介紹MATLAB在數學建模中的應用。數學建模的過程分成如下幾個階段:①模型準備:了解所研究的問題的實際背景,明確其實際意義,掌握對象的各種信息,從而確定使用何種數學方法與建立何種數學模型,然后用數學的語言來描述問題。②模型假設:為了利用數學方法,通常要對問題做必要的、合理的假設,即根據實際對象的特征和建模的目的,對問題進行必要的簡化,并用精確語言提出一些當前的假設。③模型建立:根據所做的假設以及事物之間的聯系,在假設基礎上,利用適當的數學工具來刻畫各變量之間的數學關系,建立相應的數學結構。④模型求解:利用已知的數學方法來求解上一步所得到的數學問題,即利用獲取的數據資料,對模型的所有參數做出計算。⑤模型分析:對所得的結果進行數學上的分析,特別要注意數據變化時所得結果是否穩(wěn)定。⑥模型檢驗:將模型分析結果與實際情形進行比較,然后可根據情況對模型進行修正,使其符合程度更高,具有更好的合理性和適用性。⑦模型應用:應用方式因問題的性質和建模的目的而異。
3 建模實例
2009年全國大學生數學建模競賽A題為某服務公司承辦了一次全國性的會議,會議籌備組要為與會代表預訂客館客房,租借會議室,并租用客車接送代表?;I備組經過實地考察,篩選出10家賓館作為備選,題目給出客房及會議室的規(guī)格、間數、價格等數據,需要先預測與會代表的人數。預測的依據是代表回執(zhí)數量及往屆的與會人員數據。已知本屆會議的回執(zhí)情況(見表1)及以往幾屆會議代表回執(zhí)和與會情況(見表2)要解決的問題是:根據這些數據預測本屆與會代表人數。
首先根據題目給出的數據我們知道本屆發(fā)來回執(zhí)的代表人數為x=75,由于發(fā)來回執(zhí)但未與會的代表人數x1與發(fā)來回執(zhí)的代表人數x之間存有一定的關系,所以我們通過題目給出的以往數據利用最小二乘法擬合出相應曲線,然后得到發(fā)來回執(zhí)但未與會的代表人數。給出MATLAB
程序:
x=[315 356 408 711];
y=[89 115 121 213];
p2=polyfit(x,y,2)
poly2str(p2,'x')
x1=300:800;
y2=polyval(p2,x1);
plot(x,y,'rp',x1,y2)
z=polyval(a,755)
二次擬合曲線為:y=-0.1 x^2+446.3x-33870.4,可得今年發(fā)了回執(zhí)但未與會的代表人數為225(人)。
其次由于未發(fā)來回執(zhí)而與會的代表人數x2與發(fā)來回執(zhí)的代表人數之間的影響關系不大,需要使用題目給出的數據單獨進行預測,由于題目給出的數據不多,我們采用對數據量要求不大但精度較高的灰色預測模型GM(1,1)來進行預測。根據GM(1,1)模型編寫出的MATLAB程序如下:
function [ px0,ab,rel ] =gm11( x0_number )
if nargin==1
number=max(size(x0));
end
n=max(size(x0));
x1=zeros(size(x0));
for k=1:n
for i=1:k
x1(k)=x1(k)+x0(i);
end
end
z=zeros(size(x0));
for k=2:n
z(k)=0.5*(x1(k)+x1(k-1));
end
y=x0';y(1)=[];b(;,1)=-z';b(;,2)=1;b(1,:)=[];
ab=inv(b'*b)*b'*y;
a=ab(1); b=ab(2);px0(1)=x0(1);
for k=1:number-1
px0(k+1)=(1-exp(a))*(x0(1)-b/a)*exp(-a*k);
end
temp=px0(1:n);
x0;
temp=(temp-x0)./x0;
temp(1)=[];
temp=abs(temp);
rel=sum(temp)/(n-1)*100;
由以上過程我們可以得到本屆大會代表到會情況如表3。
4 結論
通過以上模型的求解過程可以看出,MATLAB軟件在解決復雜的數學建模問題時具有方便、快捷、易學易用的特點,它的強大功能在許多領域有著其它軟件無法比擬的優(yōu)勢。將其應用于數學建模的分析和求解計算過程必將大大推進建模的進程,起到事半功倍的效果。
參考文獻:
[1]徐秀華.Matlab軟件在數學建模中的應用[J].科技與生活,2010(13).
[2]于潤偉.Matlab基礎及應用[M].機械工業(yè)出版社,2010.
[3]吳新華.Matlab軟件在數學中的應用[J].萍鄉(xiāng)高等專科學校學報,2012(6).
猜你喜歡:
2017數學建模b題優(yōu)秀論文(2)





上一篇:2017數學建模b題論文
下一篇:2017數學建模獲獎論文