• Home
  • Kemi
  • Astronomien
  • Energi
  • Naturen
  • Biologi
  • Fysik
  • Elektronik
  • Ett nytt molekylärt programmeringsspråk:CRN++

    Euklidens algoritm och hur den kommer att skrivas i CRN++. Upphovsman:Vasic et al.

    Syntetisk biologi är ett relativt nytt forskningsområde som avsevärt kan påverka ett antal områden, inklusive biologi, nanotillverkning och medicin. En primär utmaning inom detta framväxande område är att bädda in beräkning i molekylära sammanhang, i situationer där elektroniska mikrokontroller inte kan sättas in. Att göra detta kräver utveckling av metoder som effektivt kan representera beräkningar med molekylära komponenter.

    Ett team av forskare vid University of Texas i Austin har skapat CRN++, ett nytt språk för programmering av deterministisk (massverkan) kemisk kinetik vid utförande av beräkningar. I deras tidning, förpublicerad den arXiv , forskarna beskriver detta nya språk och bygger en kompilator som översätter CRN++-program till kemiska reaktioner.

    "En viktig teknisk utmaning för syntetisk biologi är att designa en kemisk styrenhet som interagerar i en cellulär miljö, att utföra en viss uppgift, "Marko Vasic, en av forskarna som genomförde studien, berättade Tech Xplore . "För att uppnå detta, det är nödvändigt att både konstruera syntetiska molekyler och programmera dem. Molekyler interagerar via kemiska reaktioner, och genom att programmera molekyler, vi menar att definiera interaktionsregler (kemiska reaktioner) mellan dem. "

    De senaste förbättringarna av DNA-syntes har öppnat upp för nya, spännande möjligheter för molekylteknik. Dock, forskare inom syntetisk biologi måste först utforma sätt att utforma interaktionsreglerna (kemiska reaktioner) för att uppnå ett önskat mål. Huvudsyftet med denna nya studie var att utforma ett språk på högre nivå som kunde uttrycka beteendet hos kemiska reaktioner på ett mer intuitivt sätt.

    "Inom mjukvaruteknik, en programmerare skriver på ett högnivåspråk som är lätt att förstå, och ett sådant program kompileras ner till maskinkoden, som är svårt att förstå för en människa, men förstås av en maskin, " förklarade Vasic. "Vi försökte bygga en analogi i molekylär programmering genom att definiera ett språk på hög nivå som är lättare att resonera kring och som är sammanställt till "komplex" kemi."

    Utdata från kompilatorn samt simuleringsresultat för CRN ++ - programmet. Kredit:Vasic et al.

    CRN++ bygger på två idéer:modularitet och användningen av en oscillator. Modularitet innebär att språket inkluderar en uppsättning kemiska reaktioner som kallas moduler som kan sammansättas utan störningar mellan olika uppsättningar av reaktioner. För att uppnå detta, forskarna kartlade grundläggande funktioner för CRN++ till dessa moduler. De använde också en kemisk oscillator för tidsmässig ordning, vilket tillät dem att översätta ordnade imperativa kommandon i språket till kemi.

    "Som vi förstår det, vi är de första som tillhandahåller ett imperativt programmeringsspråk som överensstämmer med kemiska reaktionsnätverk, " sa Vasic. "Vi skapade vår kod med öppen källkod, inklusive CRN++, samt simuleringsramverk, eftersom vi hoppas att detta kommer att göra det lättare för forskare att testa nya metoder, och på så sätt flytta fram området ytterligare."

    Forskarna utvärderade CRN++ och bevisade dess genomförbarhet på en serie algoritmer för diskreta och verkliga beräkningar. Det nya språket kan också enkelt utökas för att stödja nya kommandon eller implementeringar, vilket gör det till den idealiska basen för utvecklingen av mer avancerade molekylära program.

    "Program översatta från CRN++ till kemi innehåller en del fel, som kan vara mycket låg i vissa klasser av program men kan vara hög eller byggas upp med tiden i andra, ", sa Vasic. "Vi planerar därför att undersöka felkällor ytterligare och designa program som garanterar att fel inte byggs upp över vissa gränser."

    Vasic och hans kollegor vill också bredda sitt programmeringsspråk genom att inkludera nya moduler, definieras som uppsättningar av kemiska reaktioner som kan utföra grundläggande operationer.

    © 2018 Tech Xplore




    © Vetenskap https://sv.scienceaq.com