Bài giảng Giải thuật nâng cao: Quy hoạch động cho bài toán Sequence Alignment - TS. Ngô Quốc Việt
lượt xem 7
download
Chương này gồm có những nội dung chính sau: Giới thiệu tóm tắt về dự án Human Genome; bài toán sequence alignment: Các vấn đề cần giải quyết, scoring system, lập trình động cho vấn đề pairwise alignment; bài toán local sequence alignment. Mời tham khảo.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Giải thuật nâng cao: Quy hoạch động cho bài toán Sequence Alignment - TS. Ngô Quốc Việt
- QUY HOẠCH ĐỘNG CHO BÀI TOÁN SEQUENCE ALIGNMENT TS. NGÔ QUỐC VIỆT 2015
- Nội dung • Giới thiệu tóm tắt về dự án Human Genome • Bài toán sequence alignment • Các vấn đề cần giải quyết • Scoring system • Lập trình động cho vấn đề pairwise alignment • Bài toán local sequence alignment Giải thuật nâng cao-DP-Sequence Alignment 2
- Human genome project (HGP) – some milestones • 1977. Allan Maxam and Walter Gilbert at Harvard University and Frederick Sanger at the U.K. Medical Research Council (MRC) phát triển các phương pháp sequencing DNA. • 1988. NIH (National Institutes of Health) thành lập Office of Human Genome Research. • 1995. Patrick Brown of Stanford và cộng sự đăng first paper sử dụng printed glass microarray of complementary DNA (cDNA) probes • Các nhà nghiên cứu ở Whitehead và Généthon (Lander, Thomas Hudson at Whitehead) đăng physical map của human genome chứa 15,000 markers. • 1996. NIH tài trợ 6 nhóm giải quyết large-scale sequencing of the human genome. • An international consortium publicly releases the complete genome sequence of the yeast • 1998 NIH công bố dự án tìm SNP (Single Nucleotide Polymorphism) • 2001 The HGP consortium publishes its working draft in Nature (15 February), Celera publishes its draft in Science (16 February). • 2006. Sequence tất cả chromosomes finalized. Giải thuật nâng cao-DP-Sequence Alignment 3
- Giới thiệu • Alignment nhằm: xác định hai hoặc nhiều chuỗi có liên quan với nhau hay không (quá trình tiến hóa). • Ví dụ: tìm được gene mới của người. Mong muốn xác định các tính chất. Khi đó, cần xác định phần tương ứng có trong chuột. Có hàng vạn gene của chuột, cần tìm cái nào tương ứng nhất với gene vừa tìm được. • Align proteins chia sẻ chức năng để xác định các chuỗi peptide có ảnh hưởng nhiều đến chức năng đó. • Align các chuỗi DNA nhằm xác định (chức năng hay tiến hóa) các gene liên quan để tìm các segments gắn liền với transcription factors. Giải thuật nâng cao-DP-Sequence Alignment 4
- Giới thiệu Giải thuật nâng cao-DP-Sequence Alignment 5
- Giới thiệu • Alignment là nền tảng để xác định các quan hệ tiến hóa. • Ví dụ: http://www.computational-genomics.net/case_studies/sabertooth_demo_37.png Giải thuật nâng cao-DP-Sequence Alignment 6
- Sequence Alignment • Trong thiết kế và/hoặc diễn dịch dữ liệu của các kỹ thuật high-throughput screening (dùng trong dược) dựa trên chuỗi. Khi đó so sánh chuỗi là cần thiết nhằm: - Để xác định microarray probes không có sequence tương tự với các gene khác. - Để match các sequence trong high-throughput sequencing data sang genome. - Để tìm motifs dựa trên ChIP-chip/ChIP-seq data. Giải thuật nâng cao-DP-Sequence Alignment 7
- Sequence Alignment AGGCTATCACCTGACCTCCAGGCCGATGCCC TAGCTATCACGACCGCGGTCGATTTGCCCGAC -AGGCTATCACCTGACCTCCAGGCCGA--TGCCC--- TAG-CTATCAC--GACCGC--GGTCGATTTGCCCGAC • Định nghĩa: Cho hai chuỗi 𝑥 = 𝑥1𝑥2 … 𝑥𝑀, 𝑦= 𝑦1𝑦2 … 𝑦𝑁, Alignment là gán các gap vào các vị trí 0, … , 𝑁 trong chuỗi x, và 0, … , 𝑁 trong y, sao cho align thẳng hàng các chữ trong một chuỗi với chữ hoặc gap của chuỗi kia. Giải thuật nâng cao-DP-Sequence Alignment 8
- Sequence Alignment: Các vấn đề Không gian tìm kiếm lớn (số các alignments) Sequence 1: GSAQVK Sequence 2: GNPKVK GSAQVK----- GSAQVK---- -----GNPKVK ----GNPKVK GSAQ--VK -----GSAQVK -G-NPKVK GNPKVK----- Chọn giải pháp nào?? Giải thuật nâng cao-DP-Sequence Alignment 9
- Tiêu chuẩn đánh giá alignment AGGCTAGTT, AGCGAAGTTT AGGCTAGTT- 6 matches, 3 mismatches, 1 gap AGCGAAGTTT AGGCTA-GTT- 7 matches, 1 mismatch, 3 gaps AG-CGAAGTTT AGGC-TA-GTT- 7 matches, 0 mismatches, 5 gaps AG-CG-AAGTTT Giải thuật nâng cao-DP-Sequence Alignment 10
- Scoring Function • Để so sánh độ tương tự giữa hai chuỗi với các thay đổi như: đột biến, chèn, xóa. Cho chuỗi AGGCCTC • Mutations AGGACTC • Insertions AGGGCCTC • Deletions AGG . CTC • Ký hiệu • Match: +m • Mismatch: -s • Gap: -d • Scoring đơn giản: Score: F=(# matches) m-(# mismatches) s–(#gaps) d Giải thuật nâng cao-DP-Sequence Alignment 11
- Scoring Function • Độ đo: quasi-statistical model log-likelihood ratio. • Ký hiệu: • x, y là hai chuỗi, i là vị trí align. • Pxiyi: P(xi và yi đúng vị trí align) • Pxi: P(xi xuất hiện) • Pyi: P(yi xuất hiện) • M: một kiểu alignment • R: x, y là các chuỗi độc lập • Độ đo MLE 𝑃 𝑥, 𝑦|𝑀 𝑃𝑥𝑖 𝑦𝑖 𝑃𝑥𝑖 𝑦𝑖 𝑙𝑜𝑔 = 𝑙𝑜𝑔 = 𝑙𝑜𝑔 𝑃 𝑥, 𝑦|𝑅 𝑃𝑥𝑖 𝑃𝑦𝑖 𝑃𝑥𝑖 𝑃𝑥𝑖 Giải thuật nâng cao-DP-Sequence Alignment 12
- Scoring Function • M trong độ đo “quasi-statistical model log-likelihood ratio” là một lời giải sequence alignment. • Trong thực tế có thể sử dụng nhiều “lời giải” khác nhau 𝑀1 , 𝑀2 , … , 𝑀𝑛 • Theo Bayes Rule 𝑃 𝑥, 𝑦|𝑀𝑖 𝑃 𝑀𝑖 𝑃 𝑀𝑖 |𝑥, 𝑦 = ∝ 𝑃 𝑥, 𝑦|𝑀𝑖 𝑃 𝑥, 𝑦|𝑀𝑗 𝑃 𝑀𝑗 • Mục tiêu là tìm alignment tốt nhất sao cho cực đại 𝑃𝑥𝑖 𝑦𝑖 𝑙𝑜𝑔 𝑃𝑥𝑖 𝑃𝑥𝑖 Giải thuật nâng cao-DP-Sequence Alignment 13
- Scoring Function Nhận xét: Score của alignment x1……xM y1……yN có tính cộng Nghĩa là x1…xi xi+1…xM align với y1…yj yj+1…yN Hai scores có thể cộng: F(x[1:M], y[1:N]) = F(x[1:i], y[1:j]) + F(x[i+1:M], y[j+1:N]) Giải thuật nâng cao-DP-Sequence Alignment 14
- Quy hoạch động • There are only a polynomial number of subproblems • Align x1…xi to y1…yj • Original problem is one of the subproblems • Align x1…xM to y1…yN • Each subproblem is easily solved from smaller subproblems • Then, we can apply Dynamic Programming!!! Đặt F(i, j) = optimal score of aligning x1……xi y1……yj Giải thuật nâng cao-DP-Sequence Alignment 15
- Sequence Alignment - Quy hoạch động • Có 3 trường hợp 1. xi align với yj x1……xi-1 xi m, if xi = yj y1……yj-1 yj F(i, j) = F(i – 1, j – 1) + -s, if not 2. xi align với gap x1……xi-1 xi y1……yj - F(i, j) = F(i – 1, j) – d 3. yj aligns với gap x1……xi - F(i, j) = F(i, j – 1) – d y1……yj-1 yj Giải thuật nâng cao-DP-Sequence Alignment 16
- Sequence Alignment - Quy hoạch động Giả sử quy nạp : F(i, j – 1), F(i – 1, j), F(i – 1, j – 1) là tối ưu Thì, F(i – 1, j – 1) + s(xi, yj) F(i, j) = max F(i – 1, j) – d F(i, j – 1) – d Với s(xi, yj) = m, if xi = yj; -s, if not Giải thuật nâng cao-DP-Sequence Alignment 17
- Sequence alignment – ví dụ x = AGTA m= 1 y = ATA Output s = -1 Alignment d = -1 • Theo vết backpointers F(i,j) i=0 1 2 3 4 • GặpF(1, 1) = diagonal, A G T A max{F(0,0) OUTPUT xi, y+j s(A, A), F(0, 1) – d, j=0 0 -1 -2 -3 -4 • Gặp up, F(1, 0) – d} = OUTPUT yj max{0 + 1, 1 A -1 1 0 -1 -2 • Gặp left,-1 – 1, OUTPUT-1 – 1} xi = 1 2 T -2 0 0 1 0 3 A -3 -1 -1 0 2 AG TA A - TA Giải thuật nâng cao-DP-Sequence Alignment 18
- Giải thuật Needleman-Wunsch 1. Initialization. a. F(0, 0) = 0 b. F(0, j) = - j d c. F(i, 0) = - i d 2. Main Iteration. Filling-in partial alignments a. For each i = 1……M For each j = 1……N F(i – 1,j – 1) + s(xi, yj) [case 1] F(i, j) = max F(i – 1, j) – d [case 2] F(i, j – 1) – d [case 3] DIAG, if [case 1] Ptr(i, j) = LEFT, if [case 2] UP, if [case 3] 3. Termination. F(M, N) is the optimal score, and from Ptr(M, N) can trace back optimal alignment Giải thuật nâng cao-DP-Sequence Alignment 19
- Local alignment Cho hai chuỗi x = x1……xM, y = y1……yN Tìm substrings x’, y’ sao cho có độ tương tự (optimal global alignment value) lớn nhất x = aaaacccccggggtta y = ttcccgggaaccaacc Giải thuật nâng cao-DP-Sequence Alignment 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Thuật toán nâng cao - Nguyễn Thanh Bình
239 p | 242 | 44
-
Bài giảng Giải thuật nâng cao: Quy hoạch động - TS. Ngô Quốc Việt
33 p | 129 | 18
-
Bài giảng Mạng máy tính và truyền thông: Chương 5
64 p | 129 | 14
-
Bài giảng Giải thuật nâng cao: Giải thuật tham lam - TS. Ngô Quốc Việt
51 p | 149 | 14
-
Bài giảng Giải thuật nâng cao: Quy hoạch tuyến tính - TS. Ngô Quốc Việt
58 p | 96 | 12
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Các cấu trúc dữ liệu
193 p | 63 | 7
-
Bài giảng Giải thuật nâng cao: Một số giải thuật trên số - TS. Ngô Quốc Việt
57 p | 105 | 6
-
Bài giảng Giải thuật nâng cao: Giải thuật xấp xỉ - TS. Ngô Quốc Việt
55 p | 108 | 6
-
Bài giảng Lập trình nâng cao: Bài 4 - Hoàng Thị Điệp
43 p | 60 | 6
-
Bài giảng Thuật toán nâng cao: Chương 11 - Nguyễn Thanh Bình
9 p | 42 | 5
-
Bài giảng Giới thiệu môn học và kế hoạch hoàn thành môn học Phân tích và thiết kế thuật toán - PGS.TS. Trần Cao Đệ
11 p | 75 | 5
-
Bài giảng Chương 10: Các giải thuật nâng cao
40 p | 57 | 5
-
Bài giảng Lập trình nâng cao: Bài 1 - Lý Anh Tuấn
44 p | 34 | 4
-
Bài giảng Kỹ thuật lập trình (Programming technique): Chương 3 - Vũ Đức Vượng
40 p | 26 | 4
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 4 - Trường ĐH Văn Lang
32 p | 17 | 4
-
Bài giảng Kỹ thuật lập trình: Hàm và việc tổ chức chương trình - GV. Hà Đại Dương
18 p | 81 | 3
-
Bài giảng Kỹ thuật lập trình nâng cao: Chương 2 - Trần Minh Thái
13 p | 63 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn