MỤC LỤC
Bất kỳ một trình tự nào cũng là một sự thể hiện bởi các phần tử có thể xuất hiện trong trình tự và được định nghĩa trong ∑.
Waterman [25], tiến hành thực nghiệm trên một khối lượng lớn các trình tự với trọng số cho việc chèn gap wk ≤ kw1 với độ phức tạp thời gian là O(n3). Trong các trường hợp đặc biệt, chi phí chèn gap là một hàm tuyến tính wk = uk +v trong đó v được gọi là chi phí bắt đầu một đoạn gap và v là chi phí mở rộng đoạn gap.
Trải qua hàng triệu năm tiến hóa, với sự biến đổi ở mức độ gen, hệ gen của các sinh vật ngày nay đã có sự khác nhau rất lớn về kích thước, số lượng gen, thứ tự các gen cũng như về nội dung của các gen. Sắp hàng trình tự hệ gen giúp xây dựng bức tranh toàn cảnh về sự tương tự và tiến hóa giữa các sinh vật, là cơ sở cho hướng nghiên cứu Comparative genomics [4], cho phép nâng cao độ chính xác dự đoán gen. Kết quả so sánh hai hệ thống MAUVE và SLAGAN cho thấy MAUVE tốt hơn SLAGAN trên những tập dữ liệu có độ tương đồng cao, còn SLAGAN cho kết quả tốt hơn MAUVE trên những tập dữ liệu tồn tại nhiều phép thay thế ADN ở mức độ điểm và ít phép đảo chiều đoạn ADN ở mức độ gen.
Lê Sỹ Vinh và đồng nghiệp tại Bảo Tàng Lịch Sử Tự Nhiên Hoa Kỳ, và tại trường Đại Học Công Nghệ nhằm so sánh và sắp hàng toàn bộ hệ gen đã được tiến hành và cho kết quả thử nghiệm khả quan [23,24]. Để đáp ứng được ba yêu cầu trên, Vinh và các đồng nghiệp đã nghiên cứu cách kết hợp điểm phạt cho các phép biến ở mức độ điểm, và các phép biến đổi ở mức độ gen vào thành một hệ thống tính điểm phạt chung. Sử dụng phương pháp bắt cặp toàn bộ hệ gen, nhóm tác giả đã xây dựng quá trình tiến hóa của 11 Corona vi rút và tái khẳng định lại kết luận vi rút Corona gây ra dịch bệnh hô hấp cấp (SARs) có chung nguồn gốc với vi rút Corona ở loài dơi chứ không phải là loài chồn hôi (canivor) [24].
Các phương pháp bắt cặp hệ gen tiêu biểu như BLASTZ[18], SLAGAN[5], MAUVE[1] mới chỉ dừng lại ở mức phát hiện và sắp hàng các đoạn ADN tương đồng. Như vậy sẽ có một phần lớn trong hệ gen có thể không được bắt cặp và so sánh khi ta tiến hành với các loài sinh vật có hệ gen khác nhau nhiều. Giải quyết vấn đề này, Lê Sỹ Vinh và các đồng nghiệp đã giới thiệu một phương pháp có khả năng sắp hàng hoàn toàn được hệ gen của hai sinh vật bất kỳ “Pairwise Alignment with Rearrangement” [23].
Khi thực hiện với hai hệ gen, ta có xi và yj là một chuỗi các nucleotide, khi đó chi phí C(xi, yj) là chi phí nhỏ nhất để biến đổi xi thành yj. Một phép biến đổi M(i, j, t) được gọi là có thể thực hiện được (possible move) nếu chi phí CR của PAR mới tạo được từ XR và YR tốt hơn chi phí của PAR AR cũ. Ngược lại nếu ta sử dụng theo phương thức “Simulaneous character swapping “, yêu cầu độ phức tạp thời gian trong trường hợp xấu nhất từ dòng 6 đến dòng 16 chỉ còn là O(pq3), độ phức tạp thời gian yêu cầu cho cả bài toán là O(pq3) x iteration với iteration là số vòng lặp.
Một phép đổi chỗ được gọi là có thể thực hiện nếu nó làm cho chi phí CR(AR) giảm xuống. Trong thủ tục dưới đây, đầu vào sẽ là một PAR xuất phát, chừng nào còn tìm được một cách đổi chỗ có thể thực hiện thì ta sẽ tiến hành đổi chỗ để tìm ra PAR mới tối uy hơn, cập nhật lại PAR. Quá trình này dừng lại khi không có một phép đổi chỗ có thể thực hiện nào được tìm thấy.
Như vậy nhìn vào chương trình ta thấy từ dòng 4 đến dòng 7 độ phức tạp thời gian yêu cầu chỉ là O(pq). Dòng thứ 11 khởi động thuật toán quy hoạch động để sắp hàng hai chuỗi XR, YR cũng chỉ cần yêu cầu thời gian là O(pq) (Xem phần 1.2).
Thuật toán “Pairwise Alignment with Rearrangement”, sử dụng phương pháp bắt cặp trình tự theo thuật toán quy hoạch động của Needleman – Wunsch [16]( Xem phần 1.2). Trong hệ thống này, em sẽ sử dụng thay thế bằng một phương pháp khác sử dụng thuật toán quy hoạch động được đưa ra bởi Gotoh. Phương pháp mới này cho phép tính toán khoảng cách giữa các đoạn gen chính xác và hợp lý hơn so với phương pháp cũ của Needleman – Wunsch.
• Tiến hành tách từng hệ gen thành một dãy các đoạn ADN thành phần nhỏ liên tục dựa vào các vùng có độ tương đồng cao xác định được bởi BLASTZ. Áp dụng để sắp hàng từng cặp ADN thành phần trong hai hệ gen, xác định các phép biến đổi ở mức độ điểm (thay thế, chèn, xóa). • Sắp hàng toàn bộ hệ gen, xác định các biến đổi ở mức độ gen bằng thuật toán Pairwise Alignment with Rearrangement với Fast Swapping.
BLASTZ là phương pháp tìm kiếm các đoạn ADN tương đồng được phát triển bởi nhóm Miller thuộc trường Đại học Pennsylvania Hoa Kỳ. • Tiến hành tiếp tục mở rộng các cặp ADN ở bước 2 lại với nhau để tạo ra những cặp ADN lớn hơn bằng cách cho phép chèn thêm gap. Ví dụ khi chương trình nhận ra rằng nhiều khu vực trong một bộ gen của chuột được sắp hàng với cùng một phân khúc trong bộ gen của người, chương trình sẽ tự động đánh dấu để nó được bỏ qua trong các bước sau của quá trình bắt cặp.
Cải tiến này giúp BLASTZ không bắt cặp những đoạn ADN trùng nhau – những đoạn ADN có thể được nhân lên trong quá trình biến đổi và tiến hóa. Bước 2 tiến hành tìm kiếm các cặp hạt giống (seed) có độ tương đồng cao ở cả hai hệ gen, trong bước này BLAST sử dụng độ tương đồng 12of19 được đề xuất bởi Ma[15]. BLASTZ xây dưng một hệ thống tùy chọn, cho phép người dùng thay đổi các tham số của chương trình phù hợp với mục đích của người sử dụng.
Bước 4 là thực hiện ghi nhận lại vị trí các đoạn tương đông tìm được sao cho phù hợp với 2 hệ gen ban đầu. Cuồi cùng, BLASTZ có 1 tùy chọn cho phép việc đảo ngược một hệ gen rồi tiến hành sắp hành lại với hệ gen còn lại. Thứ nhất, áp dụng nhận xét của Ukkonen cho việc bắt cặp những trình tự gần giống nhau, Ukkonen chỉ ra rằng khi bắt cặp những trình tự gần giống nhau, chỉ có khu vực quanh đường chéo chính là được sử dụng.
[22] Do vậy chúng ta sử dụng thêm 1 barrier trong quá trình quy hoạch động để giảm thời gian thực hiện chương trình. Áp dụng nhận xét này cho thuật toán Gotoh, độ phức tạp giời gian giảm xuống O(dm) với d là khoảng cách độ dài giữa hai trình tự, m là độ dài của trình tự ngắn hơn. Thứ hai, trong quá trình quy hoạch động theo thuật toán Gotod, giá trị của 1 hàng chỉ được tính dựa vào 1 hàng trước nó, do vậy ta có thể sử dụng 2 mảng một chiều để thay thế cho 1 hàng hai chiều.
Cho biết thông tin về các biến đổi ở mức độ gen: số đoạn gen bị đảo ngược, dịch chuyển, chèn – xóa, …. Tiếp theo cho biết thông tin chi biết về các biến đổi ở mức độ điểm ở từng cặp gen: Số nucleotide bị thay thế, chèn, xóa, độ dài các đoạn gen, ….
Nhìn vào kết quả thực nghiệm ta có thể thấy chương trình luôn xác định ra những đoạn gen có tỷ lệ tương đồng cao, tỷ lệ sắp hàng chính xác của theo từng nucleotide vẫn luôn đạt ở mức cao, lớn hơn 97%. Đối với những bộ test càng có nhiều sự biến đổi phức tạo, tức là có sự kiện đảo ngược kết hợp với di chuyển các đoạn gen, tỷ lệ sắp hàng đúng của từng nucleotide với vị trí cũ trong hệ gen gốc giảm dần. Trong quá trình tìm kiếm các đoạn gen tương đồng, nếu phát hiện nhiều cặp gen có độ tương đồng giống nhau, chương trình sẽ ưa tiên lựa chọn căp gen tìm thấy đầu tiên.
Để kiểm nghiệm ta so sánh kết quả về điểm số đương đồng thu được từ chương trình sau khi đã chạy với hai hệ gen gốc (là tổng chi phí để sắp hàng các đoạn gen bao gồm chi phí sửa chữa ở mức độ điểm và chi phí sửa chữa ở mức độ gen) với kết quả khi bắt cặp hệ gen được chia sẵn các đoạn gen được chia dựa trên các đoạn gen nhỏ được chia sẵn trong Gen Bank sử dụng phương thức Kuhn- Munkres (Hungarian)[8]. Điều này là do chương trình xác định những cặp gen con tương đồng để chia nhỏ các hệ gen ra trước khi tiến hành bắt cặp một cách linh hoạt và hiệu quả hơn nhiều so với việc chia hệ gen cố định có sẵn. Trên thực tế với một số test, nếu thay đổi các ngưỡng các BLASTZ, số đoạn tương đồng nhận ra có thể tăng lên và các hệ gen được chia nhỏ thành nhiều đoạn con hơn, có thể nâng cao tỷ lệ độ tương đồng so với kết quả thu được từ thuật toán Hungarian khi chạy với các hệ gen được chia sắn bằng các đoạn gen con tại Gen Bank.