Judul 1. Pendahuluan Deskripsikan system atau aplikasi yang anda presentasikan. Jelaskan tujuan atau objektif sistem yang dipresentasikan. Jelaskan keunggulan metode atau algoritma yang digunakan. 2. Pengenalan sistem Berikan gambaran yang jelas tentang system, arsitektur system. Buat blok diagram yang menjelaskan mekanisme kerja system. 2.1 Representasi Data masukan Buat analisis data masukan yan dibutuhkan oleh system. Tipe data, struktur data, struktur table dan parameter lain yang dibutuhkan 2.2 Mekanisme system Jelaskan proses-proses yang terjadi atau yang dilakukan oleh system, mulai dari menerima data masukan yang telah sesuai dengan kebutuhan system, tahap preprocessing (jk dibutuhkan), blok diagram algoritma atau metode, sampai menghasilkan keluaran yang sesuai dengan keinginan designer. Contoh : mengkonversi data gambar menjadi matriks 2 dimensi, dll 2.3 Representasi Ouput sistem Penjelasan bentuk, fungsi dan tujuan output 3. Analisis dan Implementasi Sistem Menjelaskan penerapan metode atau algoritma yang digunakan dengan menggunakan data yang ada atau digunakan sistem. Contoh kasus. Terdapat 5 buah kota yang akan dilalui oleh seorang pedangang keliling, misalnya Kota A,B,C,D,E. Perjalanan dimulai dari kota A dan berakhir di kota A. Jarak antar kota diperlihatkan pada graf di bawah ini: Pemilihan nilai fitness yang terendah sebagai syarat karena nilai tersebut yang merepresentasikan jarak terdekat yang dicari pada persoalan ini. Ada 4 kota yang akan menjadi gen dalam kromosom yaitu kota-kota selain kota asal. Inisialisasi Misalkan kita menggunakan 6 buah populasi dalam satu generasi, yaitu Evaluasi kromosom Kita akan menghitung nilai fitness dari tiap kromosom yang telah dibangkitkan: Seleksi kromosom Oleh karena pada persoalan TSP yang diinginkan yaitu kromosom dengan fitness yang lebih kecil akan mempunyai probabilitas untuk terpilih kembali lebih besar maka digunakan inverse. Dari probabilitas di atas dapat terlihat bahwa kromosom ke-1 mempunyai fitness paling kecil mempunyai probabilitas untuk terpilih pada generasi selanjutnya lebih besar dari kromosom lainnya. Untuk proses seleksi kita menggunakan rouletewheel, untuk itu kita terlebih dahulu menghitung persentasi dari masing-masing kromosom. Proses roulete-wheel adalah membangkitkan nilai acak R antara 0-1. Jika R[k]<Qk[k] maka kromosom ke-k sebagai induk, selain itu pilih kromosom ke-k sebagai induk dengan syarat Qk[k-1] < R[k] < Qk[k]. Kita putar roulete-wheel sebanyak jumlah kromosom yaitu 6 kali (membangkitkan bilangan acak R). Cross over ( Pindah Silang ) Pindah silang pada TSP dapat diimplementasikan dengan skema order crossover. Pada skema ini, satu bagian kromosom dipertukarkan dengan tetap menjaga urutan kota yang bukan bagian dari kromosom tersebut. Kromosom yang dijadikan induk dipilih secara acak dan jumlah kromosom yang dicrossover dipengaruhi oleh parameter crossover probability (ρc). Mutasi Pada kasus TSP ini skema mutasi yang digunakan adalah swapping mutation. yaitu teknik saling menukarkan antara satu gen dengan gen yang lain dalam satu individu. Algoritmanya adalah sebagai berikut: Bangkitan dua bilangan random (antara 0 sampai panjang kromosom) untuk setiap individu, sebanyak jumlah individu dalam populasi. Tukarkan gen dengan lokasi kedua bilangan tersebut dengan cara: Proses algoritma genetik untuk 1 generasi telah selesai. Maka nilai fitness setelah 1 generasi adalah: Capture script yang berkaitan dengan metode atau algoritma yang dibahas per tahap. Mulai dari awal sampai akhir. CONTOH Implementasi : (untuk algoritma genetik) o Inisialisasi variabel yang berkaitan private List<chromosome> GetInitialPopulation(int population) { List<chromosome> initPop = new List<chromosome>(); GeneticAlgo RandomGen = new GeneticAlgo(); for (int i = 0; i < population; i++) { List<int> genes = new List<int>(new int[] {0, 1, 2, 3, 4, 5, 6, 7}); Chromosome chromosome = new Chromosome(); chromosome.genes = new int[8]; for (int j = 0; j < 8; j++) { int geneIndex = (int)(RandomGen.GetRandomVal (0,genes.Count-1)+0.5); //randomly select a gene chromosome.genes[j] = genes[geneIndex]; genes.RemoveAt(geneIndex);//remove selected gene } initPop.Add(chromosome); } return initPop; } o Skema pengkodean { Script pengkodean ; } o Menghitung Nilai fitness { Script nilai fitness; } o Seleksi (metode yang digunakan) { Script selection; } o Cross over { Script crossover; } o Mutasi { Script nilai fitness; } Pada bagian contoh, script apa saja yang dimasukan disesuaikan dengan topik masingmasing 4. Kesimpulan dan saran Bagian kesimpulan menjelaskan apakah sistem telah mencapai tujuannya Bagian saran menjelaskan apa saja yang perlu diperbaiki agar tujuan sistem dapat tercapai lebih baik. 5. Referensi 6. Lampiran Screenshoot antar muka Screenshoot proses Screenshoot hasil CATATAN : UNTUK METODE LAIN DISESUAIKAN DENGAN PROSES MASING-MASING METODE. MULAILAH DENGAN INISIALISASI HINGGA MENGHASILKAN OUTPUT.