3.4.1.Khởi tạo quần thể
Khởi tạo ngẫu nhiên quần thể ban đầu gồm 50 cá thể* hay lời giải, tức là 50 điểm (h2, r) theo qui luật phân bố đều trong miền xác định của bài tốn. Số cá thể trong quần thể, còn gọi là kích thước quần thể, sẽ được giữ không đổi trong suốt quá trình tính toán.
3.4.2.Mã hoá và giải mã
Mỗi cá thể hay lời giải (h2, r) được mã hoá thành một chuỗi nhị phân, còn gọi là nhiễm sắc thể, gồm 32 bit 0 và 1. Trong đó 17 bit đầu tiên biểu diễn chiều cao h2 và 15 bit còn lại biểu diễn bán kính r như sau:
Đối với chiều cao h2: 0,001 ≤ h2≤ 12,899 do đó miền giá trị của h2 có chiều dài bằng 12,899 - 0,001 = 12,898 và với yêu cầu độ chính xác đến 4 số lẻ ở phần thập phân, khoảng (0,001; 12,899) phải được chia tối thiểu thành 12,898×104
khoảng bằng nhau. Điều này có nghĩa là cần phải có một chuỗi nhị phân gồm 17 bit thoả mãn:
65536 = 216 < 128980 < 217 = 131072
Khi đó chuỗi nhị phân 17 bit 00000000000000000 biểu diễn cho cận dưới của h2 là 0,001 và chuỗi nhị phân 17 bit 11111111111111111 biểu diễn cho cận trên của h2 là 12,899.
Tương tự, đối với bán kính r: 4,061 ≤ r ≤ 7,309 do đó miền giá trị của r có chiều dài bằng 7,309 - 4,061 = 3,248 và với yêu cầu độ chính xác đến 4 số lẻ ở phần thập phân, khoảng (4,061; 7,309) phải được chia tối thiểu thành 3,248×104
khoảng bằng nhau. Điều này có nghĩa là cần phải có một chuỗi nhị phân gồm 15 bit thoả mãn:
16384 = 214 < 32480 < 215 = 32768
Khi đó chuỗi nhị phân 15 bit 000000000000000 biểu diễn cho cận dưới của r là 4,061 và chuỗi nhị phân 15 bit 111111111111111 biểu diễn cho cận trên của r là 7,309.
Sau khi thực hiện các phép toán lai và đột biến, chuỗi nhị phân của lời giải tương ứng sẽ được chuyển đổi (giải mã) thành số thực để tính toán độ thích nghi và chọn lọc. Chẳng hạn, có một lời giải tương ứng với chuỗi số nhị phân
11001100110111011010000001001100 gồm 17 bit đầu tiên là
11001100110111011 biểu diễn chiều cao h2 và 15 bit còn lại là
010000001001100 biểu diễn bán kính r sẽ được chuyển đổi thành 2 số thực h2 = 10,3228 và r = 4,8806 nằm trong các khoảng (0,001; 12,899) và (4,061; 7,309) tương ứng theo 2 bước như sau:
− Chuyển đổi từ cơ số 2 sang cơ số 10
Đối với h2: 11001100110111011 → 216 + 215 + 212 + 211 + 28 + 27 + 25 + 24 + 23 + 21 + 20 = 104891 Đối với r: 010000001001100 → 213 + 26 + 23 + 22 = 8268 − Tính h2 và r h2 = 0,001 + 104891 × 12,898 : (217 – 1) = 10,3228 r = 4,061 + 8268 × 3,248 : (215 – 1) = 4,8806 3.4.3.Tính độ thích nghi và chọn lọc
Độ thích nghi của mỗi lời giải (h2, r) sẽ được tính toán dựa trên cơ sở hàm mục tiêu (3.4) hoặc (3.5) với thể tích mẫu V và đường kính hốc lõm d cho trước theo các bước sau đây:
− Tính h2, r. Chiều cao h2 ở phần dưới và bán kính r ở phần trên của hộp chứa mẫu là các biến quyết định có giá trị được xác định như sau:
Nếu là quần thể ban đầu, h2 và r được phát ngẫu nhiên theo qui luật phân bố đều trong miền xác định của bài toán.
Nếu là các quần thể trung gian, h2 và r là các số thực được xác định sau bước giải mã các cá thể (cũng chính là các nhiễm sắc thể) trong quần thể.
Đưa tất cả các cá thể của quần thể vào một bể chứa Xi = (h2, r)i Chọn ngẫu nhiên 2 cá thể X1 và X2 Chọn ngẫu nhiên 2 cá thể X3 và X4 ε(X1) > ε(X2) ε(X3) > ε(X4) Chọn X1 Chọn X3 Chọn X2 Chọn X4 Bể sinh sản Quần thể mới Số cặp cá thể cần chọn ? Đúng Sai Đúng Sai Kết thúc chọn Đủ Chưa đủ
Hình 3.3. Sơ đồ thuật toán của quá trình chọn lọc bằng phương pháp tournament.
− Tính h1, t. Chiều cao h1 ở phần trên và bề dày t ở phần dưới của hộp chứa mẫu được xác định theo các công thức (3.2) và (3.3) tương ứng. − Chuyển đổi các giá trị h1, r, h2 và t thành các tham số bề mặt tương ứng
để đưa vào input của chương trình MCNP4C2.
− Chạy chương trình MCNP4C2 để mô phỏng phổ gamma của nguồn
phóng xạ với các vạch năng lượng tia gamma quan tâm.
− Tính hiệu suất detector ε=εV,d(h2,r) tại vạch năng lượng tia gamma quan tâm. Thay ε vào hàm mục tiêu (3.4) hoặc (3.5) để tính độ thích nghi của lời giải (h2, r).
Quá trình chọn lọc được thực hiện bằng phương pháp tournament. Chọn ngẫu nhiên các cặp cá thể từ quần thể. So sánh độ thích nghi giữa 2 cá thể trong các cặp cá thể được chọn. Quá trình này được lặp đi lặp lại cho đến khi số cá thể trong bể sinh sản đạt đến giá trị của kích thước quần thể. Nếu cá thể nào có độ thích nghi cao hơn thì đưa cá thể đó vào bể sinh sản để thực hiện các bước lai và đột biến tiếp theo. Sơ đồ thuật toán của quá trình chọn lọc bằng phương pháp tournament được trình bày trong hình 3.3.
3.4.4.Lai
Để cung cấp sự thay đổi ngẫu nhiên thông tin di truyền theo hướng tiến hoá tạo ra những cá thể có tính trạng tốt hơn, phép lai được thực hiện theo phương pháp lai một điểm với xác suất lai pc = 0,6*. Vị trí lai trong nhiễm sắc thể được chọn ngẫu nhiên theo qui luật phân bố đều. Sơ đồ thuật toán của phép lai bằng phương pháp lai một điểm được trình bày trong hình 3.4.
3.4.5.Đột biến
Để duy trì tính đa dạng của quần thể và ngăn cản quá trình tìm kiếm hội tụ sớm đến lời giải tối ưu cục bộ, mỗi bit trong tất cả các nhiễm sắc thể của quần
Chọn ngẫu nhiên một số bit trong toàn quần thể để đột biến 1 1 0 0 1 1 0 0
0 0 0 0 1 1 0 1
. . . .
1 1 0 1 1 1 0 0
Quần thể mới tạo thành sau khi được đột biến
1 1 0 0 1 1 0 0
0 1 0 0 1 1 0 1
. . . .
1 1 0 1 0 1 0 0
Hình 3.5. Sơ đồ thuật toán của phép đột biến.
Hình 3.4. Sơ đồ thuật toán của phép lai bằng phương pháp lai một điểm. Lai
Tiếp tục Không
Có
Chọn ngẫu nhiên vị trí lai
1 1 0 0 1 1 0 0
0 0 0 0 1 1 0 1 Trao đổi chéo giữa các đoạn
1 1 0 0 1 1 0 1
0 0 0 0 1 1 0 0
Cặp nhiễm sắc thể bố mẹ
1 1 0 0 1 1 0 0
thể đều có cơ hội đột biến như nhau với xác suất đột biến pm = 0,001*. Sơ đồ thuật toán của phép đột biến được trình bày trong hình 3.5.
3.4.6.Tạo quần thể mới
Trong giai đoạn tiến hoá của quần thể, sau các quá trình chọn lọc, lai tạo và đột biến, một quần thể mới được tạo thành. Để bảo tồn các cá thể tốt, mô hình phát triển phần tử ưu tú được áp dụng và xây dựng bằng cách: cứ sau mỗi thế hệ được tạo thành có một thủ tục kiểm tra xem cá thể tốt nhất ở thế hệ mới có tốt hơn cá thể tốt nhất ở thế hệ trước đó hay không. Nếu không tốt hơn thì cá thể tốt nhất ở thế hệ trước đó được đưa sang quần thể mới và thay thế ngẫu nhiên một cá thể bất kỳ ở thế hệ mới.
3.4.7.Chương trình tính toán
Sơ đồ thuật toán của chương trình tính toán kích thước tối ưu của hộp chứa mẫu dạng Marinelli được trình bày trong hình 3.6. Chương trình tính toán viết bằng ngôn ngữ lập trình Fortran 95 hay DIGITAL Visual Fortran 6 [48], chạy trên máy tính cá nhân HP4100 và được tóm tắt trong 12 bước như sau:
− Bước 1. Khởi tạo ngẫu nhiên quần thể ban đầu.
− Bước 2. Mỗi chuỗi nhị phân hay cá thể trong quần thể được chuyển đổi
(giải mã) thành số thực tương ứng thuộc miền xác định của bài toán. − Bước 3. Từ các giá trị V, d cho trước và lời giải (h2, r), tính h1 và t.
− Bước 4. Gán các giá trị của h1, r, h2 và t vào input của chương trình MCNP4C2.
− Bước 5. Chạy chương trình MCNP4C2 để mô phỏng phổ gamma đối với
lời giải (h2, r) tương ứng. Căn cứ vào phổ gamma mô phỏng để tính toán hiệu suất detector.
− Bước 6. Dựa trên cơ sở hàm mục tiêu để tính độ thích nghi của cá thể hay lời giải (h2, r) tương ứng.
− Bước 7. Lặp lại từ bước 2 đến bước 6 cho đến khi tất cả các cá thể trong quần thể đều được đánh giá.
− Bước 8. Kiểm tra tiêu chuẩn hội tụ hay điều kiện dừng của bài toán.
− Bước 9. Tiến hành chọn lọc và đưa các cá thể vào bể sinh sản để hình
thành thế hệ mới.
− Bước 10. Tiến hành phép lai giữa các cặp cá thể từ bể sinh sản. Chọn lọc Tính toán MCNP Input Output Khởi tạo quần thể Đánh giá Lai Đột biến Quần thể mới Bắt đầu Kết thúc
Hình 3.6. Sơ đồ thuật toán của chương trình tính toán kích thước tối ưu của hộp chứa mẫu dạng Marinelli bằng thuật toán di truyền kết hợp với chương trình mô phỏng Monte Carlo MCNP4C2.
− Bước 11. Tiến hành phép đột biến tại một số vị trí được chọn ngẫu nhiên từ tất cả các cá thể trong bể sinh sản.
− Bước 12. Hình thành quần thể mới và quá trình tìm kiếm lời giải tối ưu được lặp lại từ bước 2.
Chương trình tính toán kích thước tối ưu của hộp chứa mẫu dạng Marinelli được thực hiện đối với các mật độ và thành phần hoá học khác nhau, và đối với các vạch năng lượng tia gamma khác nhau để đánh giá sự ảnh hưởng của các thông số này lên kích thước tối ưu của hộp chứa mẫu dạng Marinelli. Do đó để giải quyết bài toán tối ưu này có khoảng gần 500 lần chạy chương trình tính toán tối ưu. Mỗi lần chạy chương trình tính toán này có khoảng gần 5000 lần tính toán bằng chương trình MCNP4C2. Tuy nhiên, với tốc độ tính toán của máy tính hiện nay, vấn đề tính toán nói trên là hoàn toàn có thể thực hiện được và không có gì trở ngại.
Trên hình 3.7 là đồ thị biểu diễn sự biến thiên của các giá trị hiệu suất cực đại εmax và hiệu suất trung bình εavg của detector HPGe GC1518 theo số thế hệ tiến hoá của thuật toán di truyền đối với trường hợp mẫu đo là dung dịch NaI có các nhân phóng xạ 131I, mật độ bằng 1 g/cm3 chứa trong hộp đựng mẫu dạng Marinelli có thể tích mẫu V = 450 cm3 và đường kính hốc lõm d = 8,12 cm, tại vạch năng lượng 364 keV. Trong đó εmax là giá trị hiệu suất lớn nhất trong số các giá trị hiệu suất được xác định đối với các kích thước của hộp chứa mẫu tương ứng của từng thế hệ; εavg là giá trị hiệu suất trung bình được tính trên toàn quần thể của từng thế hệ. Từ hình 3.7 nhận thấy rằng εmax tăng và đạt giá trị bão hoà từ thế hệ 70 trở lên, trong khi đó εavg tăng và có giá trị biến thiên không đáng kể từ thế hệ 70 trở lên với độ thay đổi tương đối không vượt quá 3%. Do đó kích thước tối ưu của hộp chứa mẫu dạng Marinelli có thể xác định sau khoảng 70 thế hệ.
Vì thuật toán di truyền và phương pháp Monte Carlo bao gồm các phép toán xử lý liên quan đến các đại lượng ngẫu nhiên cho nên kết quả của mỗi lần tính toán là một bộ số liệu gồm các giá trị của ε, h1, r, h2 và t sẽ không giống nhau. Trong đó hiệu suất tính toán ε được tính từ kết quả phân bố độ cao xung theo năng lượng của phổ gamma mô phỏng, h2 và r là các giá trị tối ưu nhận được từ việc tính toán bằng thuật toán di truyền, h1 và t là các giá trị được xác định theo các công thức (3.2) và (3.3) tương ứng. Do đó để đánh giá mức độ thăng giáng của kết quả tính toán của hiệu suất detector ε và các tham số h1, r, h2 và t, có 10 lần tính lặp đối với trường hợp mẫu đo là dung dịch NaI chứa các nhân phóng xạ
131I có mật độ bằng 1 g/cm3 chứa trong hộp đựng mẫu dạng Marinelli có thể tích
mẫu V = 450 cm3 và đường kính hốc lõm d = 8,12 cm. Kết quả tính toán được
Hình 3.7. Sự phụ thuộc của hiệu suất cực đại và hiệu suất trung bình vào số thế hệ tiến hoá của thuật toán di truyền đối với trường hợp mẫu đo là dung dịch NaI chứa các nhân phóng xạ 131I có mật độ bằng 1 g/cm3 chứa trong hộp đựng mẫu dạng Marinelli có V = 450 cm3 và d = 8,12 cm tại vạch năng lượng 364 keV.
Số thế hệ H ie äu su ất
Hiệu suất trung bình - εavg Hiệu suất cực đại - εmax
trình bày trong bảng 3.1. Từ bảng 3.1 nhận thấy rằng kết quả tính toán hiệu suất detector đối với 10 cấu hình tối ưu của hộp chứa mẫu dạng Marinelli là phù hợp rất tốt với nhau. Thực vậy, trong kết quả của 10 lần tính lặp độ lệch tương đối của hiệu suất detector không vượt quá 0,04%, khi đó độ lệch tương đối của h1, r, h2 và t là 3,48%, 0,61%, 1,54% và 2,53% tương ứng, có nghĩa là độ lệch tương đối của h1, r, h2 và t nằm trong khoảng từ 0% đến 5% là có thể chấp nhận được đối với bài toán tối ưu này.
Bảng 3.1. Hiệu suất cực đại εmax và bộ giá trị kích thước tối ưu h1, r, h2 và t
của hộp chứa mẫu dạng Marinelli có V = 450 cm3 và d = 8,12 cm được xác
định sau 10 lần tính lặp bằng thuật toán di truyền kết hợp với tính toán Monte Carlo. Mẫu phóng xạ là dung dịch NaI chứa các nhân phóng xạ 131I có mật độ bằng 1 g/cm3. STT εmax h1 (cm) r (cm) h2 (cm) t (cm) 1 0,041174 2,14 5,40 6,38 1,34 2 0,041140 2,27 5,35 6,44 1,29 3 0,041174 2,14 5,40 6,38 1,34 4 0,041139 2,28 5,35 6,44 1,29 5 0,041121 2,30 5,32 6,58 1,26 6 0,041143 2,18 5,36 6,60 1,30 7 0,041140 2,27 5,35 6,44 1,29 8 0,041140 2,31 5,34 6,44 1,28 9 0,041140 2,31 5,34 6,44 1,28 10 0,041154 2,12 5,42 6,25 1,36 Trung bình 0,041146 2,23 5,36 6,44 1,30 Độ lệch chuẩn 1,65.10-5 0,08 0,03 0,10 0,03 Độ lệch tương đối 4.10-4 3,48% 0,61% 1,54% 2,53%
Đối với hộp chứa mẫu dạng Marinelli có V = 450 cm3 và d = 8,12 cm, mẫu đo là dung dịch NaI chứa các nhân phóng xạ 131I có mật độ bằng 1 g/cm3 và năng lượng tia gamma bằng 364 keV, kết quả tính toán và sự hội tụ về lời giải tối ưu được minh hoạ trong hình 3.8a và 3.8b. Hình 3.8a và 3.8b cho thấy rằng trong miền xác định của bài toán tồn tại một miền tối ưu, trong đó độ thay đổi tương
Hình 3.8b. Đồ thị (dạng contour) của hàm ε=εV,d(h2,r) . Trong đó ε là hiệu suất, h2 là chiều cao phần dưới và r là bán kính của hộp chứa mẫu.
Miền tối ưu (Phần gạch chéo)
Hình 3.8a. Đồ thị (dạng mesh) của hàm ε=εV,d(h2,r). Trong đó ε là hiệu suất, h2 là chiều cao phần dưới và r là bán kính của hộp chứa mẫu.
0,036 0,037 0,038 0,039 0,040 0,041 0,042 4,5 5,0 5,5 6,0 6,5 7,0 2 4 6 8 10 H iê u s u â t Bán kín h (c m) Chiêu cao phân d uoi (cm) 0,036 0,037 0,038 0,039 0,040 0,041 0,042
đối của hiệu suất detector so với giá trị lớn nhất khoảng 3%. Do đó việc tính toán kích thước tối ưu của hộp chứa mẫu dạng Marinelli bằng thuật toán di truyền kết hợp với tính toán Monte Carlo có ý nghĩa thực tiễn là cho phép người làm thực nghiệm lựa chọn một bộ số liệu kích thước tối ưu thích hợp của hộp chứa mẫu dạng Marinelli thuộc miền tối ưu đã xác định.
3.5. ẢNH HƯỞNG CỦA NĂNG LƯỢNG TIA GAMMA, THAØNH PHẦN
HOÁ HỌC VAØ MẬT ĐỘ LÊN KÍCH THƯỚC TỐI ƯU CỦA HỘP CHỨA MẪU DẠNG MARINELLI
3.5.1.Ảnh hưởng của năng lượng tia gamma
Bảng 3.2. Các giá trị tối ưu của h1, r, h2 và t đối với 10 vạch năng lượng tia