Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 74 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
74
Dung lượng
1,89 MB
Nội dung
i ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THƠNG TIN&TRUYỀN THƠNG PHẠM THỊ NGA CÂYQUẢNLÍĐOẠNVÀỨNGDỤNG LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Thái Ngun - 2015 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn ii LỜI CAM ĐOAN Tôi xin cam đoan luận văn tự thân tơi tìm hiểu, nghiên cứu Các tài liệu tham khảo trích dẫn thích đầy đủ Nếu khơng tơi xin hồn tồn chịu trách nhiệm Tác giả luận văn Phạm Thị Nga Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn LỜI CẢM ƠN Lời tơi xin bày tỏ lòng biết ơn chân thành đến Ban Giám Hiệu, thầy giáo, cô giáo phòng Sau đại học trường Đại học Cơng Nghệ Thông Tin & Truyền Thông, thầy giáo Viện Công Nghệ Thông Tin giảng dạy tạo điều kiện cho tơi học tập, nghiên cứu hồn thành luận văn Đặc biệt, xin bày tỏ kính trọng lòng biết ơn sâu sắc đến PGS TSKH Vũ Đình Hòa, người tận tình hướng dẫn giúp đỡ tơi suốt q trình học tập, nghiên cứu hồn thành luận văn Tơi chân thành cảm ơn thầy cô tổ Tin học, trường Trung học phổ thơng chun Lam Sơn, Thanh Hóa, nơi công tác tạo điều kiện hỗ trợ suốt thời gian qua Tôi xin chân thành cảm ơn người thân, bạn bè giúp đỡ động viên suốt thời gian học tập thời gian thực luận văn Xin chân thành cảm ơn ! Thanh Hóa, ngày 10 tháng 04 năm 2015 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn MỤC LỤC Trang Lời cam đoan i Lời cảm ơn iii Mục lục iv Danh mục bảng v Danh mục hình vii Danh mục kí hiệu, chữ viết tắt viii MỞ ĐẦU Chương TỔNG QUAN VỀ SINH HỌC PHÂN TỬ, TIN SINH HỌC VÀ BÀI TỐN TÌM GIAO CÁC ĐOẠN GEN 1.1 Một số khái niệm sinh học phân tử 1.1.1 Ở cấp độ tế bào 1.1.2 Ở cấp độ phân tử 1.1.3 Phiên mã dịch mã 11 1.2 Tổng quan tin sinh học 12 1.3 Bài tốn tìm giao đoạn gen 15 Chương ỨNGDỤNG CỦA CÂYQUẢNLÍĐOẠN ĐỂ TÌM GIAO CÁC ĐOẠN GEN 17 2.1 Đặc tả tốn tìm giao đoạn gen 17 2.2 Thuật tốn tìm kiếm 18 2.3 Câyquảnlíđoạn 19 2.3.1 Cấu trúc quảnlíđoạn 22 2.3.2 Các thao tác quảnlíđoạn 23 2.4 Thuật tốn tìm giao đoạn gen sử dụngquảnlíđoạn 28 2.4.1 Xây dựng rừng quảnlíđoạn lưu trữ thơng tin đoạn gen 29 2.4.2 Tìm kiếm đoạn gen giao 34 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn Chương MÃ HĨA, THỬ NGHIỆM CHƯƠNG TRÌNH TÌM GIAO CÁC ĐOẠN GEN 36 3.1 Chuẩn bị liệu 36 3.2 Mã hóa chương trình tìm giao đoạn gen 37 3.2.1 Ngôn ngữ mơi trường lập trình 37 3.2.2 Chức cửa sổ truy vấn gen 39 3.2.3 Chức tm giao hai tập đoạn gen 41 3.3 Kiểm thử chương trình 43 3.3.1 Sử dụng cửa sổ truy vấn tm giao đoạn gen virus Ebola với hệ gen người 43 3.3.2 Tìm giao hệ gen người hệ gen chuột 44 3.3.3 Tìm giao hệ gen chuột nhắt hệ gen chuột cống 46 3.4 Đánh giá độ phức tạp kết thực chương trình 48 3.4 Mở rộng hướng nghiên cứu 49 KẾT LUẬN 51 TÀI LIỆU THAM KHẢO PHỤ LỤC Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn DANH MỤC CÁC BẢNG Trang Bảng 3.1 Kết kiểm thử cửa sổ truy vấn 44 Bảng 3.2 Kết kiểm thử tnh đắn chương trình tìm giao hai hệ gen 45 Bảng 3.3 Thời gian (s) trung bình chạy chương trình 47 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn vii DANH MỤC CÁC HÌNH Trang Hình 1.1 Xếp nhiễm sắc thể người Hình 1.2 Gen cấu tạo từ ADN, nhiễm sắc thể chứa nhiều gen Hình 1.3 Cấu trúc phân tử ADN ARN Hình 1.4 Học thuyết trung tâm sinh học phân tử 12 Hình 2.1 Hình vẽ thể giao hai tập đoạn gen 18 Hình 2.2 Sơ đồ khối mơ tả thuật tốn tìm kiếm .19 Hình 2.3 Ví dụ quảnlíđoạn 21 Hình 2.4 Ví dụ cửa sổ truy vấn 22 Hình 2.5 Các bước tìm giao đoạn gen với đoạn gen hệ gen 28 Hình 2.6 Cấu trúc nút quảnlíđoạn lưu thơng tin đoạn gen nhiễm sắc thể 31 Hình 3.1 Giao diện mô cách lấy liệu hệ gen người từ UCSC Table Browser 37 Hình 3.2 Giao diện lựa chọn chức 39 Hình 3.3 Giao diện cửa sổ truy vấn gen 39 Hình 3.4 Giao diện hộp thoại định tệp liệu đoạn gen 40 Hình 3.5 Giao diện chức tìm giao hai tập đoạn gen 42 Hình 3.6 Giao diện hộp thoại lưu kết đoạn gen giao vào tệp 42 vii Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn Các xử lí, thao tác: lớp đối tượng, hàm thủ tục sử dụng chức cửa sổ truy vấn gen, khác chỗ ta phải duyệt qua tất đoạn gen tệp thứ hai, với đoạn thực truy vấn tm giao đoạn gen với đoạn gen tệp thứ nhiễm sắc thể với Trong trường hợp cần tìm giao đoạn gen hai tệp liệu có dung lượng lớn, ta thường gặp phải rắc rối việc sử dụng nhiều nhớ, xếp trước liệu đầu vào theo nhiễm sắc thể Tức liệu đoạn gen cần xếp theo trình tự định, chẳng hạn tăng dần theo vị trí bắt đầu đoạn gen Trên thực tế, sử dụng liệu hệ gen từ ngân hàng sở liệu gen liệu thường xếp sẵn từ trước 3.3 Kiểm thử chương trình 3.3.1 Sử dụng cửa sổ truy vấn tìm giao đoạn gen virus Ebola với hệ gen người Phát hệ gen virus Ebola gồm đoạn gen Dữ liệu đủ để kiểm thử tnh đắn chương trình cách thủ cơng Vì thế, sử dụng liệu đoạn gen biết virus Ebola để kiểm thử cho chương trình truy vấn cửa sổ tìm giao đoạn gen hệ gen người hợp lí Kết truy vấn trả cách nhanh chóng, đắn Dữ liệu vào: Tệp liệu hệ gen người, gồm 60726 đoạn gen chứa 23 nhiễm sắc thể Xét riêng nhiễm sắc thể có 5677 đoạn gen đoạn gen virus Ebola cần xác định có giao với đoạn gen nhiễm sắc thể số hệ gen người Kết ra: Kết kiểm thử với truy vấn đoạn gen bảng 3.1: Bảng 3.1 Kết kiểm thử cửa sổ truy vấn Số lượng đoạn gen giao đoạnĐoạn gen g virus Ebola gen g với đoạn gen nhiễm sắc thể số hệ gen người 55 3026 3031 4407 4389 5894 5899 8305 8287 9740 9884 11518 11500 18282 14 3.3.2 Tìm giao hệ gen người hệ gen chuột Gen chồng chéo hệ gen động vật có vú tượng bất ngờ hàng trăm cặp protein mã hóa gen chồng chéo báo cáo Gen chồng chéo chia thành loại khác dựa định hướng phiên mã trình tự phân đoạn chia sẻ vùng mã hóa chồng chéo [6] Năm 2005, nhà khoa học Anh cấy thành công nhiễm sắc thể số 21 người vào chuột để gây bệnh Down nhằm phục vụ nghiên cứu phát triển phương pháp điều trị cho người bị rối loạn gen Thông thường, hầu hết người có 23 cặp nhiễm sắc thể Người bị bệnh Down (thiểu trí tuệ) lại có ba nhiễm sắc thể 21 thay cho hai nhiễm sắc thể bình thường Nhóm nghiên cứu tạo giống chuột mang thể giống nhiễm sắc thể số 21, có 200 gen người, cách lấy nhiễm sắc thể từ tế bào người cấy vào tế bào phôi chuột Qua vài hệ, giống chuột có triệu chứng bệnh Down rối loạn trí nhớ, rối loạn chức não rối loạn cấu tạo tim Việc cấy ghép thành cơng giúp nhà khoa học nghiên cứu sâu vấn đề mà bệnh nhân Down gặp phải Hội chứng Down ảnh hưởng tới 1/800 ca sinh nở, gây chậm chễ việc phát triển thể chất thần kinh Những người bị bệnh gặp vấn đề tim, thính giác có nguy cao mắc bệnh máu trắng trí nhớ Nghiên cứu đánh giá tiến kỹ thuật quan trọng nghiên cứu bệnh Down bệnh khác khơng bình thường nhiễm sắc thể Vì thế, tến hành kiểm thử chương trình hai tập liệu đoạn gen hệ gen người hệ gen chuột, xem xét đoạn giao cặp nhiễm sắc thể, mục đích đánh giá tnh đắn chương trình tìm giao hai tập đoạn gen, kết mô tả bảng 3.2 Khoảng 90% gen chuột có gen tương ứng người, mô tả tài liệu [6] Bảng 3.2 Kết kiểm thử tính đắn chương trình tm giao hai hệ gen Hệ gen người Hệ gen chuột Số lượng đoạn gen (số đoạn gen) (số đoạn gen) giao chr1 5677 chr1 3893 5662 chr2 3780 chr2 1877 2692 chr3 3132 chr3 2237 3383 chr4 2122 chr4 1754 1256 chr5 2519 chr5 1763 2616 chr6 3177 chr6 1278 2180 chr7 2925 chr7 1646 2735 chr8 1883 chr8 1542 1862 chr9 2428 chr9 1085 1501 chr10 2325 chr10 2193 3717 chr11 3323 chr11 770 1591 chr12 2767 chr12 849 1353 chr13 1061 chr13 949 949 chr14 2126 chr14 948 1378 chr15 2689 chr15 986 1461 chr16 2382 chr16 792 1750 chr17 3241 chr17 862 1810 chr18 884 chr18 693 945 chr19 3408 chr19 701 1486 chr20 1432 chr20 840 1266 chr21 2170 chr21 1439 1565 3.3.3 Tìm giao hệ gen chuột nhắt hệ gen chuột cống Chuột chia thành khoảng 35 họ Mỗi họ có khoảng 350 lồi Trong lồi có chuột nhắt hay chuột nhà chuột cống Xã hội chuột tự nhiên tổ chức theo kiểu phân tán để tồn Nhờ có chuột, hàng loạt loại thuốc đời để trị bệnh cho người Về di truyền học, chuột cống có 22 cặp nhiễm sắc thể với 2,75 triệu cặp bazơ nitơ chuột nhắt có 20 cặp nhiễm sắc thể với 2,6 triệu cặp (người có 2,9 triệu) Cặp nhiễm sắc thể cuối cặp nhiễm sắc thể giới tính Khoảng 90% gen chuột cống có gen tương ứng chuột nhắt [6] Tiến hành chạy thử chương trình với liệu vào hai tập liệu hệ gen chuột nhắt chuột cống, tính số lượng gen giao theo nhiễm sắc thể, quan sát thời gian thực chương trình cho kết bảng 3.3 Mục đích thử nghiệm: đánh giá thời gian, hiệu chạy chương trình Bảng 3.3 Thời gian (s) trung bình chạy chương trình Số lượng Hệ gen chuột Hệ gen chuột cống Thời gian (s) đoạn gen chạy thuật toán giao chạy thuật toán dùngquảnlí tm kiếm đoạn nhắt chr1 1697 chr1 3893 1769 0.453 chr2 2782 chr2 1877 936 0.593 chr3 1508 chr3 2237 1238 0.449 chr4 1950 chr4 1754 661 0.353 chr5 1736 chr5 1763 1187 0.250 chr6 1634 chr6 1278 1091 0.460 chr7 2808 chr7 1646 1698 0.182 chr8 1490 chr8 1542 1288 0.154 chr9 1645 chr9 1085 1009 0.228 chr10 1506 chr10 2193 1709 0.209 chr11 2344 chr11 770 931 0.106 chr12 1019 chr12 849 342 0.020 chr13 1160 chr13 949 681 0.094 chr14 1116 chr14 948 593 0.059 chr15 1075 chr15 986 525 0.033 chr16 970 chr16 792 555 0.040 chr17 1501 chr17 862 936 0.076 chr18 745 chr18 693 539 0.040 chr19 908 chr19 701 513 0.192 18201 3.991 Tổng cộng Thời gian (s) 31.918 3.4 Đánh giá độ phức tạp kết thực chương trình Tuy trường hợp xấu nhất, mà đoạn cần tìm giao bao cây, chương trình có độ phức tạp tương đương với việc duyệt thông thường Nhưng với liệu thực tế, chương trình nhanh chóng loại tập đoạn khơng phù hợp trả kết thời gian cho phép Việc đọc liệu từ tệp têu tốn thời gian tốc độ đọc tệp chậm khả xử lý, độ phức tạp O(n) Việc thêm đoạn vào chương trước đề cập O(lgn), thao tác xây dựng O(nlg(n)), xây dựng rừng quảnlíđoạn itContainer O(n.k.lg(n)) với k số nhiễm sắc thể khác tập gen số quảnlíđoạn khác dựng từ tệp ban đầu Tốc độ xử lý chương trình: liệu gen có việc tìm giao hai đoạn khơng q 3s kết chấp nhận được, điều có ý nghĩa thực tễn cao việc đưa cơng cụ lượng hóa mối quan hệ có ý nghĩa thống kê đặc tính di truyền, giải mã đầu mối tiến hóa, chẩn đốn cấu trúc chức gen.Việc so sánh liệu đa dạng di truyền để hiểu hệ gen sinh học Các nhà nghiên cứu sử dụng công cụ để khám phá nhiều liệu lớn đoạn gen, để đặt kết thí nghiệm họ bối cảnh rộng hơn, tm lời giải cho giả thuyết khoa học, từ thực khám phá Mối quan hệ tập hợp liệu gen thường đo cách xác định đoạn giao nhau, nghĩa là, chúng chồng lên chia sẻ đoạn gen chung Việc tìm phương pháp hiệu để đo mối quan hệ có ý nghĩa thống kê nhiều tính di truyền quan trọng phát tương lai 3.4 Mở rộng hướng nghiên cứu Chương trình thử nghiệm áp dụng hai trường hợp tìm giao đoạn gen đưa đoạn gen giao tập Ta sử dụng câu trúc quảnlíđoạn cài đặt để thực thêm số công việc sau: Tìm đoạn gen tập A khơng giao với đoạn gen tập B Tìm đoạn gen tập B khơng giao với đoạn gen tập A Tìm số cặp ba zơ giao đoạn giao (độ dài đoạn gen giao nhau) Tính xác suất đoạn gen giao tổng số đoạn gen Con số có ý nghĩa tốn thống kê đặc tnh di truyền Tìm đoạn gen tập đoạn gen có vị trí gần so với đoạn gen biết trước Bài tốn mở rộng phạm vi trường hợp liệu đoạn gen phức tạp, người dùng có nhu cầu lưu trữ tìm kiếm thuộc tính giải gen Tìm giao nhiều tập đoạn gen cách đồng thời Chẳng hạn, nhu cầu tm giao tập đoạn gen virus sởi qua mùa bệnh khác (các năm khác nhau, năm có hệ gen khác nhau) Hay tm giao đoạn gen tập liệu hệ gen chủng virus cúm (có tới hàng trăm loại virus cúm).v.v Ngành sinh tin học ngành hấp dẫn nhiều nhà nghiên cứu nước tham gia Với khám phá cấu trúc gen mở nhiều hướng nghiên cứu y sinh học, điều trị bệnh, phát tài năng, trì bảo tồn, cải tạo nòi giống; giải mã lịch sử tiến hóa, v.v Với nguồn liệu tin sinh học tăng theo Việc tìm kiếm thông tin khai thác thông tn chứa nguồn liệu lúc cần thiết Vì thế, việc tìm kiếm với thời gian có hiệu ln nhà nghiên cứu tm tòi phát triển Luận văn thực với mục tiêu nghiên cứu, áp dụng cấu trúc liệu quảnlíđoạn thao tác cấu trúc để giải toán tìm giao đoạn gen để tối ưu thời gian xử lý, giới hạn phạm vi nguồn liệu tm kiếm nguồn liệu lớn Việc kiểm thử ứngdụng tìm giao tập đoạn gen nguồn liệu hệ gen người, hệ gen chuột, hệ gen virus Ebola cho kết đắn, xác nhanh chóng KẾT LUẬN Luận văn thu số kết sau: Luận văn hệ thống hóa vấn đề xung quanh cấu trúc liệu quảnlíđoạn Luận văn đưa số kỹ thuật dùng để thực thao tác quảnlíđoạn Luận văn đề cập đến lĩnh vực nghiên cứu mới, hấp dẫn tin sinh học Luận văn thực với mục têu nghiên cứu, áp dụng cấu trúc liệu quảnlíđoạn thao tác cấu trúc để giải toán tm giao đoạn gen, tối ưu thời gian xử lý, giới hạn phạm vi nguồn liệu tm kiếm nguồn liệu lớn Luận văn đưa trường hợp ví dụ mẫu điển hình, trường hợp kiểm thử têu biểu áp dụng chương trình cài đặt cấu trúc liệu quảnlíđoạn thực thao tác Như vấn đề mà luận văn nêu phù hợp với yêu cầu thực tiễn, nghiên cứu giai đoạn nay, nhiệm vụ đặt hoàn thành Luận văn đạt mục đích đề TÀI LIỆU THAM KHẢO Tài liệu tếng Việt [1] Nguyễn Cường (2013), Các sở liệu sinh học, http://www.tnsinhhoc.org/index.php/genomics/3-bio-database.html, truy cập ngày 13/01/2015 [2] Hồ Sĩ Đàm (chủ biên), Đỗ Đức Đơng, Lê Minh Hồng, Nguyễn Thanh Hùng (2009), Tài liệu chuyên tn học, NXB Giáo dục Việt Nam, Quyển [3] Hồ Sĩ Đàm (chủ biên), Nguyễn Thanh Tùng, Lê Minh Hồng, Nguyễn Thanh Hùng, Đỗ Đức Đơng (2011), Tài liệu tập huấn phát triển chuyên môn giáo viên Trường THPT Chuyên (tài liệu lưu hành nội bộ), Bộ giáo dục đào tạo [4] Vũ Đình Hồ, Giáo trình Tốn rời rạc 5, NXB Giáo dục [5] Trần Văn Lăng, Ứngdụng Tin học việc giải số toán Sinh học phân tử, NXB Giáo dục, 2008 Tài liệu tếng Anh [6] Chaitanya R Sanna1, Wen-Hsiung Li, Liqing Zhang (2008), Overlapping gens in the human and mouse genomes, http://www.biomedcentral.com/1471-2164/9/169, 01/02/2015 [7] F P Preparata and M I Shamos (1985), Computational Geometry: An Introduction, Springer-Verlag [8] Izabela Makalowska , Chiao-Feng Linb, Wojciech Makalowski (2005), Overlapping gens in vertebrate genomes [9] M de Berg, O Cheong, M van Kreveld, M Overmars (2000), Computational Geometry: algorithms and applications, third edition, Springer [10] Paux E, Sourdille P, Salse J (2008), A Physical Map of the 1-Gigabase Bread Wheat Chromosome 3B, Science 322 (5898), p101–104 [11] Ucsc genome browser website, bed format, http://genome.ucsc.edu/FAQ/FAQformat.html#format1, 01/02/2015 [12] Ucsc genome browser website, table browser, http://genome.ucsc.edu/cgi-bin/hgTables?command=start, 01/02/2015 PHỤ LỤC A Xây dựng lớp itContainer package intervaltreeinbios; import java.awt.Color; import java.io.BuferedReader; import java.io.FileNotFoundExcepton; import java.io.FileReader; import java.io.IOExcepton; import java.utl.ArrayList; import java.utl.List; import java.utl.logging.Level; import java.utl.logging.Logger; class itContainer { List listIT = new ArrayList(); List chromeName = new ArrayList(); public itContainer() {} void clear() { listIT = new ArrayList(); chromeName = new ArrayList(); } int findChromeName(String chName) { for (int i = 0; i < chromeName.size(); i++) { if (chromeName.get(i).equals(chName)) { return i; } } return -1; } void loadFromFile(String pathFile) throws IOExcepton, NumberFormatExcepton { BuferedReader br = null; try { br= new BuferedReader(new FileReader(pathFile)); } catch (FileNotFoundExcepton ex) { Logger.getLogger(itContainer.class.getName()).log(Level.SEVER E, null, ex); } String sCurrentLine; while ((sCurrentLine = br.readLine()) != null) { String sTokens[] = sCurrentLine.split("\\s+"); if ("-1".equals(sTokens[0])) { break; } int t = findChromeName(sTokens[0]); if (t == -1) { chromeName.add(sTokens[0]); listIT.add(new ITtree()); t = chromeName.size() - 1; } int u = Integer.parseInt(sTokens[1]); int v = Integer.parseInt(sTokens[2]); listIT.get(t).addSegment(new Interval(u, v)); } } } B Lớp ITTree package intervaltreeinbios; import java.utl.ArrayList; import java.utl.List; class ITtree { ITnode root; public ITtree() {root = null;} void addSegment(Interval i) { if (root == null) { root = new ITnode(i); return; } int l = root.i.low; if (i.low < l) { root.left.addSegment(i); } else { root.right.addSegment(i); } if (root.max < i.high) { root.max = i.high; } } List overlapSearch(Interval i) { if (root == null) { return new ArrayList(); } List tmp = new ArrayList(); if (doOverlap(root.i, i)) {tmp.add(root.i);} if (root.left.root != null) { if (root.left.root.max >= i.low) { tmp.addAll(root.left.overlapSearch(i)); } } return tmp; } private boolean doOverlap(Interval i1, Interval i2) { return i1.low