PlanWise Tutorial: Difference between revisions

From Heureka Wiki
Jump to navigation Jump to search
Line 150: Line 150:
1. Kontovariabel som summerar avverkad volym i varje tidsperiod:
1. Kontovariabel som summerar avverkad volym i varje tidsperiod:
Här följer ett antal syntax-exempel:
Här följer ett antal syntax-exempel:
FORALL <nowiki><</nowiki>p<nowiki>></nowiki> IN _periods DO
<pre>FORALL <p> IN _periods DO
         SUM<nowiki><</nowiki>I,j,r<nowiki>></nowiki> IN _treatmentunits * _alternatives * _rowno :
         SUM<I,j,r> IN _treatmentunits * _alternatives * _rowno :
         _volumeHarv[i,j,p,r] * _area[i] * _x[i,j] <nowiki>==</nowiki> _volHarvTot[p];
         _volumeHarv[i,j,p,r] * _area[i] * _x[i,j] == _volHarvTot[p];</pre>
 
 
 
 
 


Definitionen skrivs in direkt i variabelns definitionsfönster, men är i egentligen mening en restriktion. Restriktionen motsvarar följande matematiska uttryck (restriktion) i en LP-modell:
Definitionen skrivs in direkt i variabelns definitionsfönster, men är i egentligen mening en restriktion. Restriktionen motsvarar följande matematiska uttryck (restriktion) i en LP-modell:
 


där
definitioner:
I = mängden (set) av behandlingsenheter (�?�treatment units�?�)
I = mängden (set) av behandlingsenheter (�?�treatment units�?�)
J = mängden av (index) för tillgängliga skötselprogram  
J = mängden av (index) för tillgängliga skötselprogram  
Line 170: Line 164:
volHarvTotp = summa avverkad volym under period p
volHarvTotp = summa avverkad volym under period p
xij = Beslutsvariabel (binär) = 1 om skötselprogram j tillämpas för enhet i, annars 0.   
xij = Beslutsvariabel (binär) = 1 om skötselprogram j tillämpas för enhet i, annars 0.   
    
    
2. Kontovariabel som summerar volym som slutavverkas i varje tidsperiod.  
2. Kontovariabel som summerar volym som slutavverkas i varje tidsperiod.  
<pre>FORALL <p> IN _periods DO
        SUM<I,j,r> IN _treatmentunits * _alternatives * _rowno with _treatment[i,j,p,r]==8:
          _volumeHarv[i,j,p,r] * _area[i] * _x[i,j] == _volHarvFinalFelledTot[p];</pre>


Skillnaden mot föregående uttryck är att efter �?�rowno�?� följer ett villkor att summering bara ska göras för slutavverkningsåtgärder (som har koden 8). Notera användningen av dubbla likhetstecken.
Skillnaden mot föregående uttryck är att efter �?�rowno�?� följer ett villkor att summering bara ska göras för slutavverkningsåtgärder (som har koden 8). Notera användningen av dubbla likhetstecken.

Revision as of 17:15, 31 March 2009