Luận văn Nghiên cứu ứng dụng công nghệ gen vận hành liên hồ chứa sông ba mùa lũ

Lời cảm ơn.1

MỤC LỤC.4

DANH MỤC HÌNH.6

DANH MỤC BẢNG.7

DANH MỤC CHỮ VIẾT TẮT .7

MỞ ĐẦU .8

CHƯƠNG I: TỔNG QUAN .10

1.1. Tổng quan về các phƯơng pháp vận hành hồ chứa.10

1.1.1.Phương pháp mô phỏng.10

1.1.2. Phương pháp tối ưu hóa .12

1.1.3. Nguyên cứu về giải bài toán tối ưu hóa bằng thuật toán di truyền (GA).15

1.1.4. Tổng quan về các nghiên cứu vận hành liên hồ chứa sông Ba. .17

1.2. Điều kiện tự nhiên và kinh tế xã hội lƯu vực sông Ba.20

1.2.1. Điều kiện tự nhiên.20

1.2.2. Điều kiện kinh tế xã hội .28

CHƯƠNG II: CƠ SỞ L THU ẾT THUẬT TOÁN DI TRU ỀN GA .31

2.1. Gi i thiệu phƯơng pháp giải GA.31

2.2. Các kỹ thuật trong giải thuật di truyền GA [32] .32

2.2.1. Kỹ thuật mã hóa.33

2.2.2. Khởi tạo quần thể .34

2.2.3. Hàm thích nghi .34

2.2.4. Phép chọn lọc .35

2.2.5. Phép lai ghép .35

2.2.6. Phép đột biến .37

2.3. Tổng quan về Matlab .38

2.3.1. Khái niệm về Matlab.38

pdf90 trang | Chia sẻ: mimhthuy20 | Lượt xem: 549 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Luận văn Nghiên cứu ứng dụng công nghệ gen vận hành liên hồ chứa sông ba mùa lũ, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
trên nguồn lực sẵn có và nguồn lực bên ngoài. Đảm bảo 90% nước sinh hoạt và công nghiệp vào năm 2015 cho 3 thị xã An Khê và EaKa (mới thành lập) và thành phố Tuy Hoà và 100% vào năm 2020. Còn lại các thị trấn đảm bảo cấp nước sinh hoạt đạt 100% vào năm 2015. Thông qua chương trình nước sạch nông thôn phấn đấu đảm bảo 80% dân số sử dụng nước sạch vào năm 2015 và 100% vào năm 2020, đặc biệt quan tâm vùng sâu, vùng xa, vùng có đồng bào dân tộc ít người Đến năm 2020, tổng lượng nước yêu cầu : 3656,8. 106 m3, trong đó: nước cho nông nghiệp và chăn nuôi: 2812,5.106 m3, chiếm 77 % tổng lượng nước yêu cầu; nước cho nuôi trồng thuỷ sản: 52.106 m3, chiếm 1%; Nước cho công nghiệp, dân sinh: 164,1.106 m 3, chiếm 4%; nước môi trường, duy trì dòng chảy: 627,8.106 m3, chiếm 17 %. 31 CHƢƠNG II: CƠ SỞ L THU ẾT THUẬT TOÁN DI TRU ỀN GA 2.1. Gi i thiệu phƣơng pháp giải GA Trong quá trình phát triển của loài người, con người luôn không ngừng cố gắng tìm cách điều khiển và cải tạo thiên nhiên phục vụ cho cuộc sống của mình. Điều này được thể hiện qua việc loài người không ngừng tìm kiếm phát minh ra các loại máy móc thay thế cho lao động. Quá trình này có thể chia làm hai giai đoạn. Đầu tiên là giai đoạn sử dụng các công cụ tính toán và logic truyền thống (Hard computing) đưa vào máy móc tính chính xác và nhanh chóng trong quá trình thi hành. Ở giai đoạn tiếp theo, với mong muốn thêm vào đó tính thông minh và khả năng quyết định mềm dẻo trong các bài toán học từ mẫu dữ liệu ít ỏi cho trước, người ta sử dụng công cụ tính toán mềm (Soft Computing) gồm 4 nội dung chính là: Fuzzy logic (FL), Neural Network (NN), Genetic Algorithm (GA), Support Vector Machines (SVM). Trong đó giải thuật di truyền có thể sử dụng độc lập hoặc là công cụ trợ giúp cho các lĩnh vực khác của Soft Computing nhờ ưu điểm trong tìm kiếm toàn cục. Giải thuật di truyền có xuất xứ từ học thuyết của Drawin về “Nguồn gốc của các giống loài” - Các giống loài đều có xu hướng gia tăng và mở rộng về số lượng. - Con cái thường đại diện cho cha mẹ nhưng không hoàn toàn giống cha mẹ. - Sự thay đổi nhỏ của con cái ảnh hưởng lớn đến cơ hội sống sót - Các các thể thích nghi hơn với môi trường mới có khả năng sống sót cao hơn (chọn lọc tự nhiên) Căn cứ vào học thuyết của Drawin, năm 1975, John Holland đã phát triển giải thuật di truyền . Việc sử dụng giải thuật di truyền có một số ưu điểm chính như: - Sử dụng cơ chế song song ẩn: Sử dụng nhiều cá thể đồng thời tiến hóa nên tránh khỏi cực trị địa phương; 32 - Dễ dàng thực hiện. Để giải quyết vấn đề mới chỉ cần thêm các nhiễm sắc thể mới và hàm thích nghi mới. Các phép toán di truyền vẫn giữ nguyên. Tuy nhiên, giải thuật di truyền cũng gặp một số khó khăn nhất định như: - Khó khăn trong việc chọn và thực hiện cách mã hóa nhiễm sắc thể và biểu diễn hàm thích nghi; - Thời gian tính toán lâu hơn so với các thuật toán khác. Để khắc phục nhược điểm này ngày nay các nhà khoa học đã kết hợp thuật toán với công cụ trợ giúp khác làm thuật toán nhanh hội tụ. Cụ thể tại Luận văn này tác giả đã kết hợp GA với một mô hình mô phỏng để rút ngắn thời gian tính toán của thuật toán di truyền. 2.2. Các kỹ thuật trong giải thuật di truyền GA [30] Các kỹ thuật trong giải thuật di truyền được thể hiện trong sơ đồ khối sau: 33 Hình 2. 1 Sơ đồ khối thuật toán di truyền 2.2.1. Kỹ thuật mã hóa Mã hóa trong giải thuật di truyền là biểu diễn các nhiễm sắc thể chứa thông tin cho lời giải. Một số cách mã hóa được sử dụng là: Mã hóa nhị phân - Binary coding, mã hóa k mức - K-nary coding, mã hóa theo số thực- Real-number coding. Quá trình mã hóa có thể biểu diễn các đầu vào thành các dãy nhiễm sắc thể theo mảng một chiều hoặc nhiều chiều. Việc lựa chọn phương thức mã hóa tùy thuộc vào bài toán giải quyết. Thông thường hay dùng mã hóa nhị phân .Ví dụ dưới đây mô tả cách mã hóa các số No Yes 34 thực thành các bit nhị phân: VD: Cần mã hóa biến z  [x,y]  bằng một tập các bit nhị phân {a1,,aL} {0,1}L Ánh xạ : {0,1}L  [x,y] sẽ được xác định như sau: a1,....aL) = x +       1 0 )2..( 12 L j j jLL a xy ],[ yx Như vậy, theo cách mã hóa trên thì chỉ 2L giá trị đầu ra được xác định. L phụ thuộc vào độ chính xác của lời giải (chính xác đến bao nhiêu chữ số thập phân),độ chính xác càng cao thì nhiễm sắc thể có độ dài càng lớn và sự tiến hóa càng chậm. 2.2.2. Khởi tạo quần thể Khi chọn được cách mã hoá phù hợp, người ta tiến hành mã hoá các biến đầu vào thành các cá thể (nhiễm sắc thể), tập hợp các nhiễm sắc thể này sẽ tạo thành một quần thể. Việc khởi tạo có thể bắt đầu với một quần thể bao gồm các cá thể được tạo ra ngẫu nhiên hoặc sử dụng từ: - Một quần thể cũ được lưu lại từ trước; - Một tập các lời giải cung cấp bởi các chuyên gia; - Một tập các lời giải cung cấp bởi các thuật toán tìm kiếm khác, đây là phương pháp khởi tạo quần thể ban đầu mà Luận văn sử dụng. 2.2.3. Hàm mục tiêu Sau khi khởi tạo quần thể hoặc ở thời điểm các thế hệ mới được tạo thành, chúng ta phải sử dụng hàm mục tiêu để đánh giá độ thích nghi của mỗi nhiễm sắc thể nhằm có cơ sở cho việc lựa chọn bố mẹ cho các phép lai tạo và đột biến. Như vậy, mục đích của hàm mục tiêu là: - Lựa chọn cá thể cha mẹ phù hợp; - Kiểm tra sự hội tụ của giải thuật; - Chọn các cá thể bị loại bỏ; - Đảm bảo sự phân bố hợp lý của các quần thể. 35 Để đảm bảo sự phân bố hợp lý của các quần thể, thuận tiện cho giải thuật tìm kiếm người ta sử dụng các phương pháp xác định độ thích nghi như sau: - Fitness scaling – Xác định theo tỷ lệ thích nghi; - Fitness windowing – Xác định theo phương pháp cửa sổ thích nghi; - Fitness ranking – xác định theo thứ hạng thích nghi. 2.2.4. Phép chọn lọc Ở mỗi một thế hệ, dựa trên giá trị của hàm mục tiêu, các cá thể có độ thích nghi tốt sẽ được chọn lọc để tạo thành quần thể ở thế hệ mới và được chuẩn bị cho việc thực hiện các phép toán lai tạo và đột biến sau này. Mục đích của phép chọn lọc là tập trung sự tìm kiếm trên miền “hứa hẹn”. Phép chọn lọc bắt nguồn từ học thuyết của Darwin về “Sự sống sót của các cá thể thích nghi nhất ” Một số phép chọn lọc thường được sử dụng bao gồm: - Roulette wheel Selection - Chọn lọc ngầu nhiên theo bánh xe Roulette, - Fitness Proportionate Selection- Chọn lọc theo tỷ lệ thích nghi; - Linear Ranking Selection- Chọn lọc theo thứ hạng tuyến tính; - Local Tournament Selection- Chọn lọc theo cạnh tranh cục bộ. 2.2.5. Phép lai ghép Trong giải thuật di truyền, số lượng các thể trong quần thể ở mỗi thế hệ là không đổi. Phép chọn lọc đã chọn ra một số cá thể có độ thích nghi cao và loại bỏ đi một số cá thể thích nghi thấp. Sự thiếu hụt của số lượng quần thể khi mất đi các cá thể thích nghi thấp sẽ được bổ xung bằng việc lấy các cá thể có độ thích nghi cao là thế hệ cha mẹ, tạo ra các thế hệ con cái bằng phép lai ghép và đột biến trên các cá thể thích nghi cao này. Kết quả là thế hệ mới được hình thành giữ nguyên về số lượng bao gồm các cá thể thích nghi cao và con cái của chúng qua các phép lai ghép và đột biến. Phép lai ghép là tạo ra các nhiễm sắc thể con cái (offspring) từ các nhiễm sắc thể cha mẹ (parent) được lựa chọn. Bao gồm các phương pháp lai ghép sau: 36 - Lai ghép một vị trí: Lựa chọn một cặp nhiễm sắc thể cha mẹ. Chọn ngẫu nhiên một vị trí trên chuỗi nhiễm sắc thể và tiến hành ghép phần đầu của nhiễm sắc thể này với phần đuôi của nhiễm sắc thể kia và ngược lại . Vị trí lai ghép Cha 1 4 3 9 7 1 2 5 6 8 Con 1 3 8 6 9 4 5 2 1 7 Cha 2 3 8 6 9 4 5 2 1 7 Con 2 4 3 9 7 1 5 2 1 7 Lai ghép cho chu i số nguyên hoán vị Vị trí lai ghép Cha 1 0 0 1 0 0 1 0 0 1 Con 1 1 0 0 1 0 0 0 0 1 Cha 2 1 0 0 1 0 0 1 0 0 Con 2 0 0 1 0 0 1 1 0 0 Lai ghép cho chu i nhị phân - Lai ghép hai vị trí: Chọn ngẫu nhiên hai vị trí trên chuỗi nhiễm sắc thể cha thứ I sau đó thay thế các gen nằm giữa hai vị trí này bằng các gen tương ứng của cá thể cha thứ II để tạo thành cá thể con. Vị trí lai ghép Cha 1 Con Cha 2 - Lai ghép ngẫu nhiên : Số lượng và vị trí lai ghép được chọn ngẫu nhiên - Lai ghép theo thuật toán: tạo ra các nhiễm sắc thể con cái từ nhiễm sắc thể bố mẹ dựa trên một thuật toán xác định. 7 8 9 3 4 6 2 5 1 7 8 3 9 4 6 2 5 1 3 5 8 2 1 7 9 4 6 37 2.2.6. Phép đột biến Đột biến là thay đổi các bit trên chuỗi nhiễm sắc thể một cách ngẫu nhiên để tạo tính đa dạng. Phép đột biến được điều khiển bởi xác xuất đột biến, Pm. Nếu không đột biến, giải thuật chỉ tìm kiếm tại không gian khởi tạo.Tuy nhiên, nếu Pm quá lớn, quá trình tìm kiếm trở thành tìm kiếm ngẫu nhiên. Ta xét một số phép đột biến sau: a. Tạo đột biến hai gen gần nhau: Hai cá thể gần nhau thì hoán vị cho nhau để tạo sự biến đổi hay đột biến: * * Đột biến 4 3 9 7 1 2 5 6 8 4 9 3 7 1 2 5 6 8 b. Tạo đột biến hai gen cách xa nhau Hai cá thể cách xa nhau thì được hoán vị cho nhau để tạo sự biến đổi: * * Đột biến 4 3 9 7 1 2 5 6 8 4 5 9 7 1 2 3 6 8 c. Tạo đột biến ba gen cách xa nhau Ba cá thể cách xa nhau sẽ hoán vị cho nhau để tạo nên sự biến đổi – trong cách đột biến này thì có nhiều cá thể mới tạo thành một cách ngẫu nhiên: * * * Đột biến 7 8 9 3 4 6 5 2 1 7 5 9 3 8 6 4 2 1 7 4 9 3 5 6 8 2 1 7 5 9 3 4 6 8 2 1 7 8 9 3 5 6 4 2 1 7 4 9 3 8 6 5 2 1 d. Tạo đột biến bằng cách dịch chuyển Chọn ngẫu nhiên hai cá thể ,sau đó ch n một gen vào vị trí của gen còn lại để tạo sự biến đổi: 38 * * Đột biến 7 8 9 3 4 6 5 2 1 7 5 8 9 3 4 6 2 1 7 9 3 4 6 5 8 2 1 e. Tạo đột biến bằng cách đảo ngược chu i con Chọn ngẫu nhiên một dãy con gồm các gen của một cá thể cha thông qua việc chọn hai gen tùy ý cách xa nhau. Sau đó đảo ngược dãy gồm các gen này để tạo sự đột biến: * * Đột biến 7 8 9 3 4 6 5 2 1 7 5 6 4 3 9 8 2 1 Trên đây là một số kỹ thuật được sử dụng trong giải thuật di truyền. Trong đó, việc xác định kích thước quần thể ban đầu, xác xuất lai ghép, xác xuất đột biến là rất quan trọng, ảnh hưởng nhiều đến kết quả của giải thuật. Việc xác định các thông số này tùy theo từng đặc điểm của mỗi bài toán cụ thể. 2.3. Tổng quan về Matlab 2.3.1. Khái niệm về Matlab Matlab là một ngôn ngữ lập trình thực hành bậc cao được sử dụng để giải các bài toán về kỹ thuật. Matlab tích hợp được việc tính toán, thể hiện kết quả, cho phép lập trình, giao diện làm việc rất dễ dàng cho người sử dụng. Dữ liệu cùng với thư viện được lập trình sẵn cho phép người sử dụng có thể có được những ứng dụng sau đây. • Sử dụng các hàm có sẵn trong thư viện, các phép tính toán học thông thường • Cho phép lập trình tạo ra những ứng dụng mới. • Cho phép mô phỏng các mô hình thực tế. • Phân tích, khảo sát và hiển thị dữ liệu. • Với phần mềm đồ hoạ cực mạnh • Cho phép phát triển, giao tiếp với một số phần mềm khác như C++, Fortran. 39 2.3.2. Tổng quan về cấu trúc dữ liệu của MATLAB, các ứng dụng Matlab là một hệ thống tương giao, các phần tử dữ liệu là một mảng( mảng này không đòi hỏi về kích thước). Chúng cho phép giải quyết các vấn đề liên quan đến lập trình bằng máy tính, đặc biệt sử dụng các phép tính về ma trận hay véc tơ và có thể sử dụng ngôn ngữ C hoặc Fortran lập trình rồi thực hiện ứng dụng lập trình đó bằng các câu lệnh gọi từ MATLAB. MATLAB được viết tắt từ chữ matrix laboratory tức là thư viện về ma trận, từ đó phần mềm MATLAB được viết nhằm cung cấp cho việc truy cập vào phần mềm ma trận một cách dễ dàng, phần mềm ma trận này được phát triển bởi các công trình Linpack và Eispack. Ngày nay MATLAB được phát triển bởi Lapack và Artpack tạo nên một nghệ thuật phần mềm cho ma trận. 2.4. Thuật toán di truyền GA trong Matlab Có hai cách có thể sử dụng thuật toán di truyền trong Matlab: - Gọi các chức năng giải thuật toán di truyền từ command line (dòng lệnh); - Sử dụng Genetic Algorithm Tool (hộp công cụ): Một giao diện ứng dụng đồ họa làm công cụ cho thuật toán di truyền, cho phép giải trực tiếp mà không cần phải viết dòng lệnh. Luận văn đã lựa chọn công cụ này để giải bài toán tối ưu hóa vận hành liên hồ chứa sông Ba mùa lũ. 2.4.1.Giải thuật di truyền bằng command line Gọi thuật toán di truyền với các cấu trúc dưới đây sử dụng command line: x = ga(fitnessfun, nvars) x = ga(fitnessfun, nvars, options) x = ga(problem) [x, fval] = ga(...) [x, fval, reason] = ga(...) [x, fval, reason, output] = ga(...) [x, fval, reason, output, population] = ga(...) [x, fval, reason, output, population, scores] = ga(...) 40 Ở đây tác giả chỉ mô tả cấu trúc của 2 hàm thông dụng nhất: + x = ga(fitnessfun, nvars): Sử dụng GA giải bài toán tối ưu hóa, fitnessfun là hàm mục tiêu tiến tới min, nvars là chiều dài vectơ x. + x = ga(fitnessfun, nvars, options): Cấu trúc này có thêm yếu tố options: là tham số của hàm mục tiêu. Kết quả được cho bởi: - fval: Giá trị của của hàm mục tiêu - x: Điểm mà hàm mục tiêu đạt fval. 2.4.2. Giải thuật di truyền sử dụng Genetic Algorithm Tool GA và Direct search Toolbox là một tập hợp các hàm, chính là chức năng mở rộng của Optimization Toolbox (công cụ tối ưu hóa) trong môi trường tính toán số Matlab. GA và Direct search Toolbox (thuật toán di truyền và hộp công cụ tìm kiếm trực tiếp) bao gồm các thủ tục để giải bài toán tối ưu hóa có sử dụng: - GA; - Direct search. Các thuật toán này cho phép giải quyết một loạt các vấn đề tối ưu hóa nằm ngoài phạm vi tiêu chuẩn của Toolbox tối ưu hóa. Công cụ chủ yếu là Matlab M-file, tạo ra các báo cáo MATLAB thực hiện các thuật toán tối ưu hóa chuyên ngành. 41 Hình 2. 2 Giao diện Genetic Algorithm Tool trong Matlab Để sử dụng khả năng của GA và Direct search Toolbox, hàm mục tiêu và các điều kiện phải được khai báo dưới dạng hàm function viết thành M-file riêng để tính toán hàm mà mình muốn tối ưu hóa hoặc kết hợp với các Toolbox khác.  Fitness function: Hàm mục tiêu mà bạn muốn tìm giá trị nhỏ nhất, có thể viết trực tiếp vào Genetic Algorithm Tool hoặc lập bằng M-file. Cửa sổ M-file là một cửa sổ dùng để soạn thảo chương trình ứng dụng, để thực thi chương trình viết trong M-file bằng cách gõ tên của file chứa chương trình đó trong cửa sổ Command window. Khi 42 một chương trình được viết trong M-file, thì tuỳ theo ứng dụng cụ thể, tuỳ theo người lập trình mà chương trình có thể viết dưới dạng sau: + Dạng Script file: Tức là chương trình gồm tập hợp các câu lệnh viết dưới dạng liệt kê, không có biến dữ liệu vào và biến lấy giá trị ra. + Dạng hàm function có biến dữ liệu vào và biến ra.  Number of variables: Số lượng các biến trong Fitness function.  Khởi tạo quần thể ban đầu Khởi tạo quần thể ban đầu gồm các chuỗi nhiễm sắc thể, được quy định bởi các chỉ số: - Population type: Chỉ định loại dữ liệu đầu vào của hàm mục tiêu, bạn có thể nhập Population type theo các loại sau: + Double Vector ('doubleVector') – Sử dụng tùy chọn này nếu mỗi cá thể trong quần thể là là loại nhân đôi. Đây là mặc định. + Bit string ('bitstring') -- Sử dụng tùy chọn này nếu cá thể trong quần thể là là loại bit. + Custom ('custom') -- Sử dụng tùy chọn này tạo ra quần thể thuộc loại được tạo ra bởi Creation function - Population size: Kích thước quần thể. Nếu là một vector, các thuật toán di truyền tạo ra nhiều nhóm quần thể, số lượng quần thể là độ dài của vector. Kích thước của mỗi quần thể là các mục tương ứng của vector. Kích thước quần thể tốt nhất thường khoảng 20-200 cá thể. - Creation function: Chỉ rõ hàm tạo ra quần thể ban đầu cho GA. Có các tùy chọn sau: + Uniform: Tạo ra một quần thể ban đầu ngẫu nhiên với một phân bố đều. Đây là mặc định. + Custom: Cho phép viết ra hàm của riêng người sử dụng, hàm này tạo ra các dữ liệu thuộc loại đã chỉ định trong Population type của các loại được chỉ định trong 43 loại hình quần thể. Chỉ định dùng Creation function nếu bạn đang sử dụng Genetic Algorithm Tool. - Initial population: Chỉ định một quần thể ban đầu cho GA. Mặc định là [], trong trường hợp này GA sử dụng Creation function để tạo ra quần thể ban đầu (Initial population). Nếu bạn nhập quần thể ban đầu là một mảng thì mảng này phải có số hàng = kích thước quần thể, cột = số biến, trong trường hợp này GA không gọi Creation function. - Initial scores: Chỉ định dung lượng cho quần thể ban đầu. - Initial range: Chỉ định phạm vi của vecto quần thể ban đầu được tạo ra từ Creation function. Nếu bạn nhập Initial range là một ma trận có 2 hàng và số cột = số biến. Mỗi cột có dạng là [a1;b1] ở đây a1 là biên dưới của biến (véc tơ), b1 là biên trên của biến ([a1;b1] là miền xác định của biến 1). Nếu bạn chỉ định Initial range là một vecto hàng có chiều dài biến không đổi (các biến có miền xác định là giống nhau bằng vecto).  Điều kiện dừng GA (Stopping criteria) Các tiêu chí để dừng thuật toán: - Generations: Chỉ định số lần lặp (số lượng thế hệ) của thuật toán di truyền, thuật toán sẽ dừng lại khi đạt đến số lượng thế hệ chỉ định; - Time limit: Giới hạn thời gian chạy thuật toán di truyền; - Fitness limit: Thuật toán dừng lại nếu giá trị hàm mục tiêu là tốt nhất, nhỏ hơn hoặc bằng giá trị thích nghi giới hạn; - Stall generations: Thuật toán dừng lại nếu không có sự cải thiện mức độ thích của các giá trị qua số thế hệ được chỉ định bởi Stall generations; - Stall time: Thuật toán dừng lại nếu không có sự cải thiện trong các giá trị thích nghi tốt nhất trong khoảng thời gian quy định bởi Stall time. 44 - Ngoài ra Genetic Algorithm Tool còn một số chỉ số khác như Fitness scalling, Selection, Mutation, Crossover, Tuy nhiên đối với bài toán có sử dụng GA không quá phức tạp thì các chỉ số này thường để ở giá trị mặc định. 45 CHƢƠNG III: T I ƢU H A VẬN HÀNH LIÊN HỒ CHỨA SÔNG BA MÙA LŨ BẰNG THUẬT TOÁN DI TRU ỀN TRONG MÔI TRƢỜNG MATLAB Để sử dụng thuật toán di truyền giải bài toán tối ưu hóa vận hành liên hồ chứa sông Ba mùa lũ, tác giả đã sử dụng mô hình HEC-RESSIM để mô phỏng, thiết lập rất nhiều phương án vận hành liên hồ chứa sông Ba mùa lũ để xác định đầu vào cho Genetic Algorithm Tool, cụ thể là xác định Initial population (quần thể ban đầu). Việc thiết lập quần thể ban đầu cho GA bằng HEC-RESSIM nhằm tạo ra quần thể ban đầu gần với nghiệm, giúp GA nhanh hội tụ, rút ngắn thời gian chạy thuật toán và tăng tính hiệu quả của bài toán tối ưu hóa. Cuối cùng, sử dụng HEC-RESSIM để kiểm định kết quả chạy ra từ Genetic Algorithm Tool. 3.1. Quy trình cắt lũ. Với mục tiêu là phòng, chống và giảm đến mức thấp nhất các thiệt hại của lũ lụt, ngập úng khu vực trung và hạ lưu sông Ba, tập trung chủ yếu cho vùng đồng bằng hạ lưu ven biển Tuy Hoà và thành phố Tuy Hoà, nhằm ổn định dân cư, đảm bảo sản xuất tạo đà phát triển kinh tế xã hội bền vững và an ninh quốc phòng. Tác giả sử dụng trận lũ năm 2009 để mô phỏng các phương án vận hành liên hồ chứa sông Ba. Vận hành liên hồ chứa thủy điện có hai giai đoạn quan trọng: - Giai đoạn xả nước đón lũ: Trước mỗi con lũ phải xả một lượng nước nhất định để tạo dung tích đón lũ. Các hồ chứa khu vực miền Trung thường nhỏ, không có dung tích phòng lũ có sẵn mà hầu hết phải tạo ra dung tích đón lũ dùng để cắt lũ. Luận văn sử dụng mực nước đón của 5 hồ chứa lưu vực sông Ba (bảng 3.1) theo Quy trình vận hành liên hồ chứa mới nhất của Thủ tướng Chính phủ ban hành ngày 7/7/2014. Bảng 3. 1 Mực nước đón lũ của các hồ Hồ S ng Ba Hạ Krông Hnăng Sông Hinh Ayun Hạ Kanak Mực nước hồ (m) 102 251.5 204.5 202 506 46 - Giai đoạn cắt lũ: Sử dụng dung tích trước lũ đã tạo được, cắt lũ sao cho đạt hiệu quả cao nhất, tức là hạ lưu lượng nhỏ nhất và hồ đảm bảo an toàn nhất. Mực nước trước lũ không cắt được toàn bộ con lũ mà chỉ cắt được một phần, do đó việc lựa chọn thời điểm cắt lũ hiệu quả là rất cần thiết và đó là bài toán của thuật toán di truyền. Luận văn chỉ tập trung vào giai đoạn 2, giai đoạn 1 tiếp nhận kết quả của đề tài “Nghiên cứu xây dựng công nghệ điều hành hệ thống liên hồ chứa đảm bảo ngăn lũ, chậm lũ, an toàn vận hành hồ chứa và sử dụng hợp lý tài nguyên nước về mùa kiệt lưu vực sông Ba”của PGS.TS. Nguyễn Hữu Khải (đề tài KC.08.30/06-10). Vận hành liên hồ chứa với các nguyên tắc: - Đảm bảo an toàn chống lũ cho hạ du: Ứng với các dạng lũ thiết kế hạ du, hệ thống hồ có khả năng đưa mực nước tại Củng Sơn về dưới mức an toàn. Tuỳ thuộc vào tình huống lũ xẩy ra trên hệ thống, điều hành phối hợp cắt lũ giữa các hồ sao cho hạ thấp mực nước hạ lưu là cao nhất. Nguyên lý chung là các hồ thượng lưu (Kanak, Ayun hạ), các hồ nằm trên nhánh sông (Krông Hnăng, Sông Hinh) cắt lũ trước. Hồ sông Ba hạ là công trình cuối cùng điều tiết khi các hồ thượng lưu không có khả năng cắt lũ bảo đảm an toàn hạ du, đồng thời tránh nguy cơ rủi ro vỡ đập hệ thống. - Đảm bảo an toàn công trình: Ứng với các dạng lũ thiết kế công trình, hệ thống hồ có khả năng cắt lũ đưa mực nước tại Củng Sơn xuống thấp nhất mà vẫn bảo đảm an toàn cho công trình: Trường hợp các hồ đã đạt ở mực nước dâng bình thường (MNDBT) sau khi tham gia cắt lũ giữ mực nước tại Củng Sơn dưới mức an toàn cho phép. Dự báo lũ tiếp tục lên đe doạ hệ thống công trình, các hồ chuyển sang trạng thái cắt lũ bảo đảm công trình. Dung tích phòng lũ cao từ MNDBT đến mực nước thiết kế (MNTK) được sử dụng vừa hỗ trợ cắt lũ hạ du, vừa cắt lũ bảo đảm công trình. Khi hồ đạt MNTK các cửa xả sâu, xả mặt phải được mở hết. 47 3.2. M ph ng phƣơng án vận hành liên hồ chứa s ng Ba m a lũ bằng m hình HEC – RESSIM Mô hình HEC-RESSIM được Trung tâm Thuỷ văn công trình Hoa Kỳ phát triển lên từ mô hình HEC-5 [25]. Bao gồm các công cụ: mô phỏng, tính toán, lưu trữ số liệu, quản lý, đồ hoạ và báo cáo hệ thống nguồn nước. HEC dùng HEC-DSS (Data Storage System) để lưu trữ và sửa đổi các hệ thống số liệu vào ra. RESSIM là phần kế tiếp của HEC-5 (mô phỏng các hệ thống ngăn chặn và kiểm soát lũ) bao gồm 3 môđun. Mỗi Q t Q t Q t Q t Q t Z t Q t An Khê-Kanak Yayun hạ Krông Năng Sông Hinh sông Ba hạ Trạm Củng Sơn Trạm Tuy Hòa Biển Đông Zat Khu vực bảo vệ Hình 3. 1 Sơ đồ hệ thống trong bài toán phòng lũ hạ du 48 môđun có 1 mục đích riêng và tập hợp các công việc thực hiện qua bảng chọn (menu, toolbar) và biểu đồ. - Môđun thiết lập lưu vực (Watershed setup): cung cấp 1 sườn chung để thiết lập và định nghĩa lưu vực nghiên cứu cho các ứng dụng khác nhau. Một lưu vực bao gồm hệ thống sông suối, các công trình thuỷ lợi (hồ chứa, đập chắn, dẫn dòng), vùng ảnh hưởng ngập lụt, và hệ thống các tram quan trắc đo đạc thuỷ văn, khí tượng. - Môđun mạng lưới hồ (Reservoir Network): xây dựng sơ đồ mạng lưới sông, mô tả các thành phần vật lý, điều hành của hồ chứa và các phương án lựa chọn cần phân tích trong môđun này. Dựa vào các định hình mô tả ở môđun trên để tạo cơ sở cho 1 hệ thống hồ chứa hoàn chỉnh. - Môđun mô phỏng (Simulation): Phần tính toán và hiển thị kết quả được thực hiện trong môđun này. Trước hết phải tạo ra 1 cửa sổ thời gian mô phỏng, thời đoạn tính toán và sau đó các thành phần lựa chọn sẽ được phân tích. Ta cũng có thể lựa chọn các phương án, nhập và sửa số liệu, các đặc tính của các thành phần tham gia trong hệ thống. Khi mô phỏng được thực hiện qua việc tính toán và phân tích kết quả sử dụng đồ hoạ và biểu bảng. Mô hình HEC-RESSIM được xây dựng để đánh giá vai trò của hồ chứa trong hệ thống nhằm trợ giúp nghiên cứu quy hoạch nguồn nước, đặc biệt trong vai trò kiểm soát lũ và xác định dung tích hiệu dụng trong bài toán đa mục tiêu của hệ thống. Trong luận văn này, tác giả sử dụng mô hình HEC-RESSIM [22] đã được hiệu chỉnh và kiểm định từ đề tài KC.08.30/06-10, chạy mô phỏng các phương án vận hành liên hồ chứa sông Ba cho trận lũ năm 2009 [9]. 49 Hình 3. 2 Sơ đồ hệ thống 5 hồ chứa trên Sông Ba Từ mô hình đã được hiệu chỉnh và kiểm định tác giả thay đổi lượng cắt lũ đối với trận lũ năm 2009 của 5 hồ theo rất nhiều phương án, sử dụng điểm nút là Củng Sơn khống chế lượng lũ đổ về hạ lưu. Cắt lũ đồng thời tại 5 hồ chứa Kanak, Ayun hạ, Krông Hnăng, Sông Hinh và Ba Hạ nhằm cắt đỉnh lũ tại Củng Sơn đồng thời đảm bảo an toàn cho công trình. Tiến hành cắt lũ tại 5 hồ theo quy tắc: dung tích phòng lũ được giữ nguyên đến một lúc nào đó mới sử dụng để cắt lũ. Lúc bắt đầu lũ thì dòng chảy đến hồ bao nhiêu xả bấy nhiêu, giữ hồ ở MNĐL, chỉ đến một ngưỡng lưu lượng nào đó, gọi là Q cắt lũ, mới tiến hành cắt lũ. Kết quả chạy mô phỏng 20 phương án chọn ra từ rất nhiều phương án vận hành liên hồ chứa sông Ba cho trận lũ năm 2009 mà tác giả đã chạy mô phỏng được trình bày tại phụ lục của luận văn. 50 3.3. Sử dụng Genetic Algorithm Tool để tối ƣu hóa vận hành liên hồ chứa s ng Ba m a lũ. 3.3.1. Thiết lập hàm mục tiêu Giá trị hàm mục tiêu ở đây là lưu lượng khống chế tại Củng Sơn cho trận lũ năm 2009. Biến

Các file đính kèm theo tài liệu này:

  • pdfluanvanthacsi_chuaphanloai_213_9568_1870062.pdf
Tài liệu liên quan