Hopp til innhald

Oppgåver og aktivitetar

Logistisk vekst

Øv på å løyse oppgåver med logistisk vekst.

FM-20

a) Gjennomfør den logistiske regresjonen i døme om aurebestand på teorisida "Logistisk vekst".

b) Når veks aurebestanden mest, og kor stor er veksten då?

Løysing

Vi kopierer funksjonen frå regresjonsanalyseverktøyet til grafikkfeltet. Så bruker vi CAS til å analysere funksjonen. Her må vi finne det punktet der grafen er brattast. Det vil vere i vendepunktet til grafen til g.

CAS-utrekning med GeoGebra. På linje 1 er det skrive g dobbeltderivert av x er lik 0. Svaret med Løys er x er lik eit stort, eksakt uttrykk som vi forenklar på neste linje. På linje 2 er det skrive dollarteikn 1. Svaret med tilnærming er x er lik 4,84. På linje 3 er det skrive g dobbeltderivert av x større enn 0. Svaret med Løys er x mindre enn eit stort, eksakt uttrykk som vi forenklar på neste linje. På linje 4 er det skrive dollarteikn 3. Svaret med tilnærming er x mindre enn 4,84. På linje 5 er det skrive g derivert av 4,84. Svaret med tilnærming er 2,74. Skjermutklipp.

I linje 3 og 4 kontrollerer vi at nullpunktet til den dobbeltderiverte faktisk er eit vendepunkt ved å sjekke om forteiknet skiftar ved nullpunktet, noko det gjer. Aurebestanden vaks raskast nesten 5 år etter at kalkinga starta, og då vaks bestanden med 2 740 aurar per år.

I oppgåve FM-23 viser vi at vi alltid har eitt vendepunkt for ein logistisk funksjon, og at funksjonen er brattast der, så vi treng ikkje å sjekke dette fleire gonger.

FM-21

Løvetann i blomster til venstre og avblomstra løvetann til høgre. Foto.

I 1970 dukka det for første gong opp løvetann på Fureøya. I nokre år framover vart talet på løvetannplantar kartlagt. Resultatet viser vi i tabellen nedanfor.

Talet på løvetannplantar

År

1970

1971

1971

1973

1974

1975

1976

1977

1978

1979

1980

Talet på løvetann-plantar

3

15

80

201

300

501

731

915

1 131

1 350

1 490

a) Finn den logistiske modellen nx som passar best til utviklinga av talet på løvetannplantar der x står for talet på år etter 1970.

Løysing

Når x betyr talet på år etter 1970, får vi at x=0 betyr året 1970, x=1 betyr 1971 og så vidare. Vi legg derfor tala frå og med 0 til og med 10 i éin kolonne i reknearket i GeoGebra og talet på løvetannplantar i neste kolonne. Så vel vi "Regresjonsanalyse" og regresjonsmodellen logistisk.

Til venstre i figuren er tala 0 til 10 lagde i éin kolonne, og tala frå tabellen i oppgåva er lagde inn i nabokolonnen i reknearkdelen av programmet GeoGebra. Til høgre er regresjonsverktøyet med eit koordinatsystem med punkt teikna ut ifrå tala i reknearkdelen. Regresjonsmodellen "Logistisk" er vald, og modellen er y er lik 1675,39 delt på parentes 1 pluss 46,3 e opphøgd i minus 0,58 x parentes slutt. Skjermutklipp.
Opne bilete i eit nytt vindauge

Biletet viser at ein logistisk modell passar bra med tala. Den modellen som passar best, er

nx=1675,391+46,3 e-0,58x

b) Kor mange løvetannplantar blir det på lang sikt etter denne modellen?

Løysing

Når x, vil e-0,58x0 og nemnaren gå mot 1. Funksjonen går derfor mot talet i teljaren.

Talet på løvetannplantar på lang sikt, eller det vi kallar bereevna, vil derfor vere 1 675 etter modellen.

c) Når vaks talet på løvetannplantar raskast, og kor raskt vaks det då?

Løysing

Vi kopierer funksjonen frå regresjonsanalyseverktøyet til grafikkfeltet. Så bruker vi CAS til å analysere funksjonen.

CAS-utrekning med GeoGebra. På linje 1 er det skrive Løys parentes n dobbeltderivert av x er lik 0 parentes slutt. Svaret er x er lik eit stort, eksakt uttrykk som vi forenklar på neste linje. På linje 2 er det skrive dollarteikn 1. Svaret med tilnærming er x er lik 6,59. På linje 3 er det skrive n derivert av 6,59. Svaret med tilnærming er 243,91. Skjermutklipp.

Etter modellen auka talet på løvetannplantar mest i det sjette året etter 1970, det vil seie i 1976. Då auka talet på løvetannplantar med 244 plantar per år.

d) Bruk regresjon i Python til å lage ein modell som passar best mogleg med tala i tabellen. Teikn funksjonen.

Løysing

Forslag til kode:

python

1        # importerer nødvendige bibliotek
2from scipy.optimize import curve_fit
3import numpy as np
4import matplotlib.pyplot as plt
5
6        # lagar funksjonen som beskriv modellen
7def modell(x,B,a,k):
8  return B/(1+a*np.e**(-k*x))
9  
10        # legg inn måledataa i lister
11x_verdiar = [0,1,2,3,4,5,6,7,8,9,10]
12y_verdiar = [3,15,80,201,300,501,731,915,1131,1350,1490]
13
14        # bruker metoden curve_fit og legg resultata i to lister
15konstantar,kovarians = curve_fit(modell,x_verdiar,y_verdiar, p0 = [max(y_verdiar),1,1])
16        # hentar ut konstantane frå lista konstantar
17B, a, k = konstantar
18
19        # lagar utskrift av funksjonen
20print(f"Funksjonen blir n(x) = {B:.0f}/(1+{a:.2f}e^(-{k:.2f}x)).")
21
22        # plottar data
23plt.plot(x_verdiar,y_verdiar,'.', label = "Målingar") 
24
25        # plottar modell
26x_array = np.linspace(min(x_verdiar),max(x_verdiar),300)
27y_array = modell(x_array,B,a,k)
28plt.plot(x_array,y_array,"brown", label = "Modell")
29plt.grid(True)
30plt.legend(bbox_to_anchor=(0.6,1))
31plt.xlabel("$x$, talet på år etter 1970") # tittel på x-aksen
32plt.ylabel("$y$, talet på løvetannplantar")
33plt.show()

Koden gir denne utskrifta:

"Funksjonen blir n(x) = 1675/(1+46.30e^(-0.58x))."

Grafen til ein logistisk funksjon kalla Modell er teikna for x-verdiar mellom 0 og 10. Grafen passar godt med punkta kalla Målingar som er utgangspunktet for funksjonen. Illustrasjon.

Kommentar til koden: I linje 12 har vi lagt til p0 = [max(y_verdiar),1,1] i kommandoen curve_fit. Dersom vi ikkje gjer det, feiler regresjonen. Tala max(y_verdiar), 1 og 1 er startverdiar for dei tre variablane B, a og k, som programmet bruker i dei numeriske berekningane for å komme fram til dei endelege verdiane for dei tre variablane. Jo rettare startverdiane er, jo større er sjansen for at dei numeriske berekningane blir vellykka.

max(y_verdiar) er eit godt val for startverdien til B fordi han plukkar ut den største y-verdien i målingane, og vi veit at i ein logistisk modell er B den øvre grenseverdien for funksjonen. For dei to andre parametrane a og k set vi berre startverdien lik 1, som er den automatiske startverdien for parametrar ved bruk av curve_fit.

FM-22

Talet på hjort har auka kraftig i eit område. Tabellen viser talet på hjort for enkelte år i perioden 1973–2003.

Talet på hjort

Årstal

1973

1976

1979

1983

1988

1993

1998

2003

Talet på hjort, N

500

840

1 350

2 250

3 500

4 300

4 700

4 900

a) Finn ein logistisk funksjon Nt som passar med tala i tabellen. La t stå for talet på år etter 1973.

Løysing

Vi skriv inn tala i tabellen inn i reknearkdelen i GeoGebra og reknar ut verdiane for t. Så vel vi verktøyet "Regresjonsanalyse" og regresjonsmodellen "Logistisk".

I den venstre delen er tala frå oppgåva lagde inn i reknearkdelen i GeoGebra. Den høgre delen viser regresjonsanalyseverktøyet med punkta frå reknearket og grafen til funksjonen y er lik 4987,6584 delt på parentes 1 pluss 9,1016 multiplisert med e opphøgd i minus 0,2027 x parentes slutt. Det er valt logistisk regresjonsmodell. Skjermutklipp.

Vi ser at grafen som kjem opp, passar godt til punkta. Den logistiske funksjonen som passar best med tala i tabellen, er

Nt=4 9881+9,10 e-0,203t

b) Teikn grafen til den logistiske funksjonen du fann i a), og punkta han er basert på, i det same koordinatsystemet.

Løysing

Vi kopierer grafen (inkludert punkta) frå regresjonsverktøyet over i grafikkfeltet.

Grafen til funksjonen N av t er lik 4988 delt på parentes 1 pluss 9,1 multiplisert med e opphøgd i minus 0,20 x parentes slutt er teikna for x-verdiar mellom 0 og 35. Grafen flatar ut når x blir stor. Punkta som funksjonen er danna av, er markerte. Illustrasjon.

c) Kva er bereevna til hjortebestanden i dette området?

Løysing

Her må vi basere oss på modellen. Når t, vil e-0,203t0, nemnaren i funksjonen, gå mot 1, og talet på hjort vil gå mot talet i teljaren. Det er dette vi kallar bereevna for hjortebestanden.

Bereevna er 4 988 hjort etter modellen, noko vi rundar av til 5 000.

d) Når vaks hjortebestanden raskast, og kor raskt vaks han då?

Løysing

Vi må finne vendepunktet til funksjonen, og vi bruker CAS.

CAS-utrekning med GeoGebra. På linje 1 er det skrive N dobbeltderivert av t er lik 0. Svaret med "Løys" er eit stort, eksakt svar som vi forenklar på neste linje. På linje 2 er det skrive dollarteikn 1. Svaret med tilnærming er 10,89. På linje 3 er det skrive N dobbeltderivert av t er større enn 0. Svaret med "Løys" er eit stort, eksakt svar som vi forenklar på neste linje. Skjermutklipp.

Hjortebestanden vaks mest omtrent 11 år etter 1973, det vil seie i 1984, og då vaks bestanden med 253 dyr per år.

e) Kor mange hjort var det då hjortebestanden vaks raskast i forhold til bereevna?

Løysing
CAS-utrekning med GeoGebra. På linje 6 er det skrive N av 10,89 delt på 4988. Svaret med tilnærming er 0,5. Skjermutklipp.

Vi får at hjortebestanden var på halvparten av bereevna då han vaks raskast.

Vil det vere slik for alle logistiske modellar, trur du?

FM-23

Vi skal sjå litt meir på den generelle logistiske funksjonen

fx=B1+a·e-kx

Ved å analysere han kan vi få eit godt bilete på korleis ein logistisk modell fungerer. Vi føreset at konstantane a, k og B alle er større enn null slik dei er når det er snakk om vekst i ein bestand.

a) Bruk CAS og finn ut for kva x-verdi funksjonen veks raskast. Kor stor er veksten då?

Løysing
CAS-utrekning med GeoGebra. På linje 1 er det skrive f av x kolon er lik B delt på parentes parentes a multiplisert med e opphøgd i minus k x parentes slutt pluss 1 parentes slutt. Svaret er det same. På linje 2 er det skrive f dobbeltderivert av x er lik 0. Svaret med "Løys" er x er lik l n parentes a parentes slutt delt på k. På linje 3 er det skrive f trippelderivert av parentes l n parentes a parentes slutt delt på k parentes slutt. Svaret er minus 1 åttandedels B multiplisert med k i tredje. På linje 4 er det skrive f derivert av parentes l n parentes a parentes slutt delt på k parentes slutt. Svaret er 1 fjerdedels B k. Skjermutklipp.

Vi får at grafen til f veks mest når x=lnak, og då veks han med 14Bk per eining på x-aksen. Det betyr at for alle logistiske modellar kan vi finne når veksten er størst, og kor stor han er, ved å bruke resultata i linje 2 og linje 4.

For å sjekke at nullpunktet til den dobbeltderiverte faktisk er eit vendepunkt, kan vi ikkje løyse ulikskapen f''x>0 slik vi vanlegvis ville ha gjort fordi GeoGebra ikkje veit at konstantane a, k og B er positive slik føresetnaden er. Det vi kan gjere, er å bruke den trippelderiverte funksjonen. Eit vendepunkt er eit ekstremalpunkt for den deriverte. Då kan vi bruke dobbeltderiverttesten på den deriverte (altså den trippelderiverte til f) for å sjekke om det er eit toppunkt eller eit botnpunkt for den deriverte. Vi ser av linje 3 at den trippelderiverte er negativ, som betyr at grafen til den deriverte vender den hole sida ned. Dette viser at den deriverte har eit toppunkt der, og vi har vist at veksten er størst der.

b) Dersom fx er talet på individ i ein bestand, kor mange individ er det når bestanden veks raskast?

Løysing
CAS-utrekning med GeoGebra. På linje 5 er det skrive f av parentes l n parentes a parentes slutt delt på k parentes slutt. Svaret er ein halv B. Skjermutklipp.

Sidan B er den verdien funksjonen går mot når x, det vi kallar bereevna, er talet på individ når funksjonen veks raskast, lik halve bereevna.

c) Er det mogleg å løyse oppgåve a) og b) ved rekning for hand? Gjer eit forsøk!

Løysing

Vi startar med å derivere funksjonen to gonger.

fx = B1+a·e-kxf'x = 1+a·e-kx·0-B·a·-ke-kx1+a·e-kx2= akBe-kx1+a·e-kx2f''x = 1+a·e-kx2·akB·-ke-kx-akBe-kx·21+a·e-kx·a-ke-kx1+a·e-kx4= -ak2Be-kx1+a·e-kx2+2a2k2Be-kx1+a·e-kxe-kx1+a·e-kx4=ak2Be-kx1+a·e-kx-1+a·e-kx+2ae-kx1+a·e-kx4 3= ak2Be-kxae-kx-11+a·e-kx3

Kommentar: I tredje linje i utrekninga av f'' har vi sett uttrykket ak2Be-kx1+a·e-kx utanfor parentes.

Når funksjonen er mål på ein bestand, er konstantane a, k og B positive. Det betyr til dømes at nemnaren i den dobbeltderiverte alltid er positiv.

Så må vi finne nullpunkta til den dobbeltderiverte.

f''x = 0ak2Be-kxae-kx-11+a·e-kx3 = 0ak2Be-kxae-kx-1 = 0ae-kx-1 = 0ae-kx = 1lne-kx = ln1a=lna-1=-lna-kx = -lnax = lnak

I løysinga har vi enkelt kvitta oss med nemnaren og uttrykket framfor parentesen i teljaren sidan begge desse ikkje kan vere null. Vi må no sjekke at løysinga faktisk er x-koordinaten til eit vendepunkt. Det er slitsamt å skulle derivere éin gong til for hand slik vi gjorde enkelt med CAS. Vi prøver å løyse ulikskapen f''0>0 slik vi vanlegvis gjer i staden.

f''x > 0ak2Be-kxae-kx-11+a·e-kx3 > 0ak2Be-kxae-kx-1 > 0ae-kx-1 > 0ae-kx > 1lne-kx > ln1a=lna-1=-lna-kx > -lnax < lnak

Kommentar til løysinga: Sidan dei tre konstantane a, k og B alle er større enn null, veit vi at vi kan dele med dei utan å måtte snu ulikskapsteiknet i overgangen mellom tredje og fjerde linje.

Vi får altså at grafen vender den hole sida si opp på venstresida av nullpunktet og motsett på høgre side, som vi forventa. Då veit vi at løysinga er x-koordinaten til eit vendepunkt, og vidare at grafen vil stige raskast her.

Til slutt må vi rekne ut f'lnak og flnak.

f'lnak = akBe-klnak1+ae-klnak2=akBelna-11+aelna-12= akBa-11+aa-12=kB1+12= kB4

flnak = B1+ae-klnak= B1+aa-1= B2

FM-24

Utforsk den generelle logistiske funksjonen

fx=B1+a·e-kx

med GeoGebra ved å lage glidarar for konstantane a, k og B. Korleis blir grafen til f påverka når du endrar på konstantane?

CC BY-SASkrive av Stein Aanensen, Olav Kristensen og Bjarne Skurdal.
Sist fagleg oppdatert 10.12.2023

Læringsressursar

Matematiske modellar