BioExcel – Laskennallisen biomolekyylitutkimuksen huippuosaamiskeskus

GROMACS (http://www.gromacs.org) on yksi tärkeimmistä biologisten makromolekyylien simulointiohjelmistoista. Se on tarkoitettu suurten, biologisesti merkityksellisten systeemien simulointiin, ja siinä keskitytään sekä tehokkuuteen että joustavuuteen, jotta voidaan tutkia useita erilaisia systeemejä (ks. esimerkkejä alempana sivulla). Tutkimusryhmät ympäri maailmaa ovat käyttäneet ohjelmaa, ja viime vuosina on julkaistu useita satoja siihen suoraan tai epäsuorasti perustuvia julkaisuja (ks. alla oleva kuva, jossa on esitetty Scopus-tietokannassa tehdyn haun tulokset ohjelman käytöstä).

Tulos Scopus-tietokannassa tehdystä hausta termillä ”GROMACS”, josta käy ilmi, että käyttö on lisääntynyt viime vuosina.

Lisenssi

GROMACS on vapaa ohjelmisto; voit levittää sitä ja/tai muokata sitä Free Software Foundationin julkaiseman GNU Lesser General Public License
-lisenssin ehtojen mukaisesti; joko lisenssin version 2.1 tai (valintasi mukaan) minkä tahansa myöhemmän version.

GROMACS jaetaan siinä toivossa, että siitä on hyötyä, mutta ILMAN MITÄÄN TAKUUTA; ilman edes implisiittistä takuuta KAUPALLISESTA KÄYTTÖKELPOISUUDESTA tai SOVELTUVUUDESTA ERITYISEEN KÄYTTÖTARKOITUKSEEN.

Katsokaa lisätietoja GNU Lesser General Public License -lisenssistä. Täydellinen lisenssiteksti löytyy täältä.

Osallistuminen Bioexceliin

GROMACS on osa Bioexcelin pyrkimystä tarjota puitteet minkä tahansa biomolekulaarisen järjestelmän simuloinnille kehittämällä työkaluja, jotka ovat sekä tehokkaita biologisesti relevanttien järjestelmien simuloinnissa että joustavia sovellettavaksi erilaisiin käyttötapauksiin, koska toiminnallisuutta voidaan nopeasti laajentaa. GROMACSin kyky simuloida mielivaltaisen suuria systeemejä mahdollistaa muiden ohjelmaan osallistuvien ohjelmien tarjoaman tiedon yhdistämisen, jotta tutkittavista systeemeistä saadaan parempi käsitys.

Jatkokehitys osana Bioexceliä

Tavoitteena on laajentaa GROMACSin nykyisiä ominaisuuksia tarjoamalla API-kehys, jota muut ohjelmat voivat käyttää rajapintana pääasiallisen simulointimoottorin kanssa. Tämä mahdollistaa käyttömahdollisuuksien laajentamisen entisestään biologisesti ja kemiallisesti merkityksellisempiin järjestelmiin, koska muut ohjelmat pystyvät suoraan liittymään simuloinneissa käytettäviin tehokkaisiin ydinrutiineihin.

Tämän lisäksi sekä KTH:n että MPG:n yhteistyökumppanit osallistuvat sekä GROMACS:n että muiden simulointikoodien suorituskyvyn, skaalautuvuuden, laadun ja käytettävyyden parantamiseen:

  • QA, yksikkötestausta ja yleinen kirjasto biomolekyylimallinnusta varten.
    GROMACS:stä tehdään nykyaikainen moduuleihin pohjautuva C++-kirjasto, jossa on täysi yksikkötestausta ja ajantasaista dokumentaatiota käyttäjille &kehittäjille kaikista moduuleista. Projektissa ollaan siirtymässä ammattimaiseen laadunvarmistusasetukseen ottamalla käyttöön tiukka koodin tarkistus (myös pääkehittäjien toimesta) ja automaattinen jatkuva integrointi, jossa kaikki korjaukset käännetään ja yksikkötestataan laajalla valikoimalla laitteistoja ja kääntäjiä, jotta jokainen yksittäinen muutos voidaan hyväksyä laadunvarmistusmenetelmällä ja jotta mikä tahansa asennuskohde voi taata kääntämänsä asennuksen laadun.
  • Heterogeeninen rinnakkaistaminen.
    Kehitämme uuden heterogeenisen rinnakkaistoteutuksen, jossa kaikkia käytettävissä olevia prosessori-, kiihdytin- ja tietoliikenneresursseja käytetään rinnakkain kussakin solmussa eksplisiittisen monisäikeistyksen ja monitasoisen kuormanjaon avulla, sekä uuden tuen OpenCL- ja Xeon Phi -kiihdyttimille CUDA:n lisäksi.
  • Tehokkaita ensemble-tekniikoita.
    Joissakin nykyisin tehokkaimmissa lähestymistavoissa käytetään satoja tai tuhansia simulaatioita ensemble-otantatekniikoihin, kuten Markovin tilamalleihin tai vapaan energian laskentaan. Tuomme nämä lähestymistavat yleisesti käyttäjien ulottuville integroimalla Copernicus-kehyksemme ensemble-simulointia varten täysin GROMACSiin (Pronk et al. 2011). Näin voidaan muotoilla korkean tason näytteenotto- ja vapaan energian laskentaongelmat mustan laatikon laskentaongelmiksi, jotka voivat käyttää satoja tuhansia prosessoreita sisäisesti. Tämä on erityisen tärkeää korkean läpimenon vapaiden energioiden seulontasovelluksissa. Huomionarvoista on, että kehys ei rajoitu GROMACSiin, vaan sitä voidaan käyttää minkä tahansa koodin kanssa.
  • Helpottaaksemme tietojen vaihtoa muiden sovellusten kanssa ja mahdollistaaksemme täysin automatisoidun korkean läpivirtaustehon simuloinnin kehitämme julkisia dataformaatteja molekyylien kuvaamiseksi XML:llä, erittäin pakattuja liikerataformaatteja, jotka tukevat digitaalisia hasheja ja allekirjoituksia datan eheyden takaamiseksi, sekä uusia työkaluja, joiden avulla voidaan luoda vuorovaikutussuhteiden kuvauksia (topologioita) automaattisesti mielivaltaisille pienille molekyyleille, joita käytetään mm.esim. lääkeaineina, jotka kohdistuvat useisiin eri voimakenttiin, kuten CHARMM, GAFF tai OPLS-AA (Lundborg & Lindahl 2014).
  • Vapaan energian laskennan lupaavimpia potentiaalisia sovelluksia ovat mm. aminohappojen skannauskokeiden ennustaminen tai se, miten pieniä molekyylejä tulisi muuttaa sitoutumisen parantamiseksi. Tällä hetkellä tätä vaikeuttaa vaatimus joko laskea absoluuttiset vapaat energiat suurille muutoksille (mikä aiheuttaa suuria tilastollisia virheitä) tai suunnitella manuaalisesti topologioita, joissa jäännökset tai lääkeaineet muokataan suoraan toisiinsa liittyviin molekyyleihin. BioExcelin osana teemme vapaiden energioiden laskennasta sovellettavissa olevan näissä korkean läpimenon asetuksissa kehittämällä ja integroimalla uusia moduuleja, joiden avulla mikä tahansa aminohappo voidaan automaattisesti muuttaa muiksi ja lääkeyhdisteet voidaan automaattisesti muuttaa toisiinsa liittyviksi johdannaisiksi siten, että häiriöt pidetään mahdollisimman pieninä. Yhdessä automaattisen topologian luomisen ja ensemble-simuloinnin kanssa tämä tekee molekyylisimuloinneista työkalun, jolla voidaan seuloa molekyylien ja sidosten stabiilisuutta 24-48 tunnissa, millä on suuria vaikutuksia lääketeollisuuden lääkesuunnittelukäyttöön.

Kehitysinfrastruktuuri

Varmistaaksemme sekä ohjelmakoodin että simulointitulosten oikeellisuuden ja ajaaksemme kehitystä sekä sisäisten että ulkoisten panostusten avulla, käytämme nykyaikaiseen ohjelmistokehitykseen liittyviä parhaita käytäntöjä:

  • Lähdekoodin version- ja versiohallinnasta huolehditaan käyttämällä git-versiohallintajärjestelmää, ja GROMACS-tietovarasto on saatavilla lähdekoodin tarkistamista varten käyttämällä
    git clone git://gitlab.com/gromacs/gromacs.git

    tai selaamalla osoitteessa https://github.com/gromacs/gromacs. git mahdollistaa samalla tehokkaan versionhallinnan sekä mahdollistaa eri puolilla maailmaa olevien kehittäjien panokset ja kehityksen.

  • GROMACS-koodi tarkistetaan manuaalisesti ja automaattisesti GitLabin avulla, mikä varmistaa, että uudet panokset ja muutokset olemassa olevaan koodipohjaan läpäisevät useiden ydinkehittäjien tarkastuksen ennen kuin ne sisällytetään pääjakeluun. GROMCAS-koodin tarkistuspalvelin on tavoitettavissa osoitteessa https://gitlab.com/gromacs/gromacs.
  • Kullekin muutokselle suoritetaan jatkuva integrointitestaus ennen ja jälkeen päähaaraan sisällyttämisen GitLab CI:n avulla. Näin varmistetaan, että jokainen muutos läpäisee useita siirrettävyystestejä ennen sisällyttämistä ja että mikään muutos ei aiheuta virheitä olemassa olevan toiminnallisuuden laajan testauksen avulla. Myös GROMACS-testit ajetaan GitLabin avulla.
  • Uudet ja olemassa olevat ohjelman osat testataan laajasti käyttämällä yksikkö- ja regressiotestausinfrastruktuuria, joka on integroitu koodin tarkastus- ja CI-järjestelmään.
  • Dokumentointistandardit pannaan täytäntöön käyttämällä Doxygenia (doxygen.org) standardityökaluna funktioiden dokumentoinnissa ja niiden sisällyttämisessä ohjelman viitekäsikirjaan.
  • Käytämme GitLabiin integroitua ongelmanseurantajärjestelmää, ja GROMACSin ongelmanseurantaan voidaan avata ongelmia, jotta voimme tunnistaa ohjelmavirheet ja työskennellä yhdessä käyttäjien ja kehittäjien kanssa niiden korjaamiseksi.

Koulutus- ja tukitoiminnot

Tarjoamme useita tapoja, joilla sekä GROMACSin käyttäjät että mahdolliset kehittäjät voivat ottaa meihin yhteyttä kysyäkseen sovelluksiin ja muutoksiin liittyviä kysymyksiä.

  • Yleisiä kysymyksiä, jotka koskevat GROMACSin käyttöä systeemien simuloinnissa, voi ja kannattaa kysyä GROMACSin foorumilla.
  • Kysymykset, jotka koskevat GROMACSin kehitystä ja uusien toimintojen käyttöönottoa, tulisi kysyä kehittäjien postituslistalla. Sieltä saa myös lisätietoa uusista ja tuleviin versioihin tulevista ominaisuuksista.

Ohjelmiston kuvaus

Biologisten makromolekyylien simulointi on kehittynyt kapeasta tilastomekaniikan menetelmästä yhdeksi laajimmin käytetyistä biofysikaalisista tutkimustyökaluista, ja sitä käytetään kaukana teoreettisen kemian ulkopuolella. Supertietokoneet ovat nyt yhtä tärkeitä kuin sentrifugit tai koeputket kemiassa. Kuten vuoden 2013 kemian Nobel-palkinto osoitti, tilastolliseen mekaniikkaan perustuva molekyylidynamiikka mahdollistaa atomien liikkeiden simuloinnin realistisissa ympäristöissä huoneenlämmössä järjestelmissä, jotka ulottuvat materiaalikemiasta proteiineihin, DNA:han, RNA:han ja miljoonia atomeja sisältäviin kalvoihin. Molekyylidynamiikan perusalgoritmi arvioi kaikkiin järjestelmän atomeihin kohdistuvat voimat ja päivittää atomien nopeudet ja sijainnit Newtonin liikeyhtälöiden mukaisesti. Tätä numeerista integrointijärjestelmää iteroidaan miljardien askelten ajan, ja se tuottaa sarjan näytteitä, jotka kuvaavat järjestelmän termodynaamista kokonaisuutta. Tämä on tekniikan todellinen vahvuus, sillä se ennustaa kokeita: sillä voidaan kuvata tarkasti, miten molekyylit, kuten proteiinit, liikkuvat, mutta sen avulla voidaan myös laskea vapaat energiat, jotka kuvaavat kemiallisia reaktioita, esimerkiksi lääkeainekandidaatin vapaan energian sitoutuminen proteiinin aktiiviseen kohtaan tai se, miten ligandi stabiloi tietyn konformaation avatakseen tai sulkeakseen ionikanavan. Koska voimien laskemista tarvitaan monissa algoritmeissa, useat muut paketit käyttävät molekyylisimuloinnin työkalupakkeja kirjastoina energioiden arvioimiseksi esimerkiksi telakoitumisessa tai kun rakenteita tarkennetaan kokeellisilla rajoituksilla, kuten röntgen-, NMR- tai Cryo-EM-tiedoilla.gromacsin skaalautuminen

Tätä kehitystä ei olisi voitu toteuttaa ilman huomattavia tutkimusponnisteluja, joita on tehty simulointialgoritmien, optimoinnin ja rinnakkaistamisen alalla. Standardoitujen molekyylimallinnuspakettien, kuten GROMACSin, NAMD:n, AMBER:n ja CHARMM:n, syntyminen on ollut ratkaisevan tärkeää, koska ne ovat auttaneet simulointitutkimuksen tuotteistamisessa, jolloin tekniikat ovat tulleet sellaisten biotieteiden sovellustutkijoiden saataville, jotka eivät ole simuloinnin kehittämisen asiantuntijoita. Kaikilla näillä paketeilla on toisiaan täydentäviä vahvuuksia ja profiileja – alalla on siirrytty historiallisesta kilpailusta laajaan ideoiden vaihtoon. GROMACS on yksi maailman laajimmin käytetyistä tieteellisistä ohjelmistopaketeista, johon on viitattu yhteensä noin 20 000 kertaa (Hess et al. 2008, Pronk et al. 2013); se on biomolekyylitutkimuksen suurin ilmainen ohjelmisto ja avoimen lähdekoodin sovellus, ja se on ainoa tärkeimmistä molekyylidynamiikkasimulointipaketeista, jonka kehitystyötä johdetaan Euroopassa.

GROMACS-hanke käynnistyi vuonna 1995 yhtenä kaikkien aikojen ensimmäisistä rinnakkaisista rinnakkaismuotoisista simulointikoodeista, kansainvälistä kehitystiimiä vetää yhteistyökumppani KTH:lta, ja hanke keskittyy vahvasti simulaatioiden tehokkuus- ja yleisyysajatteluun. Se on ainoa paketti, joka tukee kaikkia yleisiä voimakenttiä, ja siinä on hyvin laaja valikoima simulointialgoritmeja. Tämä yhdistettynä erittäin vapaaseen (ja yritysystävälliseen) lisensointiin on todennäköisesti merkittävä tekijä siinä, että sitä käytetään simulointi-, minimointi- ja energia-arviointikirjastona useissa muissa sovelluksissa, esimerkiksi bioinformatiikassa tai hajautetun tietojenkäsittelyn hankkeissa, kuten Folding@Home. Koodi on siirrettävissä hyvin monenlaisille alustoille (myös sulautetuille), se sisältää manuaalisesti viritettyjä assembly-ytimiä kymmenille eri arkkitehtuurien käskykokonaisuuksille ja kiihdytintuen sekä Nvidian GPU:lle CUDA:n avulla, AMD:n GPU:lle OpenCL:n avulla että Xeon Phi -prosessoreille natiivisti. Paketti käyttää uusinta neutraalia reviirialueen hajotusta ja monitasoista rinnakkaistamista mahdollistaakseen skaalauksen sekä kymmeniin tuhansiin solmuihin supertietokoneissa että tehokkaaseen korkean läpimenotehon laskentaan kiihdyttimillä (Pall et al. 2014).

GROMACS pystyy jo nyt käyttämään tehokkaasti rinnakkain tuhansia ytimiä ja satoja kiihdyttimiä jopa yksittäisessä melko pienessä järjestelmässä. Kun lisätään ensemble-tason rinnakkaistaminen Copernicuksen avulla, ongelman kokonaisskaalaus laajenee vielä kahdella suuruusluokalla.

Molekyylidynamiikan simulointi yleensä ja GROMACS erityisesti on mahdollistanut suurten ja monimutkaisten biomolekyylisysteemien, kuten kalvojen ja kalvoproteiinien, tutkimisen ja sellaisten atomien yksityiskohtien luotaamisen, jotka eivät ole millään kokeellisilla menetelmillä saavutettavissa. Molekyylisimulaatioilla saatiin eräitä ensimmäisiä korkean resoluution malleja ionikanavien lepotiloista, jotka perustuivat avoimien kanavien röntgenrakenteisiin (Vargas et al. 2012), ja ne olivat ratkaisevassa asemassa mallinnettaessa ohimeneviä välikonformaatioita kalvoproteiinien rakenteellisten siirtymien aikana (Henrion et al. 2012). GROMACSia käytettiin myös ennustettaessa ensimmäistä kertaa membraaniproteiinien spesifistä molekyylitunnistusta lipideistä (Contreras et al. 2012) ja simuloinneissa, joissa tunnistettiin erilliset potensoivat ja inhiboivat sitoutumiskohdat hermostomme ligandi-ohjatuissa ionikanavissa (Murail et al. 2012) – tuloksia, joita useat ryhmät käyttävät nyt hyväkseen pyrkiessään suunnittelemaan parempia lääkkeitä.

Vastaa

Sähköpostiosoitettasi ei julkaista.