基于統(tǒng)計回歸的地震破壞性分析模型及東?本?地震仙臺市災(zāi)情分析中的應(yīng)?

東北大學(xué) 2017 年大學(xué)生數(shù)學(xué)建模競賽 A 題一等獎成果。
在 GitHub 上:https://github.com/lalxyy/NEU-2017-MCM-A
由于不能顯示行內(nèi)公式,部分 LaTeX 公式以原形式展現(xiàn)。

摘要

東京時間 2011 年 3 ? 11 ? 14 時 46 分,?本東北地?太平洋海域發(fā)??? 9.0 級地震,并伴隨有 7.0 到 7.4 級的多次強余震。9.0 級地震也造成了歷史記錄以來罕見的?達 39 ?的巨?海嘯。截?到 2011 年 5 ?,超過 2.4 萬?被官?報告為死亡或失蹤;另外,福島第?核電站因此發(fā)?的嚴(yán)重核事故也導(dǎo)致了千余?的?直接死亡,這些?并發(fā)?的重?事故也給?本及周邊國家?guī)砹藝?yán)重的損失。本?通過評估磐城、仙臺、宮古與橫須賀的地震破壞及損失情況,利?多元線性回歸的?式,建?了災(zāi)害有關(guān)因素(地震強度、海嘯等)與災(zāi)害造成的后果(?員傷亡、經(jīng)濟損失)的模型。

本?根據(jù)互聯(lián)?中能夠查得的數(shù)據(jù)進?提取,并獲得了沿岸海浪最??度、與震中距離、地震??烈度、經(jīng)濟?平(GDP)等數(shù)據(jù),以及?員傷亡、財產(chǎn)損失的數(shù)據(jù)。根據(jù)繪制的散點圖確定多元擬合中每個分量對應(yīng)的多項式次數(shù),之后將?次單項式換元轉(zhuǎn)化為?次單項式,使?多元線性擬合來得出多項式系數(shù)。利?所得出的模型,本?又簡要分析了仙臺市的災(zāi)情情況,并且指出數(shù)據(jù)點較少帶來的模型的不?之處。

關(guān)鍵詞: 多項式擬合; 地震破壞性評估; 東?本?地震

1 問題背景與分析

1.1 背景

2011 年 3 ? 11 ??本福島發(fā)??? 9.0 級?地震,強震引發(fā)海嘯,導(dǎo)致當(dāng)時全球最?的在役核電站——福島核電站放射性物質(zhì)外泄。該事故根據(jù)國際核事件分級被評為最?級 7 級,與切爾諾貝利核電站泄漏事故等級相同。截? 2014 年 2 ?,“3.11”東?本?地震和?海嘯死亡的?數(shù)達到 15884 ?。 截? 2014 年 5 ?,受東?本?地震和福島第?核電站事故影響,?直接死亡的?數(shù)已經(jīng)達到 1699 ?,超過了在事故中直接死亡的 1603 ?。

建?數(shù)學(xué)模型,在以下?本沿海城市:磐城、仙臺、宮古和橫須賀 中。?較各種規(guī)模??的地震破壞以及所造成的后果,并為當(dāng)?shù)貓蠹垳?zhǔn)備?篇?章,解釋根據(jù)你的模型關(guān)于其中?個城市的發(fā)現(xiàn)。

1.2 問題分析

該問題本質(zhì)為求解?個地震因?向量 x = (x_1 , x_2 , ..., x_m) 到影響程度向量 y = (y_1 , y_2 , ..., y_n) 的函數(shù) F(可能包含多個線性變換),表示為

,怎樣得出 F(x) 也是本?討論的核?內(nèi)容。

由于災(zāi)害產(chǎn)?的影響與?類?產(chǎn)??平的發(fā)展情況和???的主觀能動性有很?的關(guān)聯(lián),所以單純憑借歷史以來的地震傷亡?數(shù)、財產(chǎn)損失情況不能作為衡量當(dāng)今災(zāi)害情況與財產(chǎn)損失的直接依據(jù),但是?類??因素又是衡量地震帶來的破壞性的必要考慮因素,且關(guān)系極其復(fù)雜。為了簡化模型、提?模型準(zhǔn)確性與說服?,我們將磐城、仙臺、宮古和橫須賀四個地區(qū)在同?時間橫向?qū)?,不需控制時間的變量,?是通過與震中的距離來衡量地震的影響規(guī)模。

題?所給出的四個地區(qū)的建設(shè)、經(jīng)濟發(fā)展?平不盡相同。圖 1 是 Google Maps 的數(shù)據(jù),給出了四城的地理位置與震中坐標(biāo),最右側(cè)海域中的是本次地震的震中,其余點從上到下依次為宮古、仙臺、磐城、橫須賀;

圖 1:Google Maps 數(shù)據(jù)

以及四城 2010 年當(dāng)時的國民?產(chǎn)總值(GDP)[1][2][3][4]:

城市 國民生產(chǎn)總值
仙臺 61.7
橫須賀 12.2882
磐城 16.5905
宮古 5.19

表 1: 2010 年四城國民?產(chǎn)總值(單位:億美元)

由此我們將經(jīng)濟因素(代表抗災(zāi)、救災(zāi)?平)納?到考慮因素中。除此之外,根據(jù)常識,地震破壞性本?又與震中位置、震源深度以及城市與震中的距離相關(guān),也是模型中必要的考慮因素。Google Maps 分別提供了四城市中?到震中的直線距離(表 2);

城市 與震中距離 / km
宮古 186.45
仙臺 176.75
磐城 207.31
橫須賀 423.28

表 2: 震中直線距離

此外,連帶因素還包括由于?本部分區(qū)域近海?產(chǎn)?的由地震引發(fā)的海嘯影響、以及福島核電站放射性物質(zhì)外泄造成的事故。四個城市的海嘯浪?度最?值可以在?象數(shù)據(jù)中查得 [5][6](表 3); 以及從各城市與所屬縣政府查得的?員傷亡與財產(chǎn)損失情況(表 4)[7][8][9][10]。

城市 海嘯沿岸最??度 / ?
宮古 8.5
仙臺 8.6
磐城 6.51
橫須賀 2.06

表 3: 觀測到的海嘯?度
注:部分觀測點不以城市命名,選取對應(yīng)最近的觀測點。

城市 傷亡?數(shù) 經(jīng)濟損失(億美元)
宮古 611 22.4775
仙臺 904 119.0022
橫須賀 0 0.92
磐城 466 0.1478

表 4: 四城傷亡?數(shù)與經(jīng)濟損失
注:橫須賀市政府沒有說明有任何?員傷亡情況(參考?獻 10),擬合過程中暫計為 0。(附錄 B.2)

2 模型假設(shè)與說明

2.1 符號說明

符號 代表意義與說明
A_1 仙臺市
A_2 橫須賀市
A_3 宮古市
A_4 磐城市
X 表示地震整體因素的向量
x_1, ..., x_m 影響地震破壞性的各個因素
Y 表示地震破壞性結(jié)果的向量
y_1, ..., y_n 地震破壞程度的不同衡量特征(財產(chǎn)損失等)
F 最終求解的地震破壞性衡量函數(shù)
d_1, ..., d_4 對應(yīng) A_1 , ..., A_4 到震中的直線距離,單位為千?

表 5: 本?所使?的符號說明

2.2 模型假設(shè)

假設(shè) 1:?本本?海岸線在地震中沒有?規(guī)模(超過 10 ?的顯著)偏移;[11]
假設(shè) 2:?類的能動性(主觀性與?產(chǎn)?)與發(fā)展時間相關(guān)且滿?映射關(guān)系;
假設(shè) 3:?類在地震中的抗災(zāi)防災(zāi)?平與經(jīng)濟發(fā)展程度正相關(guān);
假設(shè) 4:?個城市區(qū)域內(nèi)的建筑物強度可以??個平均值來表示,且可以?建筑物的強度、破壞程度作為衡量城市破壞程度的主要因素。

3 模型建立

3.1 知識背景

3.1.1 地震影響場

采?的地震烈度影響場衰減公式:
沿長軸?向,


沿短軸?向,

其中 d 表示城市與震中的直線距離。[12]

3.1.2 海嘯等級

采?太平洋地區(qū)普遍適?的今村-飯?強度分級來評定海嘯的強度等級,其中 H_av 表示沿最近海岸的平均海嘯?度,I 為輸出強度值。[13]

3.2 具體問題參數(shù)引入

由問題分析所述,已經(jīng)基本可以確定 X、Y 各分量的表?含義。將 x_1 , x_2 , y_1 , ... 等分量指派為表 6、7 中所示的含義;四城中每個城市都與且僅與?組向量對應(yīng)。

維度 表示含義與單位說明
x_1 地震震級(??)
x_2 國民?產(chǎn)總值(億美元)
x_3 輸?值在 d_1 , ..., d_4 范圍內(nèi),與震中直線距離(千?)
x_4 海嘯沿岸最??度(?)

表 6: 地震影響因?向量 x 各分量表示含義

維度 表示含義與單位說明
y_1 傷亡?數(shù)
y_2 經(jīng)濟損失(億美元)

表 7: 影響結(jié)果 y 各分量表示含義

并通過 Python 語?與 Matplotlib 庫繪制 y 各分量與 x 各分量散點圖:

圖 2: 震中距離與傷亡?數(shù)
圖 3: 震中距離與經(jīng)濟損失
圖 4: GDP 與傷亡?數(shù)
圖 5: GDP 與經(jīng)濟損失
圖 6: 海浪?度與傷亡?數(shù)
圖 7: 海浪?度與經(jīng)濟損失

3.3 基本模型

根據(jù)現(xiàn)有散點圖及統(tǒng)計回歸模型,認(rèn)為 y_1 , y_2 為被解釋變量,x_1 , ..., x_4 為解釋變量。觀察散點圖,認(rèn)為 y_1x_3 ,y_2x_3 滿??次多項式擬合的圖像特征,且函數(shù)對應(yīng)單調(diào)遞減:



其中 a_{ij}, b_{ij} 為需要求出的多項式系數(shù),i = 1, 2, 3, 4,j = 0, 1, 2,而且擬合曲線應(yīng)當(dāng)單調(diào)遞減。類似方法可得 y_1x_2y_2x_2 線性關(guān)系,



以及 y_1x_4, y_2x_4 的圖像特征也可用二次多項式來擬合:



y_1y_2 的取值受到以上因素的影響。所以可以得出關(guān)于 x_2, x_3, x_4 的兩個三元多項式擬合函數(shù)

,其中 c_1,c_2 為該多項式擬合模型中的常數(shù),也就是


4 模型求解

引?擬合?法中的最??乘法,使?多元線性回歸的?法求解該模型。令

,此時原函數(shù)變?yōu)槲逶€性擬合。

對于任意一個取值點 (x_{ij}, y_{kj}),其中 j = 0, ..., 3,i = 1, ..., 6k = 1, 2(已知四個城市對應(yīng)的數(shù)據(jù)點),有

,對于 y_1,也就是

此時令

,就有

兩側(cè)同時左乘 A^T,得

,整理得

,求出 c_1, a_{21}, a_{31}, a_{41}, a_{32}, a_{42}。

使用計算機求出的最后結(jié)果為

5 模型評價與改進

該模型可以根據(jù)已有的?然災(zāi)害數(shù)據(jù)較為準(zhǔn)確地求得財產(chǎn)損失與?員傷亡的程度,能夠給出范圍內(nèi)的合理值,可?于防災(zāi)減災(zāi)與災(zāi)害造成后果的快速估計與判斷。然?本模型利?的數(shù)據(jù)點較少,如果使??量的數(shù)據(jù)來進?擬合則會使模型更有說服?。

6 推廣與應(yīng)用:仙臺市

仙臺市是?本東北地?的區(qū)域中?,也是本題?已知條件中離震中最為接近的城市。從之前繪制的圖像和模型預(yù)估的情況來看,仙臺的情況并不容樂觀:常識上講,?個發(fā)達區(qū)域的經(jīng)濟發(fā)展?平越?,防災(zāi)減災(zāi)能?也應(yīng)該越強,這也是本?在模型建?時考慮 GDP(國民?產(chǎn)總值)作為防災(zāi)減災(zāi)因素的原因;但是由此看來,仙臺及?本東北地?城市仍然需要加強對于防災(zāi)減災(zāi)?采取的措施,例如削弱海嘯因素帶來的影響,可以體現(xiàn)在本模型中的擬合曲線更為平滑,?且海嘯是導(dǎo)致此次地震及連帶事故中?員傷亡與財產(chǎn)損失的?個主要的原因。

參考文獻

[1] 宮古市役所. 平成 23 年度 財政狀況資料集 [EB/OL]. 2011. http://www.city.miyako.iwate.jp/data/open/cnt/3/5677/1/H23zaiseijoukyou.pdf.
[2] 橫須賀市. 財政?書(平成 23 年度決算)[EB/OL]. 2012. http://www.city.yokosuka.kanagawa.jp/1610/finas/documents/hakusyo23.pdf.
[3] KANEMOTO Y. Metropolitan Employment Area (MEA) Data[EB/OL]. 2011. http://www.csis.u-tokyo.ac.jp/UEA/uea_data_e.htm.
[4] いわき市役所. 平成 23 年度決算 [EB/OL]. 2012. http://www.city.iwaki.lg.jp/www/contents/1001000003486/simple/H23_kessann.pdf.
[5] ?本気象庁. 國內(nèi)の津波観測施設(shè)で観測された津波の観測値 [EB/OL]. 2011. http://www.data.jma.go.jp/svd/eqev/data/2011_03_11_tohoku/tsunami_jp.pdf.
[6] ?本気象庁. 気象庁|津波観測點(東北地?)[EB/OL]. 2017. http://www.data.jma.go.jp/svd/eqev/data/tsunamimap/.
[7] 宮古市役所. The Great East Japan Earthquake and Tsunami Records of Miyako City[EB/OL]. 2015. http://www.city.miyako.iwate.jp/data/open/cnt/3/5971/1/records_of_miyako_city. pdf.
[8] 仙臺市役所. 東?本?震災(zāi)における本市の被害狀況等 [EB/OL]. 2017. https://www.city.sendai.jp/okyutaisaku/shise/daishinsai/higai.html.
[9] いわき市役所. いわき市災(zāi)害対策本部週報 [EB/OL]. 2015. http://www.city.iwaki.lg.jp/www/contents/1449132951986/simple/higai0524.pdf.
[10] 橫須賀市. 東?本?震災(zāi)関連情報 [EB/OL]. 2011. http://www.city.yokosuka.kanagawa.jp/shinsai311/index.html.
[11] NASA. Japan’s Coastline Before and After the Tsunami[EB/OL]. 2011. https://www.nasa.gov/multimedia/imagegallery/image_feature_1893.html.
[12] 傅再揚, 危福泉, 林巖釗. 福建地震災(zāi)害損失計算分析與思考 [J]. 災(zāi)害學(xué), 2007, 22(1) : 90 – 93.
[13] PAPADOPOULOS G A, IMAMURA F. A proposal for a new tsunami intensity scale[C] // ITS 2001 proceedings. 2001 : 569 – 577.

附錄

A 程序源碼

帶有運?結(jié)果的源碼與部分互動界?可以通過 Jupyter Notebook 打開根?件夾中的 /j-note ?件 夾內(nèi)的 ipynb ?件來查看。

以下代碼均為 Python 語?(Python 3)。

import numpy as np
import matplotlib.pyplot as plt

import sklearn.linear_model
import sklearn.preprocessing

from pylab import *  
mpl.rcParams['font.sans-serif'] = ['SimSun'] # 在其他機器上可能需要修改字體名
mpl.rcParams['axes.unicode_minus'] = False
mpl.rcParams['savefig.dpi'] = 108

A.1 數(shù)據(jù)引入

# GDP、震中直線距離、沿岸海浪高度、震級
# x2, x3, x4, x1
miyako_x = np.array([5.19, 186.45, 8.5, 9.0]) # 宮古
iwaki_x = np.array([16.5905, 207.31, 6.51, 9.0]) # 磐城
yokosuka_x = np.array([12.2882, 423.28, 2.06, 9.0]) # 橫須賀
sendai_x = np.array([61.7, 176.75, 8.6, 9.0]) # 仙臺

matrix_x = np.array([miyako_x, iwaki_x, yokosuka_x, sendai_x])

# 人員傷亡、財產(chǎn)損失
miyako_y = np.array([611, 22,4775])
iwaki_y = np.array([466, 0.1478])
yokosuka_y = np.array([0, 0.92])
sendai_y = np.array([904, 119.9022])

matrix_y = np.array([miyako_y, iwaki_y, yokosuka_y, sendai_y])

A.2 散點圖繪制

def draw_scatter_pic(x, y, description, x_label, y_label):
    """
    繪制散點圖的(統(tǒng)一方式)函數(shù)
    """
    fig = plt.figure(dpi=600)
    ax1 = fig.add_subplot(111)
    ax1.set_title(description)  
    plt.xlabel(x_label)
    plt.ylabel(y_label)
    ax1.scatter(x, y, c = 'r', marker = 'o')
    # plt.legend('x1')
    plt.show()

# x_gdp = np.array([miyako_x[0], iwaki_x[0], yokosuka_x[0], sendai_x[0]])
x_gdp = matrix_x[:, 0:1]
y_person = np.array([miyako_y[0], iwaki_y[0], yokosuka_y[0], sendai_y[0]])

draw_scatter_pic(x_gdp, y_person, '散點圖:人員傷亡與 GDP', 'GDP', '人員傷亡')

x_distance = np.array([miyako_x[1], iwaki_x[1], yokosuka_x[1], sendai_x[1]])

# fig = plt.figure(dpi=600)
# ax1 = fig.add_subplot(111)
# ax1.set_title('散點圖:震中直線距離與傷亡人數(shù)')
# plt.xlabel('直線距離')
# plt.ylabel('人員傷亡')
# ax1.scatter(x_distance, y_person, c='r', marker='o')
# plt.show()

draw_scatter_pic(x_distance, y_person, '散點圖:震中直線距離與傷亡人數(shù)', '直線距離', '人員傷亡')

x_tsunami_height = np.array([miyako_x[2], iwaki_x[2], yokosuka_x[2], sendai_x[2]])

fig = plt.figure(dpi=600)
ax1 = fig.add_subplot(111)
ax1.set_title('散點圖:沿岸海浪高度與傷亡人數(shù)')
plt.xlabel('海浪高度')
plt.ylabel('人員傷亡')
ax1.scatter(x_tsunami_height, y_person, c='r', marker='o')
plt.show()

y_loss_economy = y_person = np.array([miyako_y[1], iwaki_y[1], yokosuka_y[1], sendai_y[1]])

draw_scatter_pic(x_gdp, y_loss_economy, '散點圖:GDP 與經(jīng)濟損失', 'GDP', '經(jīng)濟損失')

draw_scatter_pic(x_distance, y_loss_economy, '散點圖:震中直線距離與經(jīng)濟損失', '直線距離', '經(jīng)濟損失')

draw_scatter_pic(x_tsunami_height, y_loss_economy, '散點圖:沿岸海浪高度與經(jīng)濟損失', '海浪高度', '經(jīng)濟損失')

miyako_x_extended = np.array([1, miyako_x[0], miyako_x[1], miyako_x[2], miyako_x[1] * miyako_x[1], miyako_x[2] * miyako_x[2]])
iwaki_x_extended = np.array([1, iwaki_x[0], iwaki_x[1], iwaki_x[2], iwaki_x[1] * iwaki_x[1], iwaki_x[2] * iwaki_x[2]])
yokosuka_x_extended = np.array([1, yokosuka_x[0], yokosuka_x[1], yokosuka_x[2], yokosuka_x[1] * yokosuka_x[1], yokosuka_x[2] * yokosuka_x[2]])
sendai_x_extended = np.array([1, sendai_x[0], sendai_x[1], sendai_x[2], sendai_x[1] * sendai_x[1], sendai_x[2] * sendai_x[2]])

np_x = np.array([miyako_x_extended, iwaki_x_extended, yokosuka_x_extended, sendai_x_extended])
np_y = np.array([miyako_y[0], iwaki_y[0], yokosuka_y[0], sendai_y[0]])

A = np.matmul(np.linalg.inv(np.matmul(np.transpose(np_x), np_x)), np.matmul(np.transpose(np_x), np_y))

print(A)

np_y = np.array([miyako_y[1], iwaki_y[1], yokosuka_y[1], sendai_y[1]])

B = np.matmul(np.linalg.inv(np.matmul(np.transpose(np_x), np_x)), np.matmul(np.transpose(np_x), np_y))

print(B)

B 關(guān)于數(shù)據(jù)及其來源的說明

本?使?的所有數(shù)據(jù)均來源于各城市政府官?或其他學(xué)者分析報告,在參考?獻中都已經(jīng)注明。然?數(shù)據(jù)中還有?些不夠準(zhǔn)確之處:

B.1 概念理解

很多數(shù)據(jù)載體(?頁、報表等)只提供??版,故依據(jù)機器翻譯,數(shù)據(jù)理解上可能存在部分出?。
有些城市不提供 GDP 的精確數(shù)據(jù),只提供了總收?、總?出。模型中的這部分?jǐn)?shù)據(jù)根據(jù)國際通?的 GDP 計算?式計算得出。

B.2 橫須賀市

橫須賀市政府沒有說明有任何?員傷亡情況(參考?獻 10),擬合過程中暫計為 0。

B.3 仙臺市

仙臺市的?些災(zāi)難結(jié)果數(shù)據(jù)(?員傷亡、財產(chǎn)損失)?較違背常理,在第六節(jié)針對仙臺的分析中已提及。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 回想2011年3月11日的“3·11日本大地震(東日本大地震/ひがしにほんだいしんさい)”距離今天已經(jīng)快6年的時間...
    袁小肚閱讀 996評論 8 12
  • 藝術(shù)是什么?你說:是詩,是歌。 止乎此耳?我說:還有舞。 如今國內(nèi)大大小小的廣場,一到夜晚,必定是被大媽大爺們占據(jù)...
    文君1閱讀 833評論 24 9
  • 我第一眼就看上了他!我要上了他!在大學(xué)開學(xué)的第一天,我的后四年的目標(biāo)竟成了這個! 他穿著有點寬松的襯衫,有點泛舊的...
    渠梁雨閱讀 412評論 0 0
  • 關(guān)注了維安記不知不覺也有一年的時間了,每個毫不相干的文字卻被思想左右著變得妙趣橫生,引人深思。"飛鳥與島"在三月末...
    龍貓的鄰居閱讀 499評論 0 0
  • 前幾天進入低谷期,感覺整個人都不好了,于是到網(wǎng)上找各種心靈雞湯來安慰自己。于是有幸目睹了一件事情的發(fā)生。 網(wǎng)上有一...
    我以前是學(xué)渣閱讀 261評論 0 0

友情鏈接更多精彩內(nèi)容