Chƣơng 1 : TỔNG QUAN
2.2. Qui trình dựbáo động đất theo mơ hình thống kê
Nhƣ vậy, dựa trên cơ sở lý thuyết về cách tiếp cận, phƣơng pháp nghiên cứu và các đặc điểm của mơ hình thống kê nhƣ đã trình bày ở trên, có thể biểu diễn một cách tóm lƣợc các bƣớc cơ bản của qui trình dự báo động đất theo mơ hình thống kê nhƣ sau:
1. Thành lập danh mục động đất (DMĐĐ) chứa TS, MS, S, S(s=1,2,…,n) đối với một vùng nguy hiểm động đất S.
2. Tách các nhóm tiền chấn và dƣ chấn khỏi DMĐĐ.
3. Chọn vùng nghiên cứu S giới hạn bởi các tọa độ nhƣ sau: (hình 2.2) S{ , | 0 1 ( E) 2 , 0 1 ( N) 2 }
1 0 2 1 2 0 0 S ........ ........ Hình 1
Trong tiểu vùng không lớn: 2 – 0 = 0 – 1 = ∆ φ2 – φ0 = φ0 – φ1 = ∆
( ∆=0.5 - 1.5)
4. Thành lập danh mục động đất độc lập (DMĐĐĐL) (đã loại tiền chấn, dƣ chấn) và lọc DMĐĐĐL theo các điều kiện:
1 s 2 & 1 s 2 & T0 Ts Tk & M0Ms
Với T T0, K: các ranh giới đối với ngày xảy ra động đất thuộc DMĐĐ.
M0: ranh giới dƣới của magnitude của động đất trong khoảng thời gian từ
0
T đến TK. M không nhỏ hơnM0 (M M0).
Tập hợp các trận động đất này đƣợc gọi là tập hợp chạy. Sơ đồ miêu tả chuỗi các sự kiện trong DMĐĐ và các khái niệm dùng trong thuật toán đƣợc trình bày trên hình 2.3.
0 T 1 t t2 ti ti1 tn1 tn top TK tpr t 1 t ti tn1 tpr
Hình 2.3 Sơ đồ miêu tả chuỗi các sự kiện trong DMĐĐ và các khái niệm dùng trong thuật toán
- Sự kiện cuối cùng trong tập hợp gọi là sự kiện tựa, ngày xảy ra nó sẽ kí hiệu là top tn.
- Động đất xảy ra ngay sau sự kiện tựa là động đất dự báo, xảy ra ở thời điểm
k
T với M M0. Tất cả các sự kiện của tập hợp chạy sẽ có M M0.
Chú thích: M0 là ranh giới dưới của Magnitude, là Magnitude tối thiểu được sử dụng trong danh mục động đất.
Nhiệm vụ của mơ hình là đánh giá các đại lƣợng Tprvà Mpr. Để Làm điều đó cần:
5. Thành lập chuỗi các khoảng thời gian ngẫu nhiên: ti ti1ti và các số gia 1
i i i
m m m
giữa các trận động đất liền nhau trong phép chọn.
6. Xác định trên khoảng thời gian đã chọn ([T0, TK]) các khoảng thời gian chạy {ti,ti1 } với i=1,2,...n, sao cho trong mỗi khoảng có từ 10 đến 20 sự kiện.
Tính tsi theo cơng thức: 1
2
i i
si
t t
t
7. Theo công thức tốn học thống kê tìm: - Kỳ vọng tốn học MO(ti); MO(mi)
8. Xác định ngày và magnitude của động đất dự báo tiếp sau động đất tựa theo các công thức sau:. ( ) pr op op T t MO t T ; ( ) pr op op m m MO m T ; ( ) pr op t t T ; ( ) pr op m m T ;
Thay cho các giá trị tpr và mpr với tƣ cách đặc trƣng cho độ chính
xác dự báo có thể sử dụng các ranh giới sau:
minpr pr min{ t, t -t }pr op t t minpr pr min{ , m -m }pr op m m m maxpr pr t t t max pr pr m m m t
và m là một nửa giá trị độ lớn của các khoảng tin cậy đối với các giá trị ngẫu nhiên t và m.
Khi cho trƣớc xác suất Pg và qui luật phân bố thƣờng với các giá trị ngẫu nhiên ∆t và ∆m dễ dàng tính đƣợc tpr và mpr .
9. Lập bản đồ dự báo thống kê động đất chứa họ các đƣờng đồng mức magnitude (mặt Mmax( , ) , Mmin( , ) ).
10. Thành lập danh mục các sự kiện dự báo chứa các tham số cơ bản sau đây của các sự kiện (ngày, tháng, năm, giờ, phút, giây, tọa độ địa lý (kinh độ, vĩ độ), độ lớn động đất (magnitude).
Nhƣ vậy, trên cơ sở cách tiếp cận mới tác giả sẽ tiến hành xây dựng thuật tốn và qui trình dự báo động đất theo mơ hình thống kê. Đây là một cách tiếp cận mới mang đặc trƣng thống kê. Có thể áp dụng phƣơng pháp này phối hợp với các cách tiếp cận khác mang đặc trƣng vật lý kiến tạo sẽ cho kết quả khả quan trong nghiên cứu dự báo động đất. Với thuật toán và sơ đồ khối đƣợc xây dựng, có thể thiết lập một chƣơng trình dự báo động đất bằng mơ hình thống kê với việc sử dụng các thủ thuật toán học cần thiết.
Chƣơng 3
THIẾT LẬP CHƢƠNG TRÌNH DỰ BÁO ĐỘNG ĐẤT THEO MƠ HÌNH THỐNG KÊ
3.1 . Thuật tốn và sơ đồ khối của chƣơng trình dự báo động đất theo mơ hình thống kê:
Dựa trên cơ sở lý thuyết của phƣơng pháp đã trình bày ở chƣơng 2, chúng tơi đã xây dựng thuật tốn của chƣơng trình dự báo động đất theo mơ hình thống kê gồm các bƣớc cơ bản nhƣ sau:
- Bước 1: - Tạo mảng "dd" là tập hợp các trận động đất có ngày trƣớc ngày topmax,
mỗi một phần tử trong mảng gồm có thơng tin về tọa độ, thời gian và magnitude của một trận động đất
- Tìm max min tọa độ của tất cả các trận động đất (φmax, φmin, λmax, λmin)
- Bước 2: Ứng với từng phần tử (trận động đất) trong mảng dd, gán giá trị hàng và
cột (y và x) trong vùng đƣợc chia theo kích thƣớc tiểu vùng dfi cho mỗi một đơn vị, tìm xmax, ymax
- Bước 3: Tạo mảng sotrantrongtieuvung [cột][hàng] là tập hợp ghi số lƣợng trận động đất trong các tiểu vùng có vị trí cột hàng x,y; Ví dụ tại x=2, y = 3 có 7 trận động đất thì sotrantrongtieuvung [2][3] = 7.
- Bước 4: Dựa vào mảng sotrantrongtieuvung, tạo đƣợc mảng tieuvung[x][y][i = 1 -
> n] với x, y là tọa độ tiểu vùng, n = số trận trong ơ x,y; Ví dụ tại lƣới tọa độ cột 3, hàng 2, có 5 trận động đất thì ta có tieuvung[3][2][i = 1 đến 5].
- Bước 5: Loại các tieuvung có số trận động đất trong nó nhỏ hơn nmin.
- Bước 6: Với các tiểu vùng còn lại, tạo mảng dubao[i = 1 -> n] với n là số tiểu
vùng thỏa mãn số trận động đất đạt đến nmin.
Ứng với mỗi tiểu vùng[x][y] thỏa mãn nmin, sẽ dự báo đƣợc một trận động đất với những tham số sau: tdb, tdbmin, tdbmax; mdb, mdbmin,mdbmax.
đại lƣợng dự đoán là Xdb, đại lƣợng dự đoán tối đa là Xmax, hay Xmin, đại lƣợng tƣơng ứng ở thời điểm tựa là Xop. Nhƣ vậy ta sẽ có :
Xdb = Xtựa + Mo(ΔXop) Xdbmax, min = Xdb ± δX
Chú thích:
- Mo là kỳ vọng tốn học (hay là giá trị trung bình)
- δX là một nửa giá trị độ lớn của các khoảng tin cậy đối với các giá trị ngẫu nhiên T, được xác định dựa theo hệ số % mong muốn đạt kết quả đúng của người sử dụng phần mềm. Để dễ hình dung có thể nhìn vào hình sau đây:
Hình 3.1: Đồ thị của hàm mật độ xác suất của phân phối chuẩn
(theo công thức 2.8)
Kết quả như trên đồ thị hình 3.1 là trường hợp riêng khi Xdb = 0, và khi người dùng chọn xác suất dự báo Pg = 68% giá trị X [Xdbmin,Xdbmax] thì δX = 1, tức là Xdbmax, min = Xdb ± δX = 0 ± 1 hay
Xdbmin = -1; Xdbmax =1.(với hàm phân phối chuẩn thì với δX=1 thì tương ứng với 68% xác suất phân bố trong khoảng từ [-δX, δX])(Chương 2, trang 26)
Trong trường hợp khi người dùng muốn chọn xác suất tin cậy Pg = 100% thì δX = ∞. Nghĩa là trong thực tế không thể đạt được độ tin cậy Pg = 100%. Đây là bản chất của phương pháp xác suất thống kê và cũng phù hợp với thực tế vì động đất là các sự kiện ngẫu nhiên. Cịn trên hình 3.1 đường phân bố chỉ là tiệm cận với trục hồnh từ 2 phía
- Bước 7: Kiểm tra mức độ đúng đắn của kết quả dự báo bằng cách lùi danh mục động đất về quá khứ để so sánh với các sự kiện đã thực xảy ra sau thời điểm Topmax. Với các bƣớc cơ bản trong thuật tốn đã trình bày ở trên, sơ đồ khối của chƣơng trình dự báo động đất theo mơ hình thống kê đã đƣợc xây dựng và đƣợc trình bày trên hình 3.2.
Hình 3.2. Sơ đồ khối của chương trình dự báo động đất theo mơ hình thống kê Tạo mảng dd chứa các trận trƣớc ngày topmax dd[i].x = chuyểnhệtrục(dd[i].λ) dd[i].y = chuyểnhệtrục(dd[i].φ)
với hệ trục x,y là các số nguyên, điểm trên cùng bên trái có giá trị (0,0), bước
của x,y là dφ được chọn bởi người sử dụng phần mềm
i:=1 → n
Tạo mảng sốtrậntrongtiểuvùng[x][y] chứa số lƣợng các trận động đất trong ô (x,y)
Tạo mảng tiểuvùng[x][y][i] chứa các trận động đất thứ tự i=1-> n trong tiểuvùng (x,y)
j:=1 →số tiểu vùng
sốôsửdụng = số tiểu vùng
Nếu sốtrậntrongtiểuvùng(j) <nmin (nmin được người
dùng chọn)
→ sốôsửdụng = sốôsửdụng-1
Tạo mảng dựbáo[i] với i [1, sốôsửdụng]
j:=1 →số tiểu vùng
sốôsửdụng = số tiểu vùng
Nếu sốtrậntrongtiểuvùng(j) <nmin
→ quy đổi từ j → i dựbáo tính: dựbáo[i].tdb, tdbmin, tdbmax; mdb, mdbmin,mdbmax db = tựa + pr max,min= db ± k . 2 (db) với kđƣợc tính theo phân bố Gauss
Kết thúc và kiểm tra kết quả so với các trận t > topmax
xuất ra file danhmucTK.xml
1 3 4 5 6 7 2
3.2. Ngơn ngữ lập trình
Trong quá trình xây dựng chƣơng trình dƣ̣ b áo động đất theo mơ hình thống kê, tác giả sẽ sử dụng ngơn ngữ lập trình C#, một trong những ngôn ngữ phổ biến nhất hiện nay. Ngơn ngữ C# có một số các ƣu nhƣợc điểm sau:
- Ƣu điểm:
+ Là ngôn ngữ bậc cao, đƣợc chạy trên nền tảng .net framework, hiện nay càng ngày càng đƣợc ứng dụng rộng rãi do dễ viết, mạnh, tính ứng dụng cao, giao diện đồ họa đa dạng, và liên tục đƣợc phát triển với tính kế thừa những điểm ƣu việt trƣớc đó.
+ Rất nhiều lập trình viên đƣợc học về ngơn ngữ này, do đó sử dụng C# sẽ có ƣu thế cho việc chuyển giao, phát triển và ứng dụng theo nhóm tập thể (chứ khơng phải chỉ sử dụng và phát triển trong phạm vi hẹp, đơn lẻ).
+ Là ngôn ngữ hƣớng đối tƣợng, các câu lệnh hầu hết đƣợc tổ chức theo các lớp (class), dễ đọc, dễ hiểu và rất chặt chẽ.
+ Tuy không phải ngôn ngữ mạnh về toán nhƣ Matlab, nhƣng bù lại ngôn ngữ
C# có cơ chế kiểm sốt lỗi rất tốt, ngồi ra, khi khơng cần xử lý những phép tốn
ma trận, những ngơn ngữ nhƣ Matlab sẽ gặp nhiều bất tiện, dễ gây nhầm lẫn khi lập trình, và rất khó dị lỗi, do kiểu dữ liệu của Matlab quá đa dạng và định nghĩa thiếu chặt chẽ, do đó, trong trƣờng hợp này thì những ngơn ngữ kiểu C# sẽ là lựa chọn
hợp lý hơn.
- Nhƣợc điểm:
+ C# không phải là ngôn ngữ chuyên dùng cho khoa học, do đó sẽ phải mất
nhiều cơng để lập trình hơn trong các trƣờng hợp phải xử lý nhiều với số phức, hay ma trận, v.v…
+ Vì C# là ngơn ngữ bậc cao, nên sẽ chậm hơn một số ngơn ngữ khác, ví dụ nhƣ C++ hoặc các ngôn ngữ khác theo nền tảng của ngôn ngữ C++ nhƣ Matlab v.v…Tuy nhiên, những nhƣợc điểm của ngôn ngữ C# chỉ ảnh hƣởng đến ngƣời lập trình, chứ khơng gây khó khăn cho ngƣời sử dụng, và các nhƣợc điểm này có thể khắc phục đƣợc vì C# có thể kết nối với các hàm do Matlab tạo ra. Trong trƣờng
hợp giải quyết nhiệm vụ cụ thể trên đây, thì ngơn ngữ C# hồn tồn khơng gặp trở ngại nào phải cần đến sự hỗ trợ của các ngôn ngữ khác. Đó là lý do ngơn ngữ C#
đƣợc chọn để viết chƣơng trình.
3.3. Chƣơng trình:
Trên cơ sở sơ đồ khối của chƣơng trình với các bƣớc trong thuật tốn đã đƣợc xây dựng, chƣơng trình đƣợc thiết lập gồm 3 bƣớc với các nội dung chính nhƣ sau: Chuẩn bị dữ liệu đầu vào; xử lý dữ liệu; xuất kết quả ra màn hình và lƣu kết quả vào ổ cứng.
Bƣớc 1: Chuẩn bị dữ liệu đầu vào.
Dữ liệu đầu vào chính là danh mục các trận động đất đối với khu vực cần dự báo. Danh mục này đã đƣợc loại bỏ các tiền chấn, dƣ chấn. Danh mục chứa các thông tin về thời điểm xảy ra trận động đất, tọa độ chấn tâm, magnitude của các trận động đất đó.
Một số dữ liệu để tùy biến tham số dùng cho việc xử lý tính tốn. - Dfi: là kích thƣớc cửa sổ của tiểu vùng S tính theo đơn vị độ (1 độ bằng 111km), các tiểu vùng này đƣợc chia ra tùy theo đặc trƣng và qui mô của khu vực nghiên cứu. Tiểu vùng không đƣợc quá lớn để tránh bị chứa các trận động đất không liên quan đến tính chất hoạt động của khu vực đó, cũng khơng nên quá nhỏ dẫn đến thiếu dữ liệu dự báo.
- Số sự kiện tối thiểu phục vụ dự báo: là số lƣợng tối thiểu các trận động đất xuất hiện trong 1 tiểu vùng, nếu một tiểu vùng chƣa đạt đủ số trận động đất đƣợc điền ở tiểu vùng này, tiểu vùng đó sẽ khơng đƣợc dự báo.
- Topmax: thời gian tựa cực đại:
Trƣớc hết cần giải thích khái niệm về thời gian tựa: đó là thời điểm xuất hiện một sự kiện sau cùng trong danh mục động đất. Các sự kiện xuất hiện sau thời điểm đó sẽ là sự kiện dự báo có khả năng xảy ra trong tƣơng lai. Trong thực tế nghiên cứu dự báo động đất, thời gian tựa luôn là thời điểm hiện tại. Nhƣng việc dự báo động đất chỉ mang tính xác suất, vì nó là dự báo các hiện tƣợng xảy ra có tính chất ngẫu nhiên, khó có thể lƣờng trƣớc. Vì thế, cần có nhiều lần thử nghiệm phƣơng pháp dự
báo bằng cách lùi danh mục động đất về quá khứ để so sánh với các sự kiện đã từng thực sự xảy ra sau thời điểm tựa đó nhằm kiểm tra và đánh giá mức độ đúng đắn của dự báo.
Sau khi chuẩn bị dữ liệu, sẽ nạp vào chƣơng trình nhờ chức năng “Nhập” trên giao diện của chƣơng trình (Hình 3.3).
Bƣớc 2: Xử lý dữ liệu:
Bản chất của việc xử lý dữ liệu đã đƣợc mô tả khái quát ở mục “Thuật toán”. Chi tiết của việc xử lý dữ liệu sẽ đƣợc thể hiện trong phần code của chƣơng trình.
Sau khi nhập dữ liệu vào chƣơng trình, chƣơng trình ở trang thái sẵn sàng chờ xử lý (giao diện trên hình 2). Thực hiện xử lý số liệu nhờ chức năng “xử lý” trên giao diện chƣơng trình (Hình 3.3).
Bƣớc 3: Xuất kết quả ra.
Sau khi chƣơng trình đã xử lý xong, sử dụng chức năng “xuất dạng bảng” để hiển thị các kết quả ở dạng bảng (Hình 3.4). Ngồi ra, cũng có thể thống kê các kết quả dự báo bằng cách nhấn nút “thống kê” trên giao diện (Hình 3.4)
Kết quả xử lý của chƣơng trình sẽ đƣợc hiển thị ra màn hình theo dạng bảng số liệu (Hình 3.4). Có thể copy thẳng bảng này vào excel để thực hiện các thao tác thống kê tùy mục đích nghiên cứu khác nhau dựa theo các tính năng của Excel. Bảng kết quả bao gồm các thông tin về tọa độ của tiểu vùng chứa trận động đất dự báo, Dfi đƣợc sử dụng, tọa độ trận động đất tựa (sự kiện tựa), thời gian tựa, thời
điểm xảy ra sự kiện dự báo và giới hạn muộn nhất, giới hạn sớm nhất của thời điểm đó (trận động đất được dự báo sẽ xảy ra trong phạm vi giới hạn (từ thời điểm sớm
nhất đến muộn nhất), phạm vi đó được xác định bởi tỷ lệ mong muốn đúng (tính bằng phần trăm) do người sử dụng phần mềm lựa chọn tùy theo yêu cầu của bài toán dự báo. Xác suất cực đại tương ứng với thời điểm giữa của giới hạn này, và đây chính là thời điểm dự báo).
3.4. Hƣớng dẫn sử dụng phần mềm:
Để làm việc với chƣơng trình cần chuẩn bị các loại dữ liệu chính sau đây :
Dữ liệu động đất nhập vào ở dạng bảng, gồm các hàng và các cột. Mỗi hàng ứng với một trận động đất với các cột biểu diễn các tham số cơ bản sau đây của nó: