Unik tentauppgift med egenvektorer
Hej! Jag har arbetat igenom alla rekommenderade uppgifter i boken, och här kommer en tentauppgift som för mig är helt främmande från det jag gjort i boken. En helt ny typ av uppgift, och som ni förstår så fanns inga räkneexempel på detta. Jag misstänker att det är en uppgift om egenvektorer (som jag nyligen gått igenom), men jag förstår inte hur jag ska applicera det här.

Det blir någon sorts rekursion. Om är andelen människor som bor i storstad år och är antalet som bor på landsbygden så säger texten alltså att
Sedan ger den näst sista meningen initialvillkor. Troligvis kommer och konvergera mot några tal, vilket vi ska finna. Det kan vara svårt att inse vad man ska göra med denna rekursion, det är ju trots allt två följder som interagerar med varandra. Nedan finns en ledtråd
Visa spoiler
Skriv rekursionen på vektorformat där är en matris ochWrappade ekvationerna i \displaystyle för att göra dem större /naytte
Okej, har hört ordet "rekursion" kanske en gång. Att sen kunna lösa den uppgiften, efter det lilla känns lite väl. Vet ni någon video eller så, där området gås igenom?
Markovkedja?
Rekursion i det här fallet innebär helt enkelt att du använder förra årets värden på och för att räkna ut nästkommande års värden. Uppgiften antyder att det finns något slags stationärt tillstånd där befolkningsandelarna slutar förändras efter tid. Nedan följer ett snabbt script i Python som illustrerar principen:
Numerisk lösning för att illustrera principen
def next(a: float, b: float) -> tuple[float, float]:
return 0.9 * a + 0.3 * b, 0.1 * a + 0.7 * b
def recursion(initial_v: tuple[float, float], n: int) -> tuple[float, float]:
a, b = initial_v
for _ in range(n):
a, b = next(a, b)
return a, b
Notera att och ständigt används för att beräkna och och hur initialvillkoret användes för att påbörja rekursionen. Vi kan alltså se rekursionen som en funktion . Andelarna efter lång tid hittas genom att köra rekursionen länge, tills vi har de stationära värdena.
Notera vad som händer om vi kör några exempel:
>>> af, bf = recursion(initial_v = (0.4, 0.6), n = 1)
>>> print(f"a = {af}, b = {bf}")
a = 0.54, b = 0.45999999999999996
...
>>> af, bf = recursion(initial_v = (0.4, 0.6), n = 2)
>>> print(f"a = {af}, b = {bf}")
a = 0.624, b = 0.37599999999999995
...
>>> af, bf = recursion(initial_v = (0.4, 0.6), n = 7)
>>> print(f"a = {af}, b = {bf}")
a = 0.7402022400000001, b = 0.25979775999999993
...
>>> af, bf = recursion(initial_v = (0.4, 0.6), n = 50)
>>> print(f"a = {af}, b = {bf}")
a = 0.7499999999971712, b = 0.2500000000028289
...
>>> af, bf = recursion(initial_v = (0.4, 0.6), n = 100)
>>> print(f"a = {af}, b = {bf}")
a = 0.75, b = 0.25
Som du ser kommer vi närmare och närmare andelarna och .
Jag borde lära mig Python en dag. Det ser trevligt ut.
MMA:

Emot slutet visas egenvärdet 1 med egenvektorn (3,1) vilket ger det önskade förhållandet.
Initialvektorn är ointressant.
Men, boken kanske har en annan tanke bakom det, så studera den metod som boken lär ut.