1.2 .Tổng quan về virus
1.2.2 .Chu kì sống của virus
3.1. Phƣơng pháp mô phỏng Monte Carlo và thuật toán Metropolis
3.1.3. Thuật toán Metropolis
Một yêu cầu quan trọng của mô phỏng MC là chọn ra đƣợc các trạng thái ngẫu nhiên thỏa mãn điều kiện cân bằng chi tiết trong chuỗi các trạng thái ngẫu nhiên đƣợc tạo ra. Thuật toán Metropolis ra đời đã góp phần đơn giản hơn bƣớc quan trọng này, thuật toán đã cho phép chúng ta chọn ra chuỗi Markov các trạng thái tuân theo một phân bố ngẫu nhiên cho trƣớc ( thƣờng là phân bố Boltzmann ) khi 𝑡 → ∞. Nguyên lý của thuật toán Metropolis là với các phép dịch chuyển trạng thái của hệ, xác suất chuyển trạng thái luôn thỏa mãn điều kiện cân bằng chi tiết.
Thông thƣờng trong phƣơng pháp MC, ta có xác suất chuyển trạng thái 𝛼
sang trạng thái 𝛽 đƣợc xác định theo công thức:
𝑘𝛽𝛼 =𝑘𝛽𝛼𝑎 𝑘𝛽𝛼𝑚 (3.6)
Trong đó: 𝑘𝛽𝛼𝑎 là xác suất chuyển tiên nghiệm.
𝑘𝛽𝛼𝑚 là xác suất chấp nhận chuyển trạng thái 𝛼 sang β.
Với yêu cầu của phƣơng pháp MC là xác suất chuyển tiên nghiệm từ các trạng thái 𝛽 sang trạng thái 𝛼 và ngƣợc lại phải bằng nhau, nghĩa là:
𝑘𝛽𝛼𝑎 =𝑘𝛼𝛽𝑎 (3.7)
Thuật toán Metropolis đƣa ra các lựa chọn sau: Nếu 𝑝𝛽𝑒𝑞 ≥ 𝑝𝛼𝑒𝑞, ta có: 𝑘𝛽𝛼𝑚 = 1 ,𝑘𝛼𝛽𝑚 =𝑝𝛼 𝑒𝑞 𝑝𝛽𝑒𝑞 (3.8) Nếu 𝑝𝛽𝑒𝑞 <𝑝𝛼𝑒𝑞, ta có: 𝑘𝛼𝛽𝑚 = 1 ,𝑘𝛽𝛼𝑚 =𝑝𝛽 𝑒𝑞 𝑝𝛼𝑒𝑞 (3.9)
Sử dụng cơng thức (3.6), (3.7) thay vào các biểu thức (3.8), (3.9) chúng ta dễ dàng nhận thấy điều kiện cân bằng chi tiết (3.5) đều đƣợc thỏa mãn.
Xét với trƣờng hợp tập hợp chính tắc với phân bố Boltzmann ta có:
𝑝𝛼𝑒𝑞 =𝑒 −𝐸𝛼/𝑘𝐵𝑇 𝑍𝑁𝑉𝑇 ,𝑝𝛽 𝑒𝑞 =𝑒 −𝐸𝛽/𝑘𝐵𝑇 𝑍𝑁𝑉𝑇 (3.10) Ta có: 𝑝𝛽𝑒𝑞 𝑝𝛼𝑒𝑞 = 𝑒−𝐸𝛼/𝑘𝐵𝑇 𝑒−𝐸𝛽/𝑘𝐵𝑇 =𝑒 − 𝐸𝛽−𝐸𝛼 /𝑘𝐵𝑇 (3.11)
Phƣơng pháp Metropolis đƣa ra lựa chọn cách xác định các xác suất chuyển sau đây:
- Nếu 𝐸𝛽 ≤ 𝐸𝛼 từ biểu thức (3.10) ta có 𝑝𝛽𝑒𝑞 ≥ 𝑝𝛼𝑒𝑞, khi đó:
𝑘𝛽𝛼𝑚 = 1 ,𝑘𝛼𝛽𝑚 =𝑝𝛼 𝑒𝑞
𝑝𝛽𝑒𝑞 =𝑒
− 𝐸𝛼−𝐸𝛽 /𝑘𝐵𝑇 (3.12) - Nếu 𝐸𝛽 >𝐸𝛼 từ biểu thức (3.10) ta có 𝑝𝛽𝑒𝑞 < 𝑝𝛼𝑒𝑞, khi đó:
𝑘𝛼𝛽𝑚 = 1 ,𝑘𝛽𝛼𝑚 =𝑝𝛽 𝑒𝑞
𝑝𝛼𝑒𝑞 =𝑒
− 𝐸𝛽−𝐸𝛼 /𝑘𝐵𝑇 (3.13) Trong quá trình thực hiện, phƣơng pháp Metropolis dựa trên năng lƣợng ở các cấu hình cũ và mới của hệ để tính xác suất chấp nhận các cấu hình (trạng thái) mới. Nếu 𝐸 là năng lƣợng của hệ ở cấu hình cũ và 𝐸′ là năng lƣợng của hệ ở cấu
hình mới, thì điều kiện để cấu hình mới đƣợc chấp nhận là 𝐸′ ≤ 𝐸 ∆𝐸 =
𝐸′ − 𝐸 ≤0 . Trƣờng hợp 𝐸′>𝐸, cấu hình mới sẽ chỉ đƣợc chấp nhận với xác
suất 𝑘 =𝑒− 𝐸′−𝐸 /𝑘𝐵𝑇. Để xác định khả năng chấp nhận cấu hình mới trong trƣờng hợp này ta thực hiện gieo một số ngẫu nhiên 𝜉 ∈ [ 0,1) và so sánh với xác suất chấp nhận 𝑘. Nếu 𝜉 <𝑘 cấu hình mới đƣợc chấp nhận và ngƣợc lại nếu 𝜉 ≥ 𝑘 cấu hình
mới khơng đƣợc chấp nhận, hệ quay trở lại cấu hình cũ. Có thể hiểu rõ hơn phƣơng pháp này thông qua phần đƣờng bao nét đứt trên hình 3.1. Quá trình này tiếp tục lặp đi lặp lại với việc thay đổi cấu hình trƣớc của hệ bằng cách thực hiện các bƣớc MC, xác định hiệu năng lƣợng các cấu hình trƣớc và sau dịch chuyển, chọn các cấu hình
mới đƣợc chấp nhận đến khi số bƣớc MC đủ lớn, tổng thống kê của hệ có phân bố năng lƣợng đƣợc xem là gần đến phân bố Boltzmann.
Trên thực tế khi ứng dụng phƣơng pháp mơ phỏng MC để tạo cấu hình 𝑆𝑖+1 từ cấu hình 𝑆𝑖 ta thƣờng thay đổi vị trí của hạt bằng cách dịch chuyển hạt đi một khoảng cách ngẫu nhiên nào đó. Nếu khoảng cách dịch chuyển nhỏ, nghĩa là ∆𝐸 rất nhỏ, do đó xác suất chấp nhận cấu hình mới theo thuật tốn Metropolist xấp xỉ 100%. Tuy nhiên trong trƣờng hợp này, để khảo sát đủ không gian pha của hệ chúng ta cần thực hiện một số lƣợng lớn các bƣớc dịch chuyển. Ngƣợc lại, nếu khoảng cách dịch chuyển lớn thì ∆𝐸 lớn do đó có rất nhiều những cấu hình mới
của hệ khơng đƣợc chấp nhận, chúng ta cũng cần thực hiện rất nhiều các bƣớc dịch chuyển để khảo sát không gian pha của hệ. Kết quả thu đƣợc từ những tính tốn thực nghiệm đã cho thấy, lựa chọn khoảng cách dịch chuyển sao cho xác suất chấp nhận cấu hình mới của hệ đạt 50% sẽ cho những kết quả thống kê tốt với số bƣớc dịch chuyển đủ nhỏ.