Mục tiêu của luận văn là: 1 Nắm bắt được các khái niệm cơ bản trong tin sinh học và các cơ sở dữ liệusinh học lớn trên thế giới, các phương pháp giải quyết bài toán sắp hàng trình tự,một
Trang 1ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
NGƯỜI HƯỚNG DẪN KHOA HỌC
TS Nguyễn Long Giang
Thái Nguyên - 2014
Trang 2MỤC LỤC
MỤC
LỤC 1
Danh mục các thuật ngữ 4
Danh sách bảng 5
Danh sách hình vẽ 6
MỞ ĐẦU 7
MỞ ĐẦU 7
Chương 1 CÁC KHÁI NIỆM CƠ BẢN 9
1.1 Các khái niệm cơ bản trong sinh học phân tử
9 1.2 Các bài toán cơ bản trong tin sinh học
12 1.3 Các ứng dụng của tin sinh học
13 1.4 Một số cơ sở dữ liệu sinh học lớn trên thế giới
14 Chương 2 BÀI TOÁN PHÂN TÍCH MỐI QUAN HỆ GIỮA CÁC TRÌNH TỰ .19
2.1 Bài toán phân tích mối quan hệ giữa hai trình tự
19 2.1.1 Giới thiệu bài toán 19
2.1.2 Phương pháp giải quyết bài toán 20
2.1.3 Thuật toán Needleman-Wunsch 23
2.2 Bài toán phân tích mối quan hệ cục bộ giữa hai trình tự
26 2.1.4 Giới thiệu bài toán 26
2.1.5 Thuật toán phân tích mối quan hệ cục bộ giữa hai trình tự 27
2.3 Tìm kiếm trình tự tương đồng bằng BLAST
31
Trang 32.3.1 Giới thiệu bài toán 31
2.3.2 Thuật toán BLAST 31
2.4 Bài toán phân tích mối quan hệ giữa đa trình tự
34 2.4.1 Giới thiệu bài toán 34
2.4.2 Thuật toán quy hoạch động 36
2.4.3 Thuật toán ngôi sao 39
2.4.4 Thuật toán sắp hàng lũy tiến 42
Chương 3 XÂY DỰNG CSDL HỆ GIEN TÔM SÚ VÀ TÍCH HỢP CÔNG CỤ BLAST 48
3.1 Kiến trúc hệ thống
48
Trang 43.2 Thiết kế cơ sở dữ liệu
49 3.2.1 Nguồn số liệu đầu vào 49
3.2.2 Thiết kế cơ sở dữ liệu 49
3.3 Thiết kế chức năng hệ thống
53 3.3.1 Mô hình phân cấp chức năng 53
3.3.2 Mô hình luồng dữ liệu 55
3.3.3 Đặc tả chi tiết một số chức năng cơ bản 57
3.4 Một số giao diện chương trình
64 3.4.1 Giao diện trang chủ 64
3.4.2 Nạp dữ liệu từ tệp XML 64
3.4.3 Nhập dữ liệu các trình tự Protein, Nucleotide, EST 64
3.4.4 Tra cứu thông tin 66
3.4.5 Tìm kiếm chuỗi tương đồng bằng BLAST 67
KẾT LUẬN 68
Tài liệu tham khảo .69
Trang 5Danh mục các thuật ngữ
Molecular biology Sinh học phân tử
Trang 6Danh sách bảng
Bảng 1.1 Tên đầy đủ, tên viết tắt của 5 loại nuclêôtít: 9
Bảng 1.2 Tên đầy đủ, tên viết tắt của 5 loại nuclêôtít 11
Bảng 2.1 Hai trình tự AND X và Y 19
Bảng 2.2 Hai trình tự và sau khi được sắp hàng 20
Bảng 2.3 Các cách sắp hàng khác nhau hai trình tự X và Y 21
Bảng 2.4 Ma trận điểm giữa các nuclêôtít 22
Bảng 2.5 Các cách sắp hàng khác nhau với tổng điểm khác nhau 23
Bảng 2.6 Bảng F của thuật toán quy hoạch động trên hai trình tự ADN 25
Bảng 2.7 Sắp hàng hai trình tự X và Y với tổng điểm lớn nhất 26
Bảng 2.8 Ma trận quy hoạch động F của bài toán sắp hàng cục bộ hai trình tự AND X và Y 30
Bảng 2.9 Sắp hàng cục bộ hai trình tự X và Y 30
Bảng 2.10 Minh họa ý tưởng của thuật toán BLAST 32
Bảng 2.11 Ba bắt cặp XY, XZ, YZ tương thích với nhau có thể kết hợp thành sắp hàng 3 trình tự 36
Bảng 2.12 Ba bắt cặp XY, XZ, YZ không tương thích với nhau để kết hợp thành sắp hàng 3 trình tự 36
Bảng 2.13 Sắp hàng tối ứu ba trình tự X, Y, Z 39
Trang 7Danh sách hình vẽ
Hình 1.1 Minh họa cấu trúc một Axit amin 10
Hình 1.2 Trung tâm thông tin công nghệ sinh học Hoa Kỳ 15
Hình 1.3 Cấu trúc cơ bản của NCBI 16
Hình 2.1 Sắp hàng lũy tiến với 5 trình tự 43
Hình 3.1 Kiến trúc hệ thống CSDL hệ gien tôm Sú 49
Hình 3.2 Mô hình CSDL hệ gien tôm Sú 50
Trang 8MỞ ĐẦU
Tin sinh học (bioinformatics) là một lĩnh vực khoa học sử dụng các công nghệcủa các ngành tin học, toán học ứng dụng, thống kê và khoa học máy tính để giảiquyết các bài toán trong sinh học Tin sinh học bao gồm việc xây dựng, quản lý vàlưu trữ nguồn dữ liệu quy mô toàn cầu liên quan đến sinh học, trên đó xây dựng vàhoàn thiện các chương trình máy tính xử lý dữ liệu, là công cụ hỗ trợ hiệu quả choviệc nghiên cứu, khám phá bản chất sinh học của giới tự nhiên và sản xuất ra cácsản phẩm sinh học mong muốn phục vụ đời sống con người Tin sinh học có tínhứng dụng cao trong cuộc sống, đặc biệt là trong lĩnh vực công nghệ sinh học, nông
nghiệp và y dược Các bài toán cơ bản trong tin sinh học bao gồm: quản lý và lưu trữ dữ liệu, phân tích mối quan hệ giữa các trình tự, dự đoán cấu trúc các trình tự,
mô hình hóa, nghiên cứu tiến hóa [4]
Một trong những bài toán quan trọng trong tin sinh học là phân tích mối quan
hệ giữa các trình tự, gọi tắt là phân tích trình tự Các bài toán cơ bản trong phân tíchtrình tự là: tìm kiếm trình tự tương đồng trong cơ sở dữ liệu; sắp hàng trình tự;chuyển đổi trình tự Mục tiêu của phân tích trình tự là:
Xác định các gien và các chức năng của từng gien.
Xác định sự lặp lại của các trình tự.
Xác định protêin dựa trên quy tắc sắp đặt của các biểu thức gien.
Xác định các vùng chức năng khác nhau của ADN
Mục tiêu của luận văn là:
1) Nắm bắt được các khái niệm cơ bản trong tin sinh học và các cơ sở dữ liệusinh học lớn trên thế giới, các phương pháp giải quyết bài toán sắp hàng trình tự,một trong những bài toán cơ bản trong phân tích trình tự
2) Xây dựng cơ sở dữ liệu cục bộ lưu trữ các chuỗi gien tôm sú (bao gồm cácchuỗi nuclêôtít, protêin và EST) và tích hợp các công cụ phân tích trình tự nhằmmục đích làm sáng tỏ các vấn đề nghiên cứu lý thuyết Dữ liệu được thu thập từPhòng công nghệ AND ứng dụng - Viện Công nghệ sinh học (nay là Viện Genomehọc) và từ các cơ sở dữ liệu sinh học trên Internet
Đối tượng nghiên cứu của luận văn là các chuỗi gene tôm Sú được thu thập từ
Viện Công nghệ sinh học và các chuỗi gene tôm Sú từ ngân hàng gene thế giới(genbank), bao gồm các chuỗi EST, Nucleotide và Protein
Trang 9Phạm vi nghiên cứu lý thuyết là bài toán phân tích trình tự trong tin sinh học,
phạm vi nghiên cứu thực nghiệm là xây dựng cơ sở dữ liệu và tích hợp công cụBLAST tìm kiếm trình tự tương đồng trong cơ sở dữ liệu các trình tự gien tôm Sú(bao gồm các trình tự nucleôtít, protêin và EST)
Phương pháp nghiên cứu của luận văn là nghiên cứu lý thuyết và nghiên cứu
thực nghiệm Về nghiên cứu lý thuyết: luận văn thực hiện tổng hợp các khái niệm
và các kết quả nghiên cứu về sắp hàng trình tự Về nghiên cứu thực nghiệm: luậnvăn thực hiện xây dựng cơ sở dữ liệu và tích hợp công cụ tìm kiếm trình tự tươngđồng BLAST trên cơ sở dữ liệu được xây dựng nhằm sáng tỏ các vấn đề về lýthuyết
Bố cục của luận văn gồm phần mở đầu và hai chương nội dung, phần kết luận
và danh mục các tài liệu tham khảo
Chương 1 trình bày các khái niệm cơ bản trong tin sinh học, các bài toán cơbản trong tin sinh học, các cơ sở dữ liệu sinh học lớn trên thế giới và một số ứngdụng của tin sinh học Chương 2 trình bày bài toán phân tích mối quan hệ giữa cáctrình tự và các thuật toán so sánh trình tự Chương 3 trình bày nội dung về ứngdụng thử nghiệm làm sáng tỏ các vấn đề nghiên cứu lý thuyết, bao gồm thiết
kế và xây dựng một cơ sở dữ liệu lưu trữ các trình tự gien của con tôm Sú, tíchhợp công cụ tìm kiếm trình tự tương đồng BLAST trên cơ sở dữ liệu cục bộđược xây dựng
Cuối cùng, phần kết luận nêu những đóng góp của luận văn, hướng phát triểntiếp theo
Trang 10Chương 1 CÁC KHÁI NIỆM CƠ BẢN 1.1 Các khái niệm cơ bản trong sinh học phân tử
Tin sinh học (Bioinformatics) là lĩnh vực khoa học mới có tính ứng dụng caotrong cuộc sống, đặc biệt là trong lĩnh vực công nghệ sinh học, nông nghiệp và y-dược Tin sinh học là lĩnh vực khoa học liên ngành, trong đó sinh học và tin họcđóng vai trò chủ đạo Về cơ bản, tin sinh học tập trung vào nghiên cứu, phát triển
và áp dụng các phương pháp và công cụ tin học để giải quyết các bài toán trongsinh học
Tiếp theo, luận văn giới thiệu một số khái niệm cơ bản trong sinh học phân tử.Sinh học phân tử (molecular biology) là một nhánh của sinh học (biology), tậptrung nghiên cứu các sinh vật ở mức độ phân tử Cụ thể là, sinh học phân tử tậptrung giải trình tự (sequencing) và phân tích các trình tự nuclêôtít (trình tự ADN),các trình tự axít amin (trình tự prôtêin) Trong phần này, luận văn tập trung giớithiệu các kiến thức cơ bản trong sinh học phân tử để sử dụng ở các chương sau
1) Axít nuclêic và nuclêôtít
Axít nuclêic (nucleic acid) là một đại phân tử sinh học (large biologicalmolecule) mang thông tin di truyền mã hóa các chức năng, và đặc điểm của mọisinh vật sống Axít nuclêic gồm hai loại: ADN ( Axít Deoxyribo Nuclêic) và ARN(Axít Ribo Nuclêic)
Thành phần cơ bản cấu tạo một trình tự axít nuclêic là các phân tử hóa họcnuclêotít (nucleotide) Trình tự ADN chứa bốn loại nuclêôtít khác nhau là: Adenine,Cytosine, Guanine, và Thymine Trình tự ARN có thành phần tương tự như trình tựADN, ngoại trừ nuclêôtít Thymine được thay thế bởi nuclêôtít Uracil Tức là, ARNchứa 4 loại nuclêôtít: Adenine, Cytosine, Guanine, và Uracil Tên đầy đủ, tên viếttắt của năm loại nuclêôtít được mô tả ở Bảng 1.1
Bảng 1.1 Tên đầy đủ, tên viết tắt của 5 loại nuclêôtít:
Trang 11Do đó, thông tin về một trình tự ADN được biểu diễn bằng một trình tự cácnuclêôtít nằm trên một sợi (các nuclêôtít nằm trên sợi còn lại có thể suy luận dựatheo quy tắc trên) Để đơn giản, một trình tự ADN sẽ được biểu diễn bởi một xâu kí
tự chứa 4 loại kí tự: A, C, G và T (tên viết tắt của 4 loại nuclêôtít) Ví dụ,
"CAGTTGACGGCGAACCGTGCGAGCAGACGGTCGTT" là một trình tự ADN.Với cách biểu diễn này, thông tin về các trình tự DN có thể được lưu giữ, tìm kiếm,
và trao đổi một cách hiệu quả
2) Protein và axit
amin
Prôtêin/trình tự prôtêin (protein) là loại dữ liệu phổ biến và quan trọng trongsinh học phân tử Nó quyết định đến chức năng, quá trình phát triển, cũng như cácbệnh tật của các sinh vật sống Prôtêin được cấu tạo bởi một trình tự các axít amin(amino acid), trong đó mỗi axít amin là một hợp chất hữu cơ được tạo bởi ba thànhphần chính là: nhóm amin (NH2), nhóm cacboxyl (COOH) và nhóm R quyết địnhtính chất của axít amin (xem Hình 1.1)
Hình 1.1 Minh họa cấu trúc một Axit
amin
Trong tự nhiên có 20 loại axít amin khác nhau như mô tả ở Bảng 1.2 Mỗi axítamin có tên đầy đủ, tên viết tắt 3 kí tự và tên viết tắt 1 kí tự Thông thường, chúng
ta sử dụng tên viết tắt một kí tự để biểu diễn một axít amin
Trình tự axít amin có thể được biểu diễn bằng một xâu kí tự chứa 20 loại kí tựkhác nhau, là tên viết tắt của 20 loại axít amin khác nhau Ví dụ:
„ESPQIRRDMGRLCATWPSKDSEDGAGTALRAATPLTANGATTTGLSVTLAPKQTNWDECWSSPCQNGGTCVDGVAYYNCTCPEGFSGSNCEENVDE‟ làmột trình tự axít amin Với cách biểu diễn này, chúng ta có thể dễ dàng lưu giữ các
Trang 12trình tự axít amin trong các cơ sở dữ liệu nhằm phục vụ nhiều mục đích khác nhau.
Bảng 1.2 Tên đầy đủ, tên viết tắt của 5 loại nuclêôtít
STT Tên axít amin Tên viết tắt (3 ký tự) Tên viết tắt (1 ký tự)
Nhiêm sắc thể (chromosome) là một cấu trúc trong tế bào chứa hai loại thông
tin là trình tự ADN và các prôtêin histone có nhiệm vụ kết hợp/đóng gói và điều
khiển các chức năng của trình tự ADN Độ dài của trình tự ADN trong một nhiễmsắc thể có thể từ vài nghìn cho đến hàng trăm triệu nuclêôtít Số lượng nhiêm sắcthể trong môi sinh vật có thể khác nhau Ví dụ, loài người có 23 cặp nhiễm sắc thểvới tổng độ dài lên tới 3 tỉ nuclêôtít
Tập hợp tất cả các nhiêm sắc thể của một sinh vật được gọi là hệ gien của sinh
vật Hệ gien sẽ mang toàn bộ thông tin di truyền quyết định đến chức năng và đặcđiểm của sinh vật Một hệ gien có thể chứa nhiều gien khác nhau Ví dụ hệ gienngười chứa khoảng 25 nghìn gien khác nhau Hai hệ gien của hai cá thể của cùng
Trang 13một loài (ví dụ của hai người khác nhau) thường rất giống nhau Sự khác nhau giữa
hệ gien của hai cá thể sẽ tạo ra sự khác nhau giữa hai cá thể đó
4) EST (expressed sequence tag)
EST, hay còn gọi là nhãn xác định trình tự biểu hiện, thực chất là các đoạntrình tự ngắn được trích ra từ một trình tự ADN đã biết Các trình tự ADN ngẫunhiên (có thể là trình tự đầy đủ hay các trình tự một phần EST) được xác định bằng
sử dụng phương pháp giải mã trình tự ngẫu nhiên rồi được đối chiếu với các đoạn
khung của hệ gen Các vùng tương ứng với các EST được xác định là các exon, còn các vùng nằm giữa các exon tương ứng với các intron (mặc dù, nguyên tắc cắt intron khác nhau có thể sử dụng một exon không có mặt trong ADN hay EST được
giải mã trình tự)
Các thông tin giải mã trình tự ADN và EST cũng giúp tìm được sự liên kết
giữa các contig, giữa các đoạn khung và giữa chúng với nhau Chẳng hạn như giả
sử có một phân tử ADN được phiên mã từ một gen kích thước rất lớn có chiều dàiintron là 100 KB hoặc hơn Có hai đoạn khung cùng chứa các trình tự khác nhaucủa phân tử ADN chung này, thì nhiều khả năng chúng là các vùng liên kết của hệgen và biểu hiện là các đoạn của cùng một gen
1.2 Các bài toán cơ bản trong tin sinh học
Một số bài toán cơ bản và quan trọng trong tin sinh học bao gồm:
1) Quản lý dữ liệu
Một trong các bài toán quan trọng đầu tiên của tin sinh học là xây dựng các hệthống dữ liệu để quản lý và khai thác một cách hiệu quả lượng dữ liệu sinh họckhổng lồ Dữ liệu sinh học bao gồm nhiều loại khác nhau, trong đó chủ yếu là cáctrình tự nuclêôtít, và các trình tự axít amin Lượng dữ liệu sinh học có thể lên đếnhàng triệu megabyte và được cập nhật liên tục theo thời gian Chi tiết về cấu trúc vàcách sử dụng các hệ thống dữ liệu sinh học sẽ được trình bày chi tiết ở chương Cơ
sở dữ liệu sinh học phân tử
2) Phân tích mối quan hệ giữa các trình tự
Phát triển các mô hình, các phương pháp và các công cụ tính toán để phân tích mối quan hệ giữa các trình tự sinh học (chủ yếu là các trình tự nuclêôtít/prôtêin)
là lớp bài toán cốt lõi trong tin sinh học Một số bài toán điển hình là sắp hàng hai trình tự, hay sắp hàng đa trình tự, đo độ giống nhau giữa các trình tự
3) Nghiên cứu tiến hóa
Trang 14Nghiên cứu quá trình tiến hóa và mối quan hệ giữa các loài sinh vật là bàitoán quan trọng trong sinh học Tin sinh học tập trung vào phát triển các mô hình
và phương pháp nhằm xây dựng mối quan hệ tiến hóa giữa các loài sinh vật dựavào phân tích mức độ giống nhau giữa các trình tự sinh học của chúng
4) Dự đoán cấu trúc bậc cao của các trình tự
Ngày nay, các máy giải trình tự thế hệ mới có thể giải trình tự hệ gien ngườitrong vòng một ngày với chi phí khoảng 50 nghìn Đô la Mỹ Tuy nhiên, việc xácđịnh được cấu trúc bậc cao của của các trình tự (phổ biến là các trình tự prôtêin)vẫn là một bài toán khó cả về mặt thời gian và chi phí c ác nghiên cứu tin sinh họcgiúp phát triển các mô hình, phương pháp và công cụ tính toán để dự đoán cấu trúcbậc cao của các trình tự dựa vào phân tích nội dung và mối quan hệ của chúng vớicác trình tự khác Các phương pháp dự đoán sẽ giảm thiểu một lượng lớn thời gian
và chi phí cho việc xác định cấu trúc bậc cao của các trình tự
1.3 Các ứng dụng của tin sinh học
Một số ứng dụng quan trọng của tin sinh học bao gồm:
1) Kiểm soát dịch bệnh
Đây là một vấn đề quan trọng trên thế giới, đặc biệt là đối với Việt Nam Tinsinh học sẽ phát triển các hệ thống theo dõi và dự đoán sự lây lan của các dịch bệnh.Các nghiên cứu trong tin sinh phân tích và tìm ra nguồn ngốc xuất hiện của cácbệnh dịch, đặc biệt là các bệnh dịch ảnh hưởng lớn đến sức khỏe con người, cũngnhư kinh tế xã hội
2) Phát triển thuốc và chẩn đoán bệnh
Các phương pháp và công cụ tin sinh học đóng vai trò quan trọng và khôngthể thiếu được trong việc phát triển và chế tạo các loại dược phẩm khác nhau Các
mô hình và phương pháp dự đoán cấu trúc sẽ giúp quá trình phát triển các loạithuốc mới diên ra nhanh hơn với chi phí thấp hơn Bên cạnh đó, các phương pháptin sinh học cũng được sử dụng để chẩn đoán các bệnh liên quan đến gien, đặc biệt
là các bệnh di truyền
3) Phát triển các giống cây trồng, vật nuôi
Một trong các ứng dụng nổi bật của tin sinh học là phát triển các phương phápphân tích nhằm tìm ra các gien quý hiếm ở các loại vật nuôi, cây trồng Việc này sẽgiúp đẩy nhanh quá trình tạo ra các giống vật nuôi cây trồng cho năng suất và hiệuquả kinh tế cao
Trang 151.4 Một số cơ sở dữ liệu sinh học lớn trên thế giới
Các công nghệ giải trình tự phát triển liên tục giúp chúng ta thu thập đượcmột số lượng lớn các trình tự ADN, cũng như các trình tự prôtêin tương ứng Đặcbiệt là các công nghệ giải trình tự thế hệ mới (next generation sequencingtechnologies) cho phép chúng ta giải trình tự một lượng khổng lồ dữ liệu ADNtrong một khoảng thời gian ngắn với chi phí thấp Nếu như trước đây, chúng ta phảitốn khoảng 3 tỉ Đô la Mỹ trong vòng 15 năm để giải trình tự hệ gien người, thì vớicông nghệ ngày này, chúng ta có thể giải trình tự hệ gien của một người trong vòngmột ngày với chi phí chỉ khoảng vài chục nghìn Đô la Mỹ
Theo số liệu từ cơ sở dữ liệu ngân hàng gen trên thế giới (GenBank - http://w
ww .ncbi.nl m n ih.gov / Genba n k / ), đến năm 2012 số lượng trình tự ADN đượclưu giữ tại cơ sở dữ liệu Genbank vào khoảng 160 triệu trình tự Số liệu từ cơ sở dữliệu UniProt (h t tp:/ / www u ni p r ot.o r g/) cho thấy, đến năm 2012 số lượng trình tựprôtêin được lưu giữ ở cơ sở dữ liệu UniProt vào khoảng 27 triệu trình tự Việc giảitrình tự và thu thập dữ liệu sinh học phân tử được tiến hành tại nhiều trung tâmcông nghệ sinh học khác nhau ở nhiều quốc gia trên thế giới Mặc dù việc giải trình
tự diễn ra ở nhiều nơi trên thế giới, gần như tất cả các dữ liệu thu được đều đượclưu giữ và chia sẻ tại các trung tâm thông tin về công nghệ sinh học lớn trên thếgiới như là:
(1) Trung tâm thông tin công nghệ sinh học quốc gia Hoa Kỳ NCBI (NationalCenter Biotechnology Information): http:// w w w nc b i.n l m .nih.go v /
(2) Trung tâm thông tin công nghệ sinh học Châu Âu EBI (EuropeanBiotechnology Information): htt p : / /ww w .ebi a c u k /
(3) Ngân hàng dữ liệu ADN của Nhật Bản (DNA Data Bank of Japan):
http://w ww .ddbj.n i g.ac jp/
Dữ liệu về các trình tự ADN từ ba trung tâm này thường xuyên được cập nhật,trao đổi với nhau hàng ngày để đảm bảo tính đầy đủ và thống nhất về các trình tựADN lưu giữ Phần tiếp theo, luận văn giới thiệu chi tiết về cơ sở dữ liệu của NCBItại địa chỉ http://www nc b i.nl m .n i h.g o v/
1) Trung tâm thông tin công nghệ sinh học Hoa Kỳ
Trang 16Hình 1.2 Trung tâm thông tin công nghệ sinh học Hoa Kỳ
NCBI là trung tâm thông tin trực tuyến bao gồm nhiều cơ sở dữ liệu khácnhau cũng như hàng loạt các công cụ tìm kiếm và phân tích dữ liệu trực tuyến Một
số chức năng chính của NCBI cung cấp cho người dùng là:
Tìm kiếm các loại dữ liệu sinh học phân tử theo các tiêu chí khác nhau Cho phép lưu giữ, sao chép và chia sẻ dữ liệu trên các cơ sở dữ liệu khác nhau do NCBI quản lý
Phân tích dữ liệu sử dụng các công cụ trực tuyến do NCBI tích hợp và cung cấp
Hình 1.3 là cấu trúc cơ bản về các cơ sở dữ liệu (CSDL) của NCBI với 5thành phần chính là: CSDL Nucleotide, CSDL Protein, CSDL Genome, CSDLStructure, và CSDL PubMed
CSDL Nucleotide: Cơ sở dữ liệu lưu giữ toàn bộ các trình tự ADN của các loài sinh vật đã được giải trình tự, lưu giữ và chia sẻ trên NCBI
CSDL Protein: Cơ sở dữ liệu lưu giữ toàn bộ các trình tự prôtêin của các
Trang 17loài sinh vật đã được giải trình tự, lưu giữ và chia sẻ trên NCBI
CSDL Genome: Cơ sở dữ liệu lưu giữ hệ gien của các loài sinh vật khácnhau đã được giải trình tự, lưu giữ và chia sẻ trên NCBI
CSDL Structure: Cơ sở dữ liệu lưu giữ thông tin, hình ảnh về cấu trúc bậccao (thường là cấu trúc không gian 3 chiều) của các trình tự prôtêin
CSDL PubMed: Cơ sở dữ liệu lưu giữ các tài liệu (chủ yếu là các bài báo,sách trực tuyến) liên quan đến các chủ đề trong sinh học và khoa học sựsống
Các cơ sở dữ liệu trên được liên kết với nhau giúp người dùng có thể dễ dàngtìm kiếm và sử dụng Việc tìm kiếm dữ liệu từ các cơ sở dữ liệu của NCBI đượcthực hiện bởi máy tìm kiếm Entrez
Hình 1.3 Cấu trúc cơ bản của NCBI
2) Định dạng chuẩn dữ liệu FASTA
Dữ liệu về các trình tự ADN được giải trình tự bởi các trung tâm công nghệsinh học khác nhau trên thế giới Dữ liệu về trình tự ADN thường bao gồm một sốthông tin chính sau:
(1) Tên loài sinh vật giải trình tự, tên này thường là tên khoa học, ví dụ nhưHomo Sapien (Người), Mus musculus (Chuột)
(2) Tên của trình tự ADN được giải trình tự
(3) Độ dài của trình tự ADN
Trang 18Tiêu đề: >gi|1293613|gb|U49845.1|SCU49845 Saccharomyces cerevisiae
(4) Các loại số hiệu của trình tự trong CSDL Genbank (số hiệu truy cập, sốhiệu GI, số hiệu phiên bản.)
(5) Nội dung các nuclêôtít trên trình tự ADN
Một trong các công việc khó khăn đầu tiên mà các nhà quản lý thông tin gặpphải là dữ liệu từ các trung tâm khác nhau có thể được lưu giữ với các định dạngkhác nhau Hơn nữa, dữ liệu tại các trung tâm thông tin khác nhau như NCBI, EBI,DDBJ cũng được lưu giữ theo các định dạng khác nhau Để giải quyết bài toán liênquan đến sự khác biệt về định dạng dữ liệu, chúng ta cần định ra các định dạng dữliệu chuẩn nhằm mục đích lưu giữ, và chia sẻ dữ liệu
FASTA là một trong các định dạng dữ liệu chuẩn, đơn giản và quan trọngđược đề xuất bởi William Pearson vào năm 1985 Đây là định dạng kiểu văn bản(text) để lưu giữ thông tin về các trình tự ADN (hay prôtêin) Định dạng FASTAđược sử dụng một cách rộng rãi như một định dạng chuẩn quốc tế cho tất cả các cơ
sở dữ liệu, và chương trình phần mềm
Định dạng FASTA được dùng để mô tả thông tin về một trình tự AND
(prôtêin) bao gồm hai phần: Phần tiêu đề và phần nội dung
Tiêu đề (headline) bao gồm 1 dòng bắt đầu bằng kí tự '>' và kết thúc bởimột kí tự xuống dòng (return) Phần này sẽ lưu giữ toàn bộ thông tin mô tả
về trình tự ADN/prôtêin như tên trình tự, độ dài của trình tự, ngày thángtiến hành giải trình tự, loại dữ liệu v.v
Thông tin về các nuclêôtít của trình tự: Tất cả các kí tự không thuộc vềphần tiêu đề sẽ là dữ liệu mô tả các nuclêôtít của trình tự ADN Phầnthông tin này có thể chứa các kí tự cách
Ví dụ: Một tệp dữ liệu theo định dạng FASTA như sau:
>gi|1293613|gb|U49845.1|SCU49845 Saccharomyces cerevisiae
TCP1-beta gene, partial cds; and Axl2p (AXL2) and Rev7p (REV7) genes,complete cds
GATCCTCCATATACAACGGTATCTCCACCTCAGGTTTAGATCTCAACA ACGGAACCATTGCCGACATGAGACAGTTAGGTATCGTCGAGAGTTAC AAGCTA
Tiêu đề: Chứa các thông tin cơ bản về trình tự như là số hiệu GI của trình
Trang 19tự (1293613), GB (U49845.1), tên trình tự (SCU49845), tên sinh vật lấy
mẫu (Saccharomyces cerevisiae), tên các đoạn gien trên trình tự (Axl2p,
Rev7p) và một loạt các thông tin khác
Thông tin về các nuclêôtít của trình tự:
GATCCTCCATATACAACGGTATCTCCACCTCAGGTTTAGATCTCAACAACGGAACCATTGCCGACATGAGACAGTTAGGTATCGTCGAGAGTTACAAGCTA
Ngoài ra, còn dạng chuẩn ALN/ClustalW và dạng chuẩn GenBank
Trang 20Chương 2 BÀI TOÁN PHÂN TÍCH MỐI QUAN HỆ GIỮA
CÁC TRÌNH TỰ 2.1 Bài toán phân tích mối quan hệ giữa hai trình tự
2.1.1 Giới thiệu bài toán
Bài toán phân tích mối quan hệ giữa hai trình tự là bài toán so sánh một trình
tự chưa biết với một trình tự đã biết nhằm xác định mức độ giống nhau giữa hai
trình tự Với trình tự AND, mức độ giống nhau giữa hai trình tự ADN cho biết mốiquan hệ tiến hóa, cũng như sự giống nhau về chức năng của chúng Về cơ bản, haitrình tự ADN càng giống nhau, thì khả năng càng cao chúng tương đồng với nhau(cùng tiến hóa từ một trình tự ADN tổ tiên) và có sự giống nhau về chức năng Tức
là, xác định được mức độ giống nhau giữa hai trình tự ADN có thể giúp chúng taxác định được đặc điểm và chức năng cho các trình tự ADN mới dựa vào đặc điểm
và chức năng của các trình tự ADN đã biết trong cơ sở dữ liệu
Xét hai trình tự ADN X bao gồm 9 nuclêôtít và Y bao gồm 10 nuclêôtít được
cho ở Bảng 2.1 dưới đây Trong quá trình tiến hóa, các phép đột biến thay thếnuclêôtít làm cho nội dung của hai trình tự khác nhau, các phép đột biến thêm/mấtnuclêôtít làm cho độ dài của hai trình tự khác nhau
Bảng 2.1 Hai trình tự AND X và Y
Một loạt câu hỏi đặt ra khi tiến hành so sánh hai trình tự X và Y:
Mức độ giống nhau giữa hai trình tự ADN X và Y ?
Với mỗi nuclêôtít X ở vị trí thứ i trên trình tự X, cần biết:
1) X tương ứng với nuclêôtít nào trên trình tự Y?
2) X là một nuclêôtít mới được thêm vào trình tự X trong quá trình tiến hóa?3) Nuclêôtít tương đồng với X trên trình tự Y đã bị mất khỏi trình tự trong quá trình tiến hóa?
Trang 212.1.2 Phương pháp giải quyết bài toán
Để trả lời các câu hỏi trên, nghĩa là để giải quyết bài toán phân tích mối quan
hệ giữa hai trình tự, trong tin sinh học sử dụng một kỹ thuật gọi là sắp hàng hai
trình tự (pairwise alignment) X và Y.
Sắp hàng hai trình tự X và Y là quá trình chèn thêm các kí tự cách ' ' (mỗi kí
tự ' ' cho biết một nuclêôtít đã bị mất khỏi trình tự), vào cả hai trình tự ADN để thuđược hai trình tự mới và thỏa mãn các điều kiện ràng buộc sau:
1) Hai trình tự và có độ dài bằng nhau
2) Hai nuclêôtít ở cùng một vị trí trên hai trình tự và được cho là cùngtiến hóa từ một nuclêôtít tổ tiên chung
3) Không tồn tại bất cứ một vị trí i nào, mà cả trình tự và cùng chứa dấu
' ' Nói cách khác, việc chèn kí tự ' ' vào cùng một ví trí trên cả hai trình
được chèn thêm vào trình tự Y, ta gọi phép đột biến ở vị trí 4 là
"thêm/mất" hay gọi tắt là "indel"
Một đột biến ở vị trí số 9, nuclêôtít T ở trình tự bị đột biến thànhnuclêôtít G ở trình tự hoặc ngược lại
Bảng 2.2 Hai trình tự và sau khi được sắp hàng
Trang 22A, C, G, T ,
Tức là, có 3 phép đột biến (hai phép thay thế và một phép thêm/mất) giữa hai
trình tự X và Y Dễ thấy có nhiều cách sắp hàng khác nhau hai trình tự X, Y Bảng 2.3 biểu diễn hai cách sắp hàng khác của hai trình tự X và Y:
Có 4 phép đột biến trong cách sắp hàng X1 và Y1; trong đó có 3 phép thaythế và 1 phép thêm/mất
Có 6 phép đột biến trong cách sắp hàng X2 và Y2; trong đó có 3 phép thay
thế' và 3 phép thêm/mất Độ dài của X2 và Y2 cũng lớn hơn độ dài của X
Một sắp hàng được gọi là tốt nhất (tối ưu) nếu như mức độ giống nhau giữa hai trình tự ADN và sau khi sắp hàng là lớn nhất.
Tiếp theo sẽ trình bày cách đo độ giống nhau giữa hai trình tự ADN sau khiđược sắp hàng Gọi A là tập các kí tự có thể xuất hiện trên trình tựADN, trong đó:
A, C, G, T là bốn loại nuclêôtít
' ' là kí tự cách biểu diễn cho một nuclêôtít đã bị mất khỏi trình tự.
Gọi là ma trận điểm xác định mức độ giống nhau giữa các kí tự, trong đó
(x, y) là điểm giống nhau giữa hai kí tự
trận điểm , trong đó:
xx,
y A Bảng 2.4 mô tả một ví dụ về maĐiểm giữa hai nuclêôtít giống nhau (match score) là 2 Điểm này thường
Trang 23có giá trị dương, cho nên thường gọi là điểm thưởng.
Điểm giữa hai nuclêôtít khác nhau (mismatch score) là -1 Đây là điểmcho một một phép thay thế nuclêôtít
Điểm giữa một nuclêôtít và kí tự ' ' (indel score) là -2 Đây là điểm chomột phép thêm/mất Điểm này có giá trị âm, cho nên thường gọi là điểmphạt
Điểm giữa 2 kí tự ' ' là 0 Điều này thể hiện việc chèn thêm hai kí tự ' 'vào cùng một vị trí trên hai trình tự là vô nghĩa, nó sẽ không làm thay đổimức độ giống nhau giữa hai trình tự
Lưu ý, ma trận điểm là ma trận đối xứng, tức là (x, y) = (y, x) với mọi
Một trình tự ADN bao gồm n nuclêôtít được biểu diễn bởi một xâu gồm n kí
tự X trong đó x i là một nuclêôtít Trình tự ADN X i
hàng khác nhau hai trình tự X, Y như ở Bảng 2.5 Cụ thể là, cách sắp hàng và
Trang 24Bảng 2.5 Các cách sắp hàng khác nhau với tổng điểm khác nhau
2.1.3 Thuật toán Needleman-Wunsch
Với hai trình tự ADN X và Y, có thể sắp hàng chúng theo nhiều cách khác
nhau Phần tiếp theo sẽ trình bày thuật toán Quy hoạch động Needleman-Wunsch
[4] để sắp hàng tối ưu X và Y với tổng điểm lớn nhất.
Tư tưởng của thuật toán quy hoạch động là xây dựng lời giải của bài toán lớndựa trên lời giải của các bài toán có kích thước nhỏ hơn (gọi là các bài toán con).Nghiệm của các bài toán con được lưu vào bảng quy hoạch động để không phảigiải bài toán con nhiều lần; đồng thời làm cơ sở để xây dựng nghiệm của bài toánlớn Thuật toán quy hoạch động gồm những bước chính sau đây:
Bước 1: Tìm bài toán cơ sở mà nghiệm tối ưu của bài toán cơ sở có thể dễ
dàng tìm được Trong trường hợp bài toán sắp hàng hai trình tự, bài toán
cơ sở là bài toán sắp hàng hai trình tự có độ dài bằng 0 Nghiệm tối ưu củabài toán là 0
Bước 2: Xây dựng công thức truy hồi để có thể tìm nghiệm tối ưu của bài
toán có kích thước lớn dựa vào nghiệm của các bài toán có kích thước nhỏhơn Trong trường hợp bài toán sắp hàng hai trình tự, nghiệm tối ưu củabài toán với hai trình tự tiền tố và được xây dựng dựa vào nghiệm tối ưu
Trang 25của ba bài toán có kích thước nhỏ hơn là:
Nghiệm của bài toán với hai trình tự tiền tố X p ,Y
Nghiệm của bài toán với hai trình tự tiền tố X p ,Y
Nghiệm của bài toán với hai trình tự tiền tố X p ,Y q
Bước 3: Từ bảng lưu nghiệm của các bài toán với kích thước khác nhau, xây dựng nghiệm của bài toán toán với dữ liệu đầu vào
Thuật toán Needleman-Wunsch được mô tả chi tiết như sau:
Thuật toán Needleman-Wunsch bắt cặp hai trình tự AND
Dữ liệu vào: Hai trình tự X p và Y q ; ma trận điểm C đo mức
độ giống nhau giữa các kí tự thuộc tập kí tự A
Yêu cầu: Chèn thêm các kí tự ' ' vào hai trình tự X và Y để tổng điểm giữa hai trình
tự sau khi sắp hàng là lớn nhất
Dữ liệu ra: Hai trình tự X và Y là kết quả của việc sắp hàng, và mức độ giống nhau
giữa chúng
Ý tưởng: Gọi:
X i : Trình tự tiền tố gồm i nuclêôtít đầu tiên của X;
Y j : Trình tự tiền tố gồm j nuclêôtít đầu tiên của Y.
Trang 26Nếu F i C là giá trị lớn nhất, nuclêôtít x i ở vị trí thứ i trên trình tự X sẽ được bắt cặp với ' ' Tức là nuclêôtít x i bị mất khỏi trình tự
Y.
tự Y sẽ được bắt cặp với ' ' Tức là nuclêôtít y j bị mất khỏi trình tự X.
Thuật toán:
Bước 1: Khởi tạo giá trị F(0, 0) = 0 cho bài toán cơ sở X 0 , Y 0
Bước 2: Với mọi cặp giá trị i , tính giá trị F i, j cho cặptiền tố X i ,Y j theo công thức 2.1
Bước 3 : Gọi F p, q là nghiệm tốt nhất của bài toán cho hai trình tự X và
Y Sử dụng bảng F để thực hiện chèn các kí tự ' ' vào hai trình tự X và Y
để thu được hai trình tự sắp hàng X và Y tương ứng
Ví dụ: Xét hai trình tự X = „ACTACGGTT‟ bao gồm 9 nuclêôtít và Y =
„AGTGACGGGT‟ bao gồm 10 nuclêôtít, ta có bảng F như ở Bảng 2.6.
Bảng 2.6 Bảng F của thuật toán quy hoạch động trên hai trình tự ADN
j
1A
2G
3T
4G
5A
6C
7G
8G
9G
10T
0 0 -2 -4 -6 -8 -10 -12 -14 -16 -18 -20
1 A -2 2 0 -2 -4 -6 -8 -10 -12 -14 -16
Trang 27Từ Bảng 2.6 ta thấy nghiệm tốt trong bài toán sắp hàng hai trình tự X =
„ACTACGGTT‟ và Y = „AGTGAC GGGT‟ là 10 Kết qua sắp hàng X và Y để thu
được tổng điểm là 10 được trình bày ở Bảng 2.7
Bảng 2.7 Sắp hàng hai trình tự X và Y với tổng điểm lớn nhất
2.2 Bài toán phân tích mối quan hệ cục bộ giữa hai trình tự
2.1.4 Giới thiệu bài toán
Khi phân tích hai trình tự ADN, chúng ta thường quan tâm đến những đoạn có
độ tương đồng cao giữa chúng Những đoạn này có thể là những đoạn mã hóaprôtêin và quyết định đến đặc điểm và chức năng của trình tự (những đoạn quyếtđịnh chức năng của trình tự thường không thay đổi nhiều trong quá trình tiến hóa
Trang 28Ta thấy đoạn:
„GATTATTGGTTGTTGCGGCATTGCCCTGACTGCGGAGTGCCAACCTCTTCCTG‟ xuất hiện trên cả hai trình tự X và Y
Bài toán tìm cặp đoạn có độ giống nhau cao giữa hai trình tự ADN được gọi
là bài toán phân tích mối quan hệ cục bộ, hay bài toán sắp hàng cục bộ hai trình tự
(local pairwise alignment) và được phát biểu như sau:
Cho hai trình tự ADN X p và Y q , hãy tìm cặp đoạn con liên tiếp X i, j j trên trình tự X và Y k , t
t
trên trình tự Y có
độ giống nhau cao nhất.
2.1.5 Thuật toán phân tích mối quan hệ cục bộ giữa hai trình tự
Chúng ta có thể biến đổi thuật toán quy hoạch động giải quyết bài toán phântích mối quan hệ cục bộ hai trình tự, gọi tắt là thuật toán sắp hàng cục bộ hai trình
tự Tư tưởng của thuật toán là: Nghiệm tối ưu của bài toán sắp hàng cục bộ với hai
trình tự tiền tố X p và Y q được xây dựng trên nghiệm tối ưu của ba bài toán sắp hàngcục bộ hai trình tự có kích thước nhỏ hơn:
Nghiệm tối ưu của bài toán sắp hàng cục bộ hai trình tự tiền tố Xp , Y q
Nghiệm tối ưu của bài toán s ắp hàng cục bộ hai trình tự tiền tố Xp-1 , Y q
Nghiệm tối ưu của bài toán sắp hàng cục bộ hai trình tự tiền tố Xp , Y q-1
Hơn thế nữa, nghiệm tối ưu của bài toán sắp hàng cục bộ hai trình tự tiền tố
Trang 29Thuật toán sắp hàng cục bộ hai trình tự ADN được trình bày chi tiết như sau:
Thuật toán sắp hàng cục bộ hai trình tự AND (local pairwise alignment)
Dữ liệu vào: Hai trình tự X p và Y q ; ma trận điểm C đo mức
độ giống nhau giữa các kí tự thuộc tập kí tự A
Yêu cầu: Tìm cặp đoạn con liên tiếp X i, j j trên trình tự X và
Y k , t
t
trên trình tự Y có độ giống nhau cao nhất
Dữ liệu ra: Cặp đoạn con liên tiếp X i, j j trên trình tự X và
Y k , t
t
trên trình tự Y; và độ giống nhau giữa chúng
Ý tưởng: Gọi:
X i : Trình tự tiền tố gồm i nuclêôtít đầu tiên của X;
Y j : Trình tự tiền tố gồm j nuclêôtít đầu tiên của Y.
Trang 30Nếu F i C là giá trị lớn nhất, nuclêôtít x i ở vị trí thứ i trên trình tự X sẽ được bắt cặp với ' ' Tức là nuclêôtít x i bị mất khỏi trình tự
Y.
trình tự Y sẽ được bắt cặp với ' ' Tức là nuclêôtít y j bị mất khỏi trình tự
Bước 1: Khởi tạo giá trị F(0, 0) = 0 cho bài toán cơ sở X 0 , Y 0
Bước 2: Với mọi cặp giá trị i , tính giá trị F i, j cho cặptiền tố X i ,Y j theo công thức 2.2
Bước 3: Tìm phần tử F k , t có giá trị lớn nhất trong bảng F ( F k , t
là
nghiệm tốt nhất của bài toán sắp hàng cục bộ hai trình tự X và Y).
Bước 4: Sử dụng bảng F để thực hiện chèn các kí tự ' ' vào hai trình tự X
và Y để thu được cặp hai đoạn X i, j j trên trình tự X và
Y k , t
t
trên trình tự Y có độ giống nhau là F k , t
Điểm khác biệt giữa công thức quy hoạch động cho bài toán sắp hàng haitrình tự và bài toán sắp hàng cục bộ hai trình tự nằm ở dòng đầu tiên của công thức(2.2), thể hiện rằng nghiệm tồi nhất của bài toán sắp hàng địa phương hai trình tự là
Trang 31Xét ví dụ hai trình tự X = "TCGGTGACC" và Y = "AGGGGACGGG", ma
trận quy hoạch động F tính theo công thức (2.2) được biểu diên trên Bảng 2.8 Giá trị F(k, t) = 9 là lớn nhất trong bảng F với k = 8, t = 7 Bảng 2.9 là sắp hàng cục bộ
tốt nhất của hai trình tự X và Y Cặp đoạn (3,8) và (3,8) có độ giống nhau bằng
9 và lớn nhất Lưu ý, cặp đoạn (3,8) và (3,8) tương ứng với X(3,8) trên trình tự
2G
3G
4G
5G
6A
7C
8G
9G
10G
Nhận xét: Độ phức tạp tính toán của thuật toán quy hoạch động để sắp hàng
địa phương hai trình tự là O(pq) với p và q là độ dài tương ứng của hai trình tự Với
độ phức tạp này, thuật toán quy hoạch động có thể sắp hàng địa phương hai trình tựvới độ dài hàng nghìn nuclêôtít
Trang 32x1, ,
x
y1, ,
y
Xác định cấu trúc và chức năng của một trình tự mới được giải mã X là một
trong những bài toán quan trọng trong lĩnh vực nghiên cứu về tin sinh học Có
nhiều cách để xác định cấu trúc và chức năng của một trình tự X Thông thường, dự đoán chức năng và cấu trúc của X dựa vào chức năng và cấu trúc của các trình tự
đã biết và có độ giống nhau cao với X.
Bài toán phân tích mối quan hệ của hai trình tự X và Y đã trình bày ở trên, hay bài toán sắp hàng hai trình tự X và Y, để tìm ra cặp đoạn giống nhau lớn nhất giữa
hai trình tự đã được giải quyết bằng thuật toán quy hoạch động với độ phức tạp là
O(pq), trong đó p và q là độ dài tương ứng của hai trình tự X và Y Có thể sử dụng
thuật toán quy hoạch động trên để tìm tất cả các cặp đoạn có độ giống nhau cao
giữa X và Y Tuy nhiên, độ phức tạp của thuật toán quy hoạch động không cho phép
so sánh trình tự X với toàn bộ các trình tự (khoảng 130 triệu trình tự) hiện có trong
cơ sở dữ liệu Genbank của NCBI
Các phương pháp gần đúng đã được đề xuất để giải quyết bài toán tìm tất cảcác trình tự trong cơ sở dữ liệu có độ giống nhau cao với một trình tự cho trước.Một trong các phương pháp hiệu quả và phổ biến nhất là BLAST (Basic LocalAlignment Search Tool) được đề xuất bởi Alschul và đồng nghiệp vào những năm
1970 Thuật toán BLAST cho phép so sánh rất nhanh một trình tự X với các trình tự
trong cơ sở dữ liệu để tìm ra các cặp đoạn có độ giống nhau cao giữa chúng Thuậttoán BLAST được phát triển để có thể làm việc được với nhiều loại dữ liệu khácnhau
2.3.2 Thuật toán BLAST
Thuật toán BLAST được đề xuất để tìm các cặp đoạn có độ giống nhau cao
giữa một trình tự đầu vào X (query) với các trình tự có sẵn trong cơ sở dữ liệu Để
dễ dàng hiểu được thuật toán BLAST, luận văn sẽ trình bày thuật toán BLAST để
tìm các cặp đoạn có độ giống nhau cao giữa hai trình tự nuclêôtít X và Y.
Xét hai trình tự nuclêôtít X p và Y q , thuật toán BLAST
xuất phát từ nhận xét sau: „Cặp đoạn có độ giống nhau cao giữa hai trình tự X và Y
thường phải chứa một đoạn chung giống hệt nhau (identical), gọi là đoạn hạt giống
(seed), với độ dài lớn hơn hoặc bằng k (mặc định k = 11)‟ Tư tưởng chính của
thuật toán BLAST như sau (xem minh họa ở Bảng 2.10):
Trang 33Tìm tất cả các đoạn hạt giống giữa hai trình tự X và Y.
Với mỗi đoạn hạt giống:
Xác định vị trí xuất hiện của nó trên hai trình tự X và Y.
Mở rộng nó về cả hai phía trái và phải để thu được cặp đoạn có độ giốngnhau cao giữa X và Y Quá trình mở rộng sẽ dừng lại nếu như việc mởrộng thêm 1 vị trí sẽ làm điểm giống nhau của cặp đoạn mở rộng nhỏhơn điểm giống nhau cao nhất tìm được trong quá trình mở rộng mộtngưỡng cho trước
Bảng 2.10 Minh họa ý tưởng của thuật toán BLAST
Trình tự X
Trình tự Y
AAAAAAAAAAAAAGCGCGCGCGCTTTTTTTTTTTTT TTAAATGCGCGCGCGCTGTTTTTGGGGGGGG
Trình tự X
Trình tự Y
AAAAAAAAAAAAAGCGCGCGCGCTTTTTTTTTTTTT TTAAATGCGCGCGCGCTGTTTTTGGGGGGGG
Trình tự X
Trình tự Y
S = „GCGCGCGCGCT‟ là một đoạn hạt giống giữa X và Y
AAAAAAAAAAAAAGCGCGCGCGCTTTTTTTTTTTTT TTAAATGCGCGCGCGCTGTTTTTGGGGGGGG
Mở rộng đoạn hạt giống về hai phía để thu được cặp đoạn có độ
giống nhau cao giữa hai trình tự X và Y (phần in đậm).
Thuật toán BLAST đơn giản cho hai trình tự ADN
Dữ liệu vào: Hai trình tự ADN X p và Y q ; ma trận điểm giốngnhau C giữa các nuclêôtít; ngưỡng giảm điểm ; độ dài k của đoạn hạt giống (mặc định k = l l đối với hai trình tự ADN).
Yêu cầu: Liệt kê tất cả các cặp đoạn có độ giống nhau cao giữa hai trình tự X và Y.
Dữ liệu ra: Các cặp đoạn có độ giống nhau cao giữa hai trình tự X và Y.
Trang 34Bước 3: Với mỗi cặp đoạn hạt giống (X i , Y j ), mở rộng cặp đoạn X i , Y j sang
cả bên trái và sang cả bên phải để thu được cặp đoạn giống nhau dài hơntheo quy tắc: Quá trình mở rộng sẽ dừng lại nếu như việc mở rộng thêm 1
vị trí sẽ làm điểm giống nhau của cặp đoạn mở rộng nhỏ hơn điểm giốngnhau cao nhất tìm được trong quá trình mở rộng một ngưỡng Quá trình
mở rộng sẽ được tiến hành lặp đi lặp lại cho đến khi không thể mở rộng
được nữa Gọi (X i , Y j ) là cặp đoạn thu được sau khi kết thúc quá trình mở rộng Cặp đoạn (X i , Y j ) được gọi là cặp đoạn có điểm giống nhau cao giữa X và Y (High Scoring Segment Pair - HSP).
Bước 4: Với mỗi cặp đoạn có điểm giống nhau cao (X i , Y j ), tính giá trị E
- value theo công thức sau:
E
trong đó: S là điểm giống nhau của cặp đọan (X i , Y j ) ; và K là hai tham
số dùng để điều chỉnh phân bố của điểm S tương ứng với ma trận điểm C . Giá trị E cho biết số cặp đoạn có thể xuất hiện ngẫu nhiên giữa X
và Y mà có điểm giống nhau lớn hơn hoặc bằng S Giá trị
j
càng cao, thể hiện khả năng càng cao rằng cặp đoạn (X i ,
Y j )
là xuất hiện ngẫu nhiên; giá
trị E j i ,Y càng nhỏ thể hiện hai đoạn
X i , Y j có quan hệ với nhau; việc bắt cặp chúng với nhau có khả năng thấp
là do ngẫu nhiên
Trang 35A, C, G, T ,
X1, ,
2.4 Bài toán phân tích mối quan hệ giữa đa trình tự
2.4.1 Giới thiệu bài toán
Bài toán phân tích mối quan hệ giữa hai trình tự X và Y được thực hiện bằngphương pháp sắp hàng giữu hai trình tự X và Y như mô tả ở phần 2.1 Để phân tíchmối quan hệ giữa nhiều trình tự khác nhau, giống như ý tưởng bài toán phân tíchmối quan hệ giữa 2 trình tự, ta cần tiến hành sắp hàng nhiều trình tự ADN với nhau,gọi là bài toán sắp hàng đa trình tự Sắp hàng đa trình tự cho biết được mức độgiống nhau và quan hệ giữa nhiều trình tự ADN Sắp hàng đa trình tự là bài toàntổng quát của sắp hàng hai trình tự và được phát biểu đơn giản như sau:
Sắp hàng đa trình tự là quá trình chèn thêm các kí tự ' ' (cho biết mộtnuclêôtít đã bị mất khỏi trình tự) vào các trình tự ADN để sau khi sắp hàng thuđược các trình tự ADN thỏa mãn các điều kiện ràng buộc sau:
Các trình tự sau khi sắp hàng có độ dài bằng nhau, và độ dài đó được gọi
là độ dài của đa trình tự sắp hàng
Các nuclêôtít ở cùng một vị trí trên các trình tự được cho tương đồng, tức
là cùng tiến hóa từ một nuclêôtít tổ tiên chung
Không tồn tại bất cứ một vị trí i nào mà tất cả các trình tự cùng chứa kí tự' ' Nói một cách khác, việc chèn kí tự ' ' vào cùng một vị trí trên tất cảcác trình tự là không có ý nghĩa
Tương tự như bài toán sắp hàng hai trình tự, dễ thấy tồn tại nhiều đa sắp hàng
khác nhau cho một tập n trình tự đầu vào A Giống như bài toán sắp hàng hai trình
tự, cần xác định một tiêu chuẩn để lựa chọn đa sắp hàng tốt nhất (tối ưu):
Một đa sắp hàng được gọi là tốt nhất (tối ưu) nếu như tổng mức độ giống nhau giữa các trình tự ADN sau khi sắp hàng là lớn nhất.
Điểm giống nhau của một đa trình tự
Sau đây luận văn trình bày cách xác định điểm giống nhau của một đa trình tựsắp hàng Nhắc lại, A là tập bao gồm 4 kí tự biểu diễn bốn loạinuclêôtít A, C, G, T và kí tự ' ' biểu diên một nuclêôtít đã bị xóa khỏi trình tự Gọi
A X n là tập n trình tự ADN với độ dài lần lượt là k1 , , k n ; X
i
s A là
nuclêôtít thứ s của trình tự ADN X i
Trang 36Sự tương thích giữa các bắt cặp hai trình tự
Điểm giống nhau của một đa trình tự sắp hàng được tính bằng tổng điểmgiống nhau của tất cả các bắt cặp (hai trình tự sắp hàng) Vậy liệu có thể kết hợpcác bắt cặp với nhau thành một đa trình tự sắp hàng?
Xét ví dụ ba trình tự X = „AAAATTTT‟, Y = „TTTTGGGG‟ và Z =
„AAAAGGGG‟ Nếu tiến hành sắp hàng từng cặp hai trình tự một, ta có thể thu
được các bắt cặp là: XY, XZ và YZ như ở Bảng 2.11 Các bắt cặp này tương thích với nhau và có thể kết hợp với nhau để thu được một sắp hàng của ba trình tự X, Y, Z.