FI84670C - Foerfarande foer bildande av digitalkodsekvens, saerskilt en notkodsekvens. - Google Patents

Foerfarande foer bildande av digitalkodsekvens, saerskilt en notkodsekvens. Download PDF

Info

Publication number
FI84670C
FI84670C FI892764A FI892764A FI84670C FI 84670 C FI84670 C FI 84670C FI 892764 A FI892764 A FI 892764A FI 892764 A FI892764 A FI 892764A FI 84670 C FI84670 C FI 84670C
Authority
FI
Finland
Prior art keywords
code
sequence
key
codes
rule
Prior art date
Application number
FI892764A
Other languages
English (en)
Swedish (sv)
Other versions
FI892764A0 (fi
FI84670B (fi
FI892764A (fi
Inventor
Teuvo Kohonen
Original Assignee
Teuvo Kohonen
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Teuvo Kohonen filed Critical Teuvo Kohonen
Priority to FI892764A priority Critical patent/FI84670C/fi
Publication of FI892764A0 publication Critical patent/FI892764A0/fi
Priority to JP50796690A priority patent/JP3290652B2/ja
Priority to PCT/FI1990/000151 priority patent/WO1990015405A1/en
Priority to AU56739/90A priority patent/AU5673990A/en
Publication of FI892764A publication Critical patent/FI892764A/fi
Application granted granted Critical
Publication of FI84670B publication Critical patent/FI84670B/fi
Publication of FI84670C publication Critical patent/FI84670C/fi
Priority to US08/042,009 priority patent/US5418323A/en

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/0008Associated control or indicating means
    • G10H1/0025Automatic or semi-automatic music composition, e.g. producing random music, applying rules from music theory or modifying a musical piece
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/101Music Composition or musical creation; Tools or processes therefor
    • G10H2210/111Automatic composing, i.e. using predefined musical rules
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/101Music Composition or musical creation; Tools or processes therefor
    • G10H2210/145Composing rules, e.g. harmonic or musical rules, for use in automatic composition; Rule generation algorithms therefor
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/005Algorithms for electrophonic musical instruments or musical processing, e.g. for automatic composition or resource allocation
    • G10H2250/015Markov chains, e.g. hidden Markov models [HMM], for musical processing, e.g. musical analysis or musical composition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Auxiliary Devices For Music (AREA)

Description

1 84670
Menetelmä digitaalisen koodisekvenssin, erityisesti nuot-tikoodisekvenssin, muodostamiseksi
Keksinnön kohteena on yleisesti menetelmä digitaa-5 lisen koodisekvenssin muodostamiseksi äärellisestä määrästä erilaisia koodityyppejä, jossa menetelmässä koodisekvenssin perään generoidaan yksi kerrallaan uusia koodeja sekvenssissä jo olevien koodien perusteella. Erityisesti menetelmä on tarkoitettu tietokonemusiikin automaattiseen 10 säveltämiseen, jolloin kukin koodi edustaa tietyn nuotin yhtä tai useampaa kvantisoitua ominaisuutta,
Musiikillisia tuotoksia, jotka kuulostavat miellyttäviltä, mutta joilla ei ole itsenäisen taideteoksen muotoa, käytetään usein filmien, näytelmien ja muiden esitys-15 ten taustamusiikkina. Tällaisen musiikin määrällinen tarve voi olla huomattava. Myös liikkeissä ja muissa julkisissa tiloissa käytetään paljon rauhallista taustamusiikkia asiakkaiden viihdyttämiseen ja sopivan tunnelman luomiseen. Eräs tapa tuottaa tällaista taustamusiikkia on käyt-20 tää ns. synteettistä musiikkia tuottavaa elektronista konetta, joka käsittää yhden tai useamman elektronisen musiikki-instrumentin tai -syntetisaattorin sekä näille ohjaussignaalit automaattisesti tuottavan laitteen.
Eräs tapa tuottaa näitä ohjauskoodisekvenssejä ja 25 signaaleja olisivat ns. tekoälyohjelmat, joissa käytetään hyväksi heuristisesti musiikilliseen asiantuntemukseen perustuen tuotettuja sääntöjä. Esillä oleva keksintö ei kuitenkaan liity tällaisiin asiantuntijamenetelmiin, vaan laitteeseen, joka automaattisesti esimerkkimateriaalin pe-30 rusteella muodostaa tarvittavat säännöt ja automaattisesti tuottaa uutta koodisekvenssiä näiden sääntöjen avulla.
Eräs tällainen tunnettu ohjaussignaaleja tuottava laite perustuu Markovin prosesseihin, jossa kutakin nuottia (korkeus, pituus) käsitellään yhtenä stokastisena ti-35 lana tilojen muodostamassa jonossa. Annetun esimerkkima- 2 84670 teriaalin, nuottimateriaalin, perusteella määritetään jonossa olevalle tilalle todennäköisyys Pr = PriSj |S1_1, St_ 2, ... ), kun edeltävät tilat jonossa ovat Sj _1, St. 2 , jne. Markovin prosesseihin perustuvassa musiikissa riittää 5 tyydyttävään tulokseen pääsemiseksi usein kolme edeltävää tilaa. Uusi musiikki generoidaan muistiin tallennettujen todennäköisyysfunktioiden avulla aloittaen avainsekvens-sistä, johon lisätään todennäköisyysfuntion Pr ja esimerkiksi kolmen sekvenssissä viimeisenä olevan nuotin tai 10 tilan perusteella todennäköisin seuraajatila. Näin kasvatettua sekvenssiä käytetään uutena avainsekvenssinä ja näin prosessi loputtomasti kehittää nuottikoodimateriaalia ja ohjaussignaaleja elektronisille musiikki-instrumenteille tai -syntetisaattoreille. Lisäksi tarvitaan lisäoperaati-15 oita tai sääntöjä tuottamaan tyypillisiä musiikkirakenteita melodian osista.
Tässä tunnetussa nuottikoodien generointismenetelmäs-sä tarvitaan hyvin paljon opetusmateriaalia ehdollisten todennäköisyystiheysfunktioiden muodostamiseksi. Lisäksi 20 edellä mainitulla tavalla tuotettu synteettinen musiikki on tavallisesti yllätyksetöntä ja monotonista, mikä johtuu siitä, että stokastisessa prosessissa kutakin nuottia käsitellään samanarvoisena, mikä ei vastaa luonnollisen musiikin ominaisuuksia.
25 Esillä olevan keksinnön päämääränä on menetelmä, jolla lisätään melodista vaihtelua ja vältetään tai lievennetään eräitä tekniikan tason ongelmia.
Tämä saavutetaan patenttivaatimuksen 1 mukaisella menetelmällä.
30 Keksinnön mukaisessa menetelmässä jatkuvan koodisek- venssin tuottamiseen käytetään dynaamisesti laajenevan kontekstin periaatetta, jota on aikaisemmin sovellettu puheen tunnistuksessa ja joka on selostettu artikkelissa [1] "Dynamically expanding context, with application to the cor-35 reetion of symbol strings in the recognition of continuous 3 84670 speech”, Teuvo Kohonen, Proceedings of the Eigth International Conference on Pattern Recognition, October 27-31, 1986, Paris, France (IEEE Computer society) ss. 1148-1151. Oleellisena erona puheentunnistussovellukseen nähden on 5 se, että kun viimeksi mainitussa menetelmää käytetään vain virheellisten koodien korjaamiseen, niin esiteltävässä menetelmässä luodaan jatkuvasti uusia stokastisia koodi-sekvenssejä.
Kuten Markovin prosessissakin, esillä olevassa roe-10 netelmässä määritetään koodisekvenssissä oleva koodi sitä välittömästi edeltävien koodien perusteella. Esillä olevassa keksinnössä käytetään kuitenkin diskreettejä "kieliopillisia” sääntöjä, joissa sääntölausekkeiden ehto-osan sisällön pituus, eli tarvittavien edeltävien koodien luku-15 määrä, on dynaaminen muuttuja, joka määritellään sääntö-lausekkeita esimerkkisekvensseistä muodostettaessa näissä esimerkeissä esiintyvien ristiriitaisuuksien pohjalta. Toisin sanoen, jos sääntölausekkeita muodostettaessa kahdella tai useammalla sääntölausekkeella on sama ehto-osa 20 mutta erilainen seurausosa, ts. uusi koodi, nämä sääntö-lausekkeet merkitään epäpäteviksi, ja niiden ehto-osan pituutta kasvatetaan kunnes aikaansaadaan yksikäsitteisiä eli päteviä sääntölausekkeita. Kuitenkin myös kaikki tällaiset lyhyemmät, keskenään ristiriitaiset epäpätevät 25 sääntölausekkeet säilytetään ja niistä muodostetaan puurakenne alla selostettavalla tavalla; dynaamisesti laajenevan kontekstin menetelmä perustuu keskeisesti tämän rakenteen hyväksikäyttöön. Koska edellä mainitut säännöt tuotetaan mekaanisesti esimerkkimateriaalissa esiintyvien sym-30 boleiden keskinäisten paikallisten riippuvuussuhteiden perusteella, sääntöjen muodostaminen ei esimerkiksi vaadi esimerkkimusiikkimateriaalin asiantuntemukseen perustuvaa musiikkiteoreettista analyysiä.
Vastaavasti kun koodisekvenssin perään generoidaan 35 uusi koodi näitä sääntölausekkeita hyväksikäyttäen, ver- 4 84670 rataan hakutaulukon sääntölausekkeisiin ensin koodisekvenssin viimeksituotettua koodia, sitten kahta viimeksituotet-tua, jne. kunnes löydetään vastaavuus jonkin pätevän sään-tölausekkeen ehto-osan kanssa, jolloin koodisekvenssin 5 viimeiseksi koodiksi voidaan lisätä tämän sääntölausekkeen seurausosan osoittama koodi. Mainittu puurakenne mahdollistaa vertailujen järjestelmällisen suorittamisen. Näin aikaansaadaan "optimaalinen" koodisekvenssi, joka "tyylillisesti" pyrkii seuraamaan esimerkkisekvenssien perusteella 10 muodostettuja sääntöjä. Kun menetelmää sovelletaan sellaisenaan nuottikoodisekvenssin tuottamiseen, tuotettu musiikki seuraa hyvin haluttua tyyliä, mutta saattaa vielä tuottaa pitkähköjä kopioita esimerkkimateriaalin osista.
Vaihtelevuutta ja yllättäviä muutoksia koodisek-15 venssiin voidaan aikaansaada käyttämällä ainakin välillä satunnaisvalintaa, joka perustuu siihen, että pätevän sääntölausekkeen löydyttyä se korvataan satunnaisesti jollakin siihen liittyvällä epäpätevällä sääntölausekkeella, jonka ehto-osa on sama kuin löytyneen sääntölausekkeen ehto-osa 20 lyhennettynä satunnaisella määrällä koodeja.
Keksinnön mukaisen menetelmän avulla automaattisesti tuotettua koodia voidaan käyttää elektronisten musiikki-instrumenttien tai -syntetisaattoreiden ohjaamiseen joko suoraan tai muunnettuina sopiviksi, esimerkiksi MIDI-stan-25 dardin mukaisiksi ohjaussignaaleiksi.
Keksintöä selitetään nyt yksityiskohtaisemmin suo-ritusesimerkkien avulla viitaten oheiseen piirrokseen, jossa kuvio 1 havainnollistaa erästä koodirakennetta, jota 30 voidaan käyttää esillä olevassa menetelmässä, kuvio 2 havainnollistaa keksinnön mukaisessa menetelmässä käytettävää hakutaulukkoa, ja kuvio 3 havainnollistaa toisiinsa liittyvien sään-tölausekkeiden muodostamaa puumaista rakennetta.
35 Keksinnön mukaisen menetelmän ensisijaisessa suori- 5 84670 tusmuodossa yksittäiset koodityypit edustavat nuotteja, jotka on tässä tapauksessa valittu pienimmiksi käytetyiksi musikaalisiksi yksiköiksi, mutta vaihtoehtoisesti koodit voivat edustaa muitakin suureita, jotka on esitettävissä 5 kvantittuneilla tiloilla. Esillä olevan keksinnön yhteydessä nuottia kuvataan kahdella tai useammalla sävelen kvantittuneella ominaisuudella, joita ovat esimerkiksi sävelen korkeus ja pituus. Kuviossa 1 on havainnollistettu erästä edullista 16-bittistä koodirakennetta, jossa seit-10 semän vähiten merkitsevää bittiä edustavat sävelen korkeutta k, jolla voi siten olla 128 erilaista arvoa ja joista yksi voi merkitä taukoa, seitsemän seuraavaa bittiä edustavat sävelen pituutta p, jolla voi myös olla 128 erilaista arvoa, ja kaksi eniten merkitsevää bittiä edustavat nuotin 15 iskualan vaihetta i, ts. nuotin sijaintia tahdissa tai tahdin osassa, ja esimerkissä käytetyssä nelijakoisessa musiikissa sillä voi siis olla neljä erilaista tilaa.
Keksinnön mukaisessa menetelmässä käytetyn, muistiin tallennetun hakutaulukon rakennetta on havainnollistettu 20 kuviossa 2. Hakutaulukko koostuu sääntölausekkeista, joista kukin käsittää ehto-osan X, seurausosan Y ja ristiriitali-pun Z. Lipun Z tila 0 tarkoittaa pätevää lauseketta ja tila 1 tarkoittaa epäpätevää lauseketta.
Keksinnön mukaisen hakutaulukon sääntölausekkeiden 25 muodostamisen perusperiaatteet on esitetty yleisesti edellä mainitussa artikkelissa [1]. Keksinnössä sovelletaan artikkelissa esitetyn proseduurin erikoistapausta, jossa sään-tölausekkeita muodostettaessa huomioidaan vain tarkasteltavana olevan koodin vasemmalla puolella olevat edeltävät 30 koodit.
Proseduuria voidaan tarkastella yksinkertaisella esimerkkisekvenssillä, jossa kirjaimet edustavat koodityyppejä: ABCDEFG...IKFH...LEFJ...
35 Jos nyt yrittäisimme johtaa seuraavan koodin esi- 6 84670 merkiksi pelkän koodin F pohjalta (joka esiintyy useita kertoja), syntyisi kolminkertainen ristiriita. Koodia F voisi seurata mikä tahansa koodeista G, H tai J. Jos pyritään kasvattamaan koodikuvioiden täsmällisyyttä ottamalla 5 ehto-osan sisältöön mukaan koodin F edessä oleva symboli, olisi jäljellä vielä kaksinkertainen ristiriita: yhdistelmän EF seuraaja voisi olla G tai J. Yhdistelmä KF muodostaa kohdallaan kuitenkin jo pätevän sääntölausekkeen, joka siis antaa tulokseksi yksikäsitteisen koodin H. Tapauksissa, 10 joissa F:ää edeltää E, voidaan ehto-osaan ottaa mukaan koodin F edestä kaksi symbolia, jolloin voidaan ratkaista kaikki ristiriitatilanteet. Näihin kohtiin liittyen voidaan siis muodostaa kaksi pätevää sääntölauseketta, joista toisessa ehto-osa on DEF ja seurausosa on G ja joista toisessa 15 ehto-osa on LEF ja seurausosa on J.
Sääntölausekkeiden muodostamisen aikana syntyneitä epäpäteviä sääntöjä ei kuitenkaan tuhota, koska niitä tarvitaan sekä seuraavassa selostettavaa sääntöpuuta muodostettaessa että käytettäessä sitä tuotettaessa uusia koo-20 deja koodisekvenssiin. Sen sijaan kukin muodostettu sääntö merkitään päteväksi tai epäpäteväksi edellä mainitulla ristiriitalipulla Z. Samalla tavoin etsitään jokaiselle esimerkkisekvenssissä olevalle koodille erikseen sääntö-lausekkeet. Näin muodostuu hakutaulukko, joka sisältää 25 päteviä ja epäpäteviä sääntölausekkeita, joiden ehto-osan pituus vaihtelee.
Hakutaulukkoon tallennettujen sääntölausekkeiden informaatiorakennetta voidaan havainnollistaa kuvion 3 tapaisella graafisella esityksellä, joka liittää säännöt 30 toisiinsa. Jokaista tiettyä koodia varten (kuten F) on olemassa puu, jonka juuren muodostaa sääntölauseke, jossa ehto-osa sisältää vain tämän koodin. Jos esimerkkisekvensseissä oli ristiriitoja, tästä juuresta haarautuu ainakin kaksi haaraa, jotka johtavat solmuihin, joissa sääntölau-35 sekkeen ehto-osassa on koodin F lisäksi jokin muu koodi.
1 84670
Haarojen seurausosat on kirjoitettu haarojen viereen. Puun viimeiset solmupisteet, jotka edustavat lehtiä, vastaavat lopullisia päteviä sääntöjä, kun taas kaikki muut solmukohdat vastaavat epäpäteviä sääntöjä.
5 Seuraavaksi tarkastellaan uuden symbolin generoimis ta koodisekvenssiin. Oletetaan, että alkusekvenssi on CDEF. Uutta koodia etsittäessä käytetään hyväksi asteittaisesti kasvavaa avainsekvenssiä, joka on muodostettu alkusekvens-sin yhden tai useamman viimeksituotetun koodin perusteella. 10 Avainsekvenssin muodostaa aina aluksi alkusekvenssin viimeinen koodi, tässä tapauksessa F. Kun alkusekvenssiä nyt verrataan kuvion 2 hakutaulukkoon havaitaan, että tällaisen ehto-osan käsittävällä sääntölausekkeella on ristiriitali-pun tila 1, joten se on epäpätevä. Tämän jälkeen avainsek-15 venssin alkuun lisätään alkusekvenssistä viimeistä koodia F edeltävä koodi E, jolloin avainsekvenssi kasvaa kahden koodin mittaiseksi ja on EF. Kuvion 2 hakutaulukkoon verrattaessa tämäkin haku johtaa epäpätevään sääntöön. Tämän jälkeen avainsekvenssiin lisätään alkusekvenssin kolmannek-20 si viimeinen koodi eli D, jolloin avainsekvenssiksi muodostuu DEF. Tällä avainsekvenssillä suoritetulla haulla päädytään muistipaikassa 13 olevaan pätevään sääntöön, jolloin alkusekvenssin loppuun lisätään tämän säännön seurausosan osoittama koodi G. Tätä kasvatettua koodisekvenssiä käyte-25 tään nyt uutena alkusekvenssinä, jolloin uutta koodia generoitaessa ensimmäinen avainsekvenssi sisältää koodin G. Avainsekvenssin pituutta kasvatetaan jälleen kunnes löydetään pätevä sääntö.
Edellä selostettu perusmenetelmä johtaa helposti 30 koodisekvenssiin, joka muodostaa kopioita esimerkkimate-riaalin osista ja saattaa jopa alkaa toistaa itseään.
Tämän vuoksi esillä olevan keksinnön ensisijaisessa suoritusmuodossa ei aina valitakaan uudeksi koodiksi löydetyn pätevän sääntölausekkeen osoittamaa koodia, vaan 35 käytetään eräänlaista satunnaisvalintaa, jossa vaihtelujen 8 84670 voimakkuutta voidaan säätää. Tällaista uusien, osittain satunnaisten sekvenssien generointia voidaan havainnollistaa äskeisen esimerkin ja kuvion 3 avulla. Oletetaan jälleen, että alkusekvenssi on CDEF, ja etsitään pätevä sään-5 tölauseke edellisen esimerkin mukaisesti. Tällöin etsintä alkaa kuvion 3 juuresta F ja seuraa haaroja kunnes vastaava lehti, tässä tapauksessa DEF, löytyy. Äskeisessä esimerkissä uudeksi koodiksi valittiin löydetyn lehden DEF osoittama koodi G. Reitillä juuresta lehteen on kuitenkin mah-10 dollisesti useita solmuja, joissa on erilaisia vaihtoehtoisia uusia koodeja antavia epäpäteviä lausekkeita. Esillä olevassa menetelmässä viimeistä avainsekvenssiä, joka johti pätevän sääntölausekkeen löytymiseen, lyhennetään satunnaisesti enintään ennalta määrätyn koodimäärän verran ja 15 uudeksi koodiksi valitaan satunnaisesti jokin epäpätevä sääntölauseke, jonka ehto-osa vastaa tätä lyhennettyä avainsekvenssiä. Toisin sanoen palataan satunnaisesti, korkeintaan rajoitettu määrä askelia sääntöpuun lehdestä takaisinpäin. Tällä tavoin aikaansaadaan tuotettuun koodi-20 sekvenssiin satunnaisuutta, joka esimerkiksi nuottikoodi- sekvenssin tapauksessa johtaa vaihtelevuuteen ja yllättäviin muutoksiin tuotetussa musiikissa mutta noudattaa vielä tiettyä säännönmukaisuutta.
Edellä keksinnön ensisijaisessa suoritusmuodossa 25 sekä avainsekvenssi että sääntölausekkeiden ehto-osat muo dostuivat pelkästään peruskoodeista. Vaikka tällaista menetelmää nuottikoodisekvenssien tuottamiseen käytettäessä tuotettu musiikki antaa tunteen musiikillisesta jatkuvuudesta, tyypillisessä länsimaisessa musiikissa suositaan 30 harmonisesti vieläkin säännöllisempiä melodisia kehitelmiä.
Tämä päämäärä saavutetaan esimerkiksi keksinnön toisella suoritusmuodolla, jossa esimerkiksi vain kaksi viimeistä symbolia avainsekvenssissä ja sääntölausekkeen ehto-osassa muodostuu absoluuttisista koodeista ja niitä 35 edeltävät symbolit edustavat korkeamman tason informaa- 9 84670 tiota, joista kukin kuvaa erilaista kahden tai useamman koodin ryhmän muodostamaa yhdistelmää. Musiikkitermein ilmaistuna korkeamman tason symbolit voivat edustaa esimerkiksi melodiasekvenssejä parhaiten kuvaavia sointuja, 5 jotka edellisten tahtien, puolitahtien, neljännestahtien, jne. nuotit muodostavat ja joissa yhdistelmään kuuluvien nuottien järjestys voi olla mielivaltainen. Musiikkiopil-listen sointujen asemesta voidaan käyttää myös muita esi-merkkimateriaalissa esiintyviä nuottikombinaatioiden (his-10 togrammien) kasautumia. Tässä toisessa suoritusmuodossa muodostetaan sääntölausekkeen ehto-osa esimerkiksi kahdesta viimeisestä nuottikoodista kuten edellä selostettiin, mutta niitä edeltävää esimerkkisekvenssiä tarkastellaan kahden tai useamman koodin ryhmissä, joita verrataan ennalta ποιοι 5 dostettuun korkeamman tason symboleiden kirjastoon, ja kun jokin koodiyhdistelmä tunnistetaan joksikin tietyksi symboliksi, tämä symboli sijoitetaan sääntölausekkeen ehto-osaan kahden ensimmäisen koodin vasemmalle puolelle. Samalla tavalla voidaan jatkaa korkeamman tason symbolien lisää-20 mistä ehto-osan vasempaan päähän. Sääntölausekkeissa voi olla siis yksi tai useampi tällainen korkean tason symboli tai ei yhtään. Koska melodiassa voi olla sointuun tai kasautumia vastaaviin histogrammeihin kuulumattomia nuotteja, symbolien tunnistamisen lyhyestä koodijonosta täytyy 25 perustua likimääräisiin kuviontunnistustekniikkoihin.
Uuden koodisekvenssin muodostaminen näiden sääntö-lausekkeiden avulla tapahtuu siten, että esimerkiksi avain-sekvenssien kaksi lyhintä muotoa muodostetaan kuten edellä, ja avainsekvenssien seuraavat muodot muodostetaan tunnis-30 tamalla alkusekvenssissä aikaisempana olevien koodien kahden tai useamman koodin ryhmissä muodostamat yhdistelmät ja korvaamalla ne avainsekvenssissä niitä tai niitä lähinnä olevia yhdistelmiä vastaavilla korkeamman tason symboleilla.
35 Myös tässä suoritusmuodossa voidaan käyttää edellä 10 84670 mainittua satunnaisvalintaa.
Kun edellä esitetyllä menetelmällä tuotetaan moniäänistä musiikkia, muodostetaan ensin edellä mainitulla tavalla ensimmäistä hakutaulukkoa käyttäen ensimmäinen 5 nuottikoodisekvenssi, joka vastaa pää-ääntä tai -melodiaa, ja tämän jälkeen muodostetaan tätä ensimmäistä nuottikoodi-sekvenssiä alkusekvenssinä käyttäen yhden tai useamman lisähakutaulukon avulla vastaavasti yksi tai useampi lisä-koodisekvenssi, joista kukin vastaa yhtä säestävää ääntä. 10 Edellä mainitut lisähakutaulukot sisältävät omat sääntö-lausekkeet kullekin säestävälle äänelle.
Keksinnön mukainen menetelmä on erityisesti tarkoitettu digitaalisessa muodossa olevan nuottikoodi-informaa-tion tuottamiseksi elektronisten musiikki-instrumenttien 15 tai -syntetisaattorien tai vastaavien laitteiden ohjaamista varten. Tuotetuista nuottikoodeista voidaan muodostaa MIDI-standardin mukaisia ohjaussignaaleja, jotka syötetään edellä mainituille laitteille. MIDI on lyhennys sanoista Musical Instrument Digital Interface ja tarkoittaa standardi-20 liityntää, jonka kautta esim. syntetisaattorit, rytmiko-neet, tietokoneet, jne. voidaan liittää toisiinsa. Tietoa MIDI-standardista saa esimerkiksi seuraavasta julkaisuista: [2] MIDI 1.0 specification, Document No. MIDI-1.0, elokuu 1983, International MIDI Association.
25 Kuviot ja niihin liittyvä selitys on tarkoitettu vain havainnollistamaan esillä olevaa keksintöä. Yksityiskohdiltaan keksinnön mukainen menetelmä voi vaihdella oheisten patenttivaatimusten puitteissa.

Claims (8)

11 84670
1. Menetelmä digitaalisen koodisekvenssin, erityisesti nuottikoodisekvenssin muodostamiseksi äärellisestä 5 määrästä erilaisia koodityyppejä, joista kukin edustaa esimerkiksi tietyn nuotin yhtä tai useampaa kvantisoitua ominaisuutta, jossa menetelmässä koodisekvenssin perään generoidaan yksi kerrallaan uusia koodeja sekvenssissä jo olevien koodien perusteella, tunnettu siitä, että 10 jokaisen uuden koodin generoiminen käsittää ainakin seu-raavat vaiheet: a) koodisekvenssin viimeksi tuotettujen koodien perusteella muodostetaan joukko pituudeltaan asteittaisesti kasvavia avainsekvenssejä siten, että ensimmäinen ja lyhin 15 avainsekvenssi muodostetaan koodisekvenssin viimeksi tuotetun koodin perusteella, ja sitä seuraavat yhden tai useamman koodin askelin kasvavan viimeksi tuotettujen koodien määrän perusteella, b) avainsekvenssejä muodostettaessa niitä verrataan 20 hakutaulukkoon, joka sisältää päteviä sääntölausekkeita, joilla kullakin on erilainen ehto-osa, sekä epäpäteviä sääntölausekkeita, joissa kulloinkin ainakin kahdella sään-tölausekkeella on sama ehto-osa mutta eri seurausosa, kunnes löydetään ainakin likimääräinen yhdenmukaisuus avain-25 sekvenssin ja jonkun pätevän sääntölausekkeen ehto-osan välillä, ja c) valitaan uudeksi koodiksi löydetyn pätevän sääntölausekkeen seurausosan osoittama koodi tai lopullista avainsekvenssiä enintään ennalta määrätyn koodimäärän ver- 30 ran lyhyemmän avainsekvenssin kanssa ainakin likimäärin yhdenmukaisen ehto-osan käsittävien epäpätevien sääntölau-sekkeiden joukosta satunnaisesti valitun sääntölausekkeen seurausosan osoittama koodi.
2. Patenttivaatimuksen 1 mukainen menetelmä, t u n-35 n e t t u siitä, että avainsekvenssinä käytetään suoraan i2 84670 koodisekvenssin koodeja aloittaen avainsekvenssillä, jossa on koodisekvenssin viimeksi tuotettu koodi, ja lisäten avainsekvenssin eteen yksi kerrallaan koodisekvenssissä aikaisempana olevia koodeja kunnes löydetään vastaavuus 5 jonkin pätevän sääntölausekkeen ehto-osan ja avainsekvenssin välillä.
3. Patenttivaatimuksen 1 mukainen menetelmä, tunnettu siitä, että avainsekvenssin ensimmäinen ja lyhin muoto muodostetaan koodisekvenssin viimeisen koodin perus- 10 teella, mahdolliset seuraavat avainsekvenssin muodot kahden tai useamman viimeisen koodin perusteella ja kaikki sitä seuraavat muodot lisäämällä edellisten koodisekvenssien eteen asteittain korkeamman tason symboleja, jotka muodostetaan tunnistamalla koodisekvenssissä aikaisempina olevien 15 koodien kahden tai useamman koodin ryhmissä muodostamat yhdistelmät ja korvaamalla ne avainsekvenssissä niitä vastaavilla ja niitä lähinnä olevia yhdistelmiä vastaavilla, ennalta määrätyillä korkeamman tason symboleilla, ja että ainakin osassa sääntölausekkeita hakuosa muodostuu yhdestä 20 tai useammasta kooditermistä ja yhdestä tai useammasta korkeamman asteen symbolitermistä.
4. Patenttivaatimuksen 3 mukainen menetelmä, tunnettu siitä, että kukin korkeamman tason symboli edustaa tahdin osassa, yhdessä tahdissa tai useammassa tahdissa 25 esiintyvien nuottien muodostamaa sointua tai tällaisten sointujen muodostamia sekvenssejä.
5. Patenttivaatimuksen 3 tai 4 mukainen menetelmä, tunnettu siitä, että koodiyhdistelmien tunnistaminen tietyiksi korkeamman tason symboleiksi suoritetaan 30 tilastollisella kasautus- tai muulla tilastollisella approksimoivalla hahmontunnistusmenetelmällä.
6. Jonkin edellisen patenttivaatimuksen mukainen menetelmä, tunnettu siitä, että generoidaan ainakin yksi lisäkoodisekvenssi, esim. melodiaa säestävää ääntä 35 edustava nuottikoodisekvenssi, käyttäen ensimmäisen koodi- 13 84670 sekvenssin koodien perusteella muodostettua, asteittain kasvavaa avainsekvenssiä ja ainakin yhtä lisähakutaulukkoa.
7. Jonkin edellisen patenttivaatimuksen mukainen menetelmä, tunnettu siitä, että jos koodisekvenssiä 5 tai lisäkoodisekvenssiä generoitaessa ei voida muodostaa avainsekvenssiä, joka vastaisi jonkin pätevän sääntölau-sekkeen ehto-osaa hakutaulukossa tai lisähakutaulukossa, ensimmäisestä koodisekvenssistä poistetaan satunnainen määrä tätä tilannetta edeltäviä koodeja ja koodisekvenssin 10 generointia jatketaan jäljelle jääneiden koodien perusteella.
8. Jonkin edellisen patenttivaatimuksen mukainen menetelmä, tunnettu siitä, että koodisekvensseistä muodostetaan MIDI-standardin mukaiset ohjaussignaalit elek- 15 ironisten musiikki-instrumenttien tai -syntetisaattoreiden ohjaamiseksi. 14 84670
FI892764A 1989-06-06 1989-06-06 Foerfarande foer bildande av digitalkodsekvens, saerskilt en notkodsekvens. FI84670C (fi)

Priority Applications (5)

Application Number Priority Date Filing Date Title
FI892764A FI84670C (fi) 1989-06-06 1989-06-06 Foerfarande foer bildande av digitalkodsekvens, saerskilt en notkodsekvens.
JP50796690A JP3290652B2 (ja) 1989-06-06 1990-06-05 コード配列、特にノート・コード配列を作製する方法
PCT/FI1990/000151 WO1990015405A1 (en) 1989-06-06 1990-06-05 Method for producing a code sequence, particularly a note code sequence
AU56739/90A AU5673990A (en) 1989-06-06 1990-06-05 Method for producing a code sequence, particularly a note code sequence
US08/042,009 US5418323A (en) 1989-06-06 1993-04-02 Method for controlling an electronic musical device by utilizing search arguments and rules to generate digital code sequences

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI892764A FI84670C (fi) 1989-06-06 1989-06-06 Foerfarande foer bildande av digitalkodsekvens, saerskilt en notkodsekvens.
FI892764 1989-06-06

Publications (4)

Publication Number Publication Date
FI892764A0 FI892764A0 (fi) 1989-06-06
FI892764A FI892764A (fi) 1990-12-07
FI84670B FI84670B (fi) 1991-09-13
FI84670C true FI84670C (fi) 1991-12-27

Family

ID=8528579

Family Applications (1)

Application Number Title Priority Date Filing Date
FI892764A FI84670C (fi) 1989-06-06 1989-06-06 Foerfarande foer bildande av digitalkodsekvens, saerskilt en notkodsekvens.

Country Status (4)

Country Link
JP (1) JP3290652B2 (fi)
AU (1) AU5673990A (fi)
FI (1) FI84670C (fi)
WO (1) WO1990015405A1 (fi)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2026223B (en) * 1978-07-11 1982-10-27 Suwa Seikosha Kk Electronic tone generator
US4375177A (en) * 1981-04-13 1983-03-01 John Larson Automatic electronic musical instrument
JPS587193A (ja) * 1981-07-06 1983-01-14 ヤマハ株式会社 電子楽器
JPS59125786A (ja) * 1982-12-24 1984-07-20 カシオ計算機株式会社 自動演奏装置
US4777857A (en) * 1987-03-10 1988-10-18 Stewart Benjamin U MIDI address converter and router

Also Published As

Publication number Publication date
JPH04505970A (ja) 1992-10-15
WO1990015405A1 (en) 1990-12-13
AU5673990A (en) 1991-01-07
FI892764A0 (fi) 1989-06-06
JP3290652B2 (ja) 2002-06-10
FI84670B (fi) 1991-09-13
FI892764A (fi) 1990-12-07

Similar Documents

Publication Publication Date Title
US7696426B2 (en) Recombinant music composition algorithm and method of using the same
Assayag et al. Guessing the composer's mind: Applying universal prediction to musical style
Cope Experiments in musical intelligence (EMI): Non‐linear linguistic‐based composition
US6297439B1 (en) System and method for automatic music generation using a neural network architecture
Moore The so-called ‘flattened seventh’in rock
CN112435642B (zh) 一种基于深度神经网络的旋律midi伴奏生成方法
US5418323A (en) Method for controlling an electronic musical device by utilizing search arguments and rules to generate digital code sequences
KR100512143B1 (ko) 멜로디 기반 음악 검색방법과 장치
Cruz-Alcázar et al. Learning regular grammars to model musical style: Comparing different coding schemes
US6313390B1 (en) Method for automatically controlling electronic musical devices by means of real-time construction and search of a multi-level data structure
Pérez-Sancho et al. Genre classification of music by tonal harmony
FI84670C (fi) Foerfarande foer bildande av digitalkodsekvens, saerskilt en notkodsekvens.
Kohonen et al. A nonheuristic automatic composing method
Reenan et al. Types and applications of p 3, 0 seventh-chord transformations in late nineteenth-century music
CN113140202B (zh) 信息处理方法、装置、电子设备及存储介质
Levitt A representation for musical dialects
Child Voice-Leading Patterns and Interval Collections in Late Shostakovich: Symphony No. 15
López et al. Harmonic reductions as a strategy for creative data augmentation
Wen et al. Music main melody extraction by an interval pattern recognition algorithm
Cruz-Alcazar et al. A study of grammatical inference algorithms in automatic music composition and musical style recognition
Utz Is There Noise in Helmut Lachenmann's Music?: Temporal Form and Moments of Presence in the String Quartet Gran Torso
AU747557B2 (en) System and method for automatic music generation
JP3225935B2 (ja) 自動運指付け装置および記憶媒体
Reale The process of multivalent thematic transformation
Hendriks A Style Discussion of the Magic Marimba by Hans Roosenschoon/Portfolio of Musics

Legal Events

Date Code Title Description
MM Patent lapsed
MM Patent lapsed

Owner name: KOHONEN, TEUVO