1. mlli090.tex Seuraava kuva esittää kymmenen sivun internettiä.

Samankaltaiset tiedostot
mlgrafiikka 1. Piirrä samaan kuvaan funktioiden cos ja sin kuvaajat välillä [ 2π, 2π] Aloita tyyliin: 2. Piirrä

Palautukset mennessä. Tämä on viimeinen tehtäväsarja, täydennetty luvatuilla lisätehtävillä. Arvostelu: Tuplapisteet!

y = k 1 x + b 1, x < s y = k 2 x + b 2, x > s

mlvektori 1. Muista, että Jacobin matriisi koostuu vektori- tai skalaariarvoisen funktion F ensimmäisistä

mplperusteet 1. Tiedosto: mplp001.tex Ohjelmat: Maple, [Mathematica] Sievennä lauseke x 1 ( mplp002.tex (PA P1 s.2011)

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä.

Inversio-ongelmien laskennallinen peruskurssi Luento 3

Numeeriset menetelmät TIEA381. Luento 8. Kirsi Valjus. Jyväskylän yliopisto. Luento 8 () Numeeriset menetelmät / 35

MS-C1340 Lineaarialgebra ja

mlcurvefit 1. mlcf01.tex [Maple:../../mplteht/mplCurveFit/mplCF01.tex]

Matematiikka B2 - Avoin yliopisto

Ratkaisuehdotukset LH 8 / vko 47

Muuttujan sisällön näet kirjoittamalla sen nimen ilman puolipistettä

. Kun p = 1, jono suppenee raja-arvoon 1. Jos p = 2, jono hajaantuu. Jono suppenee siis lineaarisesti. Vastaavasti jonolle r k+1 = r k, suhde on r k+1

MS-C1340 Lineaarialgebra ja differentiaaliyhtälöt

Matriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37

MS-C1340 Lineaarialgebra ja

Esimerkki 19. Esimerkissä 16 miniminormiratkaisu on (ˆx 1, ˆx 2 ) = (1, 0).

Tässä dokumentissa on ensimmäisten harjoitusten malliratkaisut MATLABskripteinä. Voit kokeilla itse niiden ajamista ja toimintaa MATLABissa.

Matriisiteoria Harjoitus 1, kevät Olkoon. cos α sin α A(α) = . sin α cos α. Osoita, että A(α + β) = A(α)A(β). Mikä matriisi A(α)A( α) on?

MS-C1340 Lineaarialgebra ja differentiaaliyhtälöt

Harjoitus Tarkastellaan luentojen Esimerkin mukaista työttömyysmallinnusta. Merkitään. p(t) = hintaindeksi, π(t) = odotettu inflaatio,

MS-C1340 Lineaarialgebra ja

Laskennallinen data-analyysi II

Yhtälöryhmä matriisimuodossa. MS-A0007 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Numeeriset menetelmät TIEA381. Luento 6. Kirsi Valjus. Jyväskylän yliopisto. Luento 6 () Numeeriset menetelmät / 33

Matriisit ovat matlabin perustietotyyppejä. Yksinkertaisimmillaan voimme esitellä ja tallentaa 1x1 vektorin seuraavasti: >> a = 9.81 a = 9.

MS-A0305 Differentiaali- ja integraalilaskenta 3 Luento 3: Vektorikentät

Lineaarialgebra ja differentiaaliyhtälöt Harjoitus 4 / Ratkaisut

z 1+i (a) f (z) = 3z 4 5z 3 + 2z (b) f (z) = z 4z + 1 f (z) = 12z 3 15z 2 + 2

Matriisihajotelmat. MS-A0007 Matriisilaskenta. 5.1 Diagonalisointi. 5.1 Diagonalisointi

Numeeriset menetelmät TIEA381. Luento 5. Kirsi Valjus. Jyväskylän yliopisto. Luento 5 () Numeeriset menetelmät / 28

Ominaisarvoon 4 liittyvät ominaisvektorit ovat yhtälön Ax = 4x eli yhtälöryhmän x 1 + 2x 2 + x 3 = 4x 1 3x 2 + x 3 = 4x 2 5x 2 x 3 = 4x 3.

1. Piirrä kompleksitasoon seuraavat matemaattiset objektit/alueet.

1. Viikko. K. Tuominen MApu II 1/17 17

Matriisilaskenta Laskuharjoitus 5 - Ratkaisut / vko 41

mlgrafiikka Aalto-yliopisto, Matematiikan ja Systeemianalyysin laitos

Johdatus tekoälyn taustalla olevaan matematiikkaan

MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 8: Newtonin iteraatio. Taso- ja avaruusintegraalit

MS-C1340 Lineaarialgebra ja differentiaaliyhtälöt

Matematiikan perusteet taloustieteilijöille II Harjoituksia kevät ja B = Olkoon A = a) A + B b) AB c) BA d) A 2 e) A T f) A T B g) 3A

5 Differentiaaliyhtälöryhmät

MS-A0004/A0006 Matriisilaskenta

ja B = 2 1 a) A + B, b) AB, c) BA, d) A 2, e) A T, f) A T B, g) 3A (e)

Harjoitus 1: Matlab. Harjoitus 1: Matlab. Mat Sovelletun matematiikan tietokonetyöt 1. Syksy 2006

MS-A0003/A Matriisilaskenta Laskuharjoitus 6

MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 6: Ääriarvojen luokittelu. Lagrangen kertojat.

BM20A5840 Usean muuttujan funktiot ja sarjat Harjoitus 7, Kevät 2018

MS-A0003/A0005 Matriisilaskenta Malliratkaisut 5 / vko 48

Neliömatriisi A on ortogonaalinen (eli ortogonaalimatriisi), jos sen alkiot ovat reaalisia ja

Yhtälöryhmä matriisimuodossa. MS-A0004/A0006 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

ẋ(t) = s x (t) + f x y(t) u x x(t) ẏ(t) = s y (t) + f y x(t) u y y(t),

x = ( θ θ ia y = ( ) x.

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 2 / vko 45

Osoita, että kaikki paraabelit ovat yhdenmuotoisia etsimällä skaalauskuvaus, joka vie paraabelin y = ax 2 paraabelille y = bx 2. VASTAUS: , b = 2 2

6 MATRIISIN DIAGONALISOINTI

(1.1) Ae j = a k,j e k.

ja B = 2 1 a) A + B, b) AB, c) BA, d) A 2, e) A T, f) A T B, g) 3A (e) A =

Johdatus matematiikkaan

Osa IX. Z muunnos. Johdanto Diskreetit funktiot

Ellipsoidimenetelmä. Samuli Leppänen Kokonaislukuoptimointi. S ysteemianalyysin Laboratorio

Pienimmän neliösumman menetelmä

MS-A0004/MS-A0006 Matriisilaskenta Laskuharjoitus 6 / vko 42

Inversio-ongelmien laskennallinen peruskurssi Luento 2

plot(f(x), x=-5..5, y= )

mlnonlinequ, Epälineaariset yhtälöt

Numeeriset menetelmät

Sovellettu todennäköisyyslaskenta B

Matematiikan tukikurssi

Ratkaisuehdotukset LH 7 / vko 47

MS-A0207 Differentiaali- ja integraalilaskenta 2 (Chem) Yhteenveto, osa I

Lineaarialgebra ja differentiaaliyhtälöt Laskuharjoitus 1 / vko 44

Matematiikka B2 - TUDI

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 1 / vko 44

Ominaisarvot ja ominaisvektorit 140 / 170

Funktiojonot ja funktiotermiset sarjat Funktiojono ja funktioterminen sarja Pisteittäinen ja tasainen suppeneminen

MS-A0305 Differentiaali- ja integraalilaskenta 3 Luento 1: Moniulotteiset integraalit

Hermiten interpolaatio: Interpolaatioehdoissa esiintyy myös derivaattoja. Määritä 4. asteen polynomi p, joka toteuttaa ehdot:

MS-A0305 Differentiaali- ja integraalilaskenta 3 Luento 1: Moniulotteiset integraalit

Tieteellinen laskenta 2 Törmäykset

ELEC-C5210 Satunnaisprosessit tietoliikenteessä Harjoitus M1,

MS-C1340 Lineaarialgebra ja differentiaaliyhtälöt

Laskuharjoitus 2A ( ) Aihepiiri: Raja-arvot etc. Adams & Essex, 8th Edition, Chapter 12. z = f(x, 0) = x2 a z = f(0, y) = 02 a 2 + y2

Tehtävä 2. Osoita, että seuraavat luvut ovat algebrallisia etsimällä jokin kokonaislukukertoiminen yhtälö jonka ne toteuttavat.

Muuttujan sisällön näet kirjoittamalla sen nimen ilman puolipistettä

(0 desimaalia, 2 merkitsevää numeroa).

C = {(x,y) x,y R} joiden joukossa on määritelty yhteen- ja kertolasku seuraavasti

Ominaisarvo-hajoitelma ja diagonalisointi

RATKAISUT a + b 2c = a + b 2 ab = ( a ) 2 2 ab + ( b ) 2 = ( a b ) 2 > 0, koska a b oletuksen perusteella. Väite on todistettu.

Osoita, että täsmälleen yksi vektoriavaruuden ehto ei ole voimassa.

1.1 Vektorit. MS-A0004/A0006 Matriisilaskenta. 1.1 Vektorit. 1.1 Vektorit. Reaalinen n-ulotteinen avaruus on joukko. x 1. R n.

Funktioiden approksimointi ja interpolointi

3.1 Lineaarikuvaukset. MS-A0004/A0006 Matriisilaskenta. 3.1 Lineaarikuvaukset. 3.1 Lineaarikuvaukset

Vapaus. Määritelmä. jos c 1 v 1 + c 2 v c k v k = 0 joillakin c 1,..., c k R, niin c 1 = 0, c 2 = 0,..., c k = 0.

MS-A0202 Differentiaali- ja integraalilaskenta 2 (SCI) Luento 10: Moninkertaisten integraalien sovelluksia

Aalto-yliopisto, Matematiikan ja Systeemianalyysin laitos Mat-1.C Matemaattiset ohjelmistot. Harjoitus

3.2.2 Tikhonovin regularisaatio

Inversio-ongelmien laskennallinen peruskurssi Luento 7 8

Luento 5: Suurten lineaaristen yhtälöryhmien ratkaiseminen iteratiivisilla menetelmillä

MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 11: Taso- ja tilavuusintegraalien sovellutuksia

Transkriptio:

Aalto-yliopisto, Matematiikan ja Systeemianalyysin laitos Mat-1.C Matemaattiset ohjelmistot Apiola/Kuortti Projektitehtävät MATLABille 11-14.3.2013 1. mlli090.tex Seuraava kuva esittää kymmenen sivun internettiä. Laske tämän verkon tärkein sivu käyttämällä PageRank-algoritmia: Luo verkon vierusmatriisi A = [a ij ], missä 1 jos sivulta j on linkki sivulle i a ij = 0 muuten Laske vierusmatriisin suurin ominaisarvo, ja vastaava ominaisvektori. Normalisoi laskemasi suurinta ominaisarvoa vastaava ominaisvektori (jaa kaikki vektorin alkiot vektorin summalla). Mikä on tämän verkon tärkein sivu? Piirrä verkon kuva käyttäen laatimaasi vierusmatriisia ja gplot-komentoa. Tutustu gplotin help-sivuun. 2. Oletetaan, että meille on annettu dataa muodossa (x k, y k ).k = 1... m, johon muodustuu kaksi murtopisteen erottamaa lineaarista suuntausta. Esimerkiksi x=-2:0.1:4; y=0.2*sin(3*x); y(x<1)=y(x<1)+0.5*(x(x<1)-1); y(x>=1)=y(x>=1)+2*(x(x>=1)-1);

muodostaa selvän murtopisteen kohtaan x = 1. Intuitiivisesti tuntuu selvältä, että tällaiseen dataan kannattaa sovittaa PNS-suoran sijaan paloittain lineaarinen funktio, ts. suora murtopisteellä. Kirjoita ohjelma joka tekee tämän: ohjelman tulee valita murtopiste (s, t) tasosta hiiren klikkauksen perusteella (kts. vihje) ja sovittaa paloittain lineaarisen funktion dataan tätä murtopistettä käyttäen, ts. sovittaa suoran pisteisiin (x k, y k ), x k < s ja suoran pisteisiin (x k, y k ), x k > s. y = k 1 x + b 1, x < s y = k 2 x + b 2, x > s Vihje: Tehtävän keskeinen osa on murtopisteen valinta ja datapisteiden suodatus. Murtopisteen valintaan kannattaa käyttää ginput funktiota, joka valitsee klikatun pisteen kuvasta tyyliin [x y] = ginput(1); Datan suodatukseen kannattaa käyttää MATLABin loogista indeksöintiä: esimerkiksi valitaan kaikki vektorin pisteet, jotka ovat pienempiä kuin 5. a = b(b<5); 3. a) Luo dataa seuraavalla skriptillä: r = 0.5+0.5*rand(10,1); theta =2*pi*rand(10,1) x = 3*r.*cos(theta); y = 3*r.*sin(theta); ja piirrä data pisteittäin. b) Sovitamme dataan ympyrän muotoa (x c 1 ) 2 +(y c 2 ) 2 = r 2. Ympyrän sovituksessa etsitään kahta arvoa: ympyrän keskipistettä (c 1, c 2 ), ja sen sädettä r. Helpoimmin sovitus onnistuu huomaamalla, että (x c 1 ) 2 + (y c 2 ) 2 = r 2 2xc 1 + 2yc 2 + (r 2 c 2 1 c 2 2) = x 2 + y 2. Asettamalla c 3 = r 2 c 2 1 c 2 2, saadaan yhtälö muotoa 2xc 1 + 2yc 2 + c 3 = x 2 + y 2. Tälle yhtälölle voidaan tehdä vaadittu datan sovitus, ja ratkaista arvot (c 1, c 2, c 3 ), jonka jälkeen c 3 sta ratkaistaan r.

Vihje: Pisteittäinen piirtäminen onnistuu komennolla plot(x,y,. ). Ympyrän, jonka keskipiste on (x, y) ja säde r, voi piirtää komennolla plot(x+r*cos(0:0.02:2*pi,y+r*sin(0:0.02:pi))). 4. Ratkaise differentiaaliyhtälöryhmä dx = σx + ρy dy = σx y xz dz = βz + xy numeerisesti välillä [0, 20], kun σ = 10, ρ = 28 ja β = 8/3. Piirrä ratkaisukäyrät samaan kuvaan, ja piirrä käyrät x(t) ja z(t) parametrisesti. Tämän jälkeen piirrä 3-ulotteinen parametrisoitu käyrä kaikista koordinaateista. Onko ratkaisu rajoitettu? Suppeneeko se kohti jotain arvoa? Kokeile muuttaa alkuarvoja, sekä parametrien arvoja. Vallitsevan teorian mukaan systeemi on kaoottinen dynaaminen systeemi, jonka käyttäytyminen voi muuttua merkitsevästi jo pienistä muutoksista lähtötilanteessa; itse asiassa termi perhosvaikutus keksittiin kuvaamaan juuri tämän systeemin käytöstä. Vihje: Kolmiulotteinen parametrisoitu käyrä (tai pistejoukko) piirretään MATLABissa funktiolla plot3. 5. Olkoot c ja z 0 kompleksilukuja. Tällöin rekursion z n = z 2 n 1 + c määräämä dynaaminen systeemi tunnetaan kvadraattisena kuvauksena. Valituille luvuille c ja z 0 ylläoleva rekursio johtaa kompleksiseen lukujonoon z 1, z 2, z 3.... Tätä jonoa kutsutaan z 0 :n kiertoradaksi. Riippuen lukujen c ja z 0 valinnasta ratojen muotoja on useita. Annetulle kiinteälle luvulle c useimmilla z 0 rata lähestyy ääretöntä (eli z n kasvaa rajatta kun n.) Joillakin c ja z 0 rata kuitenkin suppenee kohti jotain periodista silmukkaa (eli arvot kiertävät z 0 jollain tietyllä etäisyydellä z n ); joillakin alkuarvoilla rata on kaoottinen. Nämä alkuarvot z 0 ovat kuvauksen Julia-joukko. Tässä harjoituksessa kirjoitetaan MATLAB-ohjelma, joka laskee ns. täytetyn Julia-joukon, joka koostuu niistä alkioista z 0 joiden radat jollain annetulla arvolla c eivät kasva rajatta tavallinen Julia-joukko on tämän joukon reuna. On näytetty, että jos z n kasvaa isommaksi kuin 2 jollain arvolla n, rekursio kasvaa rajatta. Arvoa n jolla tämä tapahtuu, kutsutaan tässä tehtävässä pisteen z 0 pakonopeudeksi. Aloita kirjoittamalla funktio n = escapevelocity(z0,c,n), jossa N on jokin yläraja pakonopeuksille (erityisesti: jos z n < 2 n < N, funktion tulee palauttaa N. Näin vältetään ikuiset silmukat). Luodaksesi Julia-joukon kirjoita funktio M=julia(zMax,c,N). Argumentti zmax määrää kompleksitasosta nelikulmion Im(z) < z max, Re(z) < z maz. c ja N ovat samat argumentit kuin edellä, palautettava matriisi M koostuu määritetyn hilan pakonopeuksista. Aloita funktion julia kirjoittaminen määrittelemällä 500 500 hila realitasossa, luo sen avulla vastaava hila Z kompleksitasolle, ja aja funktio escapevelocity jokaiselle matriisin Z alkiolle.

Vihje: Realiakselin väli [a, b] määritellään MATLABissa komennolla I = linspace(a,b,n), missä n on haluttujen pisteiden määrä, kuten esim. 500. Hila reaalitasolle määritellään komennolla [x y] = meshgrid(t1,t2), missä t1 ja t2 ovat välejä reaaliakselilta. Tästä luodaan kompleksitasoa peittävä hila komennolla z = x+i*y. Kompleksiluvun modulin saa selville itseisarvofunktiolla abs. 6. mlt005.tex (Osa kaavoista epäselviä html:ssä, katso pdf-tehtäviä!) Monte Carlo-approksimaatio π:lle. Piirrä kuva t=linspace(0,2*pi); x=cos(t);y=sin(t); plot(x,y,[1 1-1 -1 1],[-1 1 1-1 -1]); axis([-1.5 1.5-1.5 1.5]) axis square Heitetään tikkaa kuvan mukaiseen tauluun (tikat eivät eksy taulua ympäröivään neliön ulkopuolelle, ehkä tähän oikeasti tarvitaan "satunnaisrobotti"). Jos tikkojen osumatarkuus on satunnaismuuttuja, joka on tasajakautunut neliöllä 1 < x <, 1 < y < 1, niin ympyrään ja neliöön osuneiden tikkojen lukumäärän suhde lähenee lukua π/4, kun satunnaisheittojen lukumäärä kasvaa. Miksi? Generoi tasajakautuneita pistepareja ja laske ko. osuus. Alla on vihjettä pikku esitystä varten. Toisaalta tehtävä ei kaipaa mitään lisäopiskelua, tai vihjeitä. Kenties ehto X.^2+Y.^2 <= 1 ja bittivektorin ykkösten lukumäärän laskeminen vähemmän Matlabia osaaville. (Vrt. edellinen kolmiotehtävä mlt004.tex.) Vihje: Kirjassa C.vanL on hyvä tiivis selvitys aiheesta "Random processes"1.3.2 ss. 34-37. Tästä aiheesta voisi tehdä pienen harjoitustyön. Esiintyviä Matlab-funktioita: http://www.mathworks.com/access/helpdesk/help/techdoc/ref/hist.shtml http://www.mathworks.com/access/helpdesk/help/techdoc/ref/rand.shtml http://www.mathworks.com/access/helpdesk/help/techdoc/ref/randn.shtml. Satunnaisprosesseihin ja tähän tehtävään (Monte Carlo simulaatio π:n laskemiseksi) on CV-sivulla selkeät skriptit: http://www.cs.cornell.edu/cv/books/scmv/mfiles/chap1.htm#dice Dice ja Darts ala C. van Loan. Opiskele, kokeile ja esittele. Avainsanat: mltodari, mlperusteet, matlabperusteet, Monte Carlo, looginen ineksinti, satunnaisluvut 7. Tässä tehtävässä tutkitaan kuvien, matriisien ja singulaariarvojen yhteyksiä. Matriisin A R m n singulaariarvohajotelma on A = USV T,

missä matriisi S on diagonaalimatriisi, ja matriisit U ja V ovat ortogonaalisia neliömatriiseja. Matriisin sisältämää informaatiota voidaan tietyssä mielessä kompressoida tiputtamalla osia singulaariarvohajotelmasta pois; on todistettavissa että (MATLABilla ilmaistuna) U(:,1:k)*S(1:k,1:k)*V(:,1:k) on paras mahdollinen rank(k)-approksimaatio matriisille A. Kuva voidaan ajatella m n matriisina, missä i, j alkio ilmaisee vastaavassa paikassa olevan pikselin väriarvon. Tutkitaan sitten kuinka singulaariarvoja voidaan käyttää hyväksi kuvien pakkaamisessa ja hahmontunnistuksessa. Lue haluamasi kuva sisään MATLABin imread komennolla. Komento luo (yleensä, mutta hieman kuvasta riippuen), m n 3 matriisin. Tämä vastaa RGB-esitystä: ensimmäisessä kerroksessa on punaisen värin intensiteetit, toisessa vihreän ja kolmannessa sinisen. Muuta tämä matriisi harmaaskaalaan komennolla rgb2gray. Tämän jälkeen tee matriisille singulaariarvohajotelma komennolla [u s v] = svd(p), missä P on kuvasi matriisiesitys. Tutki sitten millä k:n arvolla komentojono >> M = u(:,1:k)*s(1:k,1:k)*v(:,1:k) ; >> image(m) tuottaa havaittavia tuloksia. Pitäisi myös päteä, että kuvan isommat hahmot alkavat erottua ensin, mikä tekee singulaariarvoista huomattavan tehokkaan työkalun hahmontunnistuksessa. Vihje: Kuvan ulottuvuuksien ei kannata olla kovin isoja: singulaariarvohajotelma on raskas laskettava. Jos haluat lisähaastetta, erottele kuvan värikerrokset, tee hajotelma niille erikseen, ja kokoa tulokset. Näin saat aikaan värikuvia.