1
XÂY DỰNG ỨNG DỤNG HỖ TRỢ PHÁT TRIỂN SINH TIN HỌC
Trần Văn Lăng
1
Phân viện Công nghệ thông tin tại TP Hồ Chí Minh
Tóm tắt: Việc xây dựng các ứng dụng hỗ trợ nghiên cứu và huấn luyện về sinh tin học là
vô cùng cần thiết, qua đó giúp chúng ta nhanh chóng hòa nhập với cộng đồng thế giới,
mở ra cơ hội hợp tác với các nước trong khu vực. Bài báo trình bày một số kết quả có
được trong những năm vừa qua của nhóm nhiên cứu về Sinh tin học của Phân viện Công
nghệ thông tin tại TP.Hồ Chí Minh. Bài báo gồm ba phần, phần thứ nhất trình bày một số
bài toán cơ bản về Sinh tin hoc như: thiết kế mồi, tìm các enzym cắt, vẽ cây sinh loài,
chẩn đoán cấu trúc protein,.... Phần thứ hai trình bày những kết quả hiện thực các bài
toán trên vào trong ứng dụng Sinh tin hoc có tên gọi HiBio của nhóm và các nghiên cứu
đang tập trung phát triển khác. Phần cuối cùng nêu một số kết luận, so sánh kết quả đạt
được so với một số phần mềm khác cùng lĩnh vực. Đồng thời nêu lên một số kiến nghị.
1. Mở đầu
Trong vài thập kỷ qua, sinh học phân tử đã có nhiều bước phát triển mạnh mẽ, một loạt các
công cụ ứng dụng sinh học ra đời góp phần thúc đẩy quá trình giải mã một số lượng lớn trình
tự bộ gene ở nhiều loài sinh vật. Cho đến nay, nhiều bộ gene vi khuẩn đã được giải mã gần
như hoàn toàn. Dự án giải trình tự tất cả 24 nhiễm sắc thể của bộ gene người cũng đã hoàn
thành từ cuối năm 2000. Có thể nói chưa bao giờ thông tin sinh hoc trở nên phong phú và đa
dạng như hiện nay. Để ứng phó với khối lượng thông tin đồ sộ như vậy, công nghệ thông tin
đã được ứng dụng vào sinh học một cách khá triệt để. Từ đó, một ngành khoa học hoàn toàn
mới ra đời, đó là Sinh tin hoc (Bioinformatics).
Thực chất Sinh tin hoc gắn liền với nhiều ngành khoa học khác nhau, nghiên cứu trên nhiều
lĩnh vực khác nhau. Nhằm thu thập, lưu trữ và phân tích các dữ liệu sinh học. Khi đó, vai trò
của các thuật toán, hệ thống xử lý dữ liệu, môi trường mạng hết sức quan trọng. Kết quả của
những nghiên cứu này là tạo ra các phần mềm giúp giải quyết một số vấn đề xung quanh việc
tìm hiểu về gene, protein và một số vấn đề khác liên quan đến sinh học phân tử. Những thành
tựu của lĩnh vực này hỗ trợ mạnh mẽ đến việc đưa sinh học, y học vào giải quyết của những
công việc của thực tiễn. Đặc biệt đóng góp nhiều thành tựu khoa học mới, như việc tìm ra các
giống cây trồng và vật nuôi mới cho năng suất cao; thúc đẩy nhanh quá trình chẩn đoán bệnh,
tìm ra các loại thuốc chữa bệnh mới, ... Bên cạnh đó, với khối lượng lớn dữ liệu sinh học tác
động qua lại lẫn nhau cũng đặt ra nhiều vấn đề. Chẳng hạn, bộ gene người đã được giải mã,
tuy nhiên để hiểu và sử dụng được bộ mã này cần phải có những kiến thức về cấu trúc, chức
năng của protein, từ đó mới vận dụng được những kiến thức của bộ gene vào thực tế, tác động
vào sự di truyền. Bên cạnh đó số protein trong cơ thể người gấp nhiều lần số gene. Bộ gene
được lưu giữ như nhau trong các tế bào nhưng kết quả mã hoá, biểu hiện của nó là bộ protein
trong mỗi bộ phận, tế bào lại không giống nhau. Bộ protein thay đổi theo tình trạng của tế bào
và phản ứng lại với những tác động bên ngoài. Bản đồ gene có thể ghi chép lại trong những
tài liệu in ấn, nhưng bản đồ protein không thể ghi chép. Chỉ có thể ghi lại bản đồ protein như
một tài liệu điện tử, do không phải vì quá lớn mà do sự liên lạc giữa protein này với protein
khác chỉ mang tính ước lệ và liên tục xảy ra trong sự tiến hoá ([4],[5],[6],[7],[8]).
1
Email:
1 Mạc Đĩnh Chi, Q1, TPHCM
2
Chính vì vậy việc đưa Tin học vào Sinh học đã và đang được quan tâm bởi hầu hết các nước
phát triển trên thế giới. Trong khu vực Châu Á, các nước như Trung Quốc, Hàn Quốc, Nhật
Bản đã có những đột phá trong lĩnh vực này. Chính phủ của họ đã huy động nguồn nhân lực
hoạt động trong các lĩnh vực khác nhau để tham gia nghiên cứu. Đặc biệt, thế giới đã có
những ngân hàng dữ liệu nổi tiếng như:
NCBI - Trung tâm Quốc gia về Thông tin Công nghệ Sinh học (National Center for
Biotechnology Information) của Mỹ [9].
EMBL - Phòng thí nghiệm Sinh học phân tử (European Molecular Biology
Laboratory) của Châu Âu [10], hoặc một phần của nó là EBI - Viện Sinh tin hoc
Châu Âu đặt ở Anh (European Bioinformatics Institute [11]).
DDBJ - Ngân hàng dữ liệu DNA, Nhật Bản (DNA Data Bank of Japan [12]).
Về phần mềm, hiện nay có khá nhiều phần mềm giúp xử lý các trình tự sinh học DNA và
Protein như: Phần mềm FastA, Blast, Cn3D, Phylip, PepTool, GeneTool, ClustalX, BioEdit,
SeqVISTA, SAGA, Primer3, PC-Genes, Discovery Studio Gene, DNASIS, DNAMAN,
VECTOR NTI, AnnHyb, DNA Club, Plasmid Processor, Oligos, v.v... Những phần mềm này
có một số chức năng:
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ẽ bản đồ 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.
Đối với Việt Nam chúng ta, 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 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.
2. Phương pháp và kết quả
2.1 Xử lý về gene và protein
Lĩnh vực Sinh tin hoc vô cùng phát triển trên thế giới. Tuy nhiên ở Việt Nam, sự tham gia của
những người làm Tin học vô cùng hiếm hoi, việc tạo ra các sản phẩm phân mềm để đưa vào
áp dụng không thấy có. Phân
viện Công nghệ thông tin tại
TP. Hồ Chí Minh, trong những
năm qua đã 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, đã xây dựng một
hướng nghiên cứu với hai mục
tiêu chính [1]:
Xây dựng Website về ngân hàng dữ liệu cung cấp thông tin di truyền phục vụ công
tác huấn luyện và nghiên cứu Công nghệ Sinh học.
3
Xây dựng phần mềm phục vụ việc nghiên cứu Công nghệ Sinh học để có thể xử lý và
phân tích các trình tự sinh học, qua đó nắm được nguyên lý thiết kế cũng như bước
đầu tạo ra sản phẩm phần mềm mang thương hiệu Việt Nam trong lĩnh vực Sinh tin
hoc.
Nhóm thực hiện đã tạo ra sản phẩm phần mềm với tên gọi HiBio. Sản phẩm phần mềm HiBio
này có những tính năng cần thiết cho việc tìm hiểu về sinh học phân tử. Những chức năng từ
đơn giản như kiểm tra trình tự có đúng là một trình tự sinh học DNA hay Protein không;
chuyển đổi trình tự từ DNA sang RNA, rồi sang Protein với một số bảng mã, dịch Frame khác
nhau, v.v... Bên trong phần mềm HiBio cũng có một số chức năng phức tạp hơn. Chẳng hạn,
Thiết kế mồi để hiễn thị cặp mồi tốt nhất, các đoạn mồi xuôi, các đoạn mồi ngược,
hoặc sắp xếp theo các quality;
Thiết kế bản đồ plasmid với các tính năng cần thiết ở các dạng khác nhau, trong đó
có cả việc đề xuất những enzym cắt;
Có thể sử dụng để dự đoán cấu trúc protein bậc 2, xem cấu trúc bậc 3 của một protein
nào đó;
Sử dụng để vẽ cây sinh loài theo hai dạng có gốc và không gốc;
Vấn đề tìm kiếm motif cũng được đặt ra trong HiBio;
Bên cạnh đó các sản phẩm nguồn mở như ClustalX, RasTop, Blastn cũng được tích
hợp vào hệ thống với sự bản địa hóa cao.
Phần mềm HiBio là tập hợp gồm các module chương trình độc lập, trong đó mỗi module thực
hiện một chức năng riêng như: module nhập và soạn thảo dữ liệu trình tự, module so sánh bắt
cặp trình tự, module tạo vector cắt, ...
2.1.1 Chuyển đổi trình tự
DNA động thực vật được cấu thành
chủ yếu từ 4 base cơ bản A, T, G, C, có
khả năng tạo nên 64 codon (mỗi codon
gồm 3 base), được gói gọn thành 20
amino acid. Các amino acid này lại góp
phần hình thành nên các protein đặc
trưng. Tuy nhiên, các sinh vật không
giống nhau nên sự hình thành amino
acid cũng không giống nhau. Có những
loài với codon này thì tạo nên amino
acid này nhưng đối với loài khác thì lại
là một acid amin khác. Chẳng hạn, bộ
ba (codon) “CTT” ở động vật có xương
sống hình thành nên Leucine thì ở nấm
men là Threonine. Do đó, cũng có
tương ứng nhiều bảng dịch mã khác nhau cho từng loài, từng trường hợp khác nhau. Trong hệ
thống HiBio hiện có 17 bảng dịch mã từ DNA sang Protein.
Thuật toán Six Frame, như tên gọi của nó, dựa trên nguyên lý hợp thành bộ 3 chuyển mã để
đưa ra 6 khả năng phân tích có thể. Theo đó, chúng ta có 3 frame theo chiều thuận và 3 frame
còn lại theo chiều nghịch. Chỉ 1 trong 6 frame này được xem là sản phẩm dịch mã đúng.
2.1.2 Thiết kế mồi
4
Thông thường, việc triển khai các
ứng dụng sinh học phân tử thường
vấp phải trở ngại về số lượng vật chất
di truyền cần có. Trong các phương
pháp tạo dòng phản ứng khuếch đại
trình tự (Polymerase Chain Reaction
- PCR) được sử dụng rộng rãi. Nhưng
để thực hiện được phương pháp này,
nhà sinh học cần phải biết thông tin
về trình tự cần nhân bản và từ đó phải
xác định được cần các mồi - một đoạn
DNA ngắn, có khả năng bắt cặp bổ
sung với một đầu của mạch khuôn -
bổ sung chuyên biệt nào.
Thiết kế mồi trong HiBio cho phép
thống kê có bao nhiêu đoạn mồi thoả yêu cầu người dùng và mô tả các yếu tố kỹ thuật về các
đoạn mồi đó. Từ đó, có thể thiết lập thuộc tính đoạn mồi cần tìm trong trình tự DNA thông
qua giao diện chương trình. Đoạn mồi được chọn dựa trên các thông số như:
Chiều dài đoạn mồi
Vị trí bắt cặp duy nhất
Phần trăm loại nucleotid G, C
Nhiệt độ annealing
Các đoạn mồi khó tự bắt cặp với nhau.
2.1.3 Tìm kiếm trình tự
Hai giải thuật tìm kiếm trong cơ sở dữ liệu phổ biến trên thế giới hiện nay là BLAST và FastA.
Giải thuật BLAST được đánh giá nhanh hơn và hiện đang được sử dụng rộng rãi. BLAST
(Basic Local Alignment Search Tool) là giải thuật tìm kiếm heuristic. Giải thuật này được hiện
thực qua các chương trình: blastp, blastn, blastx, tblastn và tblastx của NCBI với các chức
năng như sau:
blastp: so sánh chuỗi amino acid với cơ sở dữ liệu là các chuỗi protein
blastn: so sánh chuỗi nucleotid với cơ sở dữ liệu là các chuỗi nucleotid
blastx: so sánh biến đổi six-frame của chuỗi nucleotid với cơ sở dữ liệu protein
blastn: so sánh chuỗi protein với cơ sở dữ liệu nucleotid
tblastx: so sánh biến đổi six-frame của một chuỗi nucleotid với biến đổi six-frame
của các chuỗi trong cơ sở dữ
liệu nucleotid
Mục đích chính của việc tìm kiếm trên
cơ sở dữ liệu là tìm các gene có trong
cơ sở dữ liệu có chứa một chuỗi trình
tự cho trước. Thông thường cức năng
này được hiện thực thông qua ứng
dụng Web.
Dữ liệu trong trường hợp này là một
trình tự DNA. Từ đó, HiBio sẽ tìm
kiếm những gene đã biết có thông tin
giống hoặc tương tự với trình tự đưa
vào. Ngoài thông số chính là trình tự
5
DNA, chương trình còn nhận thêm các thông số như E (expect value), đây là giá trị mong đợi
khi so sánh; W (word) là số nucleotid trong một từ dùng đề so sánh.
2.1.4 So sánh trình tự
Khi so sánh trình tự sinh học, có hai vấn đề đặt ra, đó là việc so sánh đối xứng toàn cục và so
sánh đối xứng cục bộ. So sánh đối xứng toàn cục là quá trình so sánh đối xứng cho toàn bộ
các phần tử của hai trình tự. Mỗi một phần tử của một trình tự sẽ được so sánh đối xứng với
một phần tử của trình tự kia hoặc ứng với một ký tự trống (gap). Trong HiBioClustalX việc so
sánh đối xứng đa trình tự dựa trên cơ sở sử dụng giải thuật Needleman - Wunsch, giải thuật
này có những đặc điểm sau [1]:
Tìm so sánh đối xứng toàn cục tốt nhất giữa hai trình tự bất kỳ. Số phần tử so khớp
giữa hai trình tự lớn nhất và cho phép chèn ký tự trống.
Tất cả các phần tử của hai trình tự sẽ được sử dụng để tạo ma trận hai chiều. Mọi khả
năng so sánh đối xứng đều có thể biểu diễn thông qua ma trận này
Khác với giải thuật so sánh đối xứng toàn cục, giải thuật so sánh đối xứng cục bộ chỉ thực
hiện việc so sánh đối xứng trên một số phần của các trình tự được so sánh. So sánh đối xứng
cục bộ có ý nghĩa sinh học hơn so
sánh toàn cục vì thông thường
không phải tất cả các phần tử trong
trình tự tham gia vào việc xác định
đặc tính sinh học của trình tự. Giải
thuật so sánh đối xứng cục bộ
thường được sử dụng hiện nay là
Smith-Waterman. Các bước của
giải thuật Smith-Waterman tương
tự như các bước của giải thuật
Needleman - Wunsch.
Chức năng so sánh này nằm trong
module HiBioClustalX - là phiên
bản được hiện thực trên cơ sở phần mềm ClustalX 1.83. Công dụng của chương trình cho
phép nhập và so sánh các đoạn trình tự hoặc các tập tin so sánh dạng fasta, phylip, v.v...
2.1.5 Xác định enzym cắt giới hạn
Enzyme giới hạn (RE) là loại
enzyme có khả năng thuỷ giải
DNA mạch đôi ở các vị trí xác
định. Một số vấn đề sau đây của
công nghệ sinh học liên quan đến
enzyme cắt giới hạn:
Quá trình phân tích trình
tự chỉ thực hiện lần lượt
với từng đoạn ngắn, vì
vậy cần phải cắt bộ gene
khổng lồ ra thành những
phần nhỏ.
Phân định các đoạn gene
chính xác nhằm phục vụ