Dynamic System Model: Learn Steps to Solve Homework Problem

In summary, the given conversation discusses a problem involving a conservationist studying a colony of endangered variable oyster-catchers. The problem involves determining the dynamic system model for the colony's population, finding the state vector after one year, and calculating the long term ratio of chicks to adults using eigenvalues and eigenvectors. The conversation also includes a step-by-step solution attempt involving matrix calculations and the use of MATLAB.
  • #1
Philip Wong
95
0

Homework Statement


I'm trying to learn the dynamic system model, I was given the following problem to work with. Can someone give me a walk through of did I did right or wrong?

Situation:
A conservationist is studying a colony of endangered variable oyster-catchers. Birds that are chicks one year will form adult breeding pairs the following year. The probability of a chick surviving to become an adult is 0.3. The probability an adult will survive to breed another year is 0.5. Each year a breeding pair produce on average 2.2 chicks (that is a breeding rate of 1.1 per adult). Initially there are 80 chicks and 20 adult birds.

a) Represent this situation by a dynamic system model of the form Xn = A^n X0. You must find matrix A and the initial state vector X0.

b) Find X1, the state vector representing the oyster-catcher colony 1 year later.

c) Find all eigenvalues of matrix A in part (a)

d) By finding the eigenvector corresponding to the numerically largest eigenvalue, estimate the long term ratio of chicks:adults. Hint: If landa is an eigenvalue of matrix A with eigenvector v then A^n v = landa^n v

e) Long-term, is this colony of oyster-catchers likely to survive?
2. Known equation
A - landa I (to find eigenvalue and eigenvector)
|A-landa I| = 0 (to find eigenvector and eigenvalue)
AX0=c1Av1+c2Av2 (to find the rate of change after x time)

The Attempt at a Solution


a) Chicks n+1 = 0 chicks n + 1.1 adults n
Adults n+1 = 0.3 chicks n + 0.5 adults n
where X0 = (80; 20)
So A= Xn+1 = (0, 1.1; 0.3, 0.5)(chicks n; adult n)
therefore Xn = A^n X0 = (0, 1.1; 0.3, 0.5)(80; 20)

b)
At first I tried to find the eigenvector and eigenvalue by hand, then implied it to the equation A = VDV^-1 to find the value for the long term run. Below is my steps:
A-landa I:
(0, 1.1; 0.3, 0.5) - landa (1, 0; 0 1) = (0-landa, 1.1; 0.3, 0.1-landa]

det (A-landa I) = 0:
(-landa)(0.1-landa)-0.33 = 0
expand it: landa^2 - 0.1landa - 0.33 =0
factories: I have got into some trouble factoring with decimal points, so I used MATLAB to get the eigenvector and eigenvalue which gives:
a =

0 1.1000
0.3000 0.5000

>> [v,d]=eig(a)

v =

-0.9461 -0.7821
0.3238 -0.6232


d =

-0.3765 0
0 0.8765

So landa1 = -0.3765, landa 2 = 0.8765

there I put these numbers into the following equation to work out X1 (after one year):
X0 = c1*landa 1*v1 + c2*landa 2*v2
= c1 *(-0.9491; 0.3238) + c2 *(-0.7821; -0.6232)
= c1 * -0.3765 * (-0.9491; 0.3238) + c2 * 0.8765 *(-0.7821; -0.6232)
Since X0 = (80;20)
So X1 = 80 * -0.3765 * (-0.9491; 0.3238) + 20 * 0.8765 *(-0.7821; -0.6232)

This is the part where I got completely stuck, I knew I did something wrong, I've read the textbook over and over again. But I can't find a solution of where I did wrong, and so I couldn't do the next part. can somebody please help?!
 
Physics news on Phys.org
  • #2
In b) you only need to calculate the population after one year, i.e. with n = 1 calculate x1 = A1 x0 = A x0. No need for eigenvalues yet.

Also, your characteristic equation (before you start using matlab) is not entirely correct.
 
  • #3
Filip Larsen said:
In b) you only need to calculate the population after one year, i.e. with n = 1 calculate x1 = A1 x0 = A x0. No need for eigenvalues yet.

Also, your characteristic equation (before you start using matlab) is not entirely correct.

what do you mean by "Also, your characteristic equation (before you start using matlab) is not entirely correct."?
 
  • #4
Philip Wong said:
what do you mean by "Also, your characteristic equation (before you start using matlab) is not entirely correct."?

Just before you turn to matlab, you write the equation "landa^2 - 0.1landa - 0.33 =0", but the 0.1 should have been 0.5. I cannot see if this is a typo so I thought I would just mention it in case you went back to solving for the eigenvalues manually (its good to check with matlab, but you should have no trouble calculating the values manually too by solving the characteristic equation).

And, just for your information, the Greek letter is called lambda, not landa.
 
  • #5
yes whenever I'm doing excerise or pratice I always do the question first manually before I check it with matlab, the only time I don't do manually it anymore is when I got so used to working with those type of questions that I could mentally think the answer out, and then I check it with matlab. And yes it was I typo, ahaha! It is 0.5 instead of 0.1
 
Last edited:
  • #6
Filip Larsen said:
In b) you only need to calculate the population after one year, i.e. with n = 1 calculate x1 = A1 x0 = A x0. No need for eigenvalues yet.

Also, your characteristic equation (before you start using matlab) is not entirely correct.

x1 = A1 x0 = A x0
So x1= C1(-0.3765)^1(-0.8481; 0.3238) + C2(0.8765)^1(-0.7821;-0.6232)

but since lambda 2 is the domain value it will over-run lambda 1 in the long term, therefore the state vector after 1 year will be 0.8765xk?

or did I think too much, the state vector is simply :
x1= C1(-0.3765)^1(-0.8481; 0.3238) + C2(0.8765)^1(-0.7821;-0.6232)
 
  • #7
If this is for b) then you are still getting ahead of yourself. You only need to perform a simple matrix multiplication of A and x0 to get x1. In this model this is, by definition, how the state for one generation is advanced to the state for the next generation. If you were to calculate, say, the 10th generation you would have to do the multiplication 10 times to get to x10. By the way, it can be instructive to plot how the state develops over time, especially in order to prepare yourself for part d) and e).
 
  • #8
Filip Larsen said:
If this is for b) then you are still getting ahead of yourself. You only need to perform a simple matrix multiplication of A and x0 to get x1. In this model this is, by definition, how the state for one generation is advanced to the state for the next generation. If you were to calculate, say, the 10th generation you would have to do the multiplication 10 times to get to x10. By the way, it can be instructive to plot how the state develops over time, especially in order to prepare yourself for part d) and e).

aha! so x1 = [0 1.1; 0.3 0.5] *[80 20]
so say if I want to work out 10, would I do this:
[0^10,1.1; 0.3,0.5^10]*[80,20]
 
  • #9
Philip Wong said:
aha! so x1 = [0 1.1; 0.3 0.5] *[80 20]

Yes.

so say if I want to work out 10, would I do this:
[0^10,1.1; 0.3,0.5^10]*[80,20]

No. The definition of your model really says xi+1 = A xi, that is, to get state for generation i+1 you matrix multiply A with the state vector for generation i, i.e. the previous generation. So, if you know x9 you can calculate x10 = A x9, but since x9 likewise can be written based on the state vector for the previous generation you also have x9 = A x8 which can be inserted into the equation for x10 to give x10 = A (A x8) = (A A) x8, the last step because matrix multiplication is commutative. If you continue replacing x in this fashion until you get to to x0 you arrive at x10 = (A A ... 10 times ... A) x0 = A10 x0. Just like with scalar numbers, you can think of the (integer) power of a matrix as a shorthand notation of simply multiplying out the matrix as many times as the power says.

Your questions seem to indicate you have missed something fundamentally somewhere in your textbook. If the above explanation is all news to you, I recommend that you take some time to read up on the parts in your textbook that are relevant for this problem or you will most likely have a very tough time understanding the eigenvalues and eigenvectors.
 
  • #10
Filip Larsen said:
Yes.
No. The definition of your model really says xi+1 = A xi, that is, to get state for generation i+1 you matrix multiply A with the state vector for generation i, i.e. the previous generation. So, if you know x9 you can calculate x10 = A x9, but since x9 likewise can be written based on the state vector for the previous generation you also have x9 = A x8 which can be inserted into the equation for x10 to give x10 = A (A x8) = (A A) x8, the last step because matrix multiplication is commutative. If you continue replacing x in this fashion until you get to to x0 you arrive at x10 = (A A ... 10 times ... A) x0 = A10 x0. Just like with scalar numbers, you can think of the (integer) power of a matrix as a shorthand notation of simply multiplying out the matrix as many times as the power says.

Your questions seem to indicate you have missed something fundamentally somewhere in your textbook. If the above explanation is all news to you, I recommend that you take some time to read up on the parts in your textbook that are relevant for this problem or you will most likely have a very tough time understanding the eigenvalues and eigenvectors.

ar for the x10 I think I skip a bit too much steps along the way. When I think about it again now, if I want to get the x10 I would use diagnolisation and symmetry.
so for x10 would I do the following?
A = VDV^-1
[0 1.1; 0.3 0.5]^10 =
[-0.9461,-0.7821; 0.3238,-0.6232]*[-0.3765^10, 0; 0,0.8765^10]*[-0.7394, 0.9279; -0.3842, -1.1225]

which gives:
[0.0805, 0.2349; 0.0641, 0.1872]

since X10 = A^10 x0, then:
[0.0805, 0.2349; 0.0641, 0.1872]*[80;20]

which gives:
11.1340
8.8692

is this correct?
 
  • #11
That is correct.
 
  • #12
yay! thanks for your help
 

1. What is a dynamic system model?

A dynamic system model is a mathematical representation of a system that changes over time. It uses differential equations to describe the relationship between the system's inputs, outputs, and internal states.

2. How do you solve a homework problem using a dynamic system model?

To solve a homework problem using a dynamic system model, you first need to understand the problem and identify the relevant variables. Then, you can set up the differential equations that describe the system and solve them using mathematical methods such as integration or numerical techniques.

3. What are the steps involved in solving a homework problem using a dynamic system model?

The steps involved in solving a homework problem using a dynamic system model include understanding the problem, identifying relevant variables, setting up differential equations, solving the equations using mathematical methods, and interpreting the results in the context of the problem.

4. What are some common applications of dynamic system models?

Dynamic system models are used in a variety of fields, including physics, engineering, economics, and biology. They are commonly used to study and predict the behavior of complex systems, such as weather patterns, economic markets, and biological processes.

5. What are the advantages of using a dynamic system model?

Using a dynamic system model allows for a more thorough understanding and analysis of complex systems. It also allows for predictions and simulations of how the system will behave under different conditions. Dynamic system models can also help identify key factors and variables that influence the system's behavior.

Similar threads

  • Calculus and Beyond Homework Help
Replies
3
Views
3K
  • Linear and Abstract Algebra
Replies
2
Views
2K
Back
Top