NO340244B1 - Fremgangsmåte, system og programlagringsutstyr for optimalisering av verdi-innstillinger i instrumenterte brønner ved hjelp av adjungert gradient-teknikk og reservoarsimulering - Google Patents
Fremgangsmåte, system og programlagringsutstyr for optimalisering av verdi-innstillinger i instrumenterte brønner ved hjelp av adjungert gradient-teknikk og reservoarsimulering Download PDFInfo
- Publication number
- NO340244B1 NO340244B1 NO20073485A NO20073485A NO340244B1 NO 340244 B1 NO340244 B1 NO 340244B1 NO 20073485 A NO20073485 A NO 20073485A NO 20073485 A NO20073485 A NO 20073485A NO 340244 B1 NO340244 B1 NO 340244B1
- Authority
- NO
- Norway
- Prior art keywords
- reservoir
- adjoint
- objective function
- control parameters
- gradients
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 112
- 238000004088 simulation Methods 0.000 title claims description 61
- 230000008569 process Effects 0.000 title claims description 13
- 238000004519 manufacturing process Methods 0.000 claims abstract description 87
- 239000012530 fluid Substances 0.000 claims abstract description 45
- 230000035945 sensitivity Effects 0.000 claims abstract description 38
- 230000006870 function Effects 0.000 claims description 115
- 238000004364 calculation method Methods 0.000 claims description 30
- 230000036961 partial effect Effects 0.000 claims description 29
- 230000004044 response Effects 0.000 claims description 23
- 238000005457 optimization Methods 0.000 claims description 17
- 230000008859 change Effects 0.000 claims description 10
- 238000004422 calculation algorithm Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 5
- 239000000243 solution Substances 0.000 description 62
- 239000011159 matrix material Substances 0.000 description 13
- 239000011435 rock Substances 0.000 description 13
- 239000007789 gas Substances 0.000 description 10
- 238000010276 construction Methods 0.000 description 9
- 230000014509 gene expression Effects 0.000 description 9
- 230000002829 reductive effect Effects 0.000 description 9
- 239000013598 vector Substances 0.000 description 9
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 9
- 239000000203 mixture Substances 0.000 description 8
- 238000003860 storage Methods 0.000 description 8
- 230000015572 biosynthetic process Effects 0.000 description 6
- 230000001419 dependent effect Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000005755 formation reaction Methods 0.000 description 6
- 238000009472 formulation Methods 0.000 description 6
- 230000035699 permeability Effects 0.000 description 6
- 230000009467 reduction Effects 0.000 description 6
- 238000002347 injection Methods 0.000 description 5
- 239000007924 injection Substances 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000011217 control strategy Methods 0.000 description 4
- 229930195733 hydrocarbon Natural products 0.000 description 4
- 150000002430 hydrocarbons Chemical class 0.000 description 4
- 238000013178 mathematical model Methods 0.000 description 4
- 239000011148 porous material Substances 0.000 description 4
- 238000011084 recovery Methods 0.000 description 4
- 239000004215 Carbon black (E152) Substances 0.000 description 3
- 238000005094 computer simulation Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000000670 limiting effect Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000001105 regulatory effect Effects 0.000 description 3
- 230000036962 time dependent Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000005553 drilling Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000003921 oil Substances 0.000 description 2
- 238000004181 pedogenesis Methods 0.000 description 2
- 230000008707 rearrangement Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000000342 Monte Carlo simulation Methods 0.000 description 1
- 101100203598 Plasmodium falciparum (isolate NF54) SOPT gene Proteins 0.000 description 1
- KSQXVLVXUFHGJQ-UHFFFAOYSA-M Sodium ortho-phenylphenate Chemical compound [Na+].[O-]C1=CC=CC=C1C1=CC=CC=C1 KSQXVLVXUFHGJQ-UHFFFAOYSA-M 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- JTTAUPUMOLRVRA-UHFFFAOYSA-N prothipendyl Chemical compound C1=CN=C2N(CCCN(C)C)C3=CC=CC=C3SC2=C1 JTTAUPUMOLRVRA-UHFFFAOYSA-N 0.000 description 1
- 229960000957 prothipendyl Drugs 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000002689 soil Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01V—GEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
- G01V11/00—Prospecting or detecting by methods combining techniques covered by two or more of main groups G01V1/00 - G01V9/00
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B17/00—Systems involving the use of models or simulators of said systems
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01V—GEOPHYSICS; GRAVITATIONAL MEASUREMENTS; DETECTING MASSES OR OBJECTS; TAGS
- G01V2210/00—Details of seismic processing or analysis
- G01V2210/60—Analysis
- G01V2210/66—Subsurface modeling
- G01V2210/663—Modeling production-induced effects
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Life Sciences & Earth Sciences (AREA)
- Geophysics (AREA)
- Automation & Control Theory (AREA)
- Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Flow Control (AREA)
- Control Of Fluid Pressure (AREA)
- Complex Calculations (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Feedback Control In General (AREA)
Description
Foreliggende oppfinnelse gjelder en ny adjungert metode (og tilsvarende system og programlagringsutstyr) for å beregne gradienter, og særlig en adjungert metode for å beregne gradienter for en målfunksjon med hensyn til endringer i ventilinnstillinger, mens modellering av trykkfall og fluidstrømning langs et borehull tas med i betraktningen for mer virkningsfulle og effektivt optimaliserende innstillinger av reguleringsventiler for produksjon fra et reservoar.
Regulerbare nedihullsanordninger har gjort det mulig å realisere avanserte brønnreguleringsstrategier for å oppnå et mål, slik som størst mulig hydrokarbonutvinning eller netto tilstedeværende verdi. Utviklingen av algoritmer for å bestemme den beste strategi ved regulering av sådanne anordninger er fortsatt et område med aktiv forskning på grunn av ufriheten med hensyn til produksjon og innsprøyting, og innebærer generelt implementering av en eller annen form for styringslogikk innen et reservoars simulerte arbeidsflyt.
Noen "styringsstrategier" for å regulere disse anordninger er reaktive, hvilket betyr at det gjøres inngrep når lokale betingelser er tilfredsstilt for bestemte brønner eller ventiler uten å ta hensyn til den fremtidige virkning av inngrepet på hele reservoaret. Med denne løsning kan det dessuten allerede være for sent å gjøre inngrep for å hindre uønsket gjennombrudd. Metoder med sådanne produksjonsregler er tilbøyelige til å være heuristiske, men er meget effektive ved reservoarsimulering. Alternative, "proaktive" styri ngsstrategier gjelder et felts levetid og gir således en mekanisme for å regulere fluidstrømningen tidlig nok til å forsinke gjennombrudd. Disse alternative, proaktive styringsstrategier for å regulere sådant utstyr kan deles inn i minst to metoder, nemlig (1) "stokastiske" metoder, slik som Monte Carlo-metoden som undersøker virkningen av et stort antall mulige strategier, og (2) "deterministiske" metoder som innstiller oppførselen av hver brønn og ventil på grunnlag av deres innvirkning på målet. Denne beskrivelse gjelder en "proaktiv, deterministisk begrenset optimaliseringsmetode" knyttet til de tidligere nevnte alternativ, proaktive styringsstrategier tilpasset for å regulere de tidligere nevnte regulerbare nedihullsanordninger. Særlig gjelder denne beskrivelse en første anvendelse av adjungerte gradienter for å regulere og optimalisere innstillinger i en flersegmentert brønnmodell.
Slik den her er beskrevet innebærer et aspekt av den adjungerte metode for beregning av gradienter en fremgangsmåte hvor adjungerte gradienter beregnes og brukes i en reservoarsimulator, som omfatter at adjungerte gradienter for en målfunksjon beregnes med hensyn til endringer i ventilinnstillinger samtidig som det tas hensyn til en modellering av trykkfall og fluidstrømning langs et borehull, og som reaksjon på de beregnede adjungerte gradienter beregnes følsomheter for et reservoar som reagerer på endringer i parametriseringen av nedihullsanordninger, og som reaksjon på de beregnede følsomheter brukes nevnte følsomheter for å optimalisere reguleringen av brønner i et reservoar ved å optimalisere en målfunksjon.
Slik den her er beskrevet innebærer et annet aspekt av den adjungerte metode for beregning av gradienter en fremgangsmåte hvor produksjonen optimaliseres for et reservoar som har en eller flere brønner med ventiler, og som omfatter at (a) en reservoarsimulator kjøres i en fremoversimulering for å simulere reservoarets liv, (b) avgivelser fra fremoversimuleringen behandles for å generere strømningsligningers mellomliggende partielle deriverte for brønnen og for reservoaret, (c) de mellomliggende, partielle deriverte av brønnstrømligningene og reservoarstrømligningene kombineres i reservoarsimulatoren, (d) et stort adjungert system av lineære ligninger løses ved regelmessige tidsintervaller for å beregne de adjungerte gradienter for en målfunksjon med hensyn til styringsparametere, (e) utfra de adjungerte gradienter bestemmes en søkeretning, (f) søkeretningen brukes for å løse en optimaliseringsalgoritme som maksimerer målfunksjonen ved hjelp av linjesøkmetoder, (g) et lokalt maksimum lokaliseres langs søkeretningen og styringsparametrene oppdateres, (h) de nye, oppdatert styringsparametere brukes i reservoarmodellen og (i) trinnene (a) - (i) gjentas inntil en optimal verdi av målfunksjonen er blitt nådd.
Slik den her er beskrevet innebærer et annet aspekt av den adjungerte metode for beregning av gradienter et programlagringsutstyr som kan leses av en maskin som håndgripelig har et sett instruksjoner som kan utføres av maskinen for å gjennomføre fremgangsmåtetrinn for beregning og bruk av adjungerte gradienter i en reservoar simulator, idet fremgangmåtetrinnene omfatter at adjungerte gradienter for en målfunksjon beregnes med hensyn til endringer i ventilinnstillinger mens det tas hensyn til en modellering av trykkfall og fluidstrømning langs et borehull, og det som reaksjon på de beregnede adjungerte gradienter beregnes følsomheter for et reservoar som reagerer på endringer i parametriseringen av nedihullsanordninger, og som reaksjon på de beregnede følsomheter brukes nevnte følsomheter for å optimalisere styringen av brønner i et reservoar ved å optimalisere en målfunksjon.
Slik den her er beskrevet innebærer et annet aspekt av den adjungerte metode for beregning av gradienter et programlagringsutstyr som kan leses av en maskin som håndgripelig har et sett instruksjoner som kan utføres av maskinen for å gjennomføre fremgangsmåtetrinn for optimalisering av produksjonen fra et reservoar som har en eller flere brønner med ventiler, idet nevnte fremgangsmåtetrinn omfatter at (a) en reservoarsimulator kjøres i en fremoversimulering for å simulere reservoarets liv, (b) avgivelser fra fremoversimuleringen behandles for å generere mellomliggende, partielle deriverte av strømningsligninger for brønnen og for reservoaret, (c) de mellomliggende, partielle deriverte av brønnstrømligningene og reservoarstrømligningene kombineres i reservoarsimulatoren, (d) et stort adjungert system av lineære ligninger løses ved regelmessige tidsintervaller for å beregne de adjungerte gradienter for en målfunksjon med hensyn til styringsparametere, (e) ut fra de adjungerte gradienter bestemmes en søkeretning, (f) søkeretningen brukes for å løse en optimaliseringsalgoritme som maksimerer målfunksjonen ved hjelp av linjesøkmetoder, (g) et lokalt maksimum lokaliseres langs søkeretningen og styringsparametrene oppdateres, (h) de nye, oppdaterte styringsparametere brukes i reservoarmodellen og (i) trinnene (a) - (i) gjentas inntil en optimal verdi av målfunksjonen er blitt nådd.
Slik den her er beskrevet innebærer et annet aspekt av den adjungerte metode for beregning av gradienter et system tilpasset for å beregne og bruke adjungerte gradienter i en reservoarsimulator og som omfatter en første anordning tilpasset for å beregne adjungerte gradienter for en målfunksjon med hensyn til endringer i ventilinnstillinger samtidig som det tas hensyn til en modellering av trykkfall og fluidstrømning langs et borehull, en andre anordning som reagerer på de beregnede adjungerte gradienter og som er tilpasset for å beregne følsomheter for et reservoar som reagerer på endringer i parametriseringen av nedihullsanordninger, og en tredje anordning som reagerer på de beregnede følsomheter og er tilpasset for å bruke følsomhetene for å optimalisere styringen av brønner i et reservoar ved å optimalisere en målfunksjon.
Slik den her er beskrevet innebærer et annet aspekt av den adjungerte metode for beregning av gradienter et system tilpasset for optimalisering av produksjonen fra et reservoar som har en eller flere brønner med ventiler og som omfatter en anordning tilpasset for å kjøre en reservoarsimulator i en fremoversimulering for å simulere reservoarets liv, idet avgivelsene fra fremoversimuleringen behandles for å generere mellomliggende partielle deriverte av strømningsligninger for brønnen og for reservoaret, og hvor de mellomliggende, partielle deriverte av brønnstrømligningene og reservoarstrømligningene kombineres i reservoarsimulatoren, et adjungert system av lineære ligninger løses ved regelmessige tidsintervaller for å beregne et sett adjungerte gradienter for en målfunksjon med hensyn til styringsparametere, og ut fra de adjungerte gradienter bestemmes en søkeretning som brukes for å løse en optimaliseringsalgoritme som maksimerer målfunksjonen ved hjelp av linjesøkmetoder, hvorpå et lokalt maksimum lokaliseres langs søkeretningen og styringsparametrene oppdateres, for videre å bruke de nye, oppdaterte styringsparametere i reservoarmodellen, og hvor behandlingen, kombineringen, løsningen, bestemmelsen, bruken og lokaliseringen gjentas for videre å bruke funksjoner utført av anordningen inntil en optimal verdi av målfunksjonen er blitt nådd.
Videre vil anvendelsesomfanget fremgå fra den detaljerte beskrivelse gitt heretter. Det skal imidlertid forstås at den detaljerte beskrivelse og de spesifikke eksempler gitt nedenfor bare er gitt for illustrasjonsformål siden forskjellige endringer og modifikasjoner innen ideen og omfanget av den adjungerte metode for beregning av gradienter, slik den her er beskrevet og patentsøkt i denne spesifikasjon, vil bli klar for fagfolk på området ved å lese den etterfølgende detaljerte beskrivelse.
En full forståelse vil bli oppnådd fra den detaljerte beskrivelse som her presenteres nedenfor og de vedføyde tegninger som bare er gitt for illustrasjonsformål og ikke i noen grad er ment å være begrensende, og på hvilke: Fig. 1 anskueliggjør en seismisk operasjon for frembringelse av en redusert utgangsregistrering av seismiske data, idet den seismiske operasjon i fig. 1
omfatter en datareduserende operasjon,
fig. 2 anskueliggjør en brønnboreoperasjon for frembringelse av en brønnloggutgangs-registrering,
fig. 3anskueliggjør en datamaskin for gjennomføring av den datareduserende
operasjon i fig. 1,
fig. 4 og 5 anskueliggjør en arbeidsstasjon tilpasset for å lagre "Flogrid"-programvare og "Eclipse"-simulatorprogramvare,
fig. 6 og 7 anskueliggjør en mer detaljert konstruksjon av Flogrid-programvaren i fig. 5 som er tilpasset for å generere utgangsdata for bruk av Eclipse-simulatorprogramvaren, idet Eclipse-simulatorprogramvaren inneholder en endelig volummodell for lineære elastisitetsligninger, som beskrives i denne beskrivelse,
fig. 8viser et eksempel på en typisk utgangsfremvisning generert av Eclipse-simulatorprogramvaren i fig. 6 og som vises frem på 3D-fremviseren i fig. 6,
fig. 9anskueliggjør en tidligere kjent løsning eller metode for gjennomføring av reservoarsimulering, som er blitt praktisert av tidligere kjente reservoarsimulatorer, fig. 10viser Eclipse-simulatorprogramvaren i fig. 5 og 6, som inneholder den adjungerte
metode for beregning av gradienter slik den her er beskrevet,
fig. 11 viser mer detaljert den adjungerte metode for beregning av gradienter vist i fig.
10,
fig. 12viser mer detaljert konstruksjonen av den adjungerte metode for beregning av
gradienter vist i fig. 10 og 11, og
fig. 13 - 23 viser en detaljert konstruksjon av en flersegmentert brønnmodell som er
knyttet til den adjungerte metode for beregning av gradienter vist i fig. 12.
Olje og gass produseres fra bergformasjoner i undergrunnen. Disse berg er porøse, slik som en svamp, og de er fylt med fluid, vanligvis vann. Denne porøse egenskap ved bergarter er kjent som porøsitet. I tillegg til å være porøse har disse berg evnen til å tillate fluid å flyte igjennom porene, et kjennetegn målt ved en egenskap betegnet permeabilitet. Når olje (eller gass) er sperret inne i sådanne formasjoner er det mulig å utvinne denne ved å bore brønner som stikker inn i formasjonen. Så lenge trykket i brønnen er lavere enn det i bergformasjonen vil fluidene som inneholdes i porene flyte inn i brønnen. Disse fluider kan så flyte naturlig opp gjennom brønnen til overflaten, eventuelt må flyten opp gjennom brønnen assisteres av pumper. De relative mengder olje, gass og vann som kommer opp til overflaten vil avhenge av den andel bergporerom som opptas av hver type fluid. Vann er alltid tilstede i disse porer, men det vil ikke flyte eller strømme med mindre dets volumandel overskrider en terskelverdi som varierer fra den ene type bergart til den neste. Likeledes vil olje og gass bare flyte eller strømme så sant deres volumandeler overskrider deres egne terskler.
En bergarts egenskaper (innbefattet porøsitet og permeabilitet) i et oljereservoar varierer kraftig fra et sted til et annet. Som et resultat vil også de forholdsvise mengder av olje, gass og vann som kan produseres variere fra reservoar til reservoar. Disse variasjoner gjør det vanskelig på enkel måte å forutsi mengden av fluider og gasser som et reservoar vil produsere og mengden av ressurser det vil fordre å produsere fra et bestemt reservoar. Partene som er interessert i å produsere fra et reservoar behøver imidlertid å prosjektere reservoarets produksjon med en viss nøyaktighet i den hensikt å bestemme gjennomførbarheten av produksjon fra vedkommende brønn. For å forutsi nøyaktig produksjonsrater for alle brønner i et reservoar er det derfor nødvendig å bygge opp en detaljert matematisk modell av reservoarets geologi og geometri.
En stor mengde forskning har fokusert på utviklingen av reservoarsimuleringsverktøy. Disse verktøy innbefatter matematiske modeller og datamaskinmodeller som beskriver og brukes for å forutsi flerfasestrømningen av olje og gass inne i en tredimensjonal underjordisk formasjon (et "felt"). Reservoarverktøy utnytter empirisk innhentede data for å beskrive et felt. Disse data kombineres med og manipuleres av matematiske modeller hvis avgivelse beskriver spesifiserte egenskaper ved feltet på et fremtidig tidspunkt i form av målbare mengder, slik som produksjons- eller injeksjonsraterfor enkeltvise brønner og grupper av brønner, bunnhulls- eller rørtrykkhøyde i hver brønn og fordelingen av trykk og fluidfaser inne i reservoaret.
Den matematiske modell av et reservoar frembringes typisk ved å dele reservoarvolumet opp i et stort antall sammenkoblede celler og estimere den gjennomsnittlige permeabilitet, porøsitet og andre bergartegenskaper for hver celle. Denne prosess gjør bruk av seismiske data, brønnlogger og bergartkjerner tatt vare på da brønnene ble boret. Produksjonen fra reservoaret kan da modelleres matematisk ved numerisk å løse et system av tre eller flere ikke-lineære, partielle differensialligninger som beskriver fluidflyten i reservoaret.
Datamaskinanalyse av produksjonen fra et oljereservoar deles vanligvis opp i faser, nemlig historisk samsvar og forutsigelse. I den historiske samsvarfase blir den tidligere produksjonsoppførsel for reservoaret og dets brønner gjentatte ganger modellert, idet det begynnes med den innledningsvise produksjon og fortsetter inntil nåtid. Den første datamaskinkjøring er basert på en geologisk modell som beskrevet ovenfor. Etter hver kjøring blir datamaskinresultatene sammenlignet i detalj med data samlet inn på oljefeltet under hele produksjonsperioden. Naturvitenskapsfolk modifiserer den geologiske modell av reservoaret på grunnlag av forskjellene mellom beregnet og faktisk produksjonsytelse og kjører datamaskinmodellen på ny. Denne prosess fortsetter inntil den matematisk reservoarmodell oppfører seg slik som det virkelige oljereservoar.
Så snart det er oppnådd et passende historisk samsvar kan produksjonen fra oljereser-voaret forutsies langt inn i fremtiden (noen ganger så lenge som 50 år). Oljeutvinningen kan maksimeres og produksjonsomkostningene minimaliseres ved å sammenligne mange alternative driftsplaner som hver fordrer en ny kjøring av datamaskinmodellen. Etter at en feltutviklingsplan er satt i gang kan reservoarmodellen periodisk kjøres på ny og ytterligere avstemmes for å forbedre sin evne til å samsvare med nylig innsamlede produksjonsdata.
Når det er oppnådd tilstrekkelige data om reservoaret kan et reservoars egenskaper modelleres matematisk for å forutsi produksjonsrater fra brønner i vedkommende reservoar. Feltets samlede egenskaper innbefatter reservoarbergartenes porøsitet og permeabilitet, tykkelsen av de geologiske soner, lokalisering og karakterisering av geologiske feil (forkastninger), relativ permeabilitet og kapillartrykk-funksjoner og sådanne egenskaper ved reservoarfluidene som densitet, viskositet og faselike-vektsforhold. Ut fra disse data genereres det et sett kontinuerlige, partielle differensialligninger (PDE - Partial Differential Equations) som beskriver feltets oppførsel som funksjon av tiden og produksjonsparametere. Disse produksjonsparametere innbefatter brønnenes plassering, egenskapene ved brønnenes komplettering og de driftsmessige begrensninger pålagt brønnene. De driftsmessige begrensninger kan innbefatte slikt som produksjonsraten for en bestemt fluidfase, bunnhullstrykket, rørtrykkhøyden eller kombinerte strømningsrater for en gruppe brønner. Disse begrensninger kan pålegges direkte ved hjelp av data eller ved hjelp av en annen simulator som modellerer strømningen av fluider i overflateutstyret som brukes for å transportere fluidene produsert fra eller injisert inn i brønnene. Siden bare det enkleste system av PDE'er kan løses ved å bruke klassiske eller lukkede formteknikker (f.eks. et homogent felt som har sirkulære grenser), omdannes modellens PDE'er til et sett ikke-lineære approksimeringer som så løses numerisk. En proksimeringsteknikk er den endelige differansemetode. Med den endelige differansemetode konverteres reservoar-PDE'ertil en rekke differansekvotienter som deler et reservoar opp i en samling adskilte tredimensjonale celler og som så løses på distinkte tidspunkter for å bestemme (eller forutsi) verdien av reservoaregenskaper, slik som trykk, permeabilitet, fluidfraksjoner, på et senere tidspunkt.
Innen området databehandlende reservoarsimulator modelleres reservoarytelsen i distinkte tidstillegg. Hvert såkalt tidstrinn bringer løsningen fra et tidligere tidspunkt hvor alle variabler er kjent, fremover til et fremtidig tidspunkt hvor alle variabler er ukjente. Denne prosess gjentas inntil hele den tidsperiode som er av interesse er blitt modellert. Innen hvert tidstrinn er det nødvendig å løse et enormt system av ikke-lineære ligninger som modellerer fluidstrømning fra celle til celle og gjennom cellene.
(Med dagens teknikk er det mulig å ta med flere millioner celler i reservoarmodellen.)
Løsninger på systemet av ikke-lineære ligninger oppnås ved hjelp av Newton-iterasjon. I hver sådan iterasjon approksimeres systemet av ikke-lineære ligninger ved hjelp av et system lineære ligninger som må løses ved hjelp av nok en annen iterativ prosedyre. En sådan reservoarsimulator er "Eclipse"-reservoarsimulatoren som eies og drives av Schlumberger Technology Corporation, Houston, Texas, U.S.A.
"Eclipse"-simulatorprogramvaren mottar utgangsdata fra simuleringsgitterprogramvaren "Flogrid" og som reaksjon på dette genererer Eclipse-simulatorprogramvaren et sett simuleringsresultater som vises frem på en 3D-fremviser.
Simuleringsgitterprogramvaren Flogrid er beskrevet i US-patent nr. 6 106 561 meddelt Farmer, hvis beskrivelse tas med her som referanse.
Som vist i fig. 10 omfatter Eclipse-simulatorprogramvaren en adjungert metode (innbefattet dens tilhørende system og programlagringsutstyr) for beregning av adjungerte gradienter for en målfunksjon med hensyn til endringer i ventilinnstillinger og som tar hensyn til modellering av trykkfall og fluidstrømning langs et borehull og bruker de adjungerte gradienter for å beregne et reservoars følsomheter på endringer i parametriseringen av nedihullsanordninger, mens bruken av disse følsomheter er for optimal styring av brønnene for å optimalisere en viss målfunksjon som er gjenstand for produksjonsbegrensninger (heretter betegnet en adjungert metode for beregning og bruk av adjungerte gradienter).
Denne beskrivelse inneholder (1) en bakgrunnsdrøftelse med henvisning til fig. 1 - 9 som gir bakgrunnsinformasjon som gjelder ytelsen ved en seismisk operasjon og en brønnloggeoperasjon tilpasset for å generere seismiske data og brønnloggdata, idet de seismiske data og brønnloggdataene gis som inngangsdata til en arbeidsstasjon som lagrer en Flogrid simuleringsgitterprogramvare og en Eclipse simulatorprogramvare, og (2) en beskrivelse av Eclipse-simulatorprogramvaren som videre inneholder den adjungerte metode for beregning og bruk av adjungerte gradienter (og det tilhørende system og programlagringsutstyr) drøftet nedenfor med henvisning til fig. 10-23 som representerer en mulig realisering av den adjungerte metode for beregning og bruk av adjungerte gradienter.
Det henvises til fig. 1 hvor det er vist en fremgangsmåte og anordning for å utføre en seismisk operasjon. Under en seismisk operasjon frembringer en kilde 10 for akustisk energi eller lydvibrasjoner, slik som en eksplosiv energikilde 10, en mengde lydvibrasjoner. I fig. 1 reflekteres en sådan lydvibrasjon 12 på en mengde horisonter 14 i en jordformasjon 16. Lydvibrasjonen(e) 12 mottas av en mengde geofonmottagere 18 plassert på jordoverflaten og geofonene 18 frembringer elektriske utgangssignaler betegnet "data mottatt" 20 i fig. 1 som reaksjon på den eller de mottatte lydvibrasjoner 12 og som representerer lydvibrasjonens forskjellige parametere (slik som amplitude og/eller frekvens). De mottatte data 20 gis som inngangsdata til en datamaskin 22a i en registreringsbil 22 og som reaksjon på inngangsdataene genererer den registrerende bildatamaskin 22a en "seismisk datautgangspost" 24. Senere i behandlingen av den seismiske datautgangspost 24 gjennomgår sådanne seismiske data en datareduksjon 30 i en hoveddatamaskin og en redusert seismisk datautgangspost 24a genereres ut fra datareduksjonsoperasjonen 30.
Det henvises til fig. 2 hvor det er vist en brønnloggeoperasjon. Under brønnloggeoperasjonen senkes et brønnloggeverktøy 34 ned i jordformasjonen 16 vist i fig. 1, som gjennomtrenges av et borehull 36. Som reaksjon på brønnloggeoperasjonen genereres brønnloggdata fra brønnloggeverktøyet 34 og brønnloggdataene 38 gis som inngangsdata til en datamaskin 40a i brønnloggebilen 40. Som reaksjon på brønnloggdataene 38 frembringer loggebil-datamaskinen 40a en brønnloggutgangspost 42.
Med henvisning til fig. 3 gis den seismiske datautgangspost 24 i fig. 1 som inngangsdata til en hoveddatamaskin 30 hvor datareduksjonsoperasjonen 30 i fig. 1 utføres. Hoveddatamaskinen 30a vil kjøre en datareduksjonsprogramvare 30b lagret i hovedlageret 30b. Når utførelsen av den datareduserende programvare 30b er fullført er den reduserte seismiske datautgangspost 24a i fig. 1 og 3 generert.
Det henvises nå til fig. 4 og 5 hvor det er vist en arbeidsstasjon 44. Et lagringsmedium 46, slik som en CD-ROM 46, lagrer programvare og denne programvare kan lastes inn i arbeidsstasjonen 44 for lagring i arbeidsstasjonens hukommelse. I fig. 5 har arbeidsstasjonen 44 en arbeidsstasjonshukommelse 44a, slik at programvaren lagret på lagringsmediet (CD-ROM) 46 lastes inn i arbeidsstasjonen 44 og lagres i arbeidsstasjonens hukommelse 44a. En arbeidsstasjon prosessor 44d vil utføre programvaren lagret i arbeidsstasjonens hukommelse 44a som reaksjon på visse inngangsdata gitt til arbeidsstasjonens prosessor 44d og prosessoren 44d vil så vise frem eller skrive ut resultatene fra vedkommende behandling på arbeidsstasjonens skriver, fremviser eller 3D-fremviser 44e. Inngangsdataene som gis til arbeidsstasjonen 44 i fig. 5 omfatter brønnloggutgangsposten 42 og den reduserte seismiske datautgangspost 24a. Brønnloggutgangsposten 42 representerer brønnloggdataene generert under brønnloggeoperasjonen i jordformasjonen vist i fig. 2, mens den reduserte seismiske datautgangspost 24a representerer datareduserte seismiske data generert av hoveddatamaskinen 30 i fig. 3 som reaksjon på den seismiske operasjon vist i fig. 1. I fig. 5 inneholder programvaren lagret på lagringsmediet (CD-ROM) 46 i fig. 5 en Flogrid programvare 46a og en Eclipse simulatorprogramvare 46b. Når lagringsmediet (CD-ROM) 46 settes inn i arbeidsstasjonen 44 i fig. 5 blir både Flogrid-programvaren 46a og Eclipse-simulatorprogramvaren 46b lagret på CD-ROM'en 46 lastet inn i arbeidsstasjonen 44 og lagret i arbeidsstasjonens hukommelse 44a. Flogrid-programvaren 46a og Eclipse-simulatorprogramvaren 46b eies og drives av Schlumberger Technology Corporation, Houston, Texas, U.S.A. Flogrid-programvaren 46a er beskrevet i US-patent nr. 6 106 561 meddelt Farmer og med tittel "Simulation Gridding Method and Apparatus including a Structured Areal Gridder Adapted for Use by a Reservoir Simulator", hvis beskrivelse tas med her som referanse. Når arbeidsstasjonens prosessor 44d utfører Flogrid-programvaren 46a og Eclipse-simulatorprogramvaren 46b reagerer Eclipse-simulatorprogramvaren 46b på et sett mer nøyaktig informasjon om gitterceller knyttet til et respektivt sett av gitterblokker i et strukturert simuleringsgitter generert av Flogrid-programvaren 46a ved videre å generere et sett mer nøyaktige simuleringsresultater som respektivt er knyttet til settet av gitterblokker i simuleringsgitteret. Disse simuleringsresultater vises frem på 3D-fremviseren 44e i fig. 5 og kan registreres på en opptager 44e.
Det henvises nå til fig 6 og 7, og først til fig. 6 hvor Flogrid-programvaren 46a og Eclipse-simulatorprogramvaren 46b er vist lagret i arbeidsstasjonens hukommelse 44a i fig. 5. I tillegg vises det at simuleringsresultatene 48 som avgis fra Eclipse-simulatorprogramvaren 46b mottas og vises frem på 3D-fremviseren 44e. Flogrid-programvaren 46a omfatter et reservoardatalager, et reservoarrammeverk, en strukturert gitterdanner, en ustrukturert gitterdanner og en oppskalerer, som alle er fullstendig drøftet i det ovenfor nevnte US-patent nr. 6 106 561 meddelt Farmer, hvis beskrivelse allerede er tatt med her som referanse. I fig. 6 mottas et sett simuleringsgittere og egenskaper knyttet til gitrene 47 generert av oppskalereren og den ustrukturerte gitterdanner "Petragrid" av Eclipse-simulatorprogramvaren 46b. Som reaksjon genererer Eclipse-simulatorprogramvaren 46b et sett simuleringsresultater som respektivt er knyttet til et sett gitterblokker av simuleringsgittere 48, mens simuleringsresultatene og de tilhørende gitterblokker 48 vises frem på 3D-fremviseren 44e. Den ustrukturerte gitterdanner "Petragrid" er beskrevet US-patent nr. 6 018 497 og 6 078 869, hvis beskrivelse tas med her som referanse.
I fig. 7 generer Flogrid-programvaren 46a et sett utgangsdata 47 som omfatter en mengde gitterceller og visse egenskaper knyttet til disse gitterceller. Disse utgangsdata 47 mates som inngangsdata til Eclipse-simulatorprogramvaren 46b. Visse andre programmer 49 gir andre inngangsdata til Eclipse-simulatorprogramvaren 46b. Som reaksjon på utgangsdataene 47 (som omfatter en gitterdelt jordinformasjon som inneholder en mengde gitterceller og visse egenskaper knyttet til hver av gittercelle), så vel som andre utgangsdata fra andre programmer 49, genererer Eclipse-simulatorprogramvaren 46b et sett simuleringsresultater 48, idet simuleringsresultatene 48 omfatter mengden av gitterceller og en mengde simuleringsresultater knyttet respektivt til mengden av gitterceller. Den tidligere mengde gitterceller og mengden av simuleringsresultater respektivt knyttet til mengden av gitterceller vises frem på 3D-fremviseren 44e i fig. 6 og 7.
Det henvises nå til fig. 8 hvor det er vist et eksempel på simuleringsresultater 48 (dvs. mengden av gitterceller og mengden av simuleringsresultater tilhørende respektivt mengden av gitterceller 48) som vises frem på 3D-fremviseren 44e i fig. 5, 6 og 7, er vist i fig. 8.
De etterfølgende avsnitt vil presentere Eclipse-simulatorprogramvaren 46 i fig. 5, 6 og 7, idet Eclipse-simulatorprogramvaren 46b videre inneholder en detaljert beskrivelse av en adjungert metode for beregning og bruk av adjungerte gradienter (og det tilhørende system og programlagringsutstyr), slik som vist i fig. 10. Særlig vil de etterfølgende avsnitt gi en detaljert beskrivelse av en adjungert metode (innbefattet dens tilhørende system og programlagringsutstyr) for å beregne adjungerte gradienter for en målfunksjon med hensyn til endringer i ventilinnstillinger samtidig som det tas hensyn til modellering av trykkfall og fluidstrømning langs et borehull, og som bruker de adjungerte gradienter for å beregne et reservoars følsomheter overfor endringer i parametriseringen av nedihullsanordninger og hvor bruken av disse følsomheter er for optimal styring av brønner for å optimalisere en viss målfunksjon som er gjenstand for produksjonsbegrensninger, slik som vist i fig. 11.
Det henvises nå til fig. 9, idet det nedenfor drøftes en generell skisse av operasjonen i
en tidligere kjent reservoarsimulator med henvisning til fig. 9. I fig. 9 brukes reservoar-data 42 og 24a i fig. 5 samt bergkjernedata for å beskrive et beregningsmessig gitter og egenskapene ved reservoarbergartene. Disse data kombineres med data som gjelder de fysiske egenskaper ved fluidene som inneholdes i reservoaret, og de kombinerte
data benyttes for å beregne de innledningsvise fordelinger av trykk og fluidmetninger (volumfraksjoner) så vel som sammensetningen av hver fluidfase i blokk 50 i fig. 9. Data som varierer over tid, slik som lokaliseringen og egenskapene ved brønnene, og produksjons- og injeksjonsstrømningsratestyring og simulatorstyringsinformasjon leses fra en database i blokk 52. Ved å bruke løpende trykk, metning og fluidsammensetninger for hver gittercelle blir de partielle differensialligninger som beskriver massebalanser approksimert ved endelige forskjeller i blokk 54, hvilket fører til to eller flere ikke-lineære algebraiske ligninger for hver gittercelle. I blokk 54 blir dessuten disse ikke-lineære ligninger linearisert ved hjelp av Newtons metode. I blokk 56 løses det resulterende system av lineære ligninger iterativt ved å bruke metoder beskrevet i denne spesifikasjon. Etter at de lineære ligninger er blitt løst, utføres det en test i blokk 58 for å avgjøre om alle de ikke-lineære uttrykk i de endelige differanseligninger har konvergert. Hvis ikke går simulatoren tilbake til blokk 54. Dersom det ikke-lineære uttrykk i de endelige differanseligninger har konvergert går simulatoren til blokk 60 og oppdaterer verdier for å fullføre det løpende tidstrinn. I blokk 62 tester simulatoren for å avgjøre om den endelige slutt-tid (dvs. stopptiden) i simuleringen er blitt nådd. Hvis ikke går simulatoren frem i tid til neste nivå i blokk 64 for så å gå tilbake til blokk 52 for å lese nye tidsvarierende data og begynne neste tidstrinn. Dersom simuleringens endepunkt er blitt nådd fullfører simulatoren avgivelsesoperasjonene og kjøringen er ferdig i blokk 66.
Det henvises nå til fig. 10 og 11.
De etterfølgende avsnitt vil presentere Eclipse-simulatorprogramvaren 46b i fig. 5, 6 og 7, idet Eclipse-simulatorprogramvaren 46b videre inneholder en detaljert beskrivelse av en adjungert metode for beregning og bruk av adjungerte gradienter (og tilhørende system og programlagringsutstyr) som vist i fig. 10. Særlig vil de etterfølgende avsnitt gi en detaljert beskrivelse av en adjungert metode (innbefattet dens tilhørende system og programlagringsutstyr) for beregning av adjungerte gradienter for en målfunksjon med hensyn til endringer i ventilinnstillinger og som tar hensyn til modellering av trykkfall og fluidstrømning langs et borehull, og som bruker de adjungerte gradienter for å beregne et reservoars følsomheter overfor endringer i parametriseringen av nedihullsanordninger, idet bruken av disse følsomheter er for optimal styring av brønner for å optimalisere en viss målfunksjon som er gjenstand for produksjonsbegrensninger, slik som vist i fig. 11.
I fig. 11 omfatter imidlertid den adjungerte metode (innbefattet dens tilhørende system og programlagringsutstyr) for beregning og bruk av adjungerte gradienter i trinn 70 i fig. 10, to grunnleggende trinn (trinn 70a og 70b) som vil bli drøftet nedenfor med henvisning til fig. 11, som følger: (Trinn 1) Beregning av adjungerte gradienter for en målfunksjon med hensyn til endringer i ventilinnstillinger mens det tas hensyn til modelleringen av trykkfall og fluidstrømning langs et borehull i trinn 70a i fig. 11, og
(Trinn 2) Bruk av de adjungerte gradienter for å beregne et følsomhetsreservoar overfor endringer i parametriseringen av nedihullsanordninger og hvor disse følsomheter brukes under optimal styring av brønnene for å optimalisere en viss målfunksjon som er gjenstand for produksjonsbegrensninger i trinn 70b i fig. 11.
Hvert av de ovenfor nevnte to trinn 70a og 70b anskueliggjort i fig. 11 og knyttet til den adjungerte metode for beregning og bruk av adjungerte gradienter i trinn 70 i fig. 10 vil bli drøftet i detalj nedenfor med henvisning til fig. 12 - 23 på tegningene.
Fig. 10 og 11 optimaliserer den adjungerte metode (og tilhørende system og programlagringsutstyr) for beregning og bruk av adjungerte gradienter vist i fig. 10 og 11 virk-ningsfullt og effektivt innstillinger av reguleringsventiler i et reservoar og som et resultat optimaliseres produksjonen av olje, gass og andre hydrokarboner fra reservoaret. Den adjungerte metode (og tilhørende system og programlagringsutstyr) for beregning og bruk av adjungerte gradienter vist i fig. 10 og 11, representerer en proaktiv, deterministisk begrenset optimaliseringsmetode. Uttrykket gradienter betyr reservoarets følsomhet eller reaksjon på en endring i en styringsparameter og representerer kvantitativ informasjon om hvordan et formål vil reagere på en hvilken som helst endring som gjøres i brønnens driftsmålsetninger og ventilinnstillinger. Gitt at styringen av oppførselen av et stort antall brønner i et reservoar kan ønskes med forholdsvis høy hyppighet, er gradientene nødvendig for et stort antall styringsparametere (i størrelsesorden 105 - 107). Således må den adjungerte metode for beregning og bruk av adjungerte gradienter vist i fig. 10 generere og frembringe disse gradienter på en virkningsfull og nøyaktig måte. Av denne grunn representerer den tidligere nevnte adjungerte metode for beregning og bruk av adjungerte gradienter vist i fig. 10 en funksjon som praktiseres i en reservoarsimulator, slik som Eclipse-reservoarsimulatoren som eies og drives av Schlumberger Technology Corporation.
En annen adjungert metode har av diverse forfattere tidligere blitt anvendt på optimalisering innen reservoarsimulering. Studier gjort av de nevnte diverse forfattere innbefatter imidlertid smarte brønner i form av en rekke selvstendige injektorer eller "produ-senter" og som sådan tar de ikke hensyn til den nøyaktige modellering av trykkfall langs brønnhullet. I tillegg har de diverse forfattere publisert bruken av den adjungerte metode for å beregne gradienter ved reservoarsimulering, slik som (1) Fifth European Conference on Mathematics of Oil Recovery (Zakirov, Zakirov, Aanonsen, Palatnik), (2) SPE 78278 (Brouwer, Jansen) og (3) SPE 92864 (Sarma, Aziz, Durlofsky).
I tillegg er bruk av en flersegmentert brønnmodell ved reservoarsimulering for nøyaktig å modulere strømningen i et borehull beskrevet i den tidligere, ikke avgjorte US-søknad med serienr. 10/900 176 i navnet David A. Edwards m.fl. og med tittel: "Near Wellbore Modeling Method and Apparatus" publisert som US-patentsøknad nr. 20050015231, offentliggjort 20. januar 2005.
Den adjungerte metode for beregning og bruk av adjungerte gradienter vist i fig. 10 og 11 av denne spesifikasjon kan imidlertid innbefatte bruk av en fullstendig koblet, flersegmentert brønnmodell som nøyaktig beregner trykkfall og komponentstrømningsrater langs lengden av en flersidig brønn. I tillegg tar den adjungerte metode for beregning og bruk av adjungerte gradienter vist i fig. 10 og 11 for seg problemet med hvordan nedihullsanordninger skal styres for å oppnå et mål, idet målet innbefatter maksimering av hydrokarbonutvinning eller den netto tilstedeværende verdi for et reservoar. Det nevnte problem (med hvordan nedihullsanordninger skal styres) innebærer styring av fluidfronter i et reservoar i den hensikt å forlenge hydrokarbonproduksjonen fra reservoarfeltet som et hele samtidig som produksjonen av uønskede fluider minimaliseres. I tillegg omfatter styringsparametere knyttet til det nevnte problem (med hvordan nedihullsanordninger skal styres) (1) brønnproduksjons- og injeksjonsrater og -trykk og (2) innstilling av nedihulls innstrømningsstyreanordninger.
Nøyaktig modellering av fluidstrømningens fysikk i smarte brønner er av største viktighet når det utvikles styringsstrategier for denne type brønner. Styringen av nedihullsutstyr modelleres ved å bruke en reservoarsimulator tilpasset for nøyaktig å modellere fluidstrømningens fysikk i smarte brønner, slik som den tidligere nevnte Eclipse reservoarsimulator som eies og drives av Schlumberger Technology Corporation. Som et resultat er det i denne beskrivelse angitt en gradientbasert feltoptimaliseringsmetode, idet denne gradientbaserte feltoptimaliseringsmetode er kjent som den adjungerte metode for beregning og bruk av adjungerte gradienter vist i fig. 10 og 11. De nevnte gradienter beregnes ved å bruke den adjungerte metode for beregning og bruk av adjungerte gradienter vist i fig. 10 og 11. Den adjungerte metode for beregning og bruk av adjungerte gradienter vist i fig. 10 og 11 brukes fordi den gir en meget effektiv metode ved beregning av gradienter for målfunksjonen for et stort antall parametere. Dette har stor betydning ved reservoarsimulering hvor det kan være et stort antall regulerbare brønner i reservoaret og et stort antall ventiler i brønnene som kan endres ved regelmessige intervaller over reservoarets levetid. Den adjungerte metode for beregning og bruk av adjungerte gradienter vist i fig. 10 og 11 beregner nøyaktig gradientene for en målfunksjon med hensyn til endringer i ventilinnstillinger, mens det tas hensyn til nøyaktig modellering av trykkfall og fluidstrømning langs borehullet. Disse gradienter blir så benyttet for å beregne et reservoars følsomheter overfor endringer i parametriseringen av nedihullsutstyr. Disse følsomheter brukes så for en optimal styring av brønnene i reservoaret i den hensikt å optimalisere en målfunksjon som er gjenstand for produksjonsbegrensninger. En optimal styring av brønnene i et reservoar innbefatter generering av nye optimaliserte styringsinnstillinger for brønnen og/eller generering av nye optimaliserte styringsinnstillinger for et sett av nedihulls brønnventiler som er anordnet i disse brønner.
Følgelig gjelder den adjungerte metode for beregning og bruk av adjungerte gradienter beskrevet i denne spesifikasjon og vist i fig. 10 og 11 (1) en første anvendelse av adjungerte gradienter for å regulere og optimalisere innstillinger i en flersegmentert brønnmodell og særlig (2) representerer bruken av adjungerte gradienter for å beregne et reservoars følsomheter overfor endringer i parametriseringen av nedihullsanordninger og bruken av disse følsomheter for optimal styring av brønnene for å optimalisere en eller annen målfunksjon som er gjenstand for produksjonsbegrensninger, hvor et eksempel på en målfunksjon vil være den "kumulative oljeproduksjon" (se trinn 70b i fig. 11).
Det henvises nå til fig. 12 hvor det er vist en konstruksjon av den adjungerte metode for beregning og bruk av adjungerte gradienter 70 i fig. 10 og 11, idet konstruksjonen vist i fig. 12 representerer et optimaliseringsflytskjema som tjener til å praktisere den adjungerte metode for beregning og bruk av adjungerte gradienter 70 i fig. 10 og 11.
I fig. 12 blir et nytt sett produksjonsoptimaliserende inngangsstørrelser 72 som omfatter en målfunksjon 72a, et sett styringsparametere 72b og produksjonsbegrensninger 72c, matet som inngangsdata til en reservoarsimulator 74, slik som den tidligere nevnte Eclipse reservoarsimulator som tilbys av Schlumberger Information Solutions, en divisjon av Schlumberger Technology Corporation, Houston, U.S.A. Settet av produksjonsoptimaliserende inngangsstørrelser 72 (som gis som inngangsdata til reservoarsimulatoren 74) brukes for å definere et optimaliseringsproblem som vil bli løst ved hjelp av reservoarsimulatoren 74. I tillegg mates også en brønnstyringsplan 76 (som er tidsavhengig) og en reservoarmodell 78 (som gir reservoarets geologi) som inngangsdata til reservoarsimulatoren 74. Reservoarsimulatoren 74 har en flersegmentert brønnmodell 88 hvis konstruksjon og funksjon vil bli beskrevet senere i denne spesifikasjon. Som tidligere nevnt blir settet av produksjonsoptimaliserende inngangsstørrelser 72, innbefattet målfunksjonen 72a, settet av styringsparametere 72b og produksjonsbegrensningene 72c matet som inngangsdata til reservoarmodellen 74.
I fig. 12 representerer målfunksjonen 72a en lineær kombinasjon av reduserte strømningsrater, et mål på reservoarets verdi, mens styringsparametrene 72b representerer eller inneholder brønnstyringsinnstillinger som kan endres under simuleringen, slik som ventilinnstillinger i en instrumentert brønn, rateinnstillinger for konvensjonelle og instrumenterte brønner, og innstillinger av bunnhullstrykket for konvensjonelle og instrumenterte brønner. Som tidligere nevnt har reservoarsimulatoren 74 en flersegmentert brønnmodell 88. Den flersegmenterte brønnmodell er en modell av en fysisk brønn som nøyaktig modellerer trykkfall og fluid-strømning langs brønnhullet, og dette oppnås ved å diskretisere brønnveien i segmenter, i hvilke strømningsligningene løses konsekvent. Når reservoarsimulatoren 74 som inngangsdata mottar reservoarmodellen 78, brønnstyringsplanen 76 og de produksjonsoptimaliserende inngangsstørrelser 72 som innbefatter målfunksjonen 72a og styringsparametrene 72b samt produksjonsbegrensningene 72c, vil reservoarsimulatoren 74 utføre en adjungert gradientberegning 80. Som bemerket i fig. 12 er den adjungerte gradient knyttet til den adjungerte gradientberegning 80 en avledning eller derivert av den ovenfor nevnte målfunksjon 72a med hensyn til endringer i styringsparametrene 72b som evalueres ved hjelp av den adjungerte metode. En løsning på et stort adjungert system av lineære ligninger fordres ved regelmessige tidsmellomrom for å beregne de adjungerte gradienter for målfunksjonen 72a med hensyn til styringsparametrene 72b. Når den adjungerte gradientberegning 80 er fullført vil de etterfølgende tilleggtrinn bli utført i rekkefølge, nemlig (1) beregning av søkeretning 82, dvs. en foreslått endring i styringsparametrene 72b som ikke vil krenke noen produksjonsbegrensninger eller grenseverdier av styringsparametrene, etterfulgt av (2) en optimalisator 84 som utfører en optimaliseringsprogramvare som maksimerer målfunksjonen ved hjelp av linjesøkmetoder. Idet det minnes om at inngangsdataene matet til reservoarsimulatoren 74 inneholder en brønnstyringsplan 76 vil optimalisatoren 84 når funksjonen utført av optimalisatoren 84 er fullført, så generere en oppdatert brønnstyringsplan (som er tidsavhengig) 86, idet optimalisatoren 84 vil generere en oppdatert brønnstyringsplan 86 som består av nye, oppdaterte styringsparametere når et lokalt maksimum er lokalisert langs den gradientbaserte søkeretning eller når det støtes på en produksjonsbegrensning. Den oppdaterte brønnstyringsplan 86 bestående av nye, oppdaterte styringsparametere blir så presentert overfor den flersegmenterte brønnmodell 88 knyttet til reservoarsimulatoren 74, og som reaksjon på dette kjøres simulatoren 74 på ny mens den bruker disse nye, oppdaterte styringsparametere. Idet det minnes om at reservoarmodellen 74 inneholder en flersegmentert brønnmodell 88 vil særlig den flersegmenterte brønnmodell 88 motta den oppdaterte brønnstyringsplan 86 fra optimalisatoren 84 og som reaksjon på dette vil den flersegmenterte brønnmodell 88 så generere to "avgivelser", nemlig (1) reservoarproduksjonsprofiler 90 og (2) optimaliserte reservoarproduksjonsprofiler 92. Som et resultat praktiserer fig. 12 som anskueliggjør en konstruksjon av den adjungerte metode for beregning og bruk av adjungerte gradienter 70 i fig. 10 og 11, en metode for optimalisering av produksjonen fra et reservoar som har en eller flere brønner med ventiler, idet metoden innebærer at (a) en reservoarsimulator kjøres i en fremoversimulering for å simulere reservoarets liv, (b) avgivelse fra fremoversimuleringen behandles for å generere mellomliggende partielle deriverte av strømningsligningene for brønnen og for reservoaret, (c) de mellomliggende partielle deriverte av brønnstrømligningene og reservoarstrømligningene kombineres i reservoarsimulatoren, (d) et adjungert system av lineære ligninger løses ved regelmessige tidsintervaller for å beregne et sett av adjungerte gradienter for en målfunksjon med hensyn til styringsparametere, (e) ut fra de adjungerte gradienter bestemmes en søkeretning, (f) søkeretningen brukes for å løse en optimaliseringsalgoritme som maksimerer en målfunksjon ved hjelp av linjesøkmetoder, (g) et lokalt maksimum lokaliseres langs søkeretningen og styringsparametere oppdateres, (h) de nye, oppdaterte styringsparametere brukes i reservoarmodellen og (i) trinnene (a) - (i) gjentas inntil en optimal verdi av målfunksjonen er blitt nådd.
Med henvisning til fig. 13 - 23 er det vist en detaljert beskrivelse av konstruksjonen og funksjonen av den flersegmenterte brønnmodell 88 i fig. 12.
I fig. 13 er et borehull 118 delt inn i en mengde segmenter og et sett "løsningsvariabler" bestemmes for hvert av segmentene (en metode med tilhørende system og programlagringsutstyr for bestemmelse av "løsningsvariablene" vil bli drøftet senere i denne beskrivelse). I fig. 13 er det som et eksempel vist et flersegmentert borehull 118 som består av en mengde segmenter, slik som segmentene 130, 132, 134 og 136. Som vist i fig. 13 definerer et sett "løsningsvariabler" hvert segment.
I fig. 14 - 23 er prosessen eller metoden for å bestemme settet av løsningsvariabler for hvert segment 130, 132, 134, 136 i det flersegmenterte borehull 118 i fig. 13 drøftet i detalj i de etterfølgende avsnitt med henvisning til fig. 14-23.
Det henvises til fig. 14 hvor det er vist et flersidig borehull. I fig. 14 har det flersidige borehull en hovedstamme og fire sidegrener, men de fire sidegrener omfatter en øvre sidegren, en midtre sidegren og to bunnsidegrener. Segmentene 1, 2, 4, 5, 7 og 9 ligger på hovedstammen. Den øvre sidegren i det flersidige borehull vist i fig. 14 har en mengde segmenter og ett av disse segmenter er segment 3. Den midtre sidegren i det flersidige borehull vist i fig. 14 har også flere segmenter og det ene av disse segmenter er segment 6. De to bunnsidegrener i det flersidige borehull vist i fig. 14 har begge en mengde segmenter. Dette betyr at bunnsidegrenen lengst til venstre i det flersidige borehull vist i fig. 14 har en mengde segmenter og ett av disse segmenter er segment 10, mens bunnsidegrenen lengst til høyre i det flersidige borehull vist i fig. 14 har en mengde segmenter og det ene av disse segmenter er segment 8. I fig. 14 kan hvert segment være ytterligere inndelt i flere delsegmenter. Som et eksempel kan segment 1 være delt inn i diverse andre delsegmenter, slik som delsegmenter 1a, 1b og 1c.
I fig. 14 er det mulig å kjennetegne og representere hvert "segment" med et sett "løsningsvariabler". Det betyr at hvert segment kan kjennetegnes eller representeres med det etterfølgende sett av løsningsvariabler, nemlig "Q" fluidets strømningsrate i hvert segment, "Fw" fraksjonen av vann i vedkommende segment, "Fg" fraksjonen av gass i vedkommende segment og "P" det absolutte trykk i vedkommende segment.
En stenografisk betegnelse for hvert sett av løsningsvariabler for et bestemt segment velges til å være "(Q, Fw, Fg, P)i", hvor i identifiserer det bestemte segment. I fig. 14 kan derfor segmentet 1 i det flersidige borehull kjennetegnes eller representeres ved løsningsvariablene (Q, Fw, Fg, P)i=1, segmentet 2 i det flersidige borehull kan kjennetegnes eller representeres ved løsningsvariablene (Q, Fw, Fg, P)i=2,..., mens segmentet 10 i det flersidige borehull kan kjennetegnes eller representeres ved løsningsvariablene (Q, Fw, Fg, P)i=10, osv. Se fig. 14 for en fullstendig liste over hvert sett av løsningsvariabler (Q, Fw, Fg, P)i som kjennetegner og representerer hvert av segmentene 1 -10 i det flersidige borehull vist i fig. 14.
Et borehull med ett hull har en eneste rørledning eller gren og denne eneste gren kan deles inn i en mengde segmenter, idet hvert segment kjennetegnes eller representeres ved et sett løsningsvariabler (Q, Fw, Fg, P)i.
Det henvises nå til fig. 15-23 hvor det er vist en mer detaljert konstruksjon av Eclipse-simulatorprogramvaren 46b i fig. 6 og 10, hvor Eclipse-simulatorprogramvaren 46b inneholder den adjungerte metode for beregning og bruk av adjungerte gradienter 70 i fig. 10, og hvor den adjungerte metode for beregning og bruk av adjungerte gradienter 70 i fig. 10 videre omfatter den flersegmenterte brønnmodellprogramvare 88 i fig. 12.
I fig. 15 har Eclipse-simulatorprogramvaren 46b vist i fig. 12 en flersegmentert brønn-modellprogramvare 88. I fig. 16 har Eclipse-simulatorprogramvaren 46b en gruppe/felt-styringsmodellprogramvare 87 og den flersegmenterte brønnmodellprogramvare 88 som reagerer på gruppe/felt-styringsmodellprogramvaren 87. I fig. 16 har imidlertid den flersegmenterte brønnmodellprogramvare 88 også en enkel brønnmodellprogramvare 88a og en reservoarmodellprogramvare 88b som sammen bestemmer løsningsvariablene (Q, Fw, Fg, P) for hvert segment i en brønn.
I fig. 16 sender gruppe/felt-styringsmodellprogramvaren mål/grenser til enkeltbrønn-modellen 88a. Disse mål kan være et strømningsmål, slik som et mål for oljeproduksjonsraten, eller et trykkmål, dersom gruppe/felt-styringsmodellen har en overflatenett-verksmodell (hver brønn har sitt eget mål, opp til hvilket brønnen må produsere). Gruppe/felt-styringsmodellen 87 må håndtere alle de kollektive aspekter ved produksjon og injeksjon, dvs. frembringe et felt for et bestemt mål, tillate trykktap for rørledninger på overflaten, osv.
Som reaksjon på målene/grensene fra gruppe/felt-styringsmodellen 87 sender enkelt-brønnmodellen 88a brønnstrømningsrater opp til gruppe/felt-styringsmodellen 87. I tillegg sender enkeltbrønnmodellen 88a strømningsrater og deriverte knyttet til gitterblokker ned til reservoarmodellen 88b. Enkeltbrønnmodellen 88a modellerer så hver enkelt brønn i reservoaret, dvs. at enkeltbrønnmodellen opererer på en mengde brønner, én av gangen.
Reservoarmodellen 88b gir informasjon om fluidbetingelser i gitterblokker opp til enkeltbrønnmodellen 88a og i tillegg gir reservoarmodellen 88b trinnvise økninger til segmentløsningsvariablene som behøves av enkeltbrønnmodellen 88a ved slutten av hver iterasjon, som skal drøftes nedenfor.
I fig. 16 samvirker enkeltbrønnmodellen 88a med reservoarmodellen 88b fordi reservoargitterblokker virker som grensebetingelser overfor brønnmodellens enkeltbrønnmodell. Fra reservoarmodellens synspunkt tjener enkeltbrønnmodellen 88a som en kilde for et sett "kilde/drenerings"-uttrykk som brukes av reservoarmodellen. Enkeltbrønnmodellen 88a samvirker derfor med reservoarmodellen 88b og trekker ut fluid fra den eller sprøyter inn fluid inn i den, mens gruppe/felt-styringsmodellen 87 samvirker med enkeltbrønnmodellen 88a ved at den bestemmer hvordan feltmålene skal tildeles og gir hver enkelt brønn et operasjonsmål.
Det vises til fig. 17 og 18 og først til fig. 17 hvor enkeltbrønnmodellprogramvaren 88a arbeider for å modellere et flersidig borehull og et brønnhull med ett hull i blokk 140 i fig. 17. I fig. 18 omfatter imidlertid trinnet hvor flersidige borehull og enkeltborehull modelleres (blokk 140 i fig. 17) de etterfølgende tilleggtrinn, nemlig (1) videre inndeling av hver rørledning eller gren i borehullet i en mengde segmenter i blokk 140a, (2) bestemmelse av et sett løsningsvariabler (Q, Fw, Fg, P) for hvert segment av rørledningen i borehullet i blokk 140b og (3) fremvisning og/eller utskrift av mengden av segmenter i hver rørledning og mengden av løsningsvariabler (Q, Fw, Fg, P) som respektivt tilsvarer mengden av segmenter i blokk 140c.
Trinnet hvor hver rørledning eller gren i borehullet deles videre inn i en mengde segmenter (blokk 140a) ble kort drøftet ovenfor med henvisning til fig. 14. Trinnet hvor det bestemmes et sett løsningsvariabler (Q, Fw, Fg, P) for hvert segment i rørledningen i borehullet (blokk 140b) praktiseres imidlertid både av enkeltbrønnmodellen 88a og reservoarmodellen 88b og dette vil bli drøftet i detalj nedenfor med henvisning til fig. 19-23.
Med henvisning til fig. 19 - 23 er en mer detaljert drøftelse av blokk 140b i fig. 18 som bestemmer et sett løsningsvariabler (Q, Fw, Fg, P) for hvert segment i hver rørledning i et flersidig eller enkelt borehull med ett hull, angitt i de etterfølgende avsnitt med henvisning til fig. 19 - 23 på tegningene.
For å bestemme et sett løsningsvariabler (Q, Fw, Fg, P) for hvert segment i hver rørled-ning i borehullet (blokk 140b i fig. 18) utføres med henvisning til fig. 19, 20, 21, 22 og 23, og først til fig. 19, de etterfølgende trinn ved hjelp av enkeltbrønnmodellprogram-varen 88a i fig. 16, nemlig (1) ut fra en innledningsvis betingelse gjette løsningsvariabler (Q, Fw, Fg, P)i for hvert segment i det flersidige borehull eller borehullet med ett hull i blokk 142 i fig. 19, (2) utarbeide fluid på plass i hvert segment som funksjon av dets løsningsvariabler (Q, Fw, Fg, P)i i blokk 144 i fig. 19, (3) utarbeide strømningen mellom hvert segment og reservoaret som funksjon av segmentets løsningsvariabler (Q, Fw, Fg, P)i og løsningsvariablene i reservoarets gitterblokker som kommuniserer med segmentet i blokk 146 i fig. 19, (4) utarbeide strømningen mellom hvert segment og dets nabosegmenter som funksjon av dets løsningsvariabler (Q, Fw, Fg, P)i og løsningsvariablene i nabosegmentene i blokk 148 i fig. 19. Videre i fig. 20, nemlig (5) beregne trykkfallet langs hvert segment som funksjon av dets løsningsvariabler (Q, Fw, Fg, P)i i blokk 150 i fig. 20, (6) siden blokkene 144, 146 og 148 i fig. 19 representerer tre uttrykk i en materialbalanseligning for hvert segment og siden blokken 150 i fig. 20 representerer en trykkligning for hvert segment, bestemme matrialbalanse-ligningsrester og trykkligningsrester for alle segmenter i brønnen, idet restene er en funksjon av løsningsvariablene (Q, Fw, Fg, P)i for segmentene og deres nabosegmenter og løsningsvariablene i enhver reservoargitterblokk som kommuniserer med segmentene i blokk 152 i fig. 20, (7) beregne de deriverte av restene i blokk 154 i fig. 20, (8) stille spørsmålet "er restene mindre enn en toleranseverdi spesifisert av brukeren?" i blokk 156 i fig. 20, hvis svaret er nei, gå til trinn 9 nedenfor og dersom svaret er ja gå til trinn 11 ovenfor, (9) siden "nei" var svaret på spørsmålet i blokk 156 i fig. 20, bruk de deriverte fra blokken 154 til å beregne endringer (delta Q, delta Fw, delta Fg, delta P) for å oppnå løsningsvariablene ((Q, Fw, Fg, P) for alle segmenter for å minske deres rester til en liten verdi ved den neste iterasjon i blokk 158 i fig. 20, (10) i fig. 21, anvend endringene (delta Q, delta Fw, delta Fg, delta P) i løsningsvariablene (Q, Fw, Fg, P) for alle segmenter for å frembringe et nytt sett løsningsvariabler (Q, Fw, Fg, P)i (ny) og gå tilbake til trinn 2 som er blokken 144 i fig. 19, i blokk 160 i fig. 21, (11) siden "ja" var svaret i blokken 156 i fig. 20, er i fig. 22 de "fire ligninger" som omfatter de tre uttrykk for materialbalanseligningen (blokkene 144, 146, 148 i fig. 19) og trykkligningen (blokken 150 i fig. 20) balansert og hvert segment i kan kjennetegnes ved løsningsvariablene (Q, Fw, Fg, P)i i blokken 162 i fig. 22, (12) skriv ut og/eller vis frem løsningsvariablene (Q, Fw, Fg, P)i for hvert segment i i blokk 164 i fig. 22. I fig. 23 vises frem eller registreres på en skriver, fremviser eller 3D fremviser 44e i fig. 5 alle segmentene i hver av rørledningene i det flersidige borehull eller enkeltborehullet sammen med løsningsvariablene (Q, Fw, Fg, P) for hvert segment i blokk 140c i fig. 18 og blokk 170 i fig. 23.
En funksjonell beskrivelse av virkemåten for den adjungerte metode for beregning og bruk av adjungerte gradienter 70 i fig. 10 og 11 skal nå gis i de etterfølgende avsnitt med henvisning til fig. 1 - 23 på tegningene.
Den adjungerte metode for beregning og bruk av adjungerte gradienter i trinn 70 i fig.
10 og 11 innebærer først at reservoarsimulatoren 74 i fig. 12 kjøres i den hensikt å simulere reservoarets liv. Avgivelser fra denne fremoversimulering i simulatoren 74 genereres og behandles for derved å generere mellomliggende partielle deriverte av brønn- og reservoarstrømningsligningene. Disse mellomliggende partielle deriverte av brønn- og reservoarstrømningsligningene kombineres inne i reservoarsimulatoren 74 i fig. 12. I beregningstrinnet 80 i fig. 12 for de adjungerte gradienter fordres det så en løsning av et stort adjungert system av lineære ligninger ved regelmessige tidsintervaller for å beregne et sett adjungerte gradienter for målfunksjonen 72a med hensyn til styringsparametrene 72b. Således tilsvarer trinnet 80 i fig. 12 (dvs. beregningstrinnet 80 for de adjungerte gradienter) trinnet 70a i fig. 11 (dvs. beregning av adjungerte gradienter for en målfunksjon med hensyn til endringer i ventilinnstillinger mens det tas hensyn til modellering av trykkfall og fluidstrømning langs et borehull i trinn 70a). Når de mellomliggende partielt deriverte av brønn- og reservoarstrømningsligningene kombineres inne i reservoarsimulatoren 74 i fig. 12 vil som et resultat trinnet 80 i fig. 12 for beregning av de adjungerte gradienter så generere et sett adjungerte gradienter for målfunksjonen 72a med hensyn til styringsparametrene 72b. I trinnet 82 i fig. 12 hvor søkeretningen beregnes, blir så settet av adjungerte gradienter for målfunksjonen 72a med hensyn til styringsparametrene 72b (som ble generert i trinnet 80 i fig. 12) brukt i trinnet 82 for beregning av søkeretning for å bestemme en søkeretning, dvs. en foreslått endring i stryringspara-metrene som ikke vil krenke noen produksjonsbegrensninger eller begrensende para-meterverdier. Således tilsvarer trinnet 82 i fig. 12 (dvs. beregningstrinnet 82 for søke-retning) trinnet 70b i fig. 11 (dvs. bruk av de adjungerte gradienter for å beregne et reservoars følsomheter overfor endringer i parametriseringen av nedihullanordninger og bruk av disse følsomheter for optimal kontroll av brønnene for å optimalisere en målfunksjon som er gjenstand for produksjonsinnskrenkninger i trinn 70b). Denne søkeretning gis til optimalisatoren 84 i fig. 12. Optimalisatoren har en optimaliseringsalgoritme som (når den utføres) maksimerer målfunksjonen 72a ved hjelp av linjesøkmetoder (mens det huskes fra trinn 70b i fig. 11 at de beregnede følsomheter brukes under den optimale styring av brønnene for å optimalisere en eller annen målfunksjon). Når et lokalt maksimum (for målfunksjonen 72a) er blitt lokalisert av optimalisatoren 84 langs den gradientbaserte søkeretning som ble etablert av trinnet 82 hvor søkeretningen ble beregnet, eller når det støtes på en
produksjonsbegrensning, vil optimalisatoren så generere en oppdatert brønnstyringsplan 86 som inneholder et sett av nye, oppdaterte styringsparametere 72b. De nye, oppdaterte styringsparametere 72b i den oppdaterte brønnstyringsplan 86 presenteres overfor reservoarsimulatoren 74 og særlig overfor den flersegmenterte brønnmodell 88 i reservoarsimulatoren 74. Simulatoren blir så kjørt på ny ved å bruke de foran nevnte nye, oppdaterte styringsparametere 72b. Den ovenfor nevnte prosess eller metode gjentas, dvs. at et nytt sett adjungerte gradienter for målfunksjonen 72a med hensyn til styringsparametere 72b beregnes av trinnet 80 i fig. 12 for beregning av de adjungerte gradienter, en ny søkeretning bestemmes av trinnet 82 i fig. 12 hvor søkeretning beregnes og en ny oppdatert brønnstyringsplan 86 genereres av optimalisatoren 84 i fig. 12 inntil et eller annet termineringskriterium er blitt tilfredsstilt.
Termineringskriteriet vil f.eks. være tilfredsstilt når konvergens er blitt oppnådd og konvergens vil bli oppnådd når en optimal verdi av målfunksjonen er blitt nådd.
Når den flersegmenterte brønnmodell 88 i reservoarsimulatoren 74 mottar de nye oppdaterte styringsparametere 72b i den oppdaterte brønnstyringsplan 86 vil den flersegmenterte brønnmodell 88 så bestemme et sett løsningsvariabler for hvert segment i hver rørledning i borehullet (trinn 140b i fig. 18) og så vise frem eller skrive ut segmentene i hver rørledning og settene av løsningsvariabler som tilsvarer hvert av segmentene (trinn 140c i fig. 18). Den flersegmenterte brønnmodell 88 vil så generere to avgivelser, nemlig (1) reservoarproduksjonsprofiler 90 og (2) optimaliserte reservoarproduksjonsprofiler 92 i fig. 12.
En funksjonell spesifikasjon knyttet til den adjungerte metode for beregning og bruk av adjungerte gradienter i trinn 70 i fig. 10, 11 og 12 er gitt i de etterfølgende avsnitt.
Innledning
Denne beskrivelse omfatter programvare (nemlig Resopt-programvaren som er lagt inn i Eclipse-simulatorprogramvaren 46b i fig. 6 og 7) som bruker adjungert gradientteknikk for å optimalisere produksjonen fra en simuleringsmodell utsatt for begrensninger.
Den nødvendig matematikk
Lagrange-formulering av målfunksjon med begrensninger
I målfunksjonen prøves det å endre produksjonsstyringparametrene P slik at en størrelse (f.eks. FOPT) maksimeres, som er gjenstand for de begrensninger at simulatorfluidstrømningens restligninger, R = 0, er tilfredsstilt og også at de ytterligere produksjonsbegrensninger, C < 0, er tilfredsstilt.
Generelt er produksjonsbegrensningene ulikheter. Av bekvemmelighetshensyn vil disse bli delt i aktive (dvs. dem for hvilke den løpende C = 0) og inaktive begrensninger. Av hensyn til klarheten vil de aktive begrensninger betegnes med Ca.
Lagrange-multiplikatorer brukes for å kombinere likhetsbegrensningene med målefunk-sjonen til fortjenestefunksjonen L, hvor J er målfunksjonen, X er vektoren for løsningsvariablene (f.eks. trykk, metninger, molare densiteter) og M^? og Wc er vektorene for Lagrange-multiplikatorer på de likeverdige begrensninger.
Bakoverløsning: Frie parametergradienter
I den hensikt å bestemme en søkerretning for maksimering av denne målfunksjon er man interessert i å danne dens totale deriverte med hensyn til produksjonsstyringsparametrene. Det vil si:
For å beregne dette behøves de løsningsderiverte 6X/6P, og også de etterfølgende partielle deriverte av Lagrange-uttrykket:
Siden R = 0 og Ca = 0 er man fri til å velge hvilke som helst verdier for W r og ) ¥c i ligning (1). Særlig kan disse vektorer velges slik at 5U5X= 0 i ligning (3). Dette fjerner behovet for å utføre det kostbare trinn å beregne 6X/5P i ligning (2) og man trenger bare å evaluere ligning (4) for å få Lagrange-gradienten.
Ut fra ligning (3) blir så:
Dersom det er Na aktive begrensninger og M inaktive begrensninger er det nok frihets-grad til å sette 5U5Pi= 0 for Na av produksjonsstyringsparametrene. Så fra ligning (4), blir
Opprinnelig formulering
Det ønskes å løse ligning (5) og (6) samtidig for de adjungerte vektorer. Omordning av ligning (6) gir:
Settes ligning (7) inn i (5) og denne omordnes, fåes:
Ligning (8) innebærer løsningen på et system av ligninger hvor man matrisen 6R/ 5Xer stor. R er vektoren av restligningene ved alle tidsintervaller, mens X er vektoren for løsningsvariabler i alle tidsintervaller. I praksis er det mulig å dra fordel av strukturen i den totale Jacobiske matrise, 5R/ 5X, for å redusere størrelsen av systemet som behøver å bli løst.
Siden R( tj) = R(X(fy.i), X(fy.i), P) er den totale Jacobiske matrise en blokk lavere triangulær (slik at dens transponerte er en blokk øvre triangulær):
De diagonale matriser er Jacobiske matriser fra hver tidsintervall, Jac( tj). I "Resopt" blir disse rekonstruert fra innholdet i omstartfilen som ble tatt vare på i hvert rapporttrinn ved fremoversimuleringen.
Siden simulatorens restligninger kan skrives som:
og M(fy+f) = PoreVolume(fy) MolarDensity(fy), så blir
Slik at den samlede Jacobiske matrise kan skrives som:
Dersom parametrene Pi, og begrensningene Ca defineres slik at hver gjelder et bestemt tidsintervall, blir hele systemet (8) den etterfølgende sekvens av mindre systemer:
... for tj= fi, ... fn, med M^/?(fn) = 0. Den n<te>ligning kan løses først og deretter kan de andre ligninger løses bakover for å løse hele systemet. For å få noen innsikt i 5M/5X-uttrykket betraktes et lite tocelleeksempel med tre komponenter (innbefattet vann). Matrisen har den etterfølgende form: For en bestemt celle har produktet av denne matrise med en vektor som multipliserer fra venstre, slik at
, har følgende form:
I RESOPT er sekvensen av beregninger som følger: •Det arbeides bakover gjennom tidsintervallet...
_Sett opp de nødvendige derivasjonsmatriser
_Løs ligning (9)forM^(f„)
_Løs tidsintervallekvivalenten i ligning (7) for Wc( tn)
_Bruk tidsintervallekvivalenten fra ligning (4) til å beregne Lagrange-deriverte for det løpende tidsintervalls frie produksjonsstyringsparametre 67_/5P(fy).
(Det er intet behov for å gjøre noen beregning for de første Na produksjonsstyrings parametre siden disse allerede er satt til null).
Denne prosess fordrer en løsning av de transponerte Jacobiske simuleringsmatriser etterfulgt av en løsning av et lite matrisesystem (i størrelsesorden antall aktive begrensninger). I alt: 1 transponert Jacobisk matrise å løse.
Alternativ formulering
Når de aktive begrensninger ikke er følsomme overfor uselvstendige parametre, dvs. 6"C/i/6P/ = 0, kan ikke ligningene (5) og (6) løses ved å eliminere M^for så å løse med hensyn til I stedet må det til en mer kostbar tilnærmelse for å eliminere M^?(som kan innebære en mengde 5R/ 5X- løsninger) for så løse med hensyn til ) ¥c.
Omorganisering av ligning (5) gir:
Som før spesifiseres parametrene P/og begrensningene Ca slik at hver av dem gjelder et bestemt tidsintervall, og mens man husker på tidsstrukturen for ( 5R/ 5X) Tb\\ r da hele systemet (10):
... for tj = U,... tn, med M^?(fn) = 0. Innsetting av ligning (11) i tidsintervallekvivalenten av ligning (6) gir:
Her beholdes uttrykket 5CV5P/fordi man ønsker å være i stand til å håndtere tilfeller hvor noen aktive betingelser er ufølsomme overfor parametrene, slik at 5Ca/5P/» 0 til en viss grad.
Når ligning (11) løses, løses et transponert system som involverer simulatorens Jacobiske matriser slik at dette system løses bakover i tid, slik som med den normale formulering. For å benytte den samme "bakover i tid"-filosofi når ligning (12) løses, omskrives den til:
Først kan de n<te>ligninger av ligningene (14) løses og så løses de andre ligninger bakover, for å løse hele systemet. Legg merke til at dersom Na = 0 løses det bare for cpj ( tj) og cp/f (fy) kan vilkårlig settes lik 0 for alle andre k.
Likeledes kan den n<te>ligning av ligning (11) løses først for så å løse de andre ligninger bakover, for å løse hele systemet. Legg merke til at dersom en Na = 0 i et bestemt tidsintervall fy, da blir ligning (11) redusert til M^?(f) = øj ( tj)
I RESOPT bør sekvensen av beregninger være som følger:
•Arbeid bakover gjennom tidsintervaller...
_Sett opp de nødvendige matriser med deriverte (dette er allerede gjort)
_Løs ligning (14) for hver av øk ( tj)
_Løs ligning (13) forMtøfy)
_Løs ligning (11) for M^(fy)
_Bruk tidsintervallekvivalenten av ligning (4) for å beregne Lagrange-deriverte for de
frie produksjonsstyringsparametre 6L/6P(fy) for det løpende tidsintervall.
(Det er ikke nødvendig å utføre beregning for de første Na produksjonsstyringsparametre siden de allerede er satt til null).
Denne prosess fordrer 1+Atø løsninger for de transponerte Jacobiske simuleringsmatriser etterfulgt av 1 løsning av et lite matrisesystem (størrelsesorden lik aktive begrensninger) og så etterfulgt av sg/?(A/A)-løsningen av de transponerte Jacobiske simuleringsmatriser. Totalt løses /\+ sgn( NA)+ NA transponerte Jacobiske matriser.
Valg av frie og avhengige parametersett
I koden er det Na (=A/<fNOCONL) avhengige produksjonsstyringsmatriser og M(=A//=NOPARL-NOCONL) frie produksjonsstyringsparametre på hvert tidsnivå.
Før 2006a ble bare en meget enkel partisjonering av parametrene benyttet og de første Na parametrene ble gjort avhengige, mens resten ble behandlet som frie.
I 2006a ble det lagt til noe logikk, slik at dem med de største 5CV5P-diagonalverdier (normal tilnærming) eller størst 5R/5P-kolonnesum (alternativ tilnærming), tas som frie parametre. Denne logikk bruker en indirekte indekserende rekke IDXP for å konvertere fra den opprinnelige parameterrekkefølge til den sorterte rekkefølge. Opprinnelige rekker, slik som 6R/5P, 5F/6P, osv. lagres i original rekkefølge (ettersom de beregnes før parametersplittingen), mens mellomliggende rekker, slik som (5C/5P)"<1>lagres i lokal rekkefølge.
Søkeretning for frie parametre
Så snart man med hell har gått trinnvis bakover over alle tidsintervaller har man den fullstendige vektor av Lagrange-deriverte 6L/6P for de frie produksjonsstyringsparametre. Disse brukes for å bestemme de frie produksjonsstyringsparametres søketrinn APf(ved å bruke enten gradienter med brattest helning eller konjugert i den løpende kode).
Forover integrering: Søkeretning for avhengige parametre
For enhver APfgir de lineariserte former av ligningene for de forstyrrede reservoar-begrensninger og ligningene for de aktive optimaliseringsbegrensninger:
Således kan de Na aktive beregningsligninger ses på som en partisjonering av produksjonsstyringsparametrene P i {Pd, Pf}, hvor de første Na produksjonsstyringsparametre Pd er avhengig av de øvrige (frie) Pf gjennom den (generelt ikke-lineære) begrensning og de (definitivt ikke-lineære) reservoarligninger.
Opprinnelig formulering
Omordning av ligning (16) gir:
Innsetting av ligning (17) i ligning (15) gir:
Dette system splittes i mindre sådanne som hvert dekker et tidsintervall. I det etterfølgende betegnes den Jacobiske for reservoarligningene med Jac med hva som følger: ... for tj' = fi,... tn, med AX(fo)=0. Denne sekvens av systemer kan løses fremover for å løse hele systemet. Brukes det samme lille eksempel (med tre komponenter) som før for å få innsikt i utformingen av uttrykket (hvor matrisen multipliseres med en vektor fra høyre), oppnås det etterfølgende for en bestemt celle:
Som følge av de foregående beregninger er sekvensen av disse tilleggsberegninger i RESOPT som følger:
•Arbeid fremover gjennom tidsintervaller...
_Løs ligning (18) for AX( tj)
_Løs ekvivalenten av ligning (17) for Pd ( tj)
Denne prosess fordrer en løsning av de Jacobiske simuleringsmatriser etterfulgt av 1 løsning for et lite matrisesystem (i rekkefølge av nummeret på de aktive beregninger). Totalt løses 1 Jacobisk matrise.
Alternativ formulering
Dersom de aktive begrensninger ikke er følsomme overfor de avhengige parametre kan ligning (17) ikke brukes for å eliminere de avhengige parametre for så å løse for AX og Pd, så i stedet må ligning (15) brukes for å eliminere AX. Fra ligning (15) oppnås: Dersom parametrene P/og begrensningene Ca spesifiseres slik at hver gjelder et bestemt tidsintervall da blir hele systemligning (19), mens tidsstrukturen 5R/ 5X huskes på, slik som før:
... for tj=U, ... tn. Innsetting av ligning (19) i tidsintervallekvivalenten av ligning (16) gir: ... for tj=U, ... tn, med AX(fo)=0. Denne sekvens av systemet kan løses fremover for å løse hele systemet. For å løse dette system for Pd må først det etterfølgende sett av (Atø+1) systemer løses for
Da blir ligning (21) Legg merke til at dersom Na=0 i et bestemt tidsintervall tjreduseres så ligning (20) til
Som følge av de foregående beregninger er sekvensen av disse tilleggsberegninger i RESOPT som følger:
•Arbeid fremover gjennom tidsintervaller...
_Løs ligning (22) for f { tj) og for hver av k { tj)
_Løs ligning (23) for Pd { tj)
Løs ligning (20) for X{ tj) - som behøves senere
Denne prosess fordrer 1+A/aløsninger av de Jacobiske simuleringsmatriser etterfulgt av 1 løsning av et lite matrisesystem (i aktive begrensningers nummerrekkefølge) etterfulgt av sgn{ NA) løsninger av de Jacobiske simuleringsmatriser. Totalt løses /\+ sgn{ NA)+ NA Jacobiske matriser.
Beregning av trinnlengde
Forsikring om at begrensningsfunksjonene ikke krenkes
Gitt at man har en søkeretning for produksjonsstyringsparametrene P, da behøves kjennskap til trinnlengden. Ut fra ligning (18) vet man et hvis man går en lengde a langs A X skal det også gås et trinn med lenge a langs A P. De aktive begrensningsligninger vil bli iboende tilfredsstilt, men ingen av de for tiden inaktive må krenkes, så man er interessert i å vite hvor langt man kan gå trinnvis før de inaktive begrensninger krenkes. For å treffe en inaktiv begrensning i dette trinn:
Utvidelse av dette til første orden og omordning gir
Den nærmeste begrensning (dvs. den som ville bli den første til å bli krenket dersom en ubegrenset mengde søkeretningen ble brukt) er den med den minste verdi av a:
Ut fra de foregående beregninger er i RESOPT sekvensen av tilleggsberegninger som følger:
> Løs ligning (24) for den minste verdi av a
Forsikring om at de enkle parametergrenser ikke krenkes
I RESOPT kan brukeren pålegge enkle grenser på produksjonsstyringsparametrenes verdier, slik som:
Når det utføres et trinn i optimalisatoren er det nødvendig å begrense produksjonsstyringsparametrenes trinnlengde med en faktor p for å sikre at ingen av disse grenser krenkes. Den dominelle verdi av p er én.
Dersom en ny verdi for en produksjonsstyringsparameter er større en dens øvre grense, da blir:
Dersom den nye verdi av en produksjonsstyringsparameter er mindre enn dens nedre grense, da blir:
Ut fra de foregående beregninger er i RESOPT sekvensen av tilleggsberegninger som følger: Legg en sløyfe over alle produksjonsstyringsparametere og om nødvendig løs
ligningen (25) for (3 for deretter å modifisere styringsparameterens trinnlengde.
Endelig utføres det i RESPOT et linjesøk langs søkeretningen for å fullføre dette trinn i optimalisatoren.
Så snart linjesøket er utført ser man etter den neste styringsparameters trinnretning.
Delfunksjoner i den adjungerte optimalisatorkode
Målfunksjonen i den adjungerte optimalisator J kan ha den etterfølgende generelle form:
Dette er en summering over delfunksjonene Ji. Her er Ci spesifisert for hver delfunksjon i OPTFUNC-nøkkelordet og delfunksjonen Ji er gitt ved: hvor Fi(t) angir en injisert eller produsert fluidrate (f.eks. feltoljeproduksjonsraten), mens ti(i) og t2(i) er spesifisert for hver delfunksjon i OPTFUNC-nøkkelordet og den tidsavhengige "rabattfaktor" er gitt ved: hvor den årlige rabattrate n er angitt i OPTFUNC-nøkkelordet, mens Tyearser tidsfrak-sjonen målt i år.
Multiple komponenter i målfunksjonen
Brukeren kan spesifisere flere delfunksjoner i OPTFUNC-nøkkelordet. Som et eksempel optimaliseres feltoljeproduksjonen mens vannproduksjonen fra brønnen straffes: "PROD" mellom tidstrinn 2 og 7:
Dette nøkkelord definerer de etterfølgende definerte delfunksjoner:
Begrensninger håndtert som delfunksjoner
Hver begrensning er innlemmet i målfunksjonen som et par tilleggsdelfunksjoner f2j-i og f2j. Lagrange-multiplikatoren vil multiplisere disse begrensningsdelfunksjoner for å innlemme dem i målfunksjonen:
Denne delfunksjonløsning har den fordel at gradientene av delfunksjonene kan akkumuleres for å gi funksjonens gradient.
Enkle begrensninger
Det finnes grenser for selve simuleringsstørrelsene. Som et eksempel må produksjonsraten ikke overskride 2000 i "well PROD". Denne begrensning omskrives som følger:
Dette håndteres av de etterfølgende par av delfunksjoner (ett par for hver rapportindeks hvor begrensningen er aktiv):
Dersom en "større enn"-begrensning er spesifisert, omskrives begrensningen som følger:
Dette håndteres av de etterfølgende par av delfunksjoner (ett par for hver rapportindeks hvor begrensningen er aktiv):
Komplekse begrensninger 1 (GOR)
Det finnes grenser for de deriverte simuleringsstørrelser. Som et eksempel må gass/- olje-forholdet ikke overskride 1,5 i "well PROD". Denne begrensning omskrives som følger:
Dette håndteres av de etterfølgende par av delfunksjoner (ett par for hver rapportindeks hvor begrensningen er aktiv):
Komplekse begrensninger 2 (WCT)
Som et annet eksempel må vanninnslaget ikke overskride 0,2 i "well PROD". Begrensningen omskrives som følger:
Dette håndteres av de etterfølgende par av delfunksjoner (ett par for hver rapportindeks hvor begrensningen er aktiv):
Normalisering av begrensninger
Når begrensningsfunksjonene sammenlignes for å se hvilke som er mest bindende behøver de å bli normalisert, slik at man kan ta en fjern sammenligning mellom begrensninger med hensyn til datatype med meget ulike enheter.
Enkle begrensninger
For enkle begrensninger er begrensningsverdien det klare valg. For f.eks. å normali-sere: bruk 2000 for å endre den til:
Slik at normaliseringsfaktoren er begrensningsverdien.
Kompleks GOR-begrensning
For en GOR-begrensning har begrensningen den følgende transformerte form: som overfor det etterfølgende kan skrives som delfunksjoner:
Dersom den opprinnelige begrensningsligning skulle normaliseres ville man dividere med begrensningsverdien (slik det ble gjort i tilfellet av enkle begrensninger). Dette vil gi:
Så den normaliserende faktor som behøves å bli anvendt på paret av delfunksjoner i den hensikt å få det samme resultat som ved normalisering av den opprinnelige begrensningsligning er 1,5 ganger OPR.
Således er den normaliserende faktor begrensningen ganger oljeproduksjonsraten i begrensningens domene.
Kompleks WCT-begrensning
For en WCT-begrensning har begrensningen blitt transformert fra:
i forhold til det etterfølgende, hvilket kan skrives som delfunksjoner:
Dersom den opprinnelige begrensningslinje skulle normaliseres dividerer man med begrensningsverdien (slik det ble gjort i tilfellet av enkle begrensninger). Dette ville gi:
Så den normaliserende faktor som behøves å bli anvendt på paret av delfunksjoner i den hensikt å få det samme resultat som normaliseringen av den opprinnelige begrensningsligning er 0,2 ganger summen av OPR og WPR.
Således er den normaliserende faktor begrensningen ganger summen av olje- og vannproduksjonsratene i begrensningens domene.
Håndtering av omstart (RESTARTS)
På et ikke omstartet dekk er omfanget av funksjonene, delfunksjonene, parametrene og begrensningene i RESOPT de samme som for simuleringen (dvs. at 1 til NTOTRS er det samme som 1 til NOPTIM) så den samme indeksering kan brukes på begge områder av koden og optimaliseringens trinnindeks kan sammenlignes med simuleringens rapportindeks.
På et omstartet dekk er omfanget av simuleringen IRESTZ + 1 til NTOTRS, mens omfanget av lagringen i RESOPT-koden er 1 til NOPTIM (= NTOTRS - IRESTZ). RESOPT-omfanget brukes internt fordi det er effektivt for lagring.
Således indekseres SOPT-rekken (som holder for den doble presisjonsoptimalisators kjøretidsinformasjon, slik som den løpende tidsverdi og størrelsen på tidstrinnene) fra 1 til NOPTIM. Mange av rekkene som inneholder informasjon og resultater for parametere indekseres også indirekte ved å bruke optimalisatoromfanget.
Disse to omfangsmetoder er vist i tabellen nedenfor.
I RESOPT-koden brukes simuleringsrapportindekser bare i de etterfølgende situasjoner: 1 .Ved innstilling av standardverdier og validering av rekkevidden av funksjoner, parametere og begrensninger 2. Ved lagring av omfanget av funksjoner, delfunksjoner, parametere og begrensninger 3. Ved sammenligning av omfanget av funksjoner, delfunksjoner, parametere og begrensninger
4. Ved avgivelse av en rapportindeks for brukeren
For å konvertere fra optimalisatortrinnindeks (ISTEP) til simulatorrapportindeks (JSTEP) legges ganske enkelt til IRESTZ. Standardmekanismen i koden er bare å gjøre dette lokalt når det fordres, f.eks. JSTEP = ISTEP + IRESTZ
Rekkenavngivningskonvensjon for adjungert optimalisatorkode
Typiske rekker i den adjungerte optimalisatorkode er IOPP, SOPP, ZOPP, IOPF, SOPF, IOPS, SOPS, ZOPS og SOPG. Navnekonvensjonen for disse rekker er som følger:
Avlusningsflagg
Alle disse flagg gjelder DEBUG3:
• 120
OOptimalisatoravgivelse (generelt OP<*->rutiner) ;• 121 ;OUtgangsnivå for adjungerte gradientberegninger (generelt GA<*->rutiner)
• 124
QOm det skal gjøres en full løsning ved løsning av brønntreet
Qfvidage replacement bodge")
• 125
OFor å endre "-eksponenten" i numeriske perturbasjoner
• 126
OFor å endre hvilke deriverte som beregnes numerisk
• 143
QBruk av sentrale forskjeller i numerisk gradientberegning
Claims (21)
1. Fremgangsmåte (70) ved beregning og bruk av adjungerte gradienter i en reservoarsimulator,karakterisert ved: (a) å beregnes adjungerte gradienter (70a) for en målfunksjon med hensyn til endringer i ventilinnstilinger samtidig som det tas hensyn til en modellering av trykkfall og fluidstrømning langs et borehull; (b) som reaksjon på de beregnede adjungerte gradienter å beregne reservoar følsomheter (70b) overfor endringer i parametrisering av nedihullsanordninger, og (c) som reaksjon på de beregnede følsomheter brukes nevnte følsomheter (70b) til å optimalisere styringen av brønner i et reservoar ved å optimalisere en målfunksjon.
2. Fremgangsmåte som angitt i krav 1, og hvor beregningstrinnet (a) omfatter at nevnte adjungerte gradienter for nevnte målfunksjon beregnes med hensyn til et sett styringsparametere.
3. Fremgangsmåte som angitt i krav 2, og hvor beregningstrinnet (b) omfatter at som reaksjon på nevnte adjungerte gradienter for nevnte målfunksjon med hensyn til et sett styringsparametere bestemmes en søkeretning som representerer en endring i nevnte styringsparametere som ikke vil krenke noen produksjonsbegrensninger eller grenseverdier av nevnte styringsparametere.
4. Fremgangsmåte som angitt i krav 3, og hvor brukstrinnet (c) hvor nevnte følsomheter brukes for å optimalisere styringen av brønner i et reservoar ved å optimalisere en målfunksjon omfatter at nevnte målfunksjon maksimaliseres ved hjelp av en optimaliserer som genererer et lokalt maksimum langs en gradient basert på søkeretningen og en oppdatert brønnstyringsplan genereres, som inneholder et sett nye, oppdaterte styringsparametere.
5. Fremgangsmåte som angitt i krav 4, og som videre omfatter at trinnene (a), (b) og (c) gjentas inntil et termineringskriterium er tilfredsstilt.
6. Fremgangsmåte som angitt i krav 5, og hvor termineringskriteriet omfatter en konvergens på betingelsen av at en optimal verdi av nevnte målfunksjon er blitt nådd.
7. Fremgangsmåte som angitt i krav 1, for optimalisering av produksjon fra et reservoar som har en eller flere brønner med ventiler, og som videre omfatter: (a) å kjøre en reservoarsimulator i en fremover-simulering for å simulere reservoarets liv, (b) å prosessere utgangsdata fra fremover-simuleringen for å generere mellomliggende, partielle deriverte av strømningsligninger for brønnen og for reservoaret, (c) å kombinere de mellomliggende, partielle deriverte av brønnstrømligningene og reservoarstrømligningene i reservoarsimulatoren, (d) å løse et adjungert system av lineære ligninger ved regelmessige tidsintervaller for å beregne et sett av adjungerte gradienter for en målfunksjon med hensyn til styringsparametere, (e) å bestemme ut fra de adjungerte gradienter en søkeretning, (f) å bruke søkeretningen for å løse en optimaliseringsalgoritme som maksimerer en målfunksjon ved hjelp av linje-søk metoder, (g) å lokalisere et lokalt maksimum langs søkeretningen og oppdatere styringsparametere, (h) å bruke de nye oppdaterte styringsparameterne i reservoarsimulatoren, og (i) trinnene (a) - (i) gjentas inntil en optimal verdi av målfunksjonen er blitt nådd.
8. Programlagringsinnretning (46) som er lesbart av en maskin som tilveiebringer et sett av instruksjoner som utfører en fremgangsmåte for å beregne og bruke gradienter i en reservoarsimulator, fremgangsmåtetrinnene er katakterisert ved: (a) beregning av adjungerte gradienter (70a) for en målfunksjon med hensyn til endringer i ventilinnstilinger samtidig som det tas hensyn til en modellering av trykkfall og fluidstrømning langs et borehull; (b) som reaksjon på de beregnede adjungerte gradienter beregnes reservoar følsomheter (70b) overfor endringer i parametrisering av nedihullsanordninger, og (c) som reaksjon på de beregnede følsomheter brukes nevnte følsomheter (70b) til optimaliseringsstyringen av brønner i et reservoar ved å optimalisere en målfunksjon.
9. Programlagringsinnretning ifølge krav 8, hvor beregningstrinnet (a) omfatter at nevnte adjungerte gradienter for nevnte målfunksjon beregnes med hensyn til et sett styringsparametere.
10. Programlagringsinnretning ifølge krav 9, hvor beregningstrinnet (b) omfatter å bestemme, som reaksjon på nevnte adjungerte gradienter for nevnte målfunksjon med hensyn til et sett styringsparametere, en søkeretning som representerer en endring i nevnte styringsparametere som ikke vil krenke noen produksjonsbegrensninger eller grenseverdier av nevnte styringsparametere.
11. Programlagringsinnretning ifølge krav 10, hvor brukstrinnet (c) omfatter at nevnte følsomheter brukes for å optimalisere styringen av brønner i et reservoar ved å optimalisere en målfunksjon omfatter at nevnte målfunksjon maksimaliseres ved hjelp av en optimaliserer som genererer et lokalt maksimum langs en gradient basert på søkeretningen og en oppdatert brønnstyringsplan genereres, som inneholder et sett nye, oppdaterte styringsparametere.
12. Programlagringsinnretning ifølge krav 11, hvor fremgangsmåtetrinnene videre omfatter å gjenta trinnene (a), (b), og (c) til et termineringskriterium er nådd.
13. Programlagringsinnretning ifølge krav 12, hvor termineringskriteriet omfatter en konvergens på betingelsen av at en optimal verdi av nevnte målfunksjon er blitt nådd.
14. Programlagringsinnretning ifølge krav 8, for optimalisering av produksjon fra et reservoar som har én eller flere brønner som har ventiler, fremgangsmåten er viderekarakterisert ved: (a) å kjøre en reservoarsimulator i en fremover-simulering for å simulere reservoarets liv, (b) å prosessere utgangsdata fra fremover-simuleringen for å generere mellomliggende, partielle deriverte av strømningsligninger for brønnen og for reservoaret, (c) å kombinere de mellomliggende, partielle deriverte av brønnstrømligningene og reservoarstrømligningene i reservoarsimulatoren, (d) å løse et adjungert system av lineære ligninger ved regelmessige tidsintervaller for å beregne et sett av adjungerte gradienter for en målfunksjon med hensyn til styringsparametere, (e) å bestemme ut fra de adjungerte gradienter en søkeretning, (f) å bruke søkeretningen for å løse en optimaliseringsalgoritme som maksimerer en målfunksjon ved hjelp av linje-søk metoder, (g) å lokalisere et lokalt maksimum langs søkeretningen og oppdatere styringsparametere, (h) å bruke de nye oppdaterte styringsparameterne i reservoarsimulatoren, og (i) trinnene (a) - (i) gjentas inntil en optimal verdi av målfunksjonen er blitt nådd.
15. System (44) tilpasset for beregning og bruk av gradienter i ne reservoar simulering,
karakterisert ved: et første apparat tilpasset for å beregne adjungerte gradienter (80) til en målfunksjon med hensyn til forandringer av ventilinnstillinger mens det tas hensyn til en modellering av trykk og fluidstrømning langs brønnen; et andre apparat for å beregne følsomheter (82) av et reservoar som reagerer på forandringer i parametrisering av nedihuls innretninger; og et tredje apparat som reagerer på de beregnede følsomhetene, er tilpasset til bruke de nevnte følsomhetene (82) til å optimalisere styring av brønner i et reservoar ved å optimalisere en målfunksjon.
16. System ifølge krav 15, hvor det første apparatet omfatter apparatur som er tilpasset for beregning av de nevnte adjungerte gradientene til den nevnte målfunksjonen med hensyn til et sett av styringsparametere.
17. System ifølge krav 16, hvor det andre apparatet omfatter apparatur tilpasset til å bestemme, som reaksjon på de nevnte adjungerte gradientene til målfunksjonen med hensyn til et sett med styringsparametere, langs en gradient basert søkeretning, og å generere en oppdatering av
18. System ifølge krav 16, hvor det andre apparatet omfatter optimaliserer apparatur tilpasset for å maksimalisere målfunksjonen, generere et lokalt maksimum langs en gradient basert søkeretning, og generere en oppdatering av en brønnstyringsplan inkludert et sett med nye oppdaterte styringsparametere.
19. System ifølge krav 18, videre omfattende et apparat tilpasset for å gjenta funksjonene assosiert med det første, andre og tredje apparatet helt til et termineringskriterium er tilfredsstilt.
20. System ifølge krav 19, hvor nevnte termineringskriterium omfatter en konvergens på betingelsen av at en optimal verdi av målfunksjonen er blitt nådd.
21. System ifølge krav 15, som er tilpasset for optimalisering av produksjon fra et reservoar som har én eller flere brønner som har ventiler er viderekarakterisert ved: et apparat tilpasset for: å kjøre en reservoarsimulator i en fremover-simulering for å simulere reservoarets liv, å prosessere utgangsdata fra fremover-simuleringen for å generere mellomliggende, partielle deriverte av strømningsligninger for brønnen og for reservoaret, å kombinere de mellomliggende, partielle deriverte av brønnstrømligningene og reservoarstrømligningene i reservoarsimulatoren, å løse et adjungert system av lineære ligninger ved regelmessige tidsintervaller for å beregne et sett av adjungerte gradienter for en målfunksjon med hensyn til styringsparametere, å bestemme ut fra de adjungerte gradienter en søkeretning, å bruke søkeretningen for å løse en optimaliseringsalgoritme som maksimerer en målfunksjon ved hjelp av linje-søk metoder, å lokalisere et lokalt maksimum langs søkeretningen og oppdatere styringsparametere, å bruke de nye oppdaterte styringsparameterne i reservoarsimulatoren, og å gjentas prosesseringen ved å kombinere , løse, bestemme, bruke, lokalisere, og videre bruke funksjoner til apparatene inntil en optimal verdi av målfunksjonen er blitt nådd.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US63620204P | 2004-12-15 | 2004-12-15 | |
US11/294,962 US7640149B2 (en) | 2004-12-15 | 2005-12-05 | Method system and program storage device for optimization of valve settings in instrumented wells using adjoint gradient technology and reservoir simulation |
PCT/US2005/045851 WO2006066166A2 (en) | 2004-12-15 | 2005-12-15 | Method system and program storage device for optimization of valve settings in instrumented wells using adjoint gradient technology and reservoir simulation |
Publications (2)
Publication Number | Publication Date |
---|---|
NO20073485L NO20073485L (no) | 2007-09-17 |
NO340244B1 true NO340244B1 (no) | 2017-03-27 |
Family
ID=36061602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
NO20073485A NO340244B1 (no) | 2004-12-15 | 2007-07-05 | Fremgangsmåte, system og programlagringsutstyr for optimalisering av verdi-innstillinger i instrumenterte brønner ved hjelp av adjungert gradient-teknikk og reservoarsimulering |
Country Status (9)
Country | Link |
---|---|
US (1) | US7640149B2 (no) |
EP (1) | EP1825303B1 (no) |
AT (1) | ATE483995T1 (no) |
CA (1) | CA2591709C (no) |
DE (1) | DE602005024044D1 (no) |
EA (1) | EA010967B1 (no) |
MX (1) | MX2007007192A (no) |
NO (1) | NO340244B1 (no) |
WO (1) | WO2006066166A2 (no) |
Families Citing this family (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8145463B2 (en) * | 2005-09-15 | 2012-03-27 | Schlumberger Technology Corporation | Gas reservoir evaluation and assessment tool method and apparatus and program storage device |
FR2894672B1 (fr) * | 2005-12-12 | 2008-01-18 | Inst Francais Du Petrole | Methode de determination des capacites de stockage de gaz acides d'un milieu geologique a l'aide d'un modele de transport reactif multiphasique |
US7877246B2 (en) * | 2006-09-22 | 2011-01-25 | Schlumberger Technology Corporation | System and method for performing oilfield simulation operations |
US7895241B2 (en) * | 2006-10-16 | 2011-02-22 | Schlumberger Technology Corp. | Method and apparatus for oilfield data repository |
CA2665116C (en) * | 2006-10-30 | 2011-07-19 | Schlumberger Canada Limited | System and method for performing oilfield simulation operations |
US20080165185A1 (en) * | 2007-01-05 | 2008-07-10 | Landmark Graphics Corporation, A Halliburton Company | Systems and methods for selectively imaging objects in a display of multiple three-dimensional data-objects |
US20080319726A1 (en) | 2007-06-19 | 2008-12-25 | Schlumberger Technology Corporation | System and method for performing oilfield simulation operations |
US8775141B2 (en) * | 2007-07-02 | 2014-07-08 | Schlumberger Technology Corporation | System and method for performing oilfield simulation operations |
US8046314B2 (en) * | 2007-07-20 | 2011-10-25 | Schlumberger Technology Corporation | Apparatus, method and system for stochastic workflow in oilfield operations |
US8244509B2 (en) * | 2007-08-01 | 2012-08-14 | Schlumberger Technology Corporation | Method for managing production from a hydrocarbon producing reservoir in real-time |
US7900700B2 (en) * | 2007-08-02 | 2011-03-08 | Schlumberger Technology Corporation | Method and system for cleat characterization in coal bed methane wells for completion optimization |
US9070172B2 (en) * | 2007-08-27 | 2015-06-30 | Schlumberger Technology Corporation | Method and system for data context service |
US8156131B2 (en) * | 2007-08-27 | 2012-04-10 | Schlumberger Technology Corporation | Quality measure for a data context service |
US20090083006A1 (en) * | 2007-09-20 | 2009-03-26 | Randall Mackie | Methods and apparatus for three-dimensional inversion of electromagnetic data |
US8099267B2 (en) * | 2008-01-11 | 2012-01-17 | Schlumberger Technology Corporation | Input deck migrator for simulators |
US9074454B2 (en) * | 2008-01-15 | 2015-07-07 | Schlumberger Technology Corporation | Dynamic reservoir engineering |
CA2713948C (en) * | 2008-02-05 | 2016-02-16 | Schlumberger Canada Limited | Integrating field data |
US8155942B2 (en) * | 2008-02-21 | 2012-04-10 | Chevron U.S.A. Inc. | System and method for efficient well placement optimization |
US8560969B2 (en) * | 2008-06-26 | 2013-10-15 | Landmark Graphics Corporation | Systems and methods for imaging operations data in a three-dimensional image |
US8499829B2 (en) * | 2008-08-22 | 2013-08-06 | Schlumberger Technology Corporation | Oilfield application framework |
US8280709B2 (en) * | 2008-10-03 | 2012-10-02 | Schlumberger Technology Corporation | Fully coupled simulation for fluid flow and geomechanical properties in oilfield simulation operations |
US9228415B2 (en) * | 2008-10-06 | 2016-01-05 | Schlumberger Technology Corporation | Multidimensional data repository for modeling oilfield operations |
AU2009320119B2 (en) | 2008-11-03 | 2015-11-26 | Schlumberger Technology B.V. | Methods and apparatus for planning and dynamically updating sampling operations while drilling in a subterranean formation |
BRPI0923412A2 (pt) * | 2008-12-16 | 2016-05-24 | Exxonmobil Upstream Res Co | método, e, produto de programa de computador. |
AU2009341852B2 (en) * | 2009-03-11 | 2015-08-20 | Exxonmobil Upstream Research Company | Adjoint-based conditioning of process-based geologic models |
US8612195B2 (en) | 2009-03-11 | 2013-12-17 | Exxonmobil Upstream Research Company | Gradient-based workflows for conditioning of process-based geologic models |
CA2753544A1 (en) * | 2009-03-27 | 2010-09-30 | Exxonmobil Upstream Research Company | Reservoir quality characterization using heterogeneity equations with spatially-varying parameters |
US8600717B2 (en) | 2009-05-14 | 2013-12-03 | Schlumberger Technology Corporation | Production optimization for oilfields using a mixed-integer nonlinear programming model |
BR112012002907A2 (pt) * | 2009-08-12 | 2016-04-05 | Exxonmobil Upstream Res Co | método e sistema para otimizar a política operacional de campo para uma região de subsuperfície, método para otimizar um problema de otimização durante o tempo,e para suporte de decisão considerando desenvolvimento de recursos de petroléo,e, meio de armazenagem legível por computador. |
US9085957B2 (en) * | 2009-10-07 | 2015-07-21 | Exxonmobil Upstream Research Company | Discretized physics-based models and simulations of subterranean regions, and methods for creating and using the same |
CN102612682B (zh) * | 2009-11-12 | 2016-04-27 | 埃克森美孚上游研究公司 | 用于储层建模和模拟的方法和设备 |
US20110225097A1 (en) * | 2009-11-23 | 2011-09-15 | The University Of Manchester | Method and apparatus for valuation of a resource |
CN102640163B (zh) | 2009-11-30 | 2016-01-20 | 埃克森美孚上游研究公司 | 用于储层模拟的适应性牛顿法 |
CA2791347C (en) * | 2010-03-01 | 2016-04-26 | Uti Limited Partnership | System and method for using orthogonally-coded active source signals for reflected signal analysis |
CN102870087B (zh) | 2010-04-30 | 2016-11-09 | 埃克森美孚上游研究公司 | 流体有限体积仿真的方法和系统 |
CA2803068C (en) | 2010-07-29 | 2016-10-11 | Exxonmobil Upstream Research Company | Method and system for reservoir modeling |
US10087721B2 (en) | 2010-07-29 | 2018-10-02 | Exxonmobil Upstream Research Company | Methods and systems for machine—learning based simulation of flow |
EP2599023B1 (en) | 2010-07-29 | 2019-10-23 | Exxonmobil Upstream Research Company | Methods and systems for machine-learning based simulation of flow |
CA2807300C (en) * | 2010-09-20 | 2017-01-03 | Exxonmobil Upstream Research Company | Flexible and adaptive formulations for complex reservoir simulations |
US9031674B2 (en) * | 2010-10-13 | 2015-05-12 | Schlumberger Technology Corporation | Lift-gas optimization with choke control |
US8437999B2 (en) * | 2011-02-08 | 2013-05-07 | Saudi Arabian Oil Company | Seismic-scale reservoir simulation of giant subsurface reservoirs using GPU-accelerated linear equation systems |
EP2756382A4 (en) | 2011-09-15 | 2015-07-29 | Exxonmobil Upstream Res Co | MATRIX AND VECTOR OPERATIONS OPTIMIZED IN LIMITED INSTRUCTION ALGORITHMS THAT COMPLETE EOS CALCULATIONS |
EP2901363A4 (en) | 2012-09-28 | 2016-06-01 | Exxonmobil Upstream Res Co | ERROR REMOVAL IN GEOLOGICAL MODELS |
US20140222403A1 (en) * | 2013-02-07 | 2014-08-07 | Schlumberger Technology Corporation | Geologic model via implicit function |
AU2015298233B2 (en) | 2014-07-30 | 2018-02-22 | Exxonmobil Upstream Research Company | Method for volumetric grid generation in a domain with heterogeneous material properties |
US10443358B2 (en) | 2014-08-22 | 2019-10-15 | Schlumberger Technology Corporation | Oilfield-wide production optimization |
US9951601B2 (en) | 2014-08-22 | 2018-04-24 | Schlumberger Technology Corporation | Distributed real-time processing for gas lift optimization |
US10184320B2 (en) | 2014-09-02 | 2019-01-22 | Saudi Arabian Oil Company | Systems, methods, and computer medium to enhance hydrocarbon reservoir simulation |
WO2016069171A1 (en) | 2014-10-31 | 2016-05-06 | Exxonmobil Upstream Research Company | Handling domain discontinuity in a subsurface grid model with the help of grid optimization techniques |
EP3213125A1 (en) | 2014-10-31 | 2017-09-06 | Exxonmobil Upstream Research Company Corp-urc-e2. 4A.296 | Methods to handle discontinuity in constructing design space for faulted subsurface model using moving least squares |
US10280722B2 (en) | 2015-06-02 | 2019-05-07 | Baker Hughes, A Ge Company, Llc | System and method for real-time monitoring and estimation of intelligent well system production performance |
AU2015408224A1 (en) | 2015-09-04 | 2018-02-08 | Halliburton Energy Services, Inc. | Time-to-finish simulation forecaster |
EP3559401B1 (en) | 2016-12-23 | 2023-10-18 | ExxonMobil Technology and Engineering Company | Method and system for stable and efficient reservoir simulation using stability proxies |
CN108729911A (zh) * | 2017-04-24 | 2018-11-02 | 通用电气公司 | 用于资源生产系统的优化装置、系统和方法 |
US11486235B2 (en) * | 2017-05-16 | 2022-11-01 | Bp Corporation North America Inc. | Tools for selecting and sequencing operating parameter changes to control a hydrocarbon production system |
US11755795B2 (en) * | 2017-09-22 | 2023-09-12 | ExxonMobil Technology and Engineering Company | Detecting and mitigating flow instabilities in hydrocarbon production wells |
CN109763809B (zh) * | 2017-11-01 | 2022-05-03 | 中国石油化工股份有限公司 | 一种优化水平井分段液流控制完井段内参数的方法 |
WO2020180303A1 (en) * | 2019-03-05 | 2020-09-10 | Landmark Graphics Corporation | Reservoir simulation systems and methods to dynamically improve performance of reservoir simulations |
US11401786B2 (en) * | 2019-03-06 | 2022-08-02 | Saudi Arabian Oil Company | Systems and methods for hydrocarbon reservoir well connectivity graph optimization, simulation and development |
CN112580861B (zh) * | 2020-12-11 | 2022-11-01 | 西南石油大学 | 一种针对非常规油气藏生产优化问题的控制方法及系统 |
CN115358167B (zh) * | 2022-08-30 | 2023-03-28 | 西北工业大学 | 一种考虑发动机参数的飞发一体气动伴随优化设计方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6106561A (en) * | 1997-06-23 | 2000-08-22 | Schlumberger Technology Corporation | Simulation gridding method and apparatus including a structured areal gridder adapted for use by a reservoir simulator |
US6230101B1 (en) * | 1999-06-03 | 2001-05-08 | Schlumberger Technology Corporation | Simulation method and apparatus |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2329719C (en) | 1998-05-04 | 2005-12-27 | Schlumberger Canada Limited | Near wellbore modeling method and apparatus |
-
2005
- 2005-12-05 US US11/294,962 patent/US7640149B2/en active Active
- 2005-12-15 MX MX2007007192A patent/MX2007007192A/es active IP Right Grant
- 2005-12-15 CA CA2591709A patent/CA2591709C/en not_active Expired - Fee Related
- 2005-12-15 WO PCT/US2005/045851 patent/WO2006066166A2/en active Application Filing
- 2005-12-15 EP EP05849964A patent/EP1825303B1/en active Active
- 2005-12-15 DE DE602005024044T patent/DE602005024044D1/de active Active
- 2005-12-15 AT AT05849964T patent/ATE483995T1/de not_active IP Right Cessation
- 2005-12-15 EA EA200701281A patent/EA010967B1/ru not_active IP Right Cessation
-
2007
- 2007-07-05 NO NO20073485A patent/NO340244B1/no not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6106561A (en) * | 1997-06-23 | 2000-08-22 | Schlumberger Technology Corporation | Simulation gridding method and apparatus including a structured areal gridder adapted for use by a reservoir simulator |
US6230101B1 (en) * | 1999-06-03 | 2001-05-08 | Schlumberger Technology Corporation | Simulation method and apparatus |
Non-Patent Citations (1)
Title |
---|
L�PINE O.J., ET AL: "Uncertainty Analysis in Predictive Reservoir Simulation Using Gradient Information", SPE JOURNAL., SOCIETY OF PLASTICS ENGINEERS (SPE), STAMFORD, CT, UNITED STATES, vol. 4, no. 3, 1 September 1999 (1999-09-01), Stamford, CT, United States, pages 251 - 259, XP002374738, ISSN: 0036-1844 * |
Also Published As
Publication number | Publication date |
---|---|
EA010967B1 (ru) | 2008-12-30 |
MX2007007192A (es) | 2007-08-14 |
CA2591709A1 (en) | 2006-06-22 |
EP1825303A2 (en) | 2007-08-29 |
CA2591709C (en) | 2013-04-02 |
NO20073485L (no) | 2007-09-17 |
ATE483995T1 (de) | 2010-10-15 |
EP1825303B1 (en) | 2010-10-06 |
WO2006066166A3 (en) | 2006-08-10 |
EA200701281A1 (ru) | 2007-12-28 |
US20060184329A1 (en) | 2006-08-17 |
DE602005024044D1 (de) | 2010-11-18 |
WO2006066166A2 (en) | 2006-06-22 |
US7640149B2 (en) | 2009-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
NO340244B1 (no) | Fremgangsmåte, system og programlagringsutstyr for optimalisering av verdi-innstillinger i instrumenterte brønner ved hjelp av adjungert gradient-teknikk og reservoarsimulering | |
Guo et al. | Robust life-cycle production optimization with a support-vector-regression proxy | |
US11704579B2 (en) | Earth modeling methods using machine learning | |
US7933750B2 (en) | Method for defining regions in reservoir simulation | |
CN109478208A (zh) | 用于石油勘探和生产评估的综合数据和过程集成的迭代且可重复的工作流程 | |
US20130218538A1 (en) | Simulation model optimization | |
NO340861B1 (no) | Fremgangsmåte for å bestemme et sett med netto nåverdier for å påvirke boring av en brønn og øke produksjon | |
US20120029895A1 (en) | Model-consistent structural restoration for geomechanical and petroleum systems modeling | |
CN106104590A (zh) | 不确定性下多级油田设计优化 | |
US11699099B2 (en) | Confidence volumes for earth modeling using machine learning | |
US10872182B2 (en) | Method for the development of a fluid deposit traversed by fractures by means of a flow simulation based on an exchange flow and a corrective factor | |
US11434759B2 (en) | Optimization of discrete fracture network (DFN) using streamlines and machine learning | |
Dekkers et al. | Resource assessment: estimating the potential of a geothermal reservoir | |
Ciriaco | A Refined Methodology for Quantifying Estimates of Extractable Geothermal Energy: Experimental Design (ED) and Response Surface Methodology (RSM) | |
US20230359793A1 (en) | Machine-learning calibration for petroleum system modeling | |
Liem et al. | Prior with Far-Field Stress Approximation for Ensemble-Based Data Assimilation in Naturally Fractured Reservoirs | |
Sylta et al. | Estimation of oil and gas column heights in prospects using probabilistic basin modelling methods | |
Tueros et al. | Refined Ensemble-Based Method for Waterflooding Problem with State Constraints | |
Omagbon | Linear Analysis as a Practical Method for Quantifying the Uncertainty of Geothermal Models | |
Dattagupta et al. | Robust Carbon Dioxide Plume Imaging Using Joint Tomographic Inversion of Seismic Onset Time and Distributed Pressure and Temperature Measurements | |
Saleh et al. | Uncertainty Quantification Through the Assimilation of CO2 Plume Size from 4D Seismic Survey | |
Jaquet et al. | Groundwater flow modelling under transient ice sheet conditions in Greenland | |
Chen et al. | Inverse and Feedback Analyses Based on the Finite Element Method | |
Chang et al. | Data assimilation of coupled fluid flow and geomechanics via ensemble Kalman filter | |
Uraz | Optimization of well placement in complex carbonate reservoirs using artifical intelligence |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM1K | Lapsed by not paying the annual fees |