Luận văn thạc sĩ công nghệ thông tin Khai thác kiến trúc phân tán và chia sẻ tìm sự tương đồng của các trình tự sinh học

47 420 0
Luận văn thạc sĩ công nghệ thông tin Khai thác kiến trúc phân tán và chia sẻ tìm sự tương đồng của các trình tự sinh học

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC ĐÀO TẠO TRƯỜNG ĐẠI HỌC LẠC HỒNG *** PHẠM ĐÔNG PHONG KHAI THÁC KIẾN TRÚC PHÂN TÁN VÀ CHIA SẺ TÌM SỰ TƯƠNG ĐỒNG CỦA CÁC TRÌNH TỰ SINH HỌC LUẬN VĂN THẠC SỸ CÔNG NGHỆ THÔNG TIN Đồng Nai – Năm 2013 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC LẠC HỒNG * * * PHẠM ĐÔNG PHONG KHAI THÁC KIẾN TRÚC PHÂN TÁN VÀ CHIA SẺ TÌM SỰ TƯƠNG ĐỒNG CỦA CÁC TRÌNH TỰ SINH HỌC Chuyên ngành: Công nghệ thông tin Mã ngành: 60.48.02.01 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Người hướng dẫn khoa học : PGS. TS. TRẦN VĂN LĂNG Đồng Nai – Năm 2013 i LỜI CẢM ƠN Ln PGS. TS. Trn  tôi trong sut thi gian hc tp v  ng dn tôi hoàn thành lu y cô Khoa Công ngh hc tp và nghiên cu kin và h tr tôi trong sut thi gian qua. i thân, b ng viên tôi trong sut thi gian hc ti gian thc hin lu  Biên Hòa, ngày 25 tháng 05  Phạm Đông Phong ii LỜI CAM ĐOAN u ca bn thân. Các s liu, kt qu trình bày trong luc. Nhc s dng trong lun gc và trích d. Biên Hòa, ngày 25 tháng 05  Hc viên Ph iii TÓM TẮT Bắt cặp các trình tự (Sequence Alignment) sinh học DNA, Protein là một bài toán cơ bản và đòi hỏi nhiều thời gian xử lý trong lĩnh vữc sinh tin học (Bioinfomatics). Trong đó, Smith-Waterman là một thuật toán bắt cặp cục bộ nhằm giải quyết bài toán này. Trên cơ sở bài toán bắt cặp này, có thể ứng dụng cho nhiều bài toán khác. Đặc biệt đó là bài toán tìm sự tƣơng đồng của các trình tự.(Sequence Similarity Searching) Tuy nhiên, hiện nay số lƣợng các trình tự trong các cơ sở dữ liệu sinh học lớn trên thế giới nhƣ NCBI, EMBL, DDBJ đang gia tăng nhanh chóng dẫn đến việc các thuật toán xử lý trên khối lƣợng lớn dữ liệu trở nên kém hiệu quả. Luận văn này trình bày một phƣơng pháp triển khai thuật toán Smith-Waterman trên môi trƣờng phân tán MPI kết hợp với kiến trúc chia sẻ GPU-CPU nhằm tăng tốc thuật toán. Môi trƣờng phân tán MPI với các thuật toán xử lý song song phù hợp cho phân hoạch dữ liệu giúp cải thiện hiệu suất tìm kiếm và kiến trúc chia sẻ sử dụng CUDA cho phép song song hóa bài toán bắt cặp trình tự. Từ khoá: Sinh tin hc, bt cp trình t, CUDA, GPU, MPI. iv MỤC LỤC LỜI CẢM ƠN i LỜI CAM ĐOAN ii TÓM TẮT iii DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT vi DANH MỤC HÌNH vii DANH MỤC BẢNG ix DANH MỤC BIỂU ĐỒ x MỞ ĐẦU 1 CHƢƠNG 1. TỔNG QUAN 5 1.1. Giới thiệu vấn đề 5 1.2. Tổng quan về sinh tin học 7 1.2.1. Amino acid và tính chất 7 1.2.2. DNA và RNA 8 1.2.3. Protein 10 1.2.4. Ngân hàng dữ liệu và phần mềm trong sinh tin học 11 1.3. Bắt cặp trình tự 13 1.4. Song song hoá dữ liệu trên môi trƣờng phân tán dùng MPI 14 1.5. Công nghệ CUDA giải quyết bài toán sắp hàng trình tự. 15 CHƢƠNG 2. CÁC PHƢƠNG PHÁP SẮP HÀNG TRÌNH TỰ 19 2.1. Khái niệm alignment 19 2.1.1. Ký tự ―gap‖ 19 2.1.2. Hàm đánh giá 20 2.1.3. Phân loại bắt cặp trình tự 22 2.2. Bắt cặp hai trình tự (Pairwise Sequence Alignment-PSA) 22 2.3. Bắt cặp đa trình tự (Multiple Sequence Alignment-MSA) 23 2.4. Các thuật toán so sánh các trình tự sinh học 24 2.4.1. Thuât toán Needleman – Wunsch 24 2.4.2. Thuật toán Smith-Waterman 27 CHƢƠNG 3. MÔI TRƢỜNG LẬP TRÌNH CUDA VÀ MPI 30 3.1. Khái niệm và thuật ngữ 30 3.1.1. Kiến trúc máy tính Von Neumann 30 3.1.2. Phân loại theo Flynn 31 3.2. Môi trƣờng lập trình CUDA 34 3.2.1. Giới thiệu bộ xử lý đồ hoạ - GPU. 34 3.2.2. Môi trƣờng lập trình CUDA 38 3.3. Môi trƣờng lập trình truyền thông điệp với MPI 44 3.3.1. Lịch sử MPI 44 3.3.2. Đặc điểm của MPI 45 v 3.3.3. Cấu trúc chƣơng trình MPI 45 3.3.4. Cách lập trình MPI 45 CHƢƠNG 4. GIẢI THUẬT VÀ PHƢƠNG PHÁP HIỆN THỰC HÓA GIẢI THUẬT TRÊN MÔI TRƢỜNG MPI KẾT HỢP CÔNG NGHỆ CUDA. 47 4.1. Thuật toán Smith-Waterman 47 4.2. Xây dựng giải thuật song song và cài đặt trên môi trƣờng CUDA. 51 Xây dựng giải thuật 51 4.3. Song song hoá xử lý dữ liệu dựa trên mô hình truyền thông điệp MPI 54 4.3.1. Lý do chọn mô hình truyền thông điệp MPI 54 4.3.2. Mô tả bài toán 54 4.3.3. Mô tả thuật toán 54 CHƢƠNG 5. KẾT QUẢ THỰC NGHIỆM 58 5.1. So sánh thời gian chạy chƣơng trình. 59 5.2. So sánh độ chính xác. 62 KẾT LUẬN 64 TÀI LIỆU THAM KHẢO viii Hình 4.6. Sơ đồ biểu diễn Server gửi chuỗi DNA về Client 55 Hình 4.7. Sơ đồ biểu diễn Server gửi vị trí các trình tự DNA trong ngân hàng về Client 56 Hình 4.8. Sơ đồ biểu diễn Client bắt cặp từng trình tự DNA trong ngân hàng với chuỗi truy vấn DNA muốn tìm 57 Hình 5.1. Kết quả chạy chƣơng trình với file cơ sở dữ liệu db1b 59 Hình 5.2. File lƣu trữ kết quả sắp hàng đa trình tự 59 2 phần mềm trên GPU đƣợc xây dựng bằng ngôn ngữ lập trình C. Với CUDA các lập trình viên dùng để điều khiển GPU để xử lý, tính toán song song các dữ liệu lớn. Việc tăng tốc trong quá trình tính toán không những đòi hỏi những thiết bị GPU có khả năng xử lý tốc độ cao với dữ liệu khổng lồ mà cần phải có những giải thuật song song hữu hiệu. Xuất phát từ nhu cầu trên, luận văn tập trung xây dựng các module chƣơng trình giải quyết vấn đề xếp hàng trình tự trên hệ thống phân tán và tìm sự tƣơng đồng giữa các trình tự sinh học. Mục tiêu luận văn Khảo sát thuật toán Smith - Waterman để sắp hàng trình tự trên hệ thống phân tán dùng MPI và kiến trúc chia sẻ với CUDA. – Luận văn tập trung nghiên cứu khả năng giải quyết bài toán sắp hàng trình tự cục bộ bằng cách xử lý song song hóa dữ liệu trình tự trên môi trƣờng phân tán MPI và song song hoá xử lý của thuật toán Smith- Waterman và hiện thực trên kiến trúc chia sẻ đa nhân đồ hoạ GPU nhằm gia tăng hiệu năng tính toán. – Cung cấp thực nghiệm cho các nghiên cứu khác sâu hơn hoặc phát triển các ứng dụng phục vụ nhu cầu thực tiễn. Nội dung thực hiện Để hoàn thành đƣợc mục tiêu đề ra cần luận văn cần nghiên cứu các nội dung nhƣ sau: − Thu thập các tài liệu có liên quan đến vấn đề bắt cặp trình tự. − Khảo sát và cài đặt thuật toán Smith – Wateman với các môi trƣờng khác nhau nhƣ MPI, CUDA để tìm kết quả bắt cặp cho sự tƣơng đồng và không tƣơng đồng của hai phần tử trong hai trình tự − Tìm hiểu các giải thuật tính toán song song và các cách thiết kế mẫu trong tính toán song song. xử lý song song hóa dữ liệu trên môi trƣờng MPI và xây dựng giải thuật toán song song trên thiết bị đồ họa GPU. − Đánh giá kết quả theo yêu cầu của luận văn. [...]... Module chƣơng trình về sự tƣơng đồng của các trình tự sinh học Dự kiến tên công trình công bố trên tạp chí hoặc hội thảo khoa học: Khai thác kiến trúc phân tán và chia sẻ để tìm sự tƣơng đồng của các trình tự sinh học Bố cục luận văn Luận văn bao gồm 5 chƣơng Chƣơng thứ nhất giới thiệu vấn đề cần giải quyết, trình bày một số khái niệm tổng quan về sinh tin học, bài toán sắp hàng trình tự, xử lý dữ liệu... số trình tự cần so sánh Thuật toán này bắt cặp cục bộ để tìm vùng tƣơng đồng giữa hai trình tự nucleotide hay protein, thuật toán tìm các đoạn hay các miền có độ tƣơng đồng cao từ đó đánh giá mức độ tƣơng đồng của hai trình tự Dự kiến kết quả đạt đƣợc − Về lý thuyết: Tài liệu về vấn đề khai thác kiến trúc phân tán và chia sẻ tìm sự tƣơng đồng của các trình tự sinh học − Về sản phẩm: Module chƣơng trình. .. giới nghiên cứu về Công nghệ sinh học Hoạt động của khoa Công nghệ sinh học, trƣờng đại học Khoa Học Tự Nhiên TP Hồ Chí Minh; Viện Công nghệ sinh học, Viện Khoa học và Công nghệ Việt Nam; Trƣờng đại học Y Dƣợc TP Hồ Chí Minh là những minh chứng Phân viện Công nghệ thông tin tại TP Hồ Chí Minh, từ năm 2004 đã hợp tác với một số nhà nghiên cứu của Viện Công nghệ Sinh học; của NCBI/NLM/NIH và NIAID/NIH đã... hợp công nghệ CUDA Chƣơng thứ năm trình bày kết quả thực hiện, đánh giá thực nghiệm và phần kết luận Chƣơng 1: Tổng quan Trong chƣơng này giới thiệu về sự cần thiết việc ứng dụng công nghệ thông tin vào sinh học Tổng quan về sinh tin học và vấn đề bắt cặp trình tự nhằm giải quyết bài toán tìm sự tƣơng đồng giữa các trình tự sinh học Giới thiệu song song hóa dữ liệu trên môi trƣờng MPI và công nghệ CUDA... trƣờng phân tán dùng MPI, công nghệ CUDA của nVidia, mục tiêu cũng nhƣ cấu trúc luận văn Chƣơng thứ hai trình bày chi tiết các phƣơng pháp sắp hàng trình tự Chƣơng thứ ba trình bày công nghệ CUDA của nVidia và ứng dụng, lập trình song song trên môi trƣờng phân tán sử dụng mô hình 4 truyền gói tin MPI Chƣơng thứ tƣ trình bày giải thuật và phƣơng pháp hiện thực hóa giải thuật trên môi trƣờng MPI kết hợp công. .. plasmid, hỗ trợ thiết kế phân tử  Tìm kiếm các đoạn mồi (primer)  So sánh mức độ tƣơng đồng (similarity) giữa các trình tự  Vẽ cây biểu diễn mức độ tƣơng đồng giữa các trình tự (biểu đồ dendogram)  Tìm kiếm các trình tự, các đoạn lặp (motif), các enzyme trong cơ sở dữ liệu Ở Việt Nam, lĩnh vực này cũng chỉ xuất hiện ở các viện nghiên cứu, trong một vài trƣờng đại học lớn, và cũng chỉ dừng lại ở trong... sắp hàng trình tự Chƣơng 2: Các phƣơng pháp sắp hàng trình tự Trong chƣơng này, luận văn đƣa ra khái niệm alignment, vấn đề bắt cặp trình tự để tìm sự tƣơng đông giữa hai trình tự hoặc đa trình tự trong đó, luận văn cũng giới thiệu hai thuật toán cơ bản đƣợc áp dụng trong vấn đề bắt cặp nhƣ: Needleman – Wunsch, Smith – Waterman Chƣơng 3: Môi trƣờng lập trình CUDA và MPI Trong chƣơng này, luận văn giới... trung vào việc phân chia bài toán tổng thể ra thành các công việc con nhỏ hơn rồi định vị các công việc đó đến từng bộ xử lý và đồng bộ các công việc để nhận đƣợc kết quả cuối cùng Hƣớng tiếp cận là phân tích và chia nhỏ bài toán cần thực hiện thành nhiều nhiệm vụ có thể đƣợc xử lý cùng một lúc bằng cách tận dụng khả năng xử lý tác vụ trên nhiều lõi của card đồ họa Nvidia với công nghệ CUDA Trong vài... đối xứng và bổ sung cho nhau (hình 1.3.) theo một qui luật nghiêm ngặt: A bắt cặp với T và C bắt cặp với G nhờ các liên kết hydro Cấu trúc xoắn kép của Watson- Crick là chiếc chìa khóa để mở ra những kỹ thuật của sự sống Hình 1.3 Chuỗi xoắn kép DNA [3] 12  Chuyển mã trình tự DNA sang RNA  Hiển thị cặp trình tự chính và trình tự bắt cặp  Tìm vị trí của một enzyme giới hạn trong một trình tự  Vẽ... mục đính của vấn đề bắt cặp trình tự nhắm đạt đến sự giống nhau đến mức tối đa của các trình tự việc xây dựng hàm đánh giá tốt cho phép xác định đƣợc kết quả tối ƣu hơn.ngoài ra trong chƣơng này cũng đƣa ra đƣợc cách phân loại bắt cặp trình tự đó là bắt cặp toàn cục và bắt cặp cục bộ trình bày nét cơ bản nhất của thuật toán Needleman – Wunsch và thuật toán Smith – Waterman 32 Hình 3.2 Kiến trúc máy . đề khai thác kiến trúc phân tán và chia sẻ tìm sự tƣơng đồng của các trình tự sinh học. − Về sản phẩm: Module chƣơng trình về sự tƣơng đồng của các trình tự sinh học. Dự kiến tên công trình. 2013 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC LẠC HỒNG * * * PHẠM ĐÔNG PHONG KHAI THÁC KIẾN TRÚC PHÂN TÁN VÀ CHIA SẺ TÌM SỰ TƯƠNG ĐỒNG CỦA CÁC TRÌNH TỰ SINH HỌC Chuyên ngành:. TRƯỜNG ĐẠI HỌC LẠC HỒNG *** PHẠM ĐÔNG PHONG KHAI THÁC KIẾN TRÚC PHÂN TÁN VÀ CHIA SẺ TÌM SỰ TƯƠNG ĐỒNG CỦA CÁC TRÌNH TỰ SINH HỌC LUẬN VĂN THẠC SỸ CÔNG NGHỆ THÔNG TIN Đồng Nai

Ngày đăng: 25/11/2014, 10:56

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan