Chương 1 trình bày về tổng quan các phương pháp sử dụng để tìm kiếm chuỗi DNA. Thuật toán tìm kiếm cụ thể mà người viết tập trung nghiên cứu là thuật toán tìm kiếm chuỗi DNA sử dụng phương pháp tìm kiếm tương tự nhanh áp dụng N-Gram được trình bày ở chương 2. Chương 3 của luận văn mô tả môi trường thực nghiệm so sánh thuật toán tương tự nhanh áp dụng N-gram với phương pháp tìm kiếm khác và một số phân tích đánh giá của người viết về kết quả đạt được. Cuối cùng là kết luận về hiệu quả cũng như hạn chế còn tồn tại và hướng phát triển trong tương lai cho việc nghiên cứu và cải tiến phương pháp tìm kiếm chuỗi DNA.
12 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com CHƢƠNG 1. TỔNG QUAN VỀ CÁC THUẬT TOÁN TÌM KIẾM CHUỖI DNA Ở phầ n trước, người viết đã giới thiệu sơ lược về cấu trúc DNA, các ứng dụng của DNA trong đời sống. Khái quát, một số phương pháp thường được sử dụng để tìm kiếm chuỗi DNA. Chương này, người viết sẽ trình bày cụ thể hơn về các thuật toán tìm kiếm chuỗi: Đặc trưng chung của các dạng tìm kiếm, các phương pháp nổi bật của từng dạng, ưu điểm, nhược điểm của các dạng tìm kiếm chuỗi.
Phƣơng pháp tìm kiếm chuỗi DNA sử dụng mô hình Markov ẩn Mô hình Markov ẩn được bắt đầu xây dựng và công bố từ những năm 1960, đây là mô hình toán học về thống kê, tính toán xác suất. Nhiều năm sau đó (1980) mô hình được bắt đầu được nghiên cứu để ứng dụng trong lĩnh vực nhận dạng. Thuật toán tìm kiếm chuỗi sử dụng mô hình Markov ẩn dùng phương pháp mô hình hóa quá trình tìm kiếm chuỗi trong đó có sử dụng các tham số quan sát được và các tham số không biết trước – mô hình Markov. Sau đó sẽ xác định các tham số không biết trước từ các tham số quan sát được.
Các tham số của mô hình được rút ra sau đó có thể sử dụng để thực hiện các phân tích kế tiếp. Với mô hình Markov ẩn cấu trúc mô hình có thể thay đổi dễ dàng cho phù hợp với từng ứng dụng cụ thể. Phƣơng pháp tìm kiếm chuỗi DNA sử dụng mô hình Markov ẩn Thuật toán: Cho 2 chuỗi: Chuỗi quan sát: x = x1x2. Chuỗi so sánh: y = y1y2.
Xn là số vị trí của giá trị có thể từ tập quan sát O = {O1O2,.,ON} Yn nhận giá trị từ tập trạng thái S = {1,2,. N và M biểu thị vị trí quan sát và số lượng các trạng thái trong mô hình. Cho chuỗi trạng thái ẩn xuất hiện đồng thời trong chuỗi Markov. Điều này có nghĩa là trạng thái đầu vào j sau sẽ phụ thuộc vào trạng thái i trước đó.
Trạng thái này có thể sẽ không đổi. P{yn+1=j|yn=i, yn −1=in−1,.,y1=i1}=P{yn+1=j| yn =i}=t(i,j) với mọi i, j ∈ S và n≥1 [5] 13 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Các trạng thái chuyển từ trạng thái i sang trạng thái j gọi là trạng thái chuyển tiếp. Gọi hàm chuyển tiếp là t(i,j). Trạng thái bắt đầu Y1 có thể ở bất kỳ i ∈ S.
Ở vị trí quan sát xn=x có thể chỉ phụ thuộc vào trạng thái yn. Do vậy: P{xn=x|yn=i,yn−1,xn−1,.}=P{xn=x|yn=i}=e(x|i) [5] Với mọi x ∈ O, mọi i ∈ S, và mọi n ≥ 1; e(x|i) là hàm giá trị x tạo ra tại trạng thái i. Ba độ đo: t(i, j), π(i), and e(x | i) là 3 tham số mô tả cho mô hình HMM. Gọi tập 3 tham số này là Θ.
Dựa vào 3 tham số trên, ta có thể tính được chuỗi quan sát x = x1 x2. xL sẽ sinh ra chuỗi y = y1 y2. Như vậy dựa vào mô hinh khi biết chuỗi trạng tháivà đầu vào ta có thể biết được chuỗi quan sát. Ví dụ minh họa cho mô hình Markov ẩn: Hình 1.1: Mô hình Markov ẩn [5] a.
Sắp xếp các chuỗi ban đầu. 14 LUAN VAN CHAT LUONG download : add luanvanchat@agmail. Mô hình Markov ẩn (bỏ khoảng trống giữa các trạng thái). Mô hình hóa sự liên kết theo Mô hình Markov ẩn Mô hình Markov ẩn hiệu quả cho mô hình hóa thông tin về các chuỗi liên kết, phù hợp cho các cấu trúc chuỗi mẫu vì mô hình này có cấu trúc trái sang phải tuyến tính mà không chứa bất kỳ chu kỳ nào.
Mô hình sử dụng ba loại trạng thái: ẩn(delete), quan sát được(insert) và kết quả(match). Ví dụ: Việc so sánh hai chuỗi sinh học theo Mô hình Markov ẩn sẽ sắp xếp các chuỗi dựa trên sự giống nhau, tính toán số điểm liên kết của chúng, và đánh giá các liên kết thống kê được. Tuy nhiên, để tìm ra sự liên kết tốt giữa các trình tự, chúng ta phải đưa ra được một bảng xếp hạng dựa trên sự giống nhau của các chuỗi. Căn cứ vào bảng này, chúng ta có thể chọn các liên kết nhằm tối đa hóa điểm số liên kết.
Ví dụ về mô hình cặp HMM [5] Mô hình cặp -HMM tạo ra cặp liên kết chuỗi. Hai chuỗi DNA x và z được đồng thời tạo ra bởi các cặp-HMM, các dãy trạng thái cơ bản là y. Các trạng thái y xác định chỉ 1 liên kết duy nhất giữa x và z. Ưu điểm: Phương pháp này đã được sử dụng rộng rãi trong tin sinh học vì độ chính xác cao.
Cách mô hình hóa dễ sử dụng. Nhược điểm: Chi phí thời gian lớn và các hàm tính toán phức tạp. Phƣơng pháp liên kết nhạy cảm đầy đủ Phương pháp này được sử dụng để tìm sự giống nhau hoặc có độ tương đồng cao của hai chuỗi. Bằng cách lập ma trận, tính độ đo để tìm ra sự giống hoặc có độ 15 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com tương đồng cao của tất cả độ dài các phân đoạn của hai xâu, hai chuỗi protein hoặc nucleotide.
Với chuỗi đã được tìm kiếm và có độ tương đồng cao trước đó, phương pháp có thể mở rộng phạm vi tìm kiếm về hai phía (trước hoặc sau). Phương pháp này có ưu điểm là độ chính xác cao. Tuy nhiên chi phí thời gian lớn. Phương pháp đặc trưng của dạng này là phương pháp Smith & Waterman do hai nhà khoa học T.Waterman công bố năm 1981.
[18] Thuật toán Smith & Waterman Thuật toán Smith-Waterman là một thuật toán quy hoạch động dùng để tìm kiếm cơ sở dữ liệu phát triển bởi T.S Waterman vào năm 1981 và dựa trên một mô hình thích hợp trước đó có tên Needleman và Wunsch. Thuật toán sử dụng bảng ma trận để đánh giá sự tương đồng của hai chuỗi. Tìm kiếm lần lượt từ đầu đến cuối trong hai chuỗi xem mức độ tương đồng ở mức nào (tương đồng hoặc không tương đồng). Với các mức độ tương đồng khác nhau sẽ có những chỉ số độ đo khác nhau.
Đặc điểm của thuật toán Smith-Waterman là thuật toán so sánh các cặp chuỗi cục bộ dựa trên quy hoạch động để tính điểm cho quá trình so sánh.Giải thuật này giúp nhận ra những miền tương đồng giữa hai chuỗi tìm kiếm cho giống chuỗi cục bộ tối ưu hơn. Giải thuật Smith-Waterman thực hiện so sánh đối xứng ở dạng cục bộ, khác với giải thuật so sánh đối xứng toàn cục (ví dụ: Needleman- Wunsch), giải thuật sắp hàng hay so sánh đối xứng cục bộ chỉ thực hiện việc so sánh đối xứng trên một số phần của các trình tự được so sánh. Để tìm cặp tương đồng (a,b) ta lập ma trận H. Đặt: HkO = HoL, = 0 for 0 ≤ k ≤ n and 0 ≤ l ≤ m.
[6] Hij thể hiện mức độ tương đồng của ai,bj. Hij được tính bằng công thức: Hij=max{Hi-1,j-1 + s(ai,bj).max(Hi-k,j - wk}.max{ Hi,j-l - wl},0} (1) k≥1 l≥1 với l ≤ i ≤ n và l ≤ j ≤ m. [6] Công thức Hij tính bởi các giá trị ở cuối các đoạn tại bất kỳ giá trị ai và bj nào. (1) Nếu ai và bj có liên kết, độ tương tự tính như sau: 16 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Hi-1,j-1 + s(ai.bj) (2) Nếu ai tại vị trí cuối của dãy xóa k, độ tương tự tính bằng công thức Hi-k,j - Wk (3) Nếu bj là vị trí cuối của vị trí xóa có độ dài l, độ tương tự xác định bởi Hi-k,j – Wl (4) Giá trị 0 đã bao gồm biểu thị cho mức độ không tương đồng, nó chỉ ra rằng mức độ không tương đồng cho đến giá trị ai và bj Giá trị H càng cao thì mức độ tương đồng của Hij càng lớn.
Đầu tiên ta tìm chỉ số cao nhất của ma trận. Sau đó, duyệt ngược trở lại. Ta sẽ tìm được mức độ tương đồng của 2 chuỗi cần chọn. Thuật toán: - Đầu vào : Hai chuỗi S1 và S2 với chiều dài tương ứng là n, m.
Ma trận thay thế S. Đầu ra : Hai chuỗi S1’, S2’. Bước 1 : Khởi tạo : + H(0,0) = 0 + H(i,0) = 0 0 ≤ i ≤ m + H(0,j) = 0 0 ≤ j ≤ n Bước 2 : Điền giá trị vào ma trận. Tính H(i, j) theo công thức H(i, j) = MAX (0, H(i-1,j-1) + S(i,j), H(i-1,j)+d, H(i,j-1) + d) (1) [6] Mỗi khi tính H(i, j) lưu lại chỉ số của số hạng ở vế phải (1) Bước 3 : Tìm ô (i_max, j_max) có điểm cao nhất (0 i m, 0 j n) Bước 4 : Quay lại bước 2.
Xuất phát từ ô (i_max, j_max).Dựa vào những chỉ số đã lưu ở bước 2 để tìm giá trị cho đến khi gặp ô H(i,j) = 0 thì dừng. Nếu đường đi theo chiều ngang hay từ ô (i,j-1) sang ô (i,j) thì thêm “-“ vào S2’ và thêm kí tự S1(j) vào S1’. Nếu đường đi theo chiều thẳng đứng hay từ ô (i-1, j) xuống ô (i,j) thì thêm “-“ vào S1’ và thêm kí tự S2(i) và S2’. Nếu đường đi theo đường chéo hay từ ô (i-1, j-1) đến ô (i,j) thì thêm kí tự S1(j) vào S1’ và S2(i) vào S2’ Đảo ngược S1’, S2’ 17 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.