BAB III Analisis. Gambar III.1 Rancangan Pemrosesan

dokumen-dokumen yang mirip
BAB IV Perancangan dan Implementasi

BAB V Pengujian. Bab ini memuat tujuan dan langkah-langkah pengujian, hasil dan analisis pengujian terhadap hasil implementasi dari program GAMA.

BAB II Dasar Teori. 2.1 Algoritma Genetika Gambaran Umum

Daftar Pustaka. [BEL00] Belkin, Alan Music Theory Online : Counterpoint. Diakses: Februari 2007.

2 TINJAUAN PUSTAKA. 2.1 Peringkasan Teks

BAB 3 ANALISIS DAN PERANCANGAN APLIKASI

BAB 2 LANDASAN TEORI. 2.1 Algoritma Genetika

ERWIEN TJIPTA WIJAYA, ST.,M.KOM

BAB III ALGORITMA MEMETIKA DALAM MEMPREDIKSI KURS VALUTA ASING. Untuk memberikan penjelasan mengenai prediksi valuta asing

BAB V TEKNIK PERMAINAN

Penerapan akor pokok dalam tangga nada mayor 1# - 7# pada pianika

Sistem Tonjur untuk Membantu Menentukan Pasangan Main Angklung ke Pemain dengan Memanfaatkan MusicXML

1. Pendahuluan Latar Belakang

BAB II LANDASAN TEORI. digunakan sebagai alat pembayaran yang sah di negara lain. Di dalam

BAB 2 DASAR TEORI. 2.1 Teka-Teki Silang

BAB II LANDASAN TEORI

Generator Melodi Berdasarkan Skala dan Akord Menggunakan Algoritma Genetika

BAB III. Metode Penelitian

Sistem Tonjur untuk Menentukan Pasangan Main Angklung ke Pemain dengan Memanfaatkan MusicXML

BAB III ANALISIS. Bab ini berisi penjelasan mengenai analisis sistem pencarian melodi pada file

T I N J A U A N P U S T A K A Algoritma Genetika [5]

ALGORITMA GENETIKA. Suatu Alternatif Penyelesaian Permasalahan Searching, Optimasi dan Machine Learning

BAB III ANALISIS KOMPOSISI

APLIKASI PENULISAN NOTASI BALOK DARI FILE MIDI MONOPHONIC

Unsur Musik. Irama. Beat Birama Tempo

BAB III ANALISA MASALAH DAN RANCANGAN PROGRAM

JARINGAN SARAF TIRUAN UNTUK MENILAI ARANSEMEN MUSIK

BAB I PENDAHULUAN. sejumlah aktivitas kuliah dan batasan mata kuliah ke dalam slot ruang dan waktu

Tugas Mata Kuliah E-Bisnis REVIEW TESIS

UKDW BAB 1 PENDAHULUAN

BAB II TINJAUAN PUSTAKA

PERANCANGAN TATA LETAK FASILITAS BAGIAN PRODUKSI MENGGUNAKAN METODE ALGORITMA GENETIK DI PT. PUTRA SEJAHTERA MANDIRI

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. analisis, desain/perancangan, kode, dan pengujian/implementasi. Tahap analisis

BAB I PENDAHULUAN. penting. Notasi musik merupakan media agar hasil karya musik seseorang

RENCANA PELAKSANAAN PEMBELAJARAN 1

BAB I PENDAHULUAN. 1.1 Latar Belakang

Aplikasi Algoritma Genetika Untuk Menyelesaikan Travelling Salesman Problem (TSP)

BAB 3 PERANCANGAN PROGRAM. dari OOP (Object Oriented Programming) di mana dalam prosesnya, hal-hal

BAB III ANALISIS DATA

CARA MUDAH MENENTUKAN AKOR SUATU LAGU

BAB 2 LANDASAN TEORI

Bab II Konsep Algoritma Genetik

3.2.3 Resiko, Keuntungan dan Kerugian Forex Metode Prediksi dalam Forex MetaTrader 4 sebagai Platform Trading dalam Forex...

BAB III. Solusi Optimal Permasalahan Penjadwalan Perkuliahan Menggunakan Algoritma Fuzzy Evolusi

BAB I PENDAHULUAN 1.1 Latar Belakang

KNAPSACK PROBLEM DENGAN ALGORITMA GENETIKA

TEORI DAN PENGGUNAAN AKOR

BAB IV HASIL DAN PEMBAHASAN. Secara umum, rencana dapat diartikan sebagai suatu garis-garis besar haluan

BAB III ANALISIS KOMPOSISI

ALTERNATIF MODEL PEMAMPATAN MATRIKS JARANG DENGAN MENGGUNAKAN ALGORITMA GENETIK

BAB II LANDASAN TEORI

dan c C sehingga c=e K dan d K D sedemikian sehingga d K

BAB I PENDAHULUAN. kehidupan sehari-hari dan juga merupakan disiplin ilmu yang berdiri sendiri serta

BAB 2 TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

PENYELESAIAN KNAPSACK PROBLEM MENGGUNAKAN ALGORITMA GENETIKA

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

PEMAMPATAN MATRIKS JARANG DENGAN METODE ALGORITMA GENETIKA MENGGUNAKAN PROGRAM PASCAL

Keywords Algoritma, Genetika, Penjadwalan I. PENDAHULUAN

MATERI AJAR. Ansambel berasal dari kata Ensemble (Perancis) yang berarti bersama-sama. Musik

BAB I PENDAHULUAN. signifikan terutama di kota-kota besar seperti Jakarta, Bandung, Yogyakarta dan

Genetic Algorithme. Perbedaan GA

Pendekatan Algoritma Genetika pada Peminimalan Fungsi Ackley menggunakan Representasi Biner

ALGORITMA GENETIK SEBAGAI FUNGSI PRUNING ALGORITMA MINIMAX PADA PERMAINAN TRIPLE TRIAD CARD.

8. Evaluasi Solusi dan Kriteria Berhenti Perumusan Masalah METODE PENELITIAN Studi Pustaka Pembentukan Data

BAB III ANALISIS KARYA

Optimasi Multi Travelling Salesman Problem (M-TSP) Menggunakan Algoritma Genetika

4 HASIL DAN PEMBAHASAN

Oleh Imam Ghozali (PBS, Pendidikan Seni, FKIP Universitas Tanjungpura, Pontianak)

BAB III ANALISIS KOMPOSISI

PERANCANGAN APLIKASI PEMBELAJARAN NOTASI MUSIK PIANO UNTUK MELATIH MENINGKATKAN KECERDASAN MANUSIA MENGGUNAKAN VISUAL BASIC 6.0

Contoh Penggunaan Algoritma Genetika dan NEH

PENENTUAN JARAK TERPENDEK PADA JALUR DISTRIBUSI BARANG DI PULAU JAWA DENGAN MENGGUNAKAN ALGORITMA GENETIKA. Abstraksi

ALGORITMA GENETIKA Suatu Alternatif Penyelesaian Permasalahan Searching, Optimasi dan Machine Learning

BAB II LANDASAN TEORI. Tahun 2001 pemilik CV. Tunas Jaya membuka usaha di bidang penjualan dan

ANALISIS MUSIK CALEMPONG (LAGU MUARA TAKUI) DI KECAMATAN BANGKINANG SEBERANG KABUPATEN KAMPAR RIAU

BAB I PENDAHULUAN. beliau ciptakan, seperti halnya lagu Tuhan adalah kekuatanku yang diciptakan

Penggunaan Algoritma Genetik dengan Pemodelan Dua Tingkat dalam Permasalahan Penjadwalan Perawat pada Unit Gawat Darurat Rumah Sakit Umum XYZ Surabaya

BAB III PERANCANGAN. Gambar 3.1 di bawah ini mengilustrasikan jalur pada TSP kurva terbuka jika jumlah node ada 10:

1. Pendahuluan 1.1. Latar Belakang

BAB 2 LANDASAN TEORI

Penjadwalan Job Shop pada Empat Mesin Identik dengan Menggunakan Metode Shortest Processing Time dan Genetic Algorithm

BAB 2 TINJAUAN PUSTAKA

HASIL DAN PEMBAHASAN

Lingkup Metode Optimasi

APLIKASI UNTUK PREDIKSI JUMLAH MAHASISWA PENGAMBIL MATAKULIAH DENGAN MENGGUNAKAN ALGORITMA GENETIKA, STUDI KASUS DI JURUSAN TEKNIK INFORMATIKA ITS

BAB III ANALISIS KARYA

BAB I PENDAHULUAN. 1.1 Latar Belakang

Optimalisasi Pengantaran Barang dalam Perdagangan Online Menggunakan Algoritma Genetika

ALGORITMA GENETIKA PADA PEMROGRAMAN LINEAR DAN NONLINEAR

BAB III ANALISIS KOMPOSISI

BAB III METODE PENELITIAN. Penelitian dilakukan dilingkungan Jurusan Ilmu Komputer Fakultas Matematika

PENDAHULUAN. Latar Belakang. Tujuan Penelitian

MUSIK ANSAMBEL. A. Pengertian dan Jenis Musik Ansambel. Musik ansambel adalah bermain musik secara. bersama-sama dengan menggunakan beberapa

BAB II LANDASAN TEORI. berawal dari suatu ide untuk menyimpan segitiga Sierpinski menggunakan

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

BAB III ANALISIS KOMPOSISI

Implementasi Algoritma Genetika Pada Perhitungan Perkalian Berbasis Metode Trachtenberg

UKDW BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB III ANALISIS KOMPOSISI

Transkripsi:

BAB III Analisis Bab ini memuat analisis yang dilakukan dalam penulisan Tugas Akhir, berupa analisis terhadap rancangan pemrosesan, yang dibagi menjadi bagian Preprosesor, Algoritma Genetika, dan bagian Postprosesor. 3.1 Rancangan Pemrosesan Proses umum yang dilakukan perangkat lunak adalah menerima masukan berupa melodi dan akor dalam format MusicXML dan batas nilai yang ingin dicapai, membuat aransemen berdasarkan masukan dalam format kromosom dengan algoritma genetika, menghasilkan keluaran aransemen dalam format MusicXML. Proses dibagi menjadi tiga bagian, yaitu Preprosesor, Algoritma Genetika, dan Postprosesor. Gambar III.1 Rancangan Pemrosesan Gambar III.1 menampilkan rancangan pemrosesan di dalam perangkat lunak. Perangkat lunak menerima masukan berupa melodi dan akor dalam format MusicXML dan batas nilai yang ingin dicapai. Akor masukan yang akan diproses terbatas hanya pada jenis akor yang terdapat pada Tabel II-2. Bagian Preprosesor melakukan pendefinisian parameter-parameter penilaian dalam fungsi fitness yang akan digunakan untuk mengevaluasi kromosom. Setiap parameter menyimpan informasi dari setiap satuan ketukan terkecil menurut batasan, yaitu sebesar seperenambelas ketukan. Pendefinisian parameter fungsi fitness meliputi III-1

penilaian berdasarkan teori melodi berupa kromosom_melodi, berisi melodi masukan dan berdasarkan teori harmoni berupa kromosom_harmoni, berisi nada-nada harmoni sesuai dengan akor masukan. Setelah parameter untuk fungsi fitness terdefinisi, dilakukan proses Algoritma Genetika. Proses yang dilakukan mencakup inisialisasi populasi, evaluasi kromosom dalam populasi menggunakan fungsi fitness dan pembentukan populasi generasi selanjutnya menggunakan operator genetika, hingga mendapat kromosom yang memiliki nilai fungsi fitness di atas batas nilai masukan. Kromosom yang dihasilkan dari algoritma genetika merupakan solusi yang dianggap baik berdasarkan penilaian menggunakan fungsi fitness. Oleh bagian Postprosesor, seluruh kromosom di dalam kromosom_hasil diubah dari format kromosom menjadi format MusicXML. Hasil dari proses pengubahan format ini disimpan dalam dokumen file_keluaran yang akan menjadi keluaran dari perangkat lunak. 3.2 Algoritma Genetika 3.2.1 Fungsi Fitness Pseudocode dari fungsi fitness tertera pada Lampiran C. 3.2.1.1 Penilaian Berdasarkan Teori Melodi Teori melodi berkaitan dengan nada-nada utama yang menjadi karakteristik dari sebuah lagu. Hasil aransemen harus mempertahankan melodi dari lagu, karena perubahan melodi akan menyebabkan perubahan karakteristik lagu tersebut. Oleh karena itu, penilaian berdasarkan teori melodi dilakukan dengan melihat apakah melodi lagu tetap dipertahankan dalam hasil aransemen. Cara melihat melodi lagu dalam hasil aransemen adalah dengan mencocokkan keberadaan nada melodi dan sambungannya di hasil aransemen. Jika nada-nada dalam melodi dimainkan juga dalam hasil aransemen dengan kesesuaian bar, ketukan dan sambungan, maka hasil aransemen itu dapat dikatakan baik menurut teori melodi. Dengan begitu, dapat dikatakan bahwa semakin banyak nada di aransemen yang bersesuaian dengan nada dan sambungan di melodi masukan akan menghasilkan aransemen yang semakin baik. III-2

Selain kesesuaian nada, hal lain yang harus diperhatikan adalah kesesuaian oktaf dari nada. Secara umum, hasil aransemen akan semakin baik jika nada-nada melodi dimainkan sesuai pada oktafnya. Namun tidak tertutup kemungkinan ada nada-nada yang dimainkan di oktaf lebih tinggi atau lebih rendah dapat menghasilkan aransemen yang juga baik. Berdasarkan aspek tersebut, nilai fungsi fitness untuk suatu aransemen akan semakin tinggi jika semakin banyak jumlah nada di oktaf yang bersesuaian dengan melodi masukan. 3.2.1.2 Penilaian Berdasarkan Teori Harmoni Teori harmoni berkaitan dengan nada-nada yang harmonis jika dimainkan bersamaan. Akor merupakan bentuk perpaduan nada harmonis terhadap melodi dalam suatu waktu. Salah satu cara untuk mengetahui nada yang harmonis di satu waktu adalah dengan melihat apakah nada tersebut tercakup dalam nada di akor yang sedang berlaku. Jika seluruh nada kecuali nada melodi dalam hasil aransemen bersesuaian dengan nada yang tercakup dalam akor yang sedang berlaku, maka dapat dikatakan hasil aransemen tersebut baik menurut teori harmoni. Selain bersesuaian dengan nada akor, penilaian juga dilakukan terhadap nada terendah di setiap satuan waktu. Teori harmoni menjelaskan bahwa nada terendah atau nada bass akan semakin baik jika berupa nada inversi pertama (nada third) atau nada inversi kedua (nada fifth) dari akor yang sedang berlaku. Berdasarkan penjelasan di atas, fungsi fitness dapat menilai untuk teori harmoni dengan melihat kesesuaian antara nada-nada di aransemen selain nada melodi, dengan akor yang sedang berlaku. Nilai fungsi fitness untuk teori harmoni akan semakin tinggi jika semakin banyak nada yang bersesuaian dengan akor, dan akan berkurang jika terdapat nada yang tidak bersesuaian dengan akor. Nilai fungsi fitness juga akan bertambah jika nada terendah adalah nada inversi pertama atau nada inversi kedua. 3.2.1.3 Penilaian Berdasarkan Teori Instrumentasi (Piano) Teori instrumentasi berkaitan dengan kesesuaian hasil aransemen jika dimainkan di suatu instrumen berdasarkan karakteristik dari instrumen tersebut. Sesuai dengan batasan yang diberikan, maka instrumen yang akan dianalisis adalah piano. III-3

Berikut ini adalah karakteristik dari piano yang akan mempengaruhi baik buruknya hasil aransemen jika dimainkan di piano. 1. Nada untuk tangan kanan lebih tinggi dari nada untuk tangan kiri. Piano dimainkan dengan dua tangan. Dengan begitu, partitur untuk piano terdiri dari dua paranada. Paranada atas memuat nada untuk dimainkan tangan kanan, paranada bawah memuat nada untuk dimainkan tangan kiri. Nada-nada yang dimainkan tangan kanan biasanya lebih tinggi daripada nada-nada yang dimainkan tangan kiri. Berdasarkan karakteristik tersebut, maka hasil aransemen akan dinilai baik jika semakin banyak jumlah nada untuk tangan kanan yang lebih tinggi dari nada untuk tangan kiri. 2. Jumlah maksimal nada yang dapat dimainkan satu waktu adalah sepuluh nada. Setiap jari normalnya hanya memainkan satu nada dalam satu waktu, sehingga setiap tangan maksimal memainkan lima nada. Oleh karena itu, dalam satu waktu maksimal ada sepuluh nada yang dapat dimainkan. Hasil aransemen akan dikatakan baik jika dalam setiap waktu jumlah nada yang dimainkan tidak lebih dari sepuluh. 3. Jangkauan maksimal nada yang dimainkan satu tangan dalam satu waktu adalah satu oktaf Jangkauan nada yang dimainkan satu tangan dibatasi oleh lebar tangan manusia. Jika terdapat jangkauan nada yang lebih dari lebar tangan manusia, maka nada tersebut akan sulit dimainkan. Oleh karena itu, hasil aransemen akan dikatakan baik jika seluruh nada yang dimainkan dalam satu waktu tidak lebih dari satu oktaf. 4. Nada melodi dimainkan sebagai nada tertinggi Nada melodi harus menjadi nada yang dominan dalam sebuah lagu. Biasanya nada melodi dimainkan lebih keras daripada nada lain di satu waktu. Berkaitan dengan batasan bahwa perangkat lunak tidak menangani dinamika, maka untuk membuat nada melodi tetap dominan dapat dilakukan dengan cara memainkan nada melodi sebagai nada tertinggi dalam satu waktu. III-4

3.2.2 Kromosom Algoritma genetika akan memproses satu frase melodi masukan yang dapat dibagibagi dalam satuan ketukan terkecil sesuai dengan batasan perangkat lunak, yaitu sebesar seperenambelas ketukan. Jumlah ketukan seperenambelas dalam satu frase melodi adalah sebanyak N ketukan. Satu frase aransemen merupakan sebuah kemungkinan solusi yang memiliki sejumlah N ketukan ketukan seperenambelas sebagai parameternya. Dengan demikian, satu frase aransemen dapat direpresentasikan sebagai satu kromosom, dan satu ketukan seperenambelas dapat direpresentasikan sebagai satu gen. 3.2.2.1 Representasi Gen Setiap gen memuat informasi mengenai nada-nada yang dimainkan di ketukan seperenambelas tersebut. Informasi yang harus dimiliki adalah sebagai berikut: 1. nada_kanan : Nada apa saja yang dimainkan oleh tangan kanan. Nada-nada ini digambarkan dalam partitur piano di garis paranada atas. 2. nada_kiri : Nada apa saja yang dimainkan oleh tangan kiri. Nada-nada ini digambarkan dalam partitur piano di garis paranada bawah. 3. sambungan_kanan : Apakah nada yang dimainkan oleh tangan kanan merupakan sambungan dari ketukan seperenambelas sebelumnya. Informasi ini diperlukan untuk nada di paranada atas yang memiliki ketukan lebih dari seperenambelas. 4. sambungan_kiri : Apakah nada yang dimainkan oleh tangan kiri merupakan sambungan dari ketukan seperenambelas sebelumnya. Informasi ini diperlukan untuk nada di paranada bawah yang memiliki ketukan lebih dari seperenambelas. Informasi dalam satu gen berada di dalam jangkauan nada yang ditentukan. Secara keseluruhan jumlah nada pada alat musik piano adalah sebanyak delapan puluh delapan nada yang dibagi menjadi delapan oktaf. Dalam perangkat lunak yang akan dikembangkan, jangkauan nada dibatasi hanya sebanyak empat oktaf (empat puluh delapan nada), yaitu dari nada C di oktaf ke-2 hingga nada B di oktaf ke-5. Dalam merepresentasikan informasi yang mencakup empat oktaf nada, digunakan rangkaian bit berjumlah empat puluh delapan bit. Masing-masing bit mewakili satu III-5

nada. Bit paling kanan merepresentasikan nada tertinggi, dan bit paling kiri merepresentasikan nada terendah. Gambar III.2 menggambarkan posisi nada dan nomor representasi bitnya. Gambar III.2 Jangkauan Nada dan Representasinya Gambar III.3 menggambarkan contoh representasi nada_kanan dan nada_kiri, yaitu nada-nada yang dimainkan dari sebuah partitur. Bit bernilai 1 jika nada dimainkan, dan bit bernilai 0 jika nada tidak dimainkan. Rangkaian bit di atas merepresentasikan nada_kanan, yaitu nada yang dimainkan tangan kanan. Rangkaian bit di bawah merepresentasikan nada_kiri, yaitu nada yang dimainkan tangan kiri. Gambar III.3 Contoh Representasi Informasi Nada yang Dimainkan Contoh partitur tersebut memiliki nilai rangkaian bit untuk nada_kanan dan nada_kiri sebagai berikut. nada_kanan = 000000000000 000000000000 100000000000 000000000000 nada_kiri = 000000000000 100000000000 000000000000 000000000000 Dalam partitur terdapat not-not yang memiliki nilai ketukan lebih dari seperenambelas. Untuk itu, diperlukan suatu tanda yang menyambungkan not saat ini dengan not sebelumnya karena nada_kanan dan nada_kiri dalam suatu gen hanya dapat menampung nada apa saja yang dimainkan dalam satu ketukan seperenambelas. III-6

Informasi mengenai sambungan dari ketukan seperenambelas sebelumnya disimpan dalam sambungan_kanan dan sambungan kiri. Bit bernilai 1 jika not tersambung dengan not sebelumnya, dan bit bernilai 0 jika not tidak tersambung dengan not sebelumnya. Untuk menjelaskan representasi sambungan_kanan dan sambungan_kiri, Gambar III.4 adalah contoh partitur dengan nilai not seperdelapan. Gambar III.4 Contoh Partitur dengan Nilai Not Seperdelapan Not seperdelapan dalam partitur tersebut dapat diubah menjadi dua not seperenambelas yang diberi tie. Kedua partitur tersebut akan menghasilkan hasil yang sama jika dimainkan. Gambar III.5 adalah partitur hasil ubahan. Gambar III.5 Partitur dengan Ubahan Nilai Not Informasi untuk sambungan not di partitur atas disimpan dalam sambungan_kanan. Bit ke-25 untuk ketukan seperenambelas kedua akan bernilai 1 karena not ke-25 merupakan sambungan dari ketukan seperenambelas sebelumnya. Informasi untuk sambungan not di partitur bawah disimpan dalam sambungan_kiri. Bit ke-13 untuk ketukan seperenambelas kedua akan bernilai 1 karena not ke-13 merupakan sambungan dari ketukan seperenambelas sebelumnya. Dengan demikian, untuk contoh partitur di atas di ketukan seperenambelas kedua, nilai sambungan_kanan dan sambungan_kiri adalah sebagai berikut. sambungan_kanan = 000000000000 000000000000 100000000000 000000000000 sambungan_kiri = 000000000000 100000000000 000000000000 000000000000 III-7

Secara keseluruhan, representasi gen merupakan rangkaian dari nilai bit keempat informasi. Berikut ini adalah rumusan untuk gen, yaitu satu ketukan seperenambelas. gen = [inf1 inf 2 inf 3 inf4] inf i = informasi ke-i Sebagai contoh, di bawah ini adalah representasi gen untuk ketukan seperenambelas kedua berdasarkan partitur di Gambar III.4. nada_kanan = 000000000000 000000000000 100000000000 000000000000 nada_kiri = 000000000000 100000000000 000000000000 000000000000 sambungan_kanan = 000000000000 000000000000 100000000000 000000000000 sambungan_kiri = 000000000000 100000000000 000000000000 000000000000 3.2.2.2 Keseluruhan Kromosom Kromosom merupakan gabungan dari keseluruhan gen dengan setiap gen merepresentasikan setiap satu ketukan seperenambelas hingga membentuk satu frase aransemen. Berikut ini adalah rumusan untuk kromosom. kromosom = [p1 p2 p3.. pn ketukan ] pi = gen ke-i N ketukan = jumlah ketukan seperenambelas dalam satu frase masukan. N ketukan didapat dari perhitungan N 16 yaitu jumlah ketukan seperenambelas di satu bar (yaitu birama dibagi dengan seperenambelas) dikali dengan N bar yaitu jumlah bar dalam satu frase. Contohnya, satu frase masukan memiliki birama 2/4 sebanyak 4 bar. Dengan demikian, N ketukan = N 16 * N bar = ((2/4) / (1/16)) * 4 = 32 3.2.3 Metode Inisialisasi Populasi Teori harmoni dan teori melodi dapat dijadikan dasar dalam mendefinisikan metode insialisasi populasi yang telah mengarah ke solusi optimal. Dengan begitu, kromosom di populasi awal telah memenuhi teori melodi dan teori harmoni. III-8

Berikut ini adalah beberapa cara dalam membuat kromosom di populasi awal yang telah mengarah ke solusi optimal berdasarkan teori melodi dan teori harmoni. 1. Mengisi paranada atas dengan melodi, terutama untuk oktaf yang tinggi. Hal ini didasari oleh nada melodi yang biasanya dimainkan oleh tangan kanan dan di nada yang tertinggi. 2. Mengisi paranada bawah dengan nada harmoni yang sedang berlaku. Jumlah dan nada yang diisi dapat dipilih secara acak selama masih memenuhi akor. 3. Mengisi setiap ketukan dengan nada melodi dan nada harmoni. Oktaf dan paranada dapat dipilih secara acak di ketukan yang bersesuaian. 3.2.4 Operator Genetika Jenis operator genetika yang digunakan dalam kasus ini adalah persilangan dan mutasi. Terdapat satu jenis operasi persilangan dan tujuh jenis operasi mutasi yang diharapkan dapat memperluas variasi kromosom di populasi generasi selanjutnya. Contoh operasi genetika dijelaskan dalam Lampiran D. 3.2.4.1 Persilangan (crossover) Jenis operasi persilangan yang akan digunakan dalam kasus ini adalah uniform crossover, yaitu jika kromosom baru dibentuk dari bit-bit kromosom lama dengan aturan posisi acak. Aturan letak ketukan yang dipersilangkan ditentukan secara acak untuk masing-masing paranada. Jenis ini dipilih untuk memperluas variasi kromosom dalam satu populasi sehingga diharapkan dapat memperkecil kemungkinan hasil aransemen bersifat deterministik. 3.2.4.2 Mutasi 3.2.4.2.1 Operasi Mutasi 0 Operator mutasi 0 melakukan mutasi di bit-bit yang dipilih secara acak. Pemilihan oktaf, paranada dan nada dilakukan secara acak, sehingga setiap melakukan mutasi 0, posisi bit yang dimutasi tidak sama. Pemilihan jumlah ketukan dan letak ketukan juga dilakukan secara acak. Komponen yang dimutasikan juga dipilih secara acak, yaitu nilai nada atau sambungan nada. III-9

3.2.4.2.2 Operasi Mutasi I Operator mutasi I mengubah satu nilai nada harmoni selama akor berlaku. Jika di kromosom sebelumnya nada tersebut dimainkan maka di kromosom hasil nada tersebut tidak dimainkan, begitu juga sebaliknya. Nada ubahan dan letak oktafnya dipilih secara acak dari nada harmoni pada kromosom_harmoni. Nada tersebut dapat ditujukan baik untuk paranada atas atau bawah yang juga dipilih secara acak. 3.2.4.2.3 Operasi Mutasi II Operator mutasi II memiliki proses yang sama dengan operasi mutasi I, yaitu mengubah satu nilai nada di ketukan tertentu. Perbedaan di antara kedua operasi terletak pada nada ubahan yang diambil. Untuk operasi mutasi II, nada ubahan dan letak oktafnya dipilih secara acak tidak berdasarkan kromosom_harmoni. Oleh karena itu, nada ubahan dapat berupa nada harmoni ataupun juga nada yang tidak harmoni. Nada ubahan juga ditujukan baik untuk paranada atas atau bawah yang dipilih secara acak. Jumlah ketukan dan letak ketukan yang dimutasi juga dipilih secara acak. 3.2.4.2.4 Operasi Mutasi III Operator mutasi III mengubah nilai sambungan satu nada atau lebih di ketukanketukan tertentu. Jika di kromosom sebelumnya nada di suatu ketukan tersambung dari ketukan sebelumnya, maka di kromosom hasil nada di ketukan tersebut dimainkan tidak tersambung dari ketukan sebelumnya, begitu juga sebaliknya. Nada, oktaf dan paranada yang akan diubah dipilih secara acak, sedangkan ketukan-ketukan dipilih secara dengan pola mn atau mn+1, dimana m adalah 2, 4, 8 atau 16 n adalah bilangan cacah (0, 1, 2,...) 3.2.4.2.5 Operasi Mutasi IV Operator mutasi IV memiliki proses yang sama dengan operasi mutasi III, yaitu mengubah nilai sambungan satu nada atau lebih di ketukan-ketukan tertentu. Perbedaannya terletak pada cara pemilihan ketukan yang akan dimutasi. Untuk operasi mutasi IV, ketukan-ketukan yang akan diubah dipilih secara acak, begitu juga nada, oktaf dan paranadanya. III-10

3.2.4.2.6 Operasi Mutasi V Operator mutasi V mengubah seluruh nilai nada dan sambungan di suatu ketukan, oktaf dan paranada menjadi 0. Letak ketukan yang akan dimutasi dipilih secara acak, begitu juga dengan oktaf dan paranada. 3.2.4.2.7 Operasi Mutasi VI Operator mutasi VI memiliki proses yang sama dengan operasi mutasi V, yaitu mengubah nilai nada dan sambungan di suatu ketukan menjadi 0. Ketentuan tambahannya adalah untuk paranada atas, oktaf yang dimutasikan adalah oktaf ke-2 dan oktaf ke-3, sedangkan untuk paranada bawah, oktaf yang dimutasikan adalah oktaf ke-4 dan oktaf ke-5. Letak ketukan yang akan dimutasi dipilih secara acak. 3.2.5 Seleksi Natural Seleksi natural merupakan sifat penting yang harus dimiliki algoritma genetika dalam mencapai solusi optimal. Proses ideal dalam algoritma genetika adalah terbentuknya kromosom-kromosom di populasi baru yang lebih baik dari populasi sebelumnya. Secara garis besar, proses seleksi natural diilustrasikan dalam Gambar III.6. Gambar III.6 Proses Seleksi Natural Proses seleksi natural dapat dilakukan dengan melakukan operasi genetika terhadap kromosom di populasi lama. Untuk kasus ini, operasi persilangan dilakukan terhadap populasi lama dan hasilnya disimpan dalam populasi hasil. Setelah itu, operasi mutasi III-11

dilakukan terhadap populasi lama dan populasi hasil. Kemudian dilakukan evaluasi terhadap populasi lama dan populasi hasil, dan dipilih sejumlah N Populasi kromosom terbaik dari kedua populasi untuk menjadi populasi generasi selanjutnya. 3.3 Preprosesor Preprosesor dilakukan sebelum algoritma genetika. Proses ini bertujuan untuk mengambil informasi penting dari file masukan yang akan diperlukan dalam proses algoritma genetika. Proses-proses yang dilakukan dalam Preprosesor adalah membaca file dengan format MusicXML, memilah-milah informasi apa saja yang perlu diambil, dan kemudian menyimpan informasi tersebut dalam bentuk yang sesuai dengan proses algoritma genetika. Informasi utama yang perlu diambil adalah nada-nada melodi dalam frase masukan yang disimpan dalam kromosom_melodi, dan nada-nada akor, nada inversi pertama dan nada inversi kedua yang disimpan dalam kromosom_harmoni. Kedua hasil tersebut digunakan dalam algoritma genetika untuk mencari solusi optimal. 3.3.1 Informasi Melodi Informasi nada-nada melodi dari file masukan dalam format MusicXML akan diubah menjadi format kromosom, yaitu kromosom_melodi. Informasi yang perlu diambil untuk membuat kromosom_melodi adalah sebagai berikut. 1. Nada-nada apa saja yang dimainkan di satu waktu, letak oktaf dan paranada dari masing-masing nada 2. Berapa ketukan seperenambelas nada-nada tersebut dimainkan, di ketukan ke berapa nada-nada dimulai dan di ketukan ke berapa nada-nada selesai dimainkan Nada melodi yang didapat dari file masukan disusun berdasarkan letak dan jumlah ketukan seperenambelas. Nada tersebut disimpan dalam kromosom untuk nada_kanan dan sambungan_kanan., yaitu nada pada paranada atas yang dimainkan oleh tangan kanan karena pada umumnya nada melodi dimainkan oleh tangan kanan. III-12

3.3.2 Informasi Harmoni Informasi nada-nada harmoni sesuai akor dari file masukan dalam format MusicXML akan diubah menjadi format kromosom, yaitu kromosom_harmoni. Informasi yang perlu diambil untuk membuat kromosom_harmoni adalah sebagai berikut. 1. Akor apa yang berlaku di satu waktu, mencakup akar dan jenis dari akor 2. Nada akar, inversi pertama dan inversi kedua dari akor 3. Berapa ketukan seperenambelas akor tersebut berlaku, di ketukan ke berapa nadanada dimulai dan di ketukan ke berapa akor selesai dimainkan Nada harmoni dapat didefinisikan berdasarkan akar dan jenis dari akor yang berlaku, mencakup seluruh nada yang memenuhi akor tersebut di keempat oktaf. Seluruh nada akor, inversi pertama dan inversi kedua disusun berdasarkan letak dan jumlah ketukan seperenambelas dan disimpan dalam kromosom untuk nada_kanan dan nada_kiri. 3.4 Postprosesor Postprosesor akan mengubah informasi-informasi hasil aransemen dalam format kromosom menjadi format MusicXML. Informasi yang akan dicatat berdasarkan format kromosom adalah sebagai berikut. 1. Nada-nada yang dimainkan dalam satu bar sesuai dengan urutan ketukan 2. Letak oktaf dan paranada dari masing-masing nada Selain informasi tersebut, terdapat informasi tambahan yang ditulis ke file keluaran. Berikut ini adalah informasi yang termasuk. 1. Daftar instrumen dalam partitur. Sesuai batasan, daftar instrumen yang akan digunakan hanya piano yang terdiri dari dua paranada 2. Birama yang digunakan dalam aransemen. 3. Kunci dari masing-masing paranada. 4. Tempo dari lagu 5. Tangga nada dasar lagu. III-13