Skillnad mellan versioner av "Fibonaccis talföljd"

Från Mathonline
Hoppa till: navigering, sök
m
m
Rad 35: Rad 35:
 
<table>
 
<table>
 
<tr>  
 
<tr>  
<td><big><big><b><span style="color:red">Mönster</span></b> för bildningen av Fibonaccis talföljd, <br><br> även kallad <b>Fibonaccitalen:</b></big></big> <br><br> <div class="border-divblue">
+
<td><big><big><b><span style="color:red">Fibonaccis talföljd är varken aritmetisk eller geometrisk. <br><br> Mönstet</span></b> för bildningen av talföljden är snarare:</b></big></big> <br><br> <div class="border-divblue">
 
<big><b>Summan av två på varandra följande <br> fibonaccital ger nästa fibonaccital.</b></big>
 
<big><b>Summan av två på varandra följande <br> fibonaccital ger nästa fibonaccital.</b></big>
 
</div>
 
</div>

Versionen från 30 juni 2024 kl. 17.05

       <<  Förra avsnitt]          Genomgång          Övningar          Nästa avsnitt  >>      


Problemet

Fib Problemet.jpg


Formuleringen "Samma gäller för de nya paren." ger upphov till ett mönster som

upprepas. Man återvänder till något som redan gjorts: ett känt förlopp upprepas.

Man kallar det för ett "rekursivt" problem. Rekursionen används vid problemets lösning.

Ordet rekursion kommer från det latinska recurrere och betyder att köra igen.


Fibonaccis talföljd


Fibonaccis talföljd är varken aritmetisk eller geometrisk.

Mönstet
för bildningen av talföljden är snarare:</b>


Summan av två på varandra följande
fibonaccital ger nästa fibonaccital.

\( \qquad\qquad\qquad \) FibonacciBildb.jpg


Fibonaccis rekursionsformel

FibonacciRekFormel.jpg


Mer utförligt om om Fibonacciproblemet kan du läsa här.

Fibonaccis rekursionsformel kan direkt tas över till följande pythonprogram:


Fibonaccis talföljd

Ett exempel på problem som med fördel kan modelleras med diskreta funktioner är följande uppgift som den italienske matematikern Leonardo Pisano Fibonacci år 1202

formulerade i sin bok Liber abaci (Boken om räknekonsten). Uppgiften handlar om kaniners fortplantning:

Ett kaninpar föder från den andra månaden av sin tillvaro

ett nytt par varje månad. Samma gäller för de nya paren.

Hur många par kommer det att finnas om ett år?

De två första månaderna finns det \( \, {\color{Red} 1} \, \) kaninpar. De föder sitt första barnpar först efter 2 månader dvs i månad nr 3, varför det finns \( \, {\color{Red} 2} \, \) kaninpar i månad 3.

I månad 4 föder det första paret sitt andra barnpar, varför det finns \( \, {\color{Red} 3} \, \) par i månad 4. I månad 5 föder det första paret sitt tredje barnpar, men även deras

första barnpar föder ett nytt par, eftersom det har gått 2 månader sedan deras födelse. Därför finns det \( \, {\color{Red} 5} \, \) par i månad 5 osv. \( \cdots \).

Praktiskt taget blir det allt svårare att hålla reda på kaninpopulationen när tiden går. Antalet kaninpar för varje månad bildar en s.k. talföljd som kallas för:

Fibonaccitalen \( \qquad {\color{Red} 1}, \; {\color{Red} 1}, \; {\color{Red} 2}, \; {\color{Red} 3}, \; {\color{Red} 5}, \; {\color{Red} 8}, \; {\color{Red} {13}}, \; {\color{Red} {21}}, \; \ldots \quad \)

Undersöker man denna talföljd noga kan man upptäcka följande mönster:

Mönster för fibonaccitalen:

Summan av två på varandra följande fibonaccital ger nästa fibonaccital.


Vi kan använda detta mönster för att bygga en algoritm för beräkning av fibonaccitalen.

En algoritm är ett specificerat tillvägagångssätt för att lösa ett problem. Läs här mer om algoritmer.

Ännu smartare är det att anlita digitala verktyg för att låta datorn göra jobbet. T.ex. lämpar sig kalkylprogrammet Excel utmärkt för en sådan beräkning.


Algoritm för fibonaccitalen i Excel

Följande algoritm beskriver hur man kan använda Excel för att låta datorn beräkna fibonaccitalen:

I övning 6 kommer du att behöva använda denna algoritm för att låta datorn beräkna de första \( \, 24 \, \) fibonaccitalen.

Här är de \( \, 12 \, \) första fibonaccitalen beräknade:

Antal månader Antal kaninpar
\( {\color{Red} 1}\, \) \( 1\, \)
\( {\color{Red} 2}\, \) \( 1\, \)
\( {\color{Red} 3}\, \) \( 2\, \)
\( {\color{Red} 4}\, \) \( 3\, \)
\( {\color{Red} 5}\, \) \( 5\, \)
\( {\color{Red} 6}\, \) \( 8\, \)
\( {\color{Red} 7}\, \) \( 13\, \)
\( {\color{Red} 8}\, \) \( 21\, \)
\( {\color{Red} 9}\, \) \( 34\, \)
\( {\color{Red} {10}}\, \) \( 55\, \)
\( {\color{Red} {11}}\, \) \( 89\, \)
\( {\color{Red} {12}}\, \) \( 144\, \)
          Med denna värdetabell kan vi rita grafen

          till höger som illustrerar fibonaccitalens

          snabba tillväxt. Den horisontella axeln

          visar antal månader och den vertikala

          antal kaninpar.

         

         

         

         

         

          Fibonaccitalen bildar en diskret funktion

          därför att dess definitionsmängd är heltal,

          bestående av månaderna \( \, {\color{Red} 1}\)-\({\color{Red} {12}}\).

          Fil:Fibonacci 465p.jpg

Som man ser ökar kaninpopulationen ganska fort, så att vi nu äntligen kan besvara den inledande frågan:

Det kommer att finnas \( \, 144 \, \) kaninpar om ett år.


Fibonaccis funktion

När vi beräknade fibonaccitalen konstaterade vi redan att de bildar en funktion. Vi beräknade värdetabellen och ritade även grafen till denna funktion. Men vad är dess formel? För att kunna formulera formeln inför vi följande beteckningar:

\[ n \, = \, {\rm Antalet\;månader} \]
\[ F(n)\, = \, {\rm Antalet\;kaninpar\;i\;månaden} \, n \]

De första två fibonaccitalen tar vi från värdetabellen ovan. Det är \( \, 1 \, \) och \( \, 1 \, \). Resten \(-\) Fibonaccis funktion som följer \(-\) är en översättning till matematiskt språk av det mönster vi upptäckte tidigare och lade till grund för beräkningsalgoritmen:


Fibonaccis rekursionsformel

\( F(n) \; = \; \begin{cases} 1 & \mbox{om} \quad n = 1 \\ 1 & \mbox{om} \quad n = 2 \qquad\qquad n \quad\mbox{heltal} \\ F(n-1) \; + \; F(n-2) & \mbox{om} \quad n = 3,\,4,\,5,\,\cdots \\ \end{cases} \)


Så här brukar man skriva för att för en och samma funktion definiera olika uttryck i olika delar av dess definitionsmängd. Kanske blir det enklare att förstå definitionen ovan om vi skriver den på följande förenklat sätt:

\[\begin{array}{rcl} F(1) & = & 1 \\ F(2) & = & 1 \\ F(n) & = & F(n-1) \; + \; F(n-2) \qquad \mbox{om} \quad n = 3,\,4,\,5,\,\cdots \end{array}\]

De första raderna i definitionen ovan säger att de första två fibonaccitalen är \( \, 1 \, \) och \( \, 1 \). Den andra raden säger att det \( \, n\)-te fibonaccitalet är summan av de två föregående, vilket är mönstret vi upptäckte tidigare.


Fibonaccifunktionens egenskaper

Egenskapen att vara en diskret hade vi redan konstaterat för Fibonaccis funktion. Detta pga dess definitionsmängd var heltal: antalet kaninpar.

En annan intressant egenskap är att Fibonaccis funktion är rekursiv, vilket betyder att den i sin definition anropar sig själv, genom att ett värde beräknas med hjälp av föregående värden. För att se detta titta på raden i definitionen:

\[ F(n) \; = \; F(n-1) \; + \; F(n-2) \]

I en vanlig funktion står \( F(n) \, \) till vänster om likhetstecknet och den oberoende variabeln \( n \, \) till höger. Men här står \( \, F(n) \, \) på båda sidor likhetstecknet, fast för olika månader (= argument). För att beräkna ett fibonaccital måste man känna till de två föregående. Men eftersom vi har de två första \( F(1) = 1 \, \) och \( F(2) = 1 \, \), s.k. startvärden, kan vi beräkna alla andra successivt dvs rekursivt utgående från dessa startvärden. Att \( F(n) \, \) anropas på båda sidor likhetstecknet är just den rekursiva egenskapen. Därav namnet Fibonaccis rekursionsformel.

Fibonaccis funktion har många intressanta kopplingar till andra delar inom matematiken. En av dem är sambandet mellan fibonaccitalen och det s.k. gyllene snittet se övning 6. En annan är följande vacker formel som upptäcktes först 1718 \(-\) mer än 500 år senare än själva fibonaccitalen \(-\) och som ger oss möjligheten att direkt beräkna vilket fibonaccital som helst utan att känna till något föregående fibonaccital:


Explicit formel för fibonaccitalen

\( \displaystyle F(n) \; = \; {1\over\sqrt{5}}\,\left({1+\sqrt{5}\over 2}\right)^n\,-\;{1\over\sqrt{5}}\,\left({1-\sqrt{5}\over 2}\right)^n\; , \qquad n \;\mbox{heltal } \geq 1 \)


I övning 11 får du till uppgift att bevisa den, vilket görs genom att visa att den uppfyller rekursionsformeln. Den är i själva verket lösningen till rekursionsformeln när denna uppfattas och behandlas som en differensekvation \(-\) något som studeras inom Diskret matematik.








Copyright © 2024 Lieta AB. All Rights Reserved.