Clustal W és Clustal X 2.0

Abstract

Összefoglaló: A Clustal W és Clustal X többszörös szekvenciaillesztési programokat teljesen átírtuk C++ nyelven. Ez megkönnyíti a jövőben az illesztési algoritmusok továbbfejlesztését, és lehetővé tette a programok megfelelő portolását a Linux, Macintosh és Windows operációs rendszerek legújabb verzióira.

Contact:[email protected]

1 BEVEZETÉS

A többszörös szekvenciaillesztés ma már az egyik legszélesebb körben használt bioinformatikai elemzés. Bonyolultabb elemzések vagy elemzési pipelinek részeként rutinszerűen szükség van rájuk, és számos igen széles körben használt csomag létezik, pl. Clustal W (Thompson et al., 1994), Clustal X (Thompson et al., 1997), T-Coffee (Notredame et al., 2000), MAFFT (Katoh et al., 2002) és MUSCLE (Edgar, 2004). A Clustal a legrégebbi a jelenleg legszélesebb körben használt programok közül, mivel először az 1980-as évek végén terjesztették postai úton floppylemezeken. Kezdetben Microsoft Fortran nyelven írták MS-DOS-ra, és eredetileg IBM-kompatibilis személyi számítógépeken futott négy különálló futtatható programként, Clustal1-Clustal4 (Higgins és Sharp, 1988, 1989). Ezeket később C-ben átírták és egyetlen programba, a Clustal V-be (Higgins et al., 1992) egyesítették, amelyet VAX/VMS, Unix, Apple Macintosh és IBM kompatibilis PC-kre terjesztettek. Ezeket a programokat az EMBL File szerveréről (Stoehr és Omond, 1989), egy e-mail és FTP szerverről terjesztették, amely az EMBL-ben (Heidelberg, Németország) található.

A jelenlegi Clustal programok mind a Clustal W (Thompson et al., 1994) programból származnak, amely egy új pozíciónkénti pontozási sémát és egy súlyozási sémát tartalmazott a túlreprezentált szekvenciacsoportok lefelé súlyozására. A “W” a “súlyok” rövidítése. Ezeket a programokat 1994 óta többször módosították és kiegészítették a funkcionalitás és az érzékenység növelése érdekében. A felhasználóbarátságot is nagymértékben javította, hogy 1997-ben egy teljes grafikus felhasználói felülettel egészítették ki (Thompson et al., 1997). Ez bonyolultabbá tette a kód karbantartását és fejlesztését, mivel a grafikus felületet folyamatosan módosítani és újrafordítani kell az új operációs rendszerekhez és asztali környezetekhez (Windows, Macintosh, VMS, Unix és Linux).

A 90-es évek végére a Clustal W és a Clustal X voltak a legszélesebb körben használt többszörös igazító programok. Képesek voltak közepes méretű adathalmazok nagyon gyors igazítására, és könnyen kezelhetőek voltak. Az igazítások elég jó minőségűek voltak ahhoz, hogy ne igényeljék gyakran a kézi szerkesztést vagy kiigazítást. Ez a helyzet nagymértékben megváltozott a többszörös igazítóprogramok első egyedi benchmark tesztkészletének, a BAliBASE-nek a megjelenésével (Thompson et al., 1999). Ezt követte a T-Coffee megjelenése, amely nagyon pontos igazításokat tudott készíteni nagyon eltérő fehérjékről, de csak kis szekvenciahalmazok esetében, tekintettel a magas számítási költségére. Az asztali számítógépek feldolgozási sebességének növekedésével és a T-Coffee kód későbbi optimalizálásával a T-Coffee ma már rutinszerűen használható közepes méretű illesztési problémákra. A közelmúltban jelent meg a MAFFT és a MUSCLE, amelyek kezdetben legalább olyan pontosak voltak, mint a Clustal, ami az illesztési pontosságot illeti, ugyanakkor rendkívül gyorsak is voltak, és sok ezer szekvencia illesztésére voltak képesek. Az elmúlt 4-5 év során ezek a programok fokozatosan egyre pontosabbá váltak a nehéz összehangolásoknál is. Ennek ellenére a Clustal W-t és a Clustal X-et továbbra is nagyon széles körben használják, egyre inkább a weboldalakon. Az EBI Clustal oldalára évente szó szerint több millió többszörös igazítási feladat érkezik.

Ezzel összefüggésben fejlesztettük ki a Clustal W 2.0 és a Clustal X 2.0 programot. Ezeket a programokat C++ nyelven, egyszerű objektummodellel írtuk újra, hogy könnyebb legyen a kód karbantartása, és ami még fontosabb, hogy könnyebben lehessen módosítani vagy akár lecserélni néhány igazítási algoritmust. Két új programot készítettünk, amelyek megjelenésükben nagyon hasonlítanak a régebbi, 1.83-as verziójú programokhoz, de most már könnyebben kezelhetők. Az igazítási algoritmusokon is végeztünk néhány kisebb módosítást. A szokásos Neighbor-Joining vezérfák alternatívájaként új kódot adtunk az UPGMA vezérfákhoz. Ez segít felgyorsítani a rendkívül nagy, több tízezer szekvenciából álló adathalmazok igazítását. Az illesztési pontosság növelése érdekében iteratív illesztési lehetőséget is beépítettünk.

Fig. 1.

ClustalX 2.0 Pillanatkép Mac OS X operációs rendszeren.

Fig. 1.

ClustalX 2.0 Képernyőkép Mac OS X-en.

A Clustal X 2.0 a Clustal X grafikus illesztési eszköz új verziója. Az eredeti Clustal X-et az NCBI vibráló eszköztárának felhasználásával fejlesztették ki. A vibrant toolboxot már nem támogatják, ami problémákhoz vezetett a Clustal X lefordításában az operációs rendszerek újabb verzióin. A Clustal X 2.0 grafikus felületének részeit teljesen újraírták a Qt GUI eszköztár segítségével. A Qt egy könnyen használható, többplatformos C++ GUI eszköztár. A kódot csak egyszer kell lefordítani az egyes platformokon. A Qt eszköztár natív megjelenést biztosít Windows, Linux és Mac platformokon. A Clustal X 2.0 ugyanazzal a funkcionalitással rendelkezik, mint a Clustal X.

2 ÚJ TULAJDONSÁGOK

A Clustal W 2.0 két új opciót tartalmaz, amelyek lehetővé teszik a nagyon nagy adathalmazok gyorsabb igazítását és növelik az igazítási pontosságot. A Clustal W és a Clustal X 2.0 alapértelmezett opciói megegyeznek a Clustal W 1.83-as verziójával, és ugyanolyan igazítási eredményeket adnak.

A Clustalban lévő vezérfákat az elmúlt kb. 10 évben a Neighbor-Joining (NJ) módszerrel számították ki. A program legkorábbi verzióiban az UPGMA-t használták. Az UPGMA gyorsabb, mint az NJ, de hajlamos arra, hogy hosszú ágakat csoportosítson össze, ha az evolúciós ráták nagyon egyenlőtlenek a különböző vonalvezetésekben. Mindkét algoritmus komplexitása O(N2), de az UPGMA gyorsabb egy adott adathalmaz esetében, és a különbség nagyon nagy N esetén válik hangsúlyossá. Egy szabványos asztali számítógépen 10 000 szekvencia klaszterezése kevesebb mint egy perc alatt elvégezhető az UPGMA segítségével, míg az NJ több mint egy órát vesz igénybe. Újra implementáltunk egy nagyon hatékony algoritmust az UPGMA-hoz, amely a ‘-clustering=UPGMA’ parancssori opcióval hívható meg. A Balibase benchmarkon kis mértékben kevésbé pontos, de a nagy illesztéseknél (pl. 10 000 globin szekvencia) ezt ellensúlyozza a feldolgozási idő megtakarítása (2 óra a 12 órával szemben).

Az illesztések finomításának gyors és hatékony módszere az iteráció. A Clustal ezen verziója tartalmaz egy “remove first” iterációs sémát, amely optimalizálja a Weighted Sum of Pairs (WSP) pontszámot. Minden egyes iterációs lépés során az egyes szekvenciákat sorban eltávolítjuk az összehangolásból, és újra összehangoljuk. Ha a WSP pontszám csökken, akkor az így kapott igazítás megmarad. Az iterációs séma használható a végső illesztés finomítására vagy a progresszív illesztés minden egyes lépésénél. A progresszív igazítás során végzett iterálás általában pontosabb, de sokkal időigényesebb is, mivel a vezérfában 2N-3 csomópont van. A ‘-Iteration=Alignment’ parancssori opció a végső igazítást finomítja, míg a ‘-Iteration=Tree’ opció a sémát beépíti a fokozatos igazításba. Az iterációs ciklusok számát a ‘-numiters’ parancssori opcióval állíthatjuk be (alapértelmezett érték 3).

FELHÍVÁS

Ezt a munkát főként a Science Foundation Ireland finanszírozta.

Érdekütközés: nincs bejelentett.

A szerzői megjegyzések

Társszerkesztő: Alex Bateman

Szólj hozzá!