Utökad matematisk programmering
Algebraiska modelleringsspråk som AIMMS , AMPL , GAMS , MPL och andra har utvecklats för att underlätta beskrivningen av ett problem i matematiska termer och för att koppla samman den abstrakta formuleringen med datahanteringssystem å ena sidan och lämpliga algoritmer för lösning å andra sidan. Robusta algoritmer och modelleringsspråksgränssnitt har utvecklats för ett stort antal matematiska programmeringsproblem såsom linjära program (LPs), olinjära program (NPs), Mixed Integer Programs (MIPs), mixed complementarity programs (MCPs) och andra. Forskare uppdaterar ständigt de typer av problem och algoritmer som de vill använda för att modellera i specifika domänapplikationer.
Extended Mathematical Programming ( EMP ) är en utökning av algebraiska modelleringsspråk som underlättar automatisk omformulering av nya modelltyper genom att konvertera EMP-modellen till etablerade matematiska programmeringsklasser att lösa med mogna lösaralgoritmer. Ett antal viktiga problemklasser kan lösas. Specifika exempel är variationsmässiga ojämlikheter , Nash-jämvikter , disjunktiva program och stokastiska program .
EMP är oberoende av vilket modellspråk som används men för närvarande implementeras det endast i GAMS. De nya typerna av problem som modelleras med EMP omformuleras med GAMS-lösaren JAMS till väletablerade typer av problem och de omformulerade modellerna skickas vidare till en lämplig GAMS-lösare som ska lösas. Kärnan i EMP är en fil som heter emp.info där de anteckningar som behövs för omformuleringarna läggs till modellen.
Jämviktsproblem
Jämviktsproblem modellerar frågor som uppstår vid studiet av ekonomiska jämvikter i en matematiskt abstrakt form. Jämviktsproblem inkluderar Variational Inequalities, problem med Nash Equilibria och Multiple Optimization Problems with Equilibrium Constraints (MOPEC). Använd EMP:s nyckelord för att omformulera dessa problem som blandade komplementaritetsproblem (MCP), en klass av problem för vilka det finns mogen lösningsteknik. Lös den nyligen omformulerade EMP-nyckelordsversionen av problemet med PATH-lösaren eller andra GAMS MCP- lösare.
Exempel på användningen av EMP för att lösa jämviktsproblem inkluderar beräkning av Cournot-Nash-Walras-jämvikter.., modellering av vattentilldelning, långsiktig planering av utbyggnad av transmissionsledningar av elnätet, modellering av riskaverta medel i hydrotermisk elektricitet marknader med osäkra inflöden till vattenreservoarer och modellering av variationer i ojämlikheter på energimarknaderna
Hierarkisk optimering
Hierarkiska optimeringsproblem är matematiska program med ytterligare ett optimeringsproblem i sina begränsningar. Ett enkelt exempel är binivåprogrammeringsproblemet som optimerar ett mål på den övre nivån över begränsningar som inkluderar ett annat optimeringsproblem på lägre nivå. Binivåprogrammering används inom många områden. Ett exempel är utformningen av optimala skatteinstrument. Skatteinstrumentet är modellerat i den övre nivån och clearingmarknaden är modellerad i den lägre nivån. I allmänhet kan problemet på lägre nivå vara ett optimeringsproblem eller en variationsmässig ojämlikhet . Flera nyckelord tillhandahålls för att underlätta omformulering av hierarkiska optimeringsproblem. Binivåoptimeringsproblem som modellerats med EMP omformuleras till matematiska program med jämviktsbegränsningar (MPEC) och sedan löses de med en av GAMS MPEC-lösarna (NLPEC eller KNITRO ).
Disjunktiv programmering
Matematiska program som involverar binära variabler och disjunktionsdefinitioner för modellering av diskreta val kallas disjunktiva program. Disjunktiva program har många applikationer, inklusive beställning av uppgifter i en produktionsprocess, organisera komplexa projekt på ett tidsbesparande sätt och välja den optimala vägen i en krets. Procedurer för linjära och icke-linjära disjunktiva programmeringsförlängningar implementeras inom EMP. Linjära disjunktiva program omformuleras som blandade heltalsprogram (MIP) och icke-linjära disjunktiva program omformuleras som blandade heltals icke-linjära program (MINLP). De löses med lösaren LogMIP 2.0 och eventuellt andra GAMS-subsolvers.
Exempel på användning av EMP för disjunktiv programmering inkluderar schemaläggningsproblem inom den kemiska industrin
EMP för stokastisk programmering
EMP SP är den stokastiska förlängningen av EMP-ramverket. En deterministisk modell med fasta parametrar omvandlas till en stokastisk modell där några av parametrarna inte är fixerade utan representeras av sannolikhetsfördelningar. Detta görs med anteckningar och specifika nyckelord. Enkla och gemensamma diskreta och parametriska sannolikhetsfördelningar är möjliga. Dessutom finns det nyckelord för förväntat värde , riskvärde (VaR) och villkorat riskvärde (CVaR). Variabler som är riskmått kan förekomma i den objektiva ekvationen eller i begränsningar. EMP SP underlättar optimeringen av ett enskilt riskmått eller en kombination av riskmått (till exempel den viktade summan av förväntat värde och CVaR). Dessutom kan modelleraren välja att avväga riskmått. Det är också möjligt att modellera restriktioner som bara håller med vissa sannolikheter (chans constraints). För närvarande kan följande GAMS-lösare användas med EMP SP: DE, DECIS, JAMS och LINDO . Vilken GAMS-lösare som helst kan användas för att bearbeta det församplade deterministiska ekvivalentproblemet .
Se även
- Algebraiskt modelleringsspråk
- Komplementaritetsteori
- Allmänt algebraiskt modelleringssystem – GAMS
- SAMPL – stokastisk förlängning av AMPL