Optimalisering av PCR-primere som er rettet mot bakterielle 16S ribosom-RNA-genet

Problemet begrensninger

Som nevnt i forrige avsnitt, en optimal primer-set-par bør samtidig maksimere effektivitet og dekning og minimere matchende-bias. I det følgende vil vi beskrive hvordan vi kvantitativt kodet disse begrensningene.

Effektivitet

Den perfekte primer-set-par bør tilfredsstille flere begrensninger, tar sikte på å forbedre PCR effektivitet og spesifisitet ., Men samtidig tilfredsstille alle begrensninger er ofte upraktisk og mest state-of-the-art primere bryter med én eller flere begrensninger . Vi besluttet derfor å innføre effektivitet som en optimalisering score, koding mange av de begrensninger som fuzzy score funksjoner. Mer presist, vi har definert vår effektivitet score som summen av ti score vilkår: sju fuzzy score vilkår knyttet til enkelt-primer effektivitet begrensninger, var i gjennomsnitt på tvers av alle primere i primer-set-par, pluss tre score vilkår knyttet til effektiviteten av primer-set-par som helhet., Siden alle vilkårene er ment å variere mellom 0 og 1, optimalisering score varierer fra 0 (minimal effekt) til 10 (maksimal effektivitet).

Generelt kan man si at våre fuzzy score teller 1 for hver begrensning som er helt fornøyd, eller, alternativt, en verdi mellom 0 og 1, avhengig av hvor nær primer er til begrensning grense. Som et eksempel, bør du vurdere primer smeltetemperaturen, Tm. Tm bør være større enn eller lik 52 grader i en perfekt primer , men 51 er fortsatt akseptabel, selv om det ikke er ideelt., I dette tilfellet, vår fuzzy scoring funksjonen tilordner 1 til temperaturer på 52 grader eller høyere, 0 for temperaturer over 50 grader eller mindre, og som de vurderer som en lineært stigende funksjon mellom 50 og 52 grader. Hver term er nøyaktig beskrevet i det følgende.

7 single-primer score vilkårene er:

  1. smeltetemperaturen: smeltetemperaturen Tm av en primer er regnet ut med det nærmeste nabo formel . Score sikt er 1 hvis Tm ≥ 52, 0 hvis Tm ≤ 50 og (Tm – 50)/2 hvis 50 < Tm < 52.,

  2. GC-innhold: GC-innhold er det brøkdel fGC av base-par i den første sekvensen som er lik enten G (guanin) eller C (cytosine). Score sikt er 1 hvis 0.5 ≤ fGC ≤ 0.7, 0 hvis fGC > 0.7 eller fGC < 0,4 og (0.5 – fGC)/0.1 hvis 0.4 ≤ fGC < 0.5.

  3. 3′-enden stabilitet – score sikt 1: score to begrepene er definert som gjelder 3′-enden stabilitet. Den første termen er 0 hvis siste tre baser av primer består i sin helhet av Som (adenines) og Ts (thymines) og 1 på annen måte.,

  4. 3′-enden stabilitet – score sikt 2: den andre resultat sikt er 0 hvis den siste 5 baser inneholder mer enn 3 Cs eller Gs, og 1 på annen måte.

  5. Homopolymers: en homopolymer er en sekvens av identiske nukleotider. Score sikt er 1 hvis det ikke er noen homopolymers lengre enn 4 nt, 0.5 hvis det ikke er noen homopolymers lenger enn 5 nt, og 0 hvis det er minst en homopolymer lenger enn 5 nt i sekvensen.

  6. Selv-dimers: tilstedeværelsen av selv-komplementære områder mellom par av identiske primere kan føre til generasjon av selv-dimers., Vurderer maksimalt antall kamper i en gap-gratis justering mellom en primer med sin omvendte utfylle, maxM, score sikt er 1 hvis maxM ≤ 8, 0 hvis maxM ≥ 11 (11 – maxM)/3 hvis 8 < maxM < 11.

  7. Hårnåler: en hårnål kan dannes i nærvær av selv-utfylling innenfor primer sekvens, spesielt på sine 3′-enden., Score sikt er 0 hvis du for minst ett gap-gratis justering mellom primer og omvendt utfylle sin 3′-enden, både siste nukleotid og 3 eller flere av de 4 foregående nukleotider kamp, og 1 på annen måte.

De 3 primer-set-par score begrepene er definert som følger:

  1. Smelte temperaturområde: smeltetemperaturen utvalg ΔTm av en primer-set-par er beregnet som den maksimale minus minimum av smeltetemperaturer av alle primere i settet par., Score sikt er 1 hvis ΔTm ≤ 3, 0 hvis ΔTm ≥ 5 og (5 – ΔTm)/2 hvis 3 < ΔTm < 5.

  2. Dimers: vi anser det maksimale antallet kamper maxM på tvers av alle mulige justeringer mellom alle mulige kombinasjoner av forover og i revers primere fra en primer-set-par. Score sikt er 1 hvis maxM ≤ 8, 0 hvis maxM ≥ 11 (11 – maxM)/3 hvis 8 < maxM < 11.,

  3. Amplikon lengde utvalg: på grunn av de kjente reduksjon av PCR-effektivitet med økende amplikon lengde , vil vi lengder av den genererte amplikoner å ligge i et smalt område. Vi ønsker spesielt å unngå amplikoner mye kortere enn målet lengde, siden de vil være over-forsterket med hensyn til de andre. Men vi ønsker å være i stand til å tåle en liten brøkdel av ekstreme verdier, for å unngå penalizing potensielt verdifulle primer-set-par på grunn av bare et par sjeldne sekvenser., Gitt et representativt sett av bakterielle 16S sekvenser, kalt «referanse set» fra nå av ser vi på forskjellen Δamplen mellom median og den første persentilen av amplikon lengder på tvers av alle mulige amplikoner, dannet ved å matche alle kombinasjoner av forover og i revers primere fra på sett-par med referanse satt. Score sikt er 1 hvis Δamplen ≤ 50 nukleotider, 0 hvis Δamplen ≥ 100 (100 – Δamplen)/50 hvis 50 < Δamplen < 100.,

valg av score kriterier og standard terskel er basert på tidligere litteratur . Men både terskler og fuzzy toleranse intervaller kan stilles inn av brukeren forskjellig fra standard og i henhold til hans/hennes eksperimentelle behov ved å angi den ønskede verdier som input parametere når du ringer kommando linje verktøy.

Dekning

dekning score er definert som antall 16S sekvenser matchet med minst en primer., Gitt sekvenser av en introduksjon og en bakterielle 16S, vi definerer frø siste 5 nukleotider ved 3′-enden av en primer, og vi anser en 16S sekvens som samsvarte med primer hvis en region av 16S-sekvens finnes som samsvarer jeg) frø av primer nøyaktig; og ii) resten av primer med på det meste 2 samsvarer ikke . En 16S sekvens fra en referanse satt anses dekket av en primer-set-par hvis minst ett forover og revers primer i primer-set-match par sekvensen., Siden PCR effektivitet avtar med amplikon lengde, vi innføre en ytterligere begrensning: gitt en primer-set-par og en referanse satt av 16S sekvenser, anslår vi at målet amplikon lengde som median i lengder av alle amplikoner oppnås ved å matche alle kombinasjoner av forover og i revers primere fra primer-set-par med referanse satt. Vi betrakter som ikke er dekket alle 16S referanse sekvenser som amplikon lengde avviker mer enn 100 nukleotider (enten lengre eller kortere) fra målet lengde.,

Matchende-bias

Gitt en referanse satt av 16S sekvenser og en primer-set-par, tredje optimalisering score måler variasjonen i antall kombinasjoner av forover og i revers primere matchende hver 16S referanse rekkefølge. Dekning variabiliteten matchende bias bør være minimale, eller i det minste sto for, da studiet er ment å kvantifisere den relative abundances av de ulike bakteriearter, på grunn av forsterkning bias mot arter som omfattes av flere kombinasjoner av forover og i revers primere., Som et mål på matchende-bias, utnytter vi variasjonskoeffisienten av dekning over mål sekvenser, beregnet som standardavvik over gjennomsnittet av antall kombinasjoner matchende hver sekvens.

Referanse satt av 16S sekvenser, forberedelse og kommenteres

for Å optimalisere de tre score over, er vi avhengig av et representativt sett av bakterielle 16S sekvenser hentet fra en offentlig 16S sekvens database, GreenGenes ., Den GreenGenes 16S sekvens databasen er organisert i Operativ Taksonomisk Enheter (OTUs), som er nestet klynger av sekvenser i databasen, organisert på ulike nivåer av inter-klyngen likhet. For hvert nivå av likhet, en referanse sekvens som er knyttet til hver klynge, maksimalt lik alle andre sekvenser i samme klynge . Sett av referanse-sekvenser kan dermed betraktes som et representativt utvalg av hele sekvensen database, blir mer og mer nøyaktig for å øke nivåene av inter-klyngen likhet (og dermed antall referanse sekvenser)., Vi valgte en 85% inter-klyngen likhet nivå som en god avveining mellom representativitet og kompleksitet, noe som tilsvarer et sett av 5088 representant sekvenser som skal brukes til å vurdere optimalisering kriterier.

om enn svært sensitive i legge tilmerknader Bakterier og Archaea domener, GreenGenes taksonomi er ikke designet for å skille sekvenser som tilhører eukaryotes eller virus., På grunn av dette, bestemte vi oss for å re-sette inn merknader for det bakterielle 16S sekvenser utnytte den opprinnelige NCBI taksonomi å nøyaktig identifisere, blant representant sekvenser, bare de som tilhører Bakterier domene. Siden domenet mangler opplysninger fra NCBI merknad for rundt 20% av sekvenser, har vi utformet en ad hoc-prosedyre for å identifisere bakteriell sekvenser blant disse. Prosedyren er beskrevet i detalj i den Supplerende Materiale (se annen fil 1)., Vi konservativt valgte å vurdere bare de sekvenser forklart som bakterier både i våre kuratert, NCBI-basert kommenterings-og i den opprinnelige GreenGenes kommentar. Dette resulterte i et sett av 4573 representant 16S sekvenser som hører til Bakterier domene.,

Optimalisering algoritme

Siden problemet med optimal primere valget krever samtidig optimalisering av forskjellige konkurrerende score, det kan være støpt som en multi-mål optimalisering problem, hvor de vil søke plass er settet av alle mulige primer-set-par og en scoring funksjon, eller optimalisering kriteriet, kan være definert slik for å maksimere effektivitet og dekning og minimere matchende-bias., Når mer enn ett kriterium som må optimaliseres samtidig, men mål å være optimalisert er motstridende, er vanligvis ikke interessert i en enkelt løsning, men heller av de Pareto-optimale løsninger, det vil si i de sett av løsninger som ingen av målene kan bli bedre uten å ofre minst ett annet mål ., Resultatet av multi-mål optimalisering er ikke lenger en unik optimal primer-set-par, som i én-mål optimalisering, men snarere en samling av primer-set-par som ikke er verre enn andre primer-set-par og strengt bedre i henhold til minst ett av kriteriene. Mer presist, for tri-mål optimalisering problem å maksimere effektivitet (E) og dekning (C) optimalisering score og å minimere matchende-bias (M) score, som definert i forrige avsnitt, kandidat primer-set-par er vurdert i henhold til en objektiv funksjonen vektor f = (f-E ; f C ; fM)., Gitt to primer-set-par p og p’, sier vi at p dominerer p’ (p ≺ p’) hvis og bare hvis f (s) ≠ f (p’), fE (s) ≥ fE (p’), fC (p) ≥ fC (p’) og fM (p) ≤ fM (p’). Hvis ingen p’ eksisterer slik at p’ ≺ p, primer-set-p par kalles Pareto-optimal. I denne sammenheng er målet for optimal primere valg er å bestemme (eller tilnærmet) sett av alle Pareto-optimal primer-set-par, som bildet i tri-målet plass kalles Pareto-fronten .

for Å søke etter den optimale Pareto foran er vi avhengige av to-fase iterated beste forbedring lokale søk tilnærming foreslått av Dubois-Lacoste et al., og effektivt utnyttet i Sambo et al. og Borrotti et al. for optimal multi-målet design av eksperimenter.

Lokale søk starter med en innledende løsning og iterativt foredler det ved å bruke små lokale endringer og vurdere hver gang deres effekt på løsning kvalitet; den stopper når det ikke lenger er lokale endringer kan forbedre løsningen. Prosessen er iterated fra flere forskjellige utgangspunkt og den beste løsningen som noen gang er funnet returneres, som en tilnærming for det ukjente optimal ., En vanlig utvidelse av lokalt søk til å multi-mål tilfellet er å starte fra et sett av første Pareto løsninger, for eksempel en løsning fra forsiden, optimalisere med lokale søk er en tilfeldig scalarization av problemet, dvs. en lineær kombinasjon av optimalisering score med vekter samplet jevnt tilfeldig fra enhet for ensidig, kan du oppdatere Pareto foran og gå til oppsigelse vilkår er oppfylt .,

prosedyren MULTI-MÅL-SØK, som pseudo-koden er rapportert i det følgende, får så innganger ønsket spekter av amplikon lengder (rangeamplen), en representant sett av 16S-sekvenser (repset), et første sett av (muligens utarte) primerpar (init) og antall starter (nres). Prosedyren starter ved å velge fra init alle mulige primerpar med ønsket amplikon lengde, primer lengde (mellom 17 og 21 nukleotider) og mål domene (Bakterier eller Universell).,

Utarte primerpar er konvertert til ikke-degenerert primer-set-par og lagt i et arkiv. Prosedyren da koden nrest ganger, og hver gang prøver av et tilfeldig primer-set-par pstart fra Pareto foran og en tilfeldig vektor α av relative vekter for optimalisering score, med vekter som er samplet jevnt fra enheten simplex; prosedyren, deretter løser en scalarization av multi-mål problem, dvs. en enkelt-mål problem som en lineær kombinasjon av de tre målene med relative vekter α er maksimert, og legger resultatet til arkivet., Til dette formålet, effektivitet, dekning og matchende-bias score er normalisert til sitt maksimale, slik at hver normalisert poengsum varierer mellom 0 og 1, og matchende-bias er omdefinert som 1 – matching-bias, slik at det kan være maksimert som den andre scorer., amplikon lengde i rangeamplen

2 Legg til arkiv tilsvarende ikke-degenerert primer-set-par

3 for r = 1 til nrest

4 pf = PARETO-FORAN(arkiv)

5 Eksempel pstart fra pf

6 Eksempel α fra 3, med Σi ai = 1

7 p = LOKAL-SØK(pstart , α , repset)

8 Legge til side til å arkivere

9 gå tilbake arkiv

Enkelt-mål optimalisering er innhentet ved hjelp av den Beste Forbedringen Lokale Søk algoritme : starter fra en innledende primer-set-par, LOKAL-SØK algoritme sykluser gjennom primere av set-par, og for hvert primer, skanner sitt nabolag, jeg.,e. settet av alle mulige lokale perturbasjon av primer. Lokale forstyrrelsene består i alle mulige knipser ett nukleotid (vurdering av de tre andre mulige baser) og alle mulige tillegg og fjerning av ett nukleotid på ekstremitetene., Søk i løsningen plass er utført med den beste forbedringen lokale søk tilnærming: etter generere hele nabolaget som forklart ovenfor, algoritmen velger de beste nabo uro, begynner det å generere neste nabolaget, og koden til den når en løsning som det ikke bedre nabo uro kan bli funnet. Prosedyren avsluttes når ingen ytterligere lokale forbedringer kan brukes til noe primer i primer-set-par., VEKTET SCORE-funksjonen regner ut de tre optimalisering score fra en primer-set-par og representant sett, multipliserer resultatet av den relative vekter α og returnerer summen av resultatene.

Vi utviklet en programvare verktøyet for å implementere vår tilnærming og utgitt under GNU General Public Licence som mopo16S programvare verktøyet (Multi-Mål Primer Optimalisering for 16S eksperimenter) på http://sysbiobig.dei.unipd.it/?q=Software#mopo16S., mopo16S er implementert som en multithreading C++ kommando linje verktøy; programvaren verktøyet er avhengig av effektive algoritmer og datastrukturer fra SeqAn bibliotek og bruker openMP bibliotek for multithreading.,>

4 for i = 1, til |pcurr|

5 pri = i-th primer av pcurr

6 for pnew = pcurr med alle mulige tillegg og flytting av en base på ekstremiteter og utskifting av en base av pri

7 scorenew = VEKTET SCORE(pnew , α , repset)

8 hvis scorenew > scorebest

9 pbest = pnew

10 scorebest = scorenew

11 pcurr = pbest

12 gå tilbake pcurr

State-of-the-art primerpar som første solutions

Vi valgte online database probeBase som en kilde til kandidat primer-set-par for å benyttes som første-løsninger ved mopo16S., Databasen inneholder mer enn 500 par (muligens utarte) primere og rapporter for hver primer sin sekvens, strand og stilling som stemmer med referanse 16S Escherichia coli-genet, og målet domene som det er designet (som enten Bakterier, Archaea eller Universell).,

Gitt et ønsket utvalg for mål-amplikon lengde som input av mopo16S, vi valgte alle primerpar fra probeBase database tilfredsstille alle følgende egenskaper:

  • Amplikon lengde i ønsket område;

  • Lengde på både primere større enn eller lik 17 nt og mindre enn eller lik 21 nt;

  • Bakterier eller Universelle mål domenet av både primere.,

Siden vår tilnærming er å jobbe med sett av ikke-degenerert primere, i tilfelle av degeneracies i enten forover eller revers primer, vi erstatter den degenererte primer med et tilsvarende sett av ikke-degenerert primere, som oppnås ved å tildele alle mulige kombinasjoner av verdier til den degenererte nukleotider i primer. Et eksempel på denne fremgangsmåten er gitt i Tabell 1.

Vi beregnet tre poeng for hver av primer-set-par og identifisert, blant disse, primer-set-parene danner den første Pareto foran.

Leave a Comment