Dizi Hizalaması
Kısaca: dizi hizalaması, DNA, RNA veya protein dizilerini düzenleyerek benzer bölgelerin tespit edilmesidir. Bu bölgelerin benzer olması, diziler arasında işlevsel, yapısal veya evrimsel bir ilişki olduğu anlamına gelir. Hizalanmış nükleotit veya aminoasit kalıntı dizileri tipik olarak bir matriksin satırları olarak gösterilir. Kimyasal kalıntıları temsil eden harflerin arasına boşluklar konarak ardışık sütunlarda yer alan aynı veya benzer harflerin bir hizada olması (altalta gelmesi) sağlanır. ...devamı ☟
tekniği, Needleman-Wunsch algoritması ile global hizalamalar üretmek için, Smith-Waterman algoritması ile de lokal hizalamalar üretmek için uygulanabilir. Tipik kullanımda, protain hizalamalarında amino asit uyuşma veya uyuşmamalarına bir skor verebilmek için bir substitusyon matrisi; bir dizideki amino asitin öbür dizide bir boşlukla eşleştirilmesi için de bir boşluk ceza değeri kullanılır. DNA ve RNA hizalamaları bir skor matrisi kullanabilir ama pratikte basitçene pozitif bir uyuşma skoru, negatif bir uyuşmama skoru ve negatif bir boşluk cezası verilir. (Standart dinamik programlamada, her amino asitin skoru komşularının kimliğinden bağımsızdır, dolayısıyla baz istiflemesi etkileri hesaba katılmaz. Ancak, algoritmayı değiştirip bu tür etkileri de göz önüne almak mümkündür.) Standart doğrusal boşluk cezası yerine bazı algoritmalarda kullanılan bir varyasyon, iki ayrı boşluk cezası uygulamadır: biri boşluğu açmak içindir, öbürü ise boşluğu uzatmak içindir. Tipik olarak birinci cezanın değeri ikincisinden daha büyüktür, örneğin boşluk açmak için -10 puan, boşluk uzatmak için -2 puan kullanılabilir. Bunun sonucu olarak, bir hizalamadaki boşluk sayısı azalır, harfler ve boşluklar bir arada tutulmuş olur, bu da biyolojik bakımdan daha gerçekçi sayılır. Gotoh algoritması, üç matris kullanarak 'affin' boşluk cezalarını hesaplar.
nükleotit dizilerini protein dizileri ile hizalamaya yarayabilir. Bu, karmaşık bir iş olabilir çünkü çerçeve kayması mutasyonlarının (genelde insersiyon ve delesyonlar) etkisini hesaba katmak gerekir. Çerçeve arama yöntemi kullanılarak bir nükleotit sorgu dizisi ile protein dizilerinden oluşan arama kümesi arasında (veya tersi) global veya lokal ikili hizalamalar üretilir. Bu yöntem çok yavaş olmasına rağmen, çerçeve kaymalarını değerlendirme yeteneği, çok sayıda "indel"ler (insersiyon ve delesyonlar) içeren diziler için çok yararlıdır. Bu tür dizilerin normalde verimli çalışan buluşsal (höristik) yöntemlerle hizalanması çok zordur. Pratikte, bu yöntem yüksek hesaplama gücü veya dinamik programlama için özelleşmiş mimariye sahip bir bilgisayar sistemi gerektirir. BLAST ve EMBOSS paketleri, çevrimli (translasyonlu) hizalamalar yapmak için temel araçlara sahiptir (gerçi bunların bazılarının, bu programların arama yeteneklerinin yan etkilerinden yararlandığı söylenebilir). Daha genel yöntemler Accelrys'in GCG paketi'ndeki FrameSearch gibi ticari kaynaklardan ve Genewise gibi bazı açık yazılım ürünlerinden elde edilebilir. Dinamik proramlama yöntemi belli bir skorlama fonksiyonu için optimal hizalamayı bulmayı garantiler. Ancak, iyi bir skorlama fonksiyonunu belirlemek çoğu zaman teorik değil, empirik bir meseledir. Dinamik programlara ikiden çok diziye de genellenebilirse de, çok sayıda dizi veya çok uzun dizilerde kullanılamayacak derecede yavaş çalışır. Sözcük yöntemleriSözcük yöntemleri, k-li yöntemler olarak da bilinir, optimal hizalama çözümünü bulması garantili olmayan, ama dinamik programlamadan önemli derecede daha verimli olan höristik yöntemlerdir. Bu yöntemler büyük ölçekli veritabanlarında özellikle yararlıdır, çünkü bu veritabanlarındaki aday dizilerin büyük bir kısmının sorgu dizisiyle anlamlı bir uyuşma göstermeyeceği peşinen bilinmektedir.
Dinamik progrmalama tekniği herhangi sayıda dizi için kullanılabilir. Ancak, berimsel olarak hem zaman hem bellek bakımından pahalı olduğu için, en basit biçimiyle dahi üç veya dört tane diziden fazlası için kullanılmaz. Bu yöntem iki dizinin hizalanmasında yaratılan matrisin n-boyutlu karşılığının inşasını gerektirir, burada n, sorgu kümesindeki dizi sayısıdır. Sorgu dizilerindeki her bir dizi çifti için standart dinamik programlama kullanılır, sonra bu ara çözümler arasındaki uyuşmalar veya boşluklar değerlendirilerek "hizalama uzayı" tamamlanır, yani her iki dizili hizalama arasında bir hizalama yapılmış olur. Bu yöntem berimsel olarak pahalı olsa da, global optimal çözümü üreteceğini garantiler, bu yüzden az sayıda dizinin hatasız hizalanması gerektiğinde faydalıdır. Berimsel karmaşıklığı azaltılmasını bir yolu "çiftler toplamı" adlı objektif fonksiyona dayanır, bu yaklaşım MSA yazılım programında uygulanmıştır.
Bu konuda henüz görüş yok.