Naturschutz - Protection de la nature

Remove["Global`*"]

Hirsche im Nationalpark fressen im Winter Rinde von Bäumen. Nun vertreiben die Naturschützer die Jäger...
(Erklärungen siehe Analysis-Script abVersion V.2.10, unter Folgen)
En hiver, les cerfs dans le parc national mangent l' écorce des arbers. Maintenant les activistes de protection de la nature (écologistes) arrivent - et alors la chasse est interdite...
(Explications voir script d'analyse à partir de version V.2.10, chapitre "Suites")

Variables and parameters

Variables:

n = 	Jahr - Année
vE =    Eintritte - Entrés
vG =    Gewinn - Profit
vF =     Fressen (Heu) - Manger (foin)
vU =    Anzahl Umweltschützer im Einsatz - Nombre d'activistes (écologistes actifs)  
vJ =    Anzahl Jäger - Nombre de chasseurs
vB =   Anzahl Bäume - Le nombre d'arbres dans le parc
vH =  Anzahl Hirsche - Nombre de cerfs

Parameters:

eintrittPreis       Preis für einen Eintritt - Prix d'entrée
fixKosten          Fixkosten Verwaltung - Frais fixes pour l'administration
factHeu            Faktor für Aequivalent Gewinn <> Heu statt Baum - Facteur pour l'équivalent profit <> foin (au lieu d'arbres) 
umweltjahr       Jahr mit Beginn Umweltschutz - Année du commencement de la protection des cerfs 
pU 		  Anzahl Umweltschützer - Nombre d'activistes (écologistes actifs) 
vJTot                Anzahl Jäger - Nombre de chasseurs 
fressen               Faktor für gefressene Bäume pro Hirsch - Facteur pour les arbres mangés par un cerf
faktorB              Faktor für Vermehrung der Bäume - Facteur pour l'accroissement du nombre d'arbres
faktorH              Faktor für Vermehrung der Hirsche - Facteur pour l'augmentation du nombre de cerfs
factorJschiessen  Anzahl abgeschossene Hirsche pro Jäger - Nombre de cerfs tirés (tués) par un chasseur
umweltjahr         Jahr mit Beginn Umweltschutz - Année du commencement de la protection de l´environnement

Initial values, time = 0

vE[0] = 1;
vG[0] = 1;
vF[0] = 1;
vU[0] = 1;
vJ[0] = 1;
vB[0] = 1;
vH[0] = 1;

Initial values, time = 1, parameters

Durch den Menschen wählbar (Schätzungen) oder in einigen Fällen naturgegeben - A choisir par l'homme (estimations) ou des fois donné par la nature

vE[1] = 10;
eintrittPreis = 5;
fixKosten = 500;
factHeu = 10;
umweltjahr = 3;  tU = 3;
pU = 5;
vJTot = 10;
vB[1] = 10000;
fressen = 
      0.2;            
faktorB = 
      1.1;
vH[1] = 1000;
faktorH = 1.6;
factorJschiessen = 3;
umweltjahr = 3;

Gesetze (Schätzungen) - Lois (estimations)
(Durch die Natur gegeben - Donnés par la nature)

fPos[x_ /; x ≥ 0] := x;
fPos[x_ /; x < 0] := 0;
vE[n_] := 
        Floor[vH[n - 1]/vH[1] vE[n - 1] + 
            vE[n - 1] Random[]];
vG[n_] := 
        fPos[eintrittPreis    vE[n]  - 
            fixKosten];
vF[n_] := vG[n]/factHeu;
vU[n_ /; n ≥ umweltjahr] = 
      pU;     vU[n_ /; n < umweltjahr] = 0;
vJ[n_] := 
        Ceiling[vJTot * E^(-vU[n])];
vB[n_] := 
        fPos[Floor[
            vB[n - 1]* faktorB - 
              vH[n - 1]* fressen ]];
vH[n_] := 
        fPos[Floor[
            vH[n - 1]*
                faktorH *(vB[n] + vF[n])/(vB[n - 1] + 1)    - 
              factorJschiessen*vJ[n - 1]]];

Test 1a

eintrittPreis = 5;
fixKosten = 500;
factHeu = 10;
pU = 5;
vJTot = 10;
vB[1] = 10000;
fressen = 
          2;           
faktorB = 1.2;
vH[1] = 1000;
faktorH = 1.2;
factorJschiessen = 20;
umweltjahr = 100;

\(\(Prepend[
            Table[{n, vE[n], vG[n], vF[n], vU[n], vJ[n], vB[n], vH[n]}, {n, 
                0, 7}], {"n", "vE[n]", "vG[n]", "vF[n]", "vU[n]", "vJ[n]", "vB[n]", "vH[n]"}] // N\) // MatrixForm\)

Plot vH[n]

Table[{vH[n]}, {n, 0, 7}]

Table[{vH[n]}, {n, 0, 7}] // Flatten

tabH = Flatten[Table[{vH[n]}, {n, 0, 7}]];
lP1 = ListPlot[tabH, PlotStyle -> PointSize[0.02]];

tabH = Flatten[Table[{vH[n]}, {n, 0, 7}]];
lP2 = ListPlot[tabH, PlotJoined -> True];

Show[lP1, lP2];

Test 1b

eintrittPreis = 5;
fixKosten = 500;
factHeu = 10;
pU = 5;
vJTot = 10;
vB[1] = 10000;
fressen = 
          4;           
faktorB = 1.4;
vH[1] = 1000;
faktorH = 1.2;
factorJschiessen = 20;
umweltjahr = 100;

\(\(Prepend[
            Table[{n, vE[n], vG[n], vF[n], vU[n], vJ[n], vB[n], vH[n]}, {n, 
                0, 7}], {"n", "vE[n]", "vG[n]", "vF[n]", "vU[n]", "vJ[n]", "vB[n]", "vH[n]"}] // N\) // MatrixForm\)

Plot vH[n]

Table[{vH[n]}, {n, 0, 7}]

Table[{vH[n]}, {n, 0, 7}] // Flatten

tabH = Flatten[Table[{vH[n]}, {n, 0, 7}]];
lP1 = ListPlot[tabH, PlotStyle -> PointSize[0.02]];

tabH = Flatten[Table[{vH[n]}, {n, 0, 7}]];
lP2 = ListPlot[tabH, PlotJoined -> True];

Show[lP1, lP2];

Test 1c

eintrittPreis = 5;
fixKosten = 500;
factHeu = 10;
pU = 5;
vJTot = 10;
vB[1] = 10000;
fressen = 4;         
faktorB = 1.4;
vH[1] = 1000;
faktorH = 1.2;
factorJschiessen = 
          2;   
umweltjahr = 1;              (*   <<  ========   *)

\(\(Prepend[
            Table[{n, vE[n], vG[n], vF[n], vU[n], vJ[n], vB[n], vH[n]}, {n, 
                0, 7}], {"n", "vE[n]", "vG[n]", "vF[n]", "vU[n]", "vJ[n]", "vB[n]", "vH[n]"}] // N\) // MatrixForm\)

Plot vH[n]

end = 10;      (* <===== Achtung: Schneller Rechner! <===== Attention :  Ordinateur rapid! *)

Table[{vH[n]}, {n, 0, 7}]

Table[{vH[n]}, {n, 0, end}] // Flatten

tabH = Flatten[Table[{vH[n]}, {n, 0, end}]];
lP1 = ListPlot[tabH, PlotStyle -> PointSize[0.02]];

tabH = Flatten[Table[{vH[n]}, {n, 0, end}]];
lP2 = ListPlot[tabH, PlotJoined -> True];

Show[lP1, lP2];

Test 1d

eintrittPreis = 5;
fixKosten = 500;
factHeu = 1;                       
pU = 5;
vJTot = 10;
vB[1] = 10000;
fressen = 
        2;                        (*   <<  ========   *) 
faktorB = 1.4;
vH[1] = 1000;
faktorH = 1.2;
factorJschiessen = 0;     
umweltjahr = 100;            (*   <<  ========   *)

\(\(Prepend[
            Table[{n, vE[n], vG[n], vF[n], vU[n], vJ[n], vB[n], vH[n]}, {n, 
                0, 7}], {"n", "vE[n]", "vG[n]", "vF[n]", "vU[n]", "vJ[n]", "vB[n]", "vH[n]"}] // N\) // MatrixForm\)

Plot vH[n]

Table[{vH[n]}, {n, 0, 7}]

Table[{vH[n]}, {n, 0, 7}] // Flatten

tabH = Flatten[Table[{vH[n]}, {n, 0, 7}]];
lP1 = ListPlot[tabH, PlotStyle -> PointSize[0.02]];

tabH = Flatten[Table[{vH[n]}, {n, 0, 7}]];
lP2 = ListPlot[tabH, PlotJoined -> True];

Show[lP1, lP2];

Andere parameter - D'autres paramètres

Test 2

eintrittPreis = 5;
fixKosten = 500;
factHeu = 10;
tU = 3;
pU = 5;
vJTot = 10;
vB[1] = 10000;
fressen = 
        0.2;            
faktorB = 1.1;
vH[1] = 1000;
faktorH = 1.6;
factorJschiessen = 3;
umweltjahr = 3;

\(\(Prepend[
            Table[{n, vE[n], vG[n], vF[n], vU[n], vJ[n], vB[n], vH[n]}, {n, 
                0, 7}], {"n", "vE[n]", "vG[n]", "vF[n]", "vU[n]", "vJ[n]", "vB[n]", "vH[n]"}] // N\) // MatrixForm\)

Plot vH[n]

Table[{vH[n]}, {n, 0, 7}]

Table[{vH[n]}, {n, 0, 7}] // Flatten

tabH = Flatten[Table[{vH[n]}, {n, 0, 7}]];
lP1 = ListPlot[tabH, PlotStyle -> PointSize[0.02]];

tabH = Flatten[Table[{vH[n]}, {n, 0, 7}]];
lP2 = ListPlot[tabH, PlotJoined -> True];

Show[lP1, lP2];

Test 3

eintrittPreis = 5;
fixKosten = 500;
factHeu = 10;
tU = 3;
pU = 5;
vJTot = 10;
vB[1] = 10000;
fressen = 
        0.2;            
faktorB = 1.1;
vH[1] = 1000;
faktorH = 1.6;
factorJschiessen = 3;
umweltjahr = 3;

\(\(Prepend[
            Table[{n, vE[n], vG[n], vF[n], vU[n], vJ[n], vB[n], vH[n]}, {n, 
                0, 7}], {"n", "vE[n]", "vG[n]", "vF[n]", "vU[n]", "vJ[n]", "vB[n]", "vH[n]"}] // N\) // MatrixForm\)

Plot vH[n]

Table[{vH[n]}, {n, 0, 7}]

Table[{vH[n]}, {n, 0, 7}] // Flatten

tabH = Flatten[Table[{vH[n]}, {n, 0, 7}]];
lP1 = ListPlot[tabH, PlotStyle -> PointSize[0.02]];

tabH = Flatten[Table[{vH[n]}, {n, 0, 7}]];
lP2 = ListPlot[tabH, PlotJoined -> True];

Show[lP1, lP2];

Test 4

vE[1] = 10;
eintrittPreis = 
        5;
fixKosten = 
        500;
factHeu = 
        100;
tU = 
        3;
pU = 
        5;
vJTot = 
        10;
vB[1] = 
        10000;
fressen = 
      2;          
faktorB = 
      1.1;
vH[1] = 
        1000;
faktorH = 
        1.6;
factorJschiessen = 
        3;
umweltjahr = 
        3;
\(\(Prepend[
            Table[{n, vE[n], vG[n], vF[n], vU[n], vJ[n], vB[n], vH[n]}, {n, 
                0, 7}], {"n", "vE[n]", "vG[n]", "vF[n]", "vU[n]", "vJ[n]", "vB[n]", "vH[n]"}] // N\) // MatrixForm\)

Plot vH[n]

tabH = Flatten[Table[{vH[n]}, {n, 0, 7}]];
lP1 = ListPlot[tabH, PlotStyle -> PointSize[0.02]];

tabH = Flatten[Table[{vH[n]}, {n, 0, 7}]];
lP2 = ListPlot[tabH, PlotJoined -> True];

Show[lP1, lP2];

Your test: ......