در بیوانفورماتیک ، یک  *خطای خوانش دی ان ای*  هنگامی رخ می دهد که بازساز توالی یک پایه دی ان ای را برای یک پایه متفاوت تغییر دهد. سپس دنباله های خوانده شده از بازساز توالی برای ایجاد یک گراف دی براین استفاده می شود که به روش های مختلفی برای یافتن خطاهای خوانش استفاده می شود.

نمای کلی
--------

دنباله 1شکل 1نمونه ای از دنباله دی ان ای و نمودار دی براین مربوط به ان
از طريق شكل گراف دی براین ، مي توانيم ببينيم كه احتمال 4 ^ k گره هاي مختلف براي ساختن يك ژنوم وجود دارد. با در نظر گرفتن تنها ک تایی موجود در رشته مورد نظر دی ان ای ، تعداد گره های مورد استفاده برای ایجاد نمودار را می توان کاهش داد. با توجه به توالی 1 ، می توان گره های اندازه ۷ یا ۷ تایی را تعیین کرد که در نمودار قرار دارند. سپس این ۷ تایی ها نمودار ایجاد شده در شکل 1 را ایجاد می کنند.قطعه تابع زیر را می توان به این صورت استفاده کرد که با دادن دنباله شکل یک و مشخص کردن اندازه ک تایی ها می توان گراف دی براین ساده شکل را ساخت.

  

```
def de\_bruijn\_graph(seq, k):
    edges = []
    nodes = set()
    for i in range(len(seq) - k + 1):
        edges.append((seq[i:+k-1], seq[i+1:i+k]))
        nodes.add(seq[i:i+k-1])
        nodes.add(seq[i+1:i+k])
    return nodes, edges

```

نمودار نشان داده شده در شکل 1 یک نسخه بسیار ساده است از آنچه که یک نمودار می تواند شبیه به ان باشد..این نمودار با گرفتن 6 عنصر آخر ۷ تایی و پیوند دادن آن به گره ای که 6 عنصر اول آنها یکسان است تشکیل می شود. شکل 1 ساده ترین گراف دی براین است ، زیرا هر گره دقیقاً یک مسیر در آن وارد و یک مسیر از ان خارج می شود. در بیشتر مواقع ، شما به احتمال زیاد گرافیکی را مشاهده خواهید کرد که در آن بیش از یک لبه به سمت گره و یا بیش از یک لبه خروجی از یک گره وجود دارد. این امر به دلیل اتصال گره ها اتفاق می افتد. گره ها با لبه هایی که به گره ها اشاره می کنند متصل می شوند اگر و تنها اگر ، "k-1" عنصر اخر ک تایی مورد نظر مطابق با "k-1" عنصر اول گره دیگری باشد.این موضوع این اجازه را می دهد تا یک نمودار د دی براین چند لبه تشکیل شود. این نمودارهای پیچیده تر به دلیل خطاهای خواندن یا تغییر در رشته های دی ان ای اتفاق می افتد. این دو دلیل تعیین ساختار صحیح دی ان ای و تعیین عوامل ایجاد خطا را مشکل می کنند. از آنجایی که بیشتر رشته های دی ان ای احتمالاً شامل خطاها و تغییرات در خواندن هستند ، دانشمندان امیدوارند که از گره های نمودار هنگامی که به‌طور نامشخص به هم وصل شوند ، پس از تمیز کردن نمودار از راس و لبه های ایجاد شده توسط خطاها ، از فرایند بازسازی استفاده کنند که می تواند گره های نمودار را یکپارچه کند.

تیپ و حباب
----------

هنگامی که یک نمودار از داده های توالی تشکیل می شود ، خطاهای خواندن تیپ و حباب ها را تشکیل می دهند.**تیپ** جایی است که در طی فرایند بازسازی خطایی رخ داده و باعث شده است که نمودار نادرست تمام شود و ک تایی صحیح و نادرست را شامل شود. **حباب** نیز هنگام ایجاد خطا در روند خواندن دنباله تشکیل می شود. با این حال ، هر جا که خطا رخ دهد ، مسیری برای ک تایی ها برای اتصال مجدد با نمودار اصلی وجود دارد ، آنها فقط در صورتی حذف می شوند که بروز خطا باعث ان ها بوده باشه است. هنگامی که دانشمندان از ژنوم مرجع  استفاده می کنند ، آنها می توانند با مقایسه نمودار ژنوم مرجع و نمودار دنباله ، مکانهای تیپ ها را شناسایی کنند. اگر ژنوم مرجع وجود نداشته باشد ، این تیپ ها با ردیابی شاخه ها به سمت عقب تا زمانی که نقطه ای مبهم پیدا شود قابل از بین بردن هسنتد. این تیپ ها تنها در صورتی حذف می شوند که شاخه حاوی تیپ کوتاهتر از طول آستانه مشخص شده باشد. روند از بین بردن حباب ها کمی پیچیده تر است. اولین کاری که باید انجام شود شناسایی شروع حباب است. از آنجا هر مسیر از ابتدای حباب تا نقطه اتصال مجدد دنبال می شود. نقطه اتصال مجدد می تواند برای هر مسیر متفاوت باشد. از آنجا که از گره آغاز می توان مسیری به طول های مختلف وجود داشته باشد ، مسیری که پوشش کمتری دارد از بین می رود. معمولا شناسایی تیپ ها و حباب ها راحت است اما بعضی مواقع تیپ ها و حباب ها برای شناسایی و برخورد با خطاهای پیچیده تر بسیار ساده و اولیه هستند.مفهومی از زیر نمودار به نام فوق حباب(به انگلیسی:super bubble) وجود دارد که در تحلیل نمودار توالی و ارایه الگوریتمی کارامد برای تشخیص ان کمک می کند. فوق حباب مفهومی تعمیم یافته از حباب و بسیار پیچیده تر از ان است که برای تحلیل نمودار توالی یابی مهم است..

### مثال

دنباله 2
با توجه به توالی از هر طول ، اولین مرحله ای که باید انجام شود این است که دنباله را وارد یک برنامه توالی ساز کنید،بعد از پیدا شدن توالی، جفت پایه (bp) با طول معین را برگردانید. از آنجا که یک برنامه توالی ساز دقیق و دقیق وجود ندارد ، همیشه خواندن هایی وجود دارد که حاوی خطا هستند. متداول ترین روش ترتیب بندی روش تعیین توالی تفنگ ساچمه‌ای است ، که روشی است که احتمالاً در دنباله ۲ استفاده می شود. پس از تصمیم گیری روی روش ، باید طول bp را که می خواهید برگردانید ، مشخص کنید. در مورد توالی 2 ، 7 bp خوانده شده را با تمام خطاهای ایجاد شده در طی فرایند ذکر شده به رنگ قرمز برگردانده است.

پس از به دست آوردن خوانش ها ، آنها به ک تایی کد می شوند. ک تایی سپس در جدول ثبت می شود که چند بار هر کدارم در این خوانش ها طاهر شده اند. برای این مثال ، هر خوانش به ۴ تایی تبدیل شده و در صورت بروز خطایی ، آن را به رنگ قرمز ثبت کرده است. همه جدولهای ۴ تایی ثبت شدند که فراوانی آنها در جدول زیر قرار دارد.

|  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- |
| ACAG (5X) | ACGC | AGAA | AGAC (9X) | AGAG (9X) | AGAT (8X) |
| AGGC (16X) | AGTC (7X) | ATCC (7X) | ATGA (8X) | CCGA (7X) | CGAC |
| CGAG (8X) | CGAT (6X) | CTAG (2X) | CTCT | CTTT (8X) | GACA (8X) |
| GACG | GAGA (12X) | GAGG (16X) | GATG (5X) | GATC (8X) | GATT |
| GCTC (2X) | GCTT (8X) | GGCT (11X) | GTCG (9X) | TAGA (16X) | TAGT (3X) |
| TCCG (7X) | TCGA (10X) | TCTA (2X) | TGAG (9X) | TTAG (12X) | TTTA (8X) |

سپس هر سلول جداگانه از جدول ، یک گره را تشکیل می دهد ، و این امکان را می دهد که یک نمودار د دی براین از ک تایی داده شده تشکیل شود. در شکل 2 ، کشش های خطی مشخص می شوند و سپس نمودار ، شکل 3 شکل می گیرد که کشش های خطی به یک گره واحد با ک تایی با اندازه های مختلف تبدیل شده اند، و یک نمودار مختصر تر تشکیل شده است. در این نمودار ساده ، به راحتی می توان تیپ ها و حباب های مختلفی را شناسایی کرد ، همان‌طور که در شکل 4 نشان داده شده است ، این حباب ها و تیپ ها را می توان از بین برد ، زیرا می توانیم تشخیص دهیم که آنها از خطاهای موجود در bp خوانده شده تشکیل شده اند و ساختار گرافیکی را به ما ارائه می دهند که دنباله اصلی را به‌طور دقیق و کاملاً منعکس کند. اگر از نمودار دی براین نشان داده شده در شکل 5 پیروی کنید ، خواهید دید که توالی شکل گرفته با توالی دی ان ای داده شده در دنباله 2 مطابقت دارد.

|  |  |
| --- | --- |
| شکل 2  نمودار دی براین با کشش خطی تعیین شده | شکل 3  نمودار ساده شده دی براین |
| شکل 4  نمودار دی براین با تیپ ها و حبابا های مشخص شده | شکل 5  نمودار دی براین نهایی با رشته دی ان ای |

مقایسه دو رشته دی ان ای
-----------------------

هنگام مقایسه دو رشته دی ان ای ، نمودارهای رنگی دی براین اغلب برای شناسایی خطاها استفاده می شوند. این خطاها ، اغلب چندریختی (زیست‌شناسی) ها ، باعث می شوند حباب هایی شبیه به موارد ذکر شده در بالا شکل بگیرند. در حال حاضر چهار الگوریتم اصلی وجود دارد که برای تعمیم داده ها و یافتن حباب ها استفاده می شود. چهار الگوریتم با اجازه دادن به گره ها و لبه های موجود در نمودار ، توسط نمونهایی که از آنها مشاهده شده است ، نمودار دی براین را گسترش می دهند.

### فراخوانی حباب

ساده ترین کاربرد یک نمودار رنگی دی براین به الگوریتم فراخوانی حباب معروف است. این الگوریتم حبابهایی را بر روی ژنوم شناسایی می کند که از اصل متفاوت است. این حباب ها باید تمیز باشند و یا صرفاً واگرایی از ژنوم مرجع باشند ، اما نمی شود به‌وجود امده توسط حذف پایه های DNA باشد. این الگوریتم می تواند دارای نرخ های مثبت کاذب بالایی باشد ، زیرا در جداسازی حباب های تکرار شونده و ناشی از آن پیچیدگی وجود دارد. با این حال ، اغلب یک ژنوم مرجع وجود دارد که به بهبود قابلیت اطمینان کمک می کند. ژنوم مرجع همچنین در تشخیص تفاوت ها کمک می کند و برای تشخیص مکان های مختلف بسیار مهم است. ژنوم مرجع همچنین به شناسایی انواع کمک می کند و برای تمایز مکان های مختلف ضروری است. اخیراً دانشمندان راهی برای استفاده از الگوریتم فراخوانی حباب با تنوع تعداد کپی کشف کرده اند تا فرصتی برای تشخیص بی طرفانه این تغییرات در آینده فراهم شود.

### واگرایی مسیر

هنگام مشاهده انواع پیچیده ، این احتمال بسیار کم وجود دارد که آنها یک کانتیگ تمیز را درست کنند. از آنجا که این مورد اغلب اتفاق می افتد ، الگوریتم واگرایی مسیر مفید است ، به ویژه هنگامی که حذف ها رخ می دهد و نوع پیچیده است و محدود به الل مرجع است. وقتی حبابی شکل می گیرد ، الگوریتم واگرایی مسیر اغلب استفاده می شود و اجازه می دهد حباب های شناسایی شده در یک روش بسیار منظم حذف شوند. این الگوریتم ابتدا هر نقطه واگرایی را پیدا می کند. سپس از هر نقطه واگرایی ، رشته هایی که حباب را تشکیل می دهند ، ردیابی می شوند مشخص شود بعد از n گره، دو مسیر کجا به هم متصل شوند. اگر این دو مسیر به هم بپیوندند ، آنگاه مسیر با پوشش کمتر حذف می شود و در یک پرونده ذخیره می شود.

### تجزیه و تحلیل نمونه چندگانه

با استفاده از نمونه های متعدد ، میزان قدرت و میزان کشف کاذب در کشف انواع مختلف به‌طور قابل توجهی بهبود می یابد. در ساده ترین موارد ، نمونه ها در گروهی از یک رنگ قرار می گیرند و داده ها همان‌طور که قبلاً توضیح داده شد ، تجزیه و تحلیل می شوند. اما ، با حفظ رنگ های جداگانه برای هر مجموعه نمونه ، اطلاعات اضافی در مورد چگونگی شکل گیری حباب ها ، چه با خطا و چه با تکرار ، خود را ارائه می دهد. در سال 1997 ، دپارتمان توسعه فناوری ژنتیک ژنزیم(به انگلیسی:Genzyme) در فرامینگهام ، ماساچوست رویکرد جدیدی را ایجاد کرد که دستیابی به موفقیت در مقابله با حبابها با استفاده از روش تشخیصی اختصاصی آلل مولتیپلکس (MASDA) فراهم کرد. این برنامه دات بلات (به انگلیسی:dot-blot)  مستقیم ،کاوشگر پیوندی پیچیده همزمان و تشخیص جهش مستقیم را برای کمک به حل مسئله دوگانه تجزیه و تحلیل نمونه های متعدد ترکیب می کند.

### تعیین ساختار ژنتیکی

تخمین زده شده است که ژنوم انسان دارای بیش از ۱۰ میلیون موقعیت نوکلئوتید دارد که متغیر های مشترکی بین افراد جمعیت دارد.علاقه غالب در ژنوتیپ در مقیاس بزرگ SNP(چندریختی تک-نوکلئوتید) ها برای این است که مطالعات گسترده ژنومی با نشانگرهای SNP ممکن است شناسایی تغییرات ژنتیکی را که مستعد ابتلا به اختلالات پیچیده است ، قادر سازد. نمودارهای رنگی دی براین می توانند برای تعیین ساختار ژنتیکی هر نمونه دی ان ای در یک مکان شناخته شده استفاده شوند ، حتی اگر پوشش برای توالیابی انواع کافی نباشد. اولین قدم برای این فرایند ، ساختن نمودار از آلل مرجع ، انواع شناخته شده و داده های نمونه است. سپس الگوریتم احتمال هر نوع ساختار ژنتیکی را محاسبه می کند و ساختار نمودار ، هر دو دنباله محلی و ژنوم گسترده را نشان می دهد. سپس این به انواع مختلف آللی تعمیم داده می شود و به تعیین ساختار ژنتیکی انواع پیچیده و مرکب کمک می کند. این الگوریتم به‌طور مکرر مورد استفاده قرار می گیرد ، زیرا هیچ حبابی برای مقابله تشکیل نمی شود. همچنین این الگوریتم به‌طور مستقیم به یافتن مسائل پیچیده تر در ژن ها بهتر از هر سه الگوریتم قبلی گفته شده کمک می کند.

منابع
-----

1. ↑  *De Bruijn Graph of a small sequence*. (2011). Retrieved Feb 7, 2015, from Homolog.us — Bioinformatics:  بایگانی‌شده در ۲۰۱۴-۱۰-۳۰ توسط Wayback Machine
2. 1 2 3 4  
 Simpson, J. T. Wong, K. Jackman, S. D. Schein, J. E. Jones, S. J. & Birol, I. (2009). ABySS: a parallel assembler for short read sequence data. *Genome research, 19*(6), 1117-1123
3. ↑  Taku Onodera, Kunihiko Sadakane & Tetsuo Shibuya. (2013). Detecting Superbubbles in Assembly Graphs. *Springer Berlin Heidelberg, 1*
4. 1 2  Flicek, P. & Birney, E. (2009). Sense from sequence reads: methods for alignment and assembly. *Nature methods, 6*, S6-S12. Figure 3
5. 1 2 3 4 5 6  Iqbal, Z. Caccamo, M. Turner, I. Flicek, P. & McVean, G. (2012). De novo assembly and genotyping of variants using colored de Bruijn graphs. *Nature genetics, 44*(2), 226-232
6. ↑  Nijkamp, J. F. van den Broek, M. A. Geertman, J. M. A. Reinders, M. J. Daran, J. M. G. & de Ridder, D. (2012). De novo detection of copy number variation by co-assembly. *Bioinformatics, 28*(24), 3195-3202
7. ↑  Shuber, A. P. Michalowsky, L. A. Nass, G. S. Skoletsky, J. Hire, L. M. Kotsopoulos, S. K. ... & Klinger, K. W. (1997). High throughput parallel analysis of hundreds of patient samples for more than 100 mutations in multiple disease genes. *Human molecular genetics, 6*(3), 337-347
8. ↑  Ann-Christine Syvänen. (2005). Toward genome-wide SNP genotyping. *Nature Genetics, 1*