Matrix recursies

Moderators: ArcherBarry, Fuzzwood

Berichten: 89

Matrix recursies

Stel ik heb een recursie:

q(n+1) = P q(n), met P een matrix.

Gegeven q(0), hoe bepaal ik q(oneindig), d.w.z. de evenwichtssituatie?

Gebruikersavatar
Berichten: 24.578

Re: Matrix recursies

Je ziet al snel:

q(1) = P.q(0)

q(2) = P.q(1) = P.(P.q(0)) = P².q(0)

q(3) = ... = P³.q(0)

Om te zien hoe P zich gaat gedragen, kan je P bijvoorbeeld diagonaliseren (indien mogelijk).

De exponent komt dan enkel boven de diagonaalmatrix, dus boven de elementen daarvan.
"Malgré moi, l'infini me tourmente." (Alfred de Musset)

Berichten: 89

Re: Matrix recursies

Dat begrijp ik. De vraag is alleen: hoe bereken ik P^(oneindig) q(0)? Ik heb bijvoorbeeld een opgave die als volgt gaat:

P is de matrix met rijvectoren (0,5000,10000), (0.0001,0,0) en (0,0.5,0)

q(0) is de vector (0,500,0). Hoe bepaal ik de uiteindelijke (evenwichts)situatie?

Gebruikersavatar
Berichten: 24.578

Re: Matrix recursies

Hoe bepaal ik de uiteindelijke (evenwichts)situatie?
Zoals ik daarna zei: dat kan door diagonalisatie van de matrix. Of dat de eenvoudigste methode is, weet ik niet...

Heb je in het kader van deze theorie of oefeningen geen (eventueel andere) methode gezien om dit aan te pakken?
"Malgré moi, l'infini me tourmente." (Alfred de Musset)

Berichten: 89

Re: Matrix recursies

TD schreef:Zoals ik daarna zei: dat kan door diagonalisatie van de matrix. Of dat de eenvoudigste methode is, weet ik niet...

Heb je in het kader van deze theorie of oefeningen geen (eventueel andere) methode gezien om dit aan te pakken?


Nee, ik heb geen methode gezien hoe ik dit aan moet pakken. Zou je de diagonalisatiemethode willen uitleggen? Het zal wel een bekende methode zijn, dus ik vind het prima!

Gebruikersavatar
Berichten: 24.578

Re: Matrix recursies

Weet je wat het diagonaliseren van een matrix is? Jouw probleem kan er namelijk wel handig van gebruik maken, maar het is iets dat op zich bestaat en een hele uitleg zou vragen als je het nog niet kent. Ben je al bekend met eigenwaarden en eigenvectoren?

Als dit je allemaal niets zegt, lijkt het me in elk geval niet de bedoeling dat je dit op die manier zou moeten oplossen...
"Malgré moi, l'infini me tourmente." (Alfred de Musset)

Berichten: 89

Re: Matrix recursies

TD schreef:Weet je wat het diagonaliseren van een matrix is? Jouw probleem kan er namelijk wel handig van gebruik maken, maar het is iets dat op zich bestaat en een hele uitleg zou vragen als je het nog niet kent. Ben je al bekend met eigenwaarden en eigenvectoren?

Als dit je allemaal niets zegt, lijkt het me in elk geval niet de bedoeling dat je dit op die manier zou moeten oplossen...
Ja, je kunt de diagonaalmatrix D van matrix A als volgt bepalen:

D=P^-1 A P, waarbij D de diagonaalmatrix is, P de matrix waarin de kolomvectoren bestaan uit de eigenvectoren van A en P^-1 de inverse daarvan... Is de diagonaalmatrix de oplossing?

Gebruikersavatar
Berichten: 24.578

Re: Matrix recursies

Nog niet helemaal, maar wel bijna. Het voordeel is dat de macht enkel boven de diagonaalmatrix komt te staan. En een diagonaalmatrix tot een macht n, is gewoon elk van de elementen tot die macht. Alle elementen die (in absolute waarde) kleiner zijn dan 1, zullen voor grote machten naar 0 gaan. Zo kun je het gedrag "op oneindig" gaan bepalen.
"Malgré moi, l'infini me tourmente." (Alfred de Musset)

Berichten: 89

Re: Matrix recursies

Nog niet helemaal, maar wel bijna. Het voordeel is dat de macht enkel boven de diagonaalmatrix komt te staan. En een diagonaalmatrix tot een macht n, is gewoon elk van de elementen tot die macht. Alle elementen die (in absolute waarde) kleiner zijn dan 1, zullen voor grote machten naar 0 gaan. Zo kun je het gedrag "op oneindig" gaan bepalen.


Dat snap ik dan nog even niet, want moet ik dan alle getallen, waarvan de absolute waarde kleiner is dan 1 nul maken. En de andere getallen hetzelfde laten? Die moeten toch niet tot de macht oneindig? Want volgens mij is dat oneindig. Dat lijkt me dan niet de goede oplossing!

Berichten: 4.246

Re: Matrix recursies

Dat snap ik dan nog even niet, want moet ik dan alle getallen, waarvan de absolute waarde kleiner is dan 1 nul maken. En de andere getallen hetzelfde laten? Die moeten toch niet tot de macht oneindig? Want volgens mij is dat oneindig. Dat lijkt me dan niet de goede oplossing!

\( (PAP^{-1})^{\infty} = P AP^{-1} PAP^{-1} \cdot \cdot \cdot P AP^{-1} = P A A A \cdot \cdot \cdot P^{-1} = P A^{\infty} P^{-1} \)
Quitters never win and winners never quit.

Gebruikersavatar
Berichten: 24.578

Re: Matrix recursies

Dat snap ik dan nog even niet, want moet ik dan alle getallen, waarvan de absolute waarde kleiner is dan 1 nul maken. En de andere getallen hetzelfde laten? Die moeten toch niet tot de macht oneindig? Want volgens mij is dat oneindig. Dat lijkt me dan niet de goede oplossing!
Zie om te beginnen de verduidelijking van dirkwb in verband met enkel de exponent boven A.

Als je dus A diagonaal krijgt, dan komt de macht boven de diagonaalelementen, bvb element k.

Bij een k met |k|>1: dan zal dit divergeren, je gaat dus niet naar een evenwicht.

De k's met |k| = 1 gaan in norm 1 blijven, die gaan je evenwicht eventueel bepalen.

De k's met |k| < 1 gaan naar 0 bij hoge machten, die bijdragen verdwijnen dus.
"Malgré moi, l'infini me tourmente." (Alfred de Musset)

Berichten: 89

Re: Matrix recursies

TD schreef:Zie om te beginnen de verduidelijking van dirkwb in verband met enkel de exponent boven A.

Als je dus A diagonaal krijgt, dan komt de macht boven de diagonaalelementen, bvb element k.

Bij een k met |k|>1: dan zal dit divergeren, je gaat dus niet naar een evenwicht.

De k's met |k| = 1 gaan in norm 1 blijven, die gaan je evenwicht eventueel bepalen.

De k's met |k| < 1 gaan naar 0 bij hoge machten, die bijdragen verdwijnen dus.
Ik begrijp het nog steeds niet goed. Even helder op een rijtje:

Ik heb dus recursie q(n+1) = P q(n)

Directe formule is q(n) = P^n q(0)

Nu is P gegeven namelijk: {(0,5000,10000), (0.0001,0,0), (0,0.5,0)}

q(0) is gegeven namelijk: {(0,500,0)}

Nu de vraag wat is q(n) als n naar oneindig gaat?

Ik begin dus met het bepalen van de diagonaalmatrix D=A^-1 P A, waarin A de matrix met de eigenvectoren als kolommen is.

(sorry, ik heb met letters geknoeid zie ik!)

En dan heb ik de diagonaalmatrix. Hoe kom ik vervolgens, met behulp van q(0), die gegeven is, aan mijn eindantwoord? Gewoon heel concreet? Want ik moet q(0) natuurlijk nog wel ergens kwijt in dit verhaal. Dat heb ik volgens mij nog niet door... Moet ik vervolgens de gevonden diagonaalmatrix (nadat ik elk element tot de macht oneindig heb gedaan) nog vermenigvuldigen met q(0). Alvast bedankt weer!

Gebruikersavatar
Berichten: 24.578

Re: Matrix recursies

Je hebt q(0) pas op het einde nodig, eerst moet je P en D bepalen. Als je D hebt, kunt je daarvan de limiet bepalen (macht naar oneindig). Van de drie diagonaalelementen, zullen er twee naar 0 gaan (modulus kleiner dan 1); de laatste blijft over. Dan bepaal je ADA-1 en deze matrix "laat je los" op je beginvector q(0)...
"Malgré moi, l'infini me tourmente." (Alfred de Musset)

Berichten: 89

Re: Matrix recursies

Je hebt q(0) pas op het einde nodig, eerst moet je P en D bepalen. Als je D hebt, kunt je daarvan de limiet bepalen (macht naar oneindig). Van de drie diagonaalelementen, zullen er twee naar 0 gaan (modulus kleiner dan 1); de laatste blijft over. Dan bepaal je ADA-1 en deze matrix "laat je los" op je beginvector q(0)...
Oke, nog een keer helder op een rijtje:

Ik heb mijn beginmatrix P. Ik bepaal vervolgens D (m.b.v. A^-1 P A). Dan D tot de macht oneindig. Dan reken ik de "nieuwe" P uit (m.b.v. A D A^-1 (soort terugweg)) en die laat ik los op q(0). Volgens mij heb ik het door!?

Berichten: 89

Re: Matrix recursies

Even een praktisch probleem. Ik probeer alle stappen na te lopen, maar loop meteen al tegen een probleem aan. De opgave is als volgt:

In deze opgave bestuderen we een vispopulatie met 3 generaties. De

jongste generatie heeft een overlevingskans 0.0001 om van ei door te

groeien naar volwassen vis. Deze vormen de tweede generatie, de helft

ervan produceert elk (gemiddeld) 10000 eitjes en sterft, de andere helft

gaat door naar de derde generatie. Iedere vis die de derde generatie

bereikt produceert (gemiddeld) 10000 eitjes en sterft.

De recursiedie hier bij hoort, luidt q(n+1) = P q(n), met P een matrix.

De matrix P heb ik dus gegeven door: {(0,5000,10000), (0.0001,0,0) (0,0.5,0)}. Klopt dit?

Als ik hiervan de karakteristieke probeer op te lossen is lambda=1 mijn enige oplossing... Is er maar 1 eigenvector? Of klopt mat matrix P niet?

Reageer