Tuesday, December 20, 2005

Peter Castinen opus Set Theory Objects

Olen lukenut Peter Castinen opusta Set Theory Objects. Pitäisikin testata invarianssimatriisia...

Saturday, December 10, 2005

Tietokoneavusteinen musiikintutkimus (S1f, 7 op)






Diatonisuusasteen muutoksia Wagnerin Parsifal-alkusoitossa.

Yleistä kurssista

Kurssilla tutustutaan laajojen musiikkiaineistojen analyysiin yksinkertaisten harjoitustehtävien avulla. Analyysin lähtökohtana on musiikin tapahtumapohjaiset esitysmuodot (esim. miditieto). Luennot pidetään Turun yliopiston Educariumin tiloissa, luokka 155, Assistentinkatu 5, perjantaisin klo 8.30-10.00.

Kurssi kuuluu osana Turun yliopiston, Åbo Akademin ja Turun ammattikorkeakoulun Musicare-yhteishanketta. Kurssille mahtuu maksimissaan 8 opiskelijaa. Kurssille voi ilmoittautua ennakkoon allekirjoittaneelle (se on suotavaa rajoitetun osallistujamäärän vuoksi) osoitteeseen:

attenka at utu piste fi

Esitietovaatimukset

Tietokoneen peruskäyttötaidot. Ohjelmointitaitoja ei tarvita, mutta ohjelmoimisen perusteiden oppimiselta ei voi välttyä.


Kurssin tavoitteet

Kurssin aikana tutustutaan tarvittavassa määrin musiikin joukkoteorian käsitteisiin, yksinkertaisimpiin tilastollisiin funktioihin ja tarvittaessa tehokkaampiin tilastollisiin työkaluihin (esim. monimuuttujamenetelmät), opetellaan muuntamaan tutkittava aineisto analyysissa käytettävän ohjelman ymmärtämään muotoon (tutkimusaineistoksi sopivia ovat esim. MIDI-tiedostot), perehdytään ohjelman tarjoamiin valmiisiin perusfunktioihin ja opetellaan kirjoittamaan omia lyhyitä algoritmeja musiikillisen materiaalin
tilastollisia tarkasteluja varten. Kukin osallistuja saa valmiudet tuottaa kvantitatiivisia analyyseja valitsemastaan aineistosta. Käytämme R-ohjelmointiympäristöä (http://www.r-project.org/), jonka voi asentaa ilmaiseksi kaikkiin yleisimpiin systeemeihin (Windows, Mac OSX/OS9, Linux). Kurssin suoritettuaan pystyy helpommin siirtymään myös muiden musiikkianalyysissa käytettyjen ohjelmointiympäristöjen pariin kuten Matlab ja Humdrum.

Suoritukset

Kurssin lopputyönä on mahdollista kirjoittaa oman sovelluksen sijaan tai lisäksi suppea yhteisartikkeli tai parikin julkaistavaksi tehtyjen analyysien pohjalta.

Kurssi jakautuu kahteen periodiin. Ensimmäisen aikana "teoriaosiossa" (7 opetuskertaa) opetellaan tarvittavia käytännön taitoja ja tutustutaan pienin esimerkein vaadittaviin teorioihin. Toisella periodilla (7 opetuskertaa) sovelletaan opittuja asioita analyyseihin ja valmistetaan yhteisartikkelit.

Opetuspäivät ovat:

I periodilla:
Ensimmäinen kokoontuminen perjantaina tammikuun 13. pnä ja siitä eteenpäin
20.1., 27.1., 3.2., 10.2., 17.2., 24.2

II periodilla:
10.3., 17.3, 24.3., 31.3, 7.4, 21.4, 28.4.

3.3. on tentti, jonka tarkoitus on lähinnä kartoittaa sitä, miten hyvin perusvalmiudet hallitaan toisen periodin varsinaisia analyysi- ja kirjoitustehtäviä varten.

Uusimmassa musiikkilehdessä 1-2/2005 on hyvä yleisartikkeli tietokoneavusteisesta musiikintutkimuksesta, ks. Eerola & Toiviainen: Musiikkiteknologia kognitiivisen musiikintutkimuksen renkinä. Artikkelissa musiikkianalyysin menetelmiä on sovellettu kognitiiviseen musiikintutkimukseen, mutta kirjoituksesta saa hyvin käsityksen tietokoneavusteisesta musiikintutkimuksesta yleensä. Se löytyy myös internetistä osoitteesta:

http://www.musiikkilehti.fi/1-2005/1.pdf






12.12.

Kokeilin videokaappausta näytöltä. Jos yhteys on kovin hidas, kannattaa video ensin ladata kovalevylle ja katsoa tiedosto suoraan kovalevyltä. Ensimmäisessä videossa

R:n asennus -video (n. 7 Mt)

kerron, mistä R-ohjelma löytyy ja miten se asennetaan. Toisessa videossa

Ukkonoa -analyysia (n. 21 Mt)

suoritan pienen "analyysin" Ukkonoa-melodialla ja testaan muutamia R-ohjelman perusfunktioita kuten

c() "vektori" (lukujen joukko), esimerkissä Ukkonoa-melodian sävelkorkeudet midisävelkorkeuksina (keski-c on 60, d on 62, e on 64 jne.)
length() vektorin pituus eli tässä sävelten lukumäärä Ukkonoa-melodiassa
max() vektorin suurin arvo, tässä siis Ukkonoan korkein sävel
min() vektorin pienin arvo, tässä Ukkonoan matalin sävel
range() vektorin ääriarvot eli tässä Ukkonoan matalin ja korkein sävel
mean() vektorin lukujen keskiarvo, tässä siis Ukkonoan keskimääräinen sävelkorkeus
table() taulukko lukuarvojen frekvensseistä eli kunkin sävelkorkeuden esiintymisten määrä
barplot() pylväskuvio
sort() lukuarvot suuruusjärjestykseen
UKKONOA%%12, Ukkonoan sävelet saadaan sävelluokiksi "modulo"-funktiolla (meidän sävelsysteemissämmehän on joukkoteorian mukaisesti 12 sävelluokkaa 0-11)

Video-fileet ovat käytännön syistä windowsmedia-muodossa ja vaativat Windows Media playerin. Media player tulee Windowsin mukana, mutta sen saa myös Macille ja se löytyy täältä.

PS. Hm - Ukkonoa-videossa taisin sijoitusoperaattorin (=) yhteydessä sanoa "on yhtä suuri kuin" vaikka pitäisikin sanoa vaikkapa "on yhtä kuin". Vertailuoperaattorin (==) yhteydessä sanotaan "on yhtä suuri kuin". Nämä ovat siis kaksi eri asiaa.




13.12.

R-komentoja kootusti:

Jonathan Baronin Reference Card.
Tom Shortin Reference Card.



Kommenttina JR:n kysymykseen:

Spektri- ja fourier-hommia täytyy miettiä erikseen ihan sen vuoksi, että aikaa on rajatusti. R:lle löytyy äänen analyysiinkin valmis package ja sitä olisi jossain yhteydessä kiva kokeilla, ks. oheinen dokumentaatio paketista tuneR

http://cran.at.r-project.org/doc/packages/tuneR.pdf.

Molemmat alueet ovat loputtoman laajat, siis äänentutkimus ja musiikin symbolisiin representaatioihin keskittyvät sovellukset. Teoreetikkotaustani vuoksi olen itse ollut kiinnostunut näistä palikkahommista...