موضوع مقاله: بلاست | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # بلاست | مقدمه: pp.39 با این نرم‌افزار می‌توان توالی اسیدهای آمینه در پروتئین‌ها یا توالی نوکلئوتیدها را در DNA را با هم مقایسه کرد. | ## بخش 1: بلاست | این نرم‌افزار به پژوهشگر اجازه می‌دهد تا یک توالی را با توالی دیگر یا توالی که در بانک اطلاعاتی وجود دارد، مقایسه کند. شناسایی توالی‌های موجود در بانک اطلاعاتی که بیشترین شباهت را با توالی مورد نظر دارد از دیگر قابلیت‌های این نرم‌افزار است. مثلاً اگر یک ژن ناشناخته در موش که قبلاً اطلاعاتی از آن در اختیار نبوده، باید بررسی شود، یک پژوهشگر ترجیح می‌دهد این توالی را با ژنوم انسان بلاست کند. بلاست یکی از پرکاربردترین نرم‌افزارها در بیوانفورماتیک است که با سرعت مطلوب مقایسه مورد نظر را انجام می‌دهد. پیشینه به دلیل اینکه بلست مربوط به یکی از بنیادیترین مسائل بیوانفورماتیک است و سرعت خوبی دارد یکی از پر کاربردترین نرم‌افزارهای بیوانفورماتیک به حساب می‌آید. از BLAST در موارد زیر استفاده می‌شود: کدام گونه باکتریها پروتئینی دارند که از نظر اصل و نسب به پروتئینی با آمینواسید شناخته شده مرتبط باشد؟ کدام ژنهای دیگر پروتئینهایی را به وجود می‌آورند که ساختارشان با ساختارهایی که قبلاً مشخص شده است یکی باشد؟ در این نرم‌افزار موفقیتها (مواردی که تطابق رخ داده) به صورت گرافیکی نمایش داده می‌شوند بعلاوهٔ یک جدول که دنبالهٔ تطابقها همراه با امتیاز داده شده به هرکدام را نشان می‌دهد. پایگاه داده نیز از سایت NCBI و هم چنین از آدرس پایگاه داده بلاست قابل دانلود است. در این روش به جای مقایسه کامل دو دنباله، تطابقهای کوتاه با یکدیگر مقایسه می‌شوند. هنگام پیدا کردن هومولوگ در دنباله‌ها، مجموعه حروف مشترک که به آنها لغت گفته می‌شود بسیار مهم اند. الگوریتم اکتشافی (heuristic) بلاست، حروف سه تایی مشترک را بین دنبالهٔ مورد نظر و دنبالهٔ تطابق یا دنباله‌های پایگاه داده مکان یابی می‌کند. | ## بخش 2: بلاست | بعد از ساخت لغات برای دنبالهٔ مورد نظر، لغات موجود در همسایگی نیز ساخته می‌شوند. این لغات باید در پروسهٔ امتیاز دهی، امتیازشان از یک حد آستانه‌ای بیشتر شده باشد؛ و معمولاً برای این امتیاز دهی از ماتریس BLOSUM62 استفاده می‌شود. بعد از ساخت لغات و برای پیدا کردن تطابق لفات ساخته شده با دنباله‌های موجود در پایگاه داده مقایسه می‌شوند. بعد از انجام پروسهٔ seeding (پیدا کردن تطابق اولیه)، تطابق یافته شدهٔ اولیه که در این مثال طول آن سه بود در دو جهت گسترش می‌یابد و با هر گسترش امتیاز جدیدی به تطابق داده می‌شود و اگر این امتیاز از مقداری از قبل تعیین شده بیشتر بود تطابق پذیرفته می‌شود و در غیر اینصورت از گسترش تطابق خودداری می‌شود. افزایش مقدار از قبل تعیین شده، فضای جستجو را محدود می‌کند و تعداد لغات همسایگی را کاهش می‌دهد اما سرعت اجرای الگوریتم بلاست را افزایش می‌دهد. الگوریتم برای اجرای بلاست نیاز به دو دنباله می‌باشد یکی دنبالهٔ درخواستی یا مورد نظر و دیگری دنبالهٔ هدف یا دنباله‌های موجود در پایگاه داده‌ای از دنباله‌ها. بلاست زیر دنباله‌هایی از پایگاه داده را پیدا می‌کند که شبیه دنبالهٔ ورودی (query) باشند. به عنوان مثال query ممکن است هزار نوکلئوتیدی باشد در حالی که پایگاه داده از چندین بیلیون نوکلئوتید تشکیل شده باشد. در زیر مراحل الگوریتم بلاست (پروتئین به پروتئین) به صورت خلاصه آورده شده است: حذف قسمتهای تکراری از دنبالهٔ query (قسمتهای با پیچیدگی کم): قسمتهای با پیچیدگی کم قسمتهایی در دنباله هستند که عناصرشان تنوع کمی دارند. برای FASTA تمام لغات مشترک در پایگاه داده و دنباله‌های کوئری ای که در مرحلهٔ دوم لیست شدند مهم است، اما برای بلاست فقط لغات با امتیاز بالا اهمیت دارند. انتخاب تطابقهایی که مقدار مورد انتظار امتیاز آنها کمتر از حد آستانهٔ E شده باشد. بلاست موازی نسخه‌های موازی از بلاست با استفاده از MPI و Pthreads پیاده‌سازی شده‌اند و روی پلتفرم‌های مختلف مثل ویندوز، لینوکس، مک و… قابل اجرا هستند. | ## بخش 3: بلاست | روشهای مشهور برای موازی سازی بلاست عبارتند از پراکنده یا پخش کردن query، قطعه قطعه سازی جدول hash، موازی سازی محاسباتی و قطعه قطعه سازی پایگاه داده. بلاست یک برنامه متن باز است و هرکس می‌تواند در کد تغییرات مورد نظر خود را اجرا کند و این خود علت وجود نسخه‌های مختلف از بلاست می‌باشد. سپس با استفاده از این پروفایل گروه‌های بیشتری از پروتئینها به دست می‌آیند که خود آنها نیز تشکیل یک پروفایل جدید می‌دهند و این کار تکرار می‌شود. نسخه‌های جایگزین یکی از نسخه‌های بلاست که خیلی سریع تر است اما دقت کمتری دارد BLAT است. نسخهٔ دیگری که برای مقایسهٔ ژنوم‌ها و کروموزوم‌های خیلی بزرگ استفاده می‌شود BLASTZ نام دارد. در این نسخه احتمال جهش بین آمینواسیدها نه تنها به خودشان بلکه به مکان آنها نیز وابسته است. کاربردهای بلاست از بلاست می‌توان در مواردی مثل موارد زیر استفاده نمود: تعیین نوع با استفاده از بلاست می‌توان هومولوگهای یک نوع را پیدا کرد. قرار دادن دامنه‌ها هنگام کار با پروتئینها می‌توان آنها را به عنوان ورودی به بلاست داد تا دامنه‌های شناخته شده از دنبالهٔ مورد نظر را پیدا کند. کشیدن درخت فیلوژنتیک با استفاده از نتایج به دست آمده از بلاست می‌توان درخت فیلوژنتیک را رسم کرد. نگاشت DNA هنگام جستجو به دنبال دنباله‌ای از ژنها در مکانی ناشناخته روی یک گونهٔ شناخته شده، بلاست می‌تواند مکانهای کروموزومی در دنباله‌های مورد نظر مقایسه کند. مقایسه هنگام کار کردن با ژن‌ها بلاست می‌تواند ژن‌های مشترک در دو گونهٔ متفاوت را شناسایی کند. بلاست به خاطر اینکه یک الگوریتم اکتشافی (heuristic) است دقت کم تری دارد و ممکن است بعضی از تطابق‌ها را پیدا نکند و از دست بدهد اما در عوض سرعت خوبی دارد. | ## جمع‌بندی | برای گرفتن نتایج بهتر از بلاست می‌توان تنظیمات مختلفی که برای این برنامه وجود دارد را تغییر داد، اما روشی وجود ندارد که برای هر دنبالهٔ دلخواه بهترین تنظیمات را ارائه کند.