Algoritma Genetika

1 06 2016

Algoritma Genetika merupakan suatu metode optimasi untuk mencari solusi yang optimal dari suatu permasalahan. Algoritma Genetika banyak digunakan untuk mencari solusi masalah optimasi penjadwalan. Penjadwalan yang umumnya bersifat kompleks tidak mengijinkan sisi otak manusia untuk mencarikan solusi yang optimal dengan mudah. Dengan Algoritma Genetika, hal-hal yang perlu dihindarkan dalam pembuatan jadwal bisa dihilangkan, dan semua bentuk solusi yang menguntungkan pihak-pihak yang terkait akan lebih mudah untuk didapatkan.

Algoritma Genetika mempunyai metodologi optimasi sederhana sebagai berikut:
1. Menentukan populasi solusi sejumlah tertentu
2. Menghitung nilai fitnes function semua solusi yang ada di dalam populasi
3. Memilih beberapa solusi dengan nilai fitnes function yang paling tinggi
4. Melakukan optimasi dengan cara mutasi dan crossover sebanyak yang diperlukan
5. Menentukan solusi terbaik sebagai solusi terhadap permasalahan yang dioptimasi

Dalam menerapkan Algoritma Genetika untuk memecahkan masalah optimasi, perlu dilakukan analisa terhadap permasalahan yang akan dicarikan solusinya. Dalam menganalisa permasalahan, ada dua istilah yang muncul:
1. Hard Constraint: yang merupakan batasan yang ada dalam permasalahan yang akan dicarikan solusi, yang tidak boleh dilanggar sama sekali. Solusi yang akan menjadi bagian dari populasi, adalah solusi yang tidak melanggar Hard Constraint ini.
2. Soft Constraint: yang merupakan batasan yang ada dalam permasalahan yang akan dicarikan solusi, tetapi dalam pencarian solusi, batasan ini masih bisa dilanggar.

Dari kedua istilah tersebut, yang mempengaruhi bagaimana suatu solusi akan dikatakan lebih baik dari solusi yang lain adalah dengan melihat kadar pelanggaran yang dilakukan terhadap Soft Constraint. Makin banyak Soft Constraint yang dilanggar, makin buruk nilai dari solusi tersebut. Nilai dari solusi yang dimaksud di sini sering diistilahkan dengan nama Fitness Function. Fitness Function ini merupakan akumalasi dari nilai penalti yang didapat dari pelanggaran terhadap Soft Constraint yang yang ada.

Selain pelanggaran terhadap Soft Constraint, nilai dari Fitness Function ini juga bisa didapatkan dari penambahan nilai bonus terhadap hal-hal ideal yang bisa dimasukkan dalam pembentukan solusi. Solusi yang bisa memberikan benefit kepada organisasi baik secara perorangan maupun secara keseluruhan organisasi, umumnya bisa dianggap memberikan nilai tambah terhadap solusi yang dibentuk.

Langkah selanjutnya yang dilakukan dalam proses penerapan Algoritma Genetika adalah analisa dan disain sistem. Analisa dan disain sistem terbentuk dari pendefinisian proses-proses yang tercakup dalam sistem, pembentukan basis data, dan juga disain antar muka pengguna. Untuk tulisan ini, analisa dan disain yang dibahas terbatas pada bagaimana membentuk basis data yang diperlukan dalam pemodelan permasalahan optimasi menggunakan Algoritma Genetika.

Umumnya bentuk basis data yang diperlukan dalam penerapan Algoritma Genetika adalah:
1. Tabel Detail Solusi (Gen)
2. Tabel Solusi (Kromosom)
3. Tabel Master yang mendukung isian Tabel Detail Solusi dan Tabel Solusi

Beberapa istilah yang muncul dalam Algoritma Genetika yang juga sering membingungkan pengguna adalah istilah-istilah yang kaitannya dengan Ilmu Biologi seperti istilah Gen dan Kromosom. Dalam pembentukan disain basis data sudah disebutkan bahwa Gen merupakan Detail Solusi, sedangkan Kromosom adalah Solusi. Salah satu contoh penggunaan istilah Gen dan Kromosom dalam memecahkan masalah penjadwalan: bentuk Kromosom (Solusi) dari permasalahan tersebut misalnya adalah Jadwal Mengajar di Sekolah A Selama Seminggu, sedangkan bentuk Gen (Detail Solusi)-nya adalah Guru A Mengajar Matematika di Kelas IA Pada Hari Senin Sesi Pertama. Dimana, sejumlah Gen (Detail Solusi) yang ada akan membentuk suatu Kromosom (Solusi). Jadi istilah ilmiah yang ada merupakan representasi dari permasalahan yang diangkat untuk dicarikan solusinya.

Isian dari Tabel Master yang mendukung pengembangan sistem Algoritma Genetika ini sangat tergantung pada hal-hal yang muncul pada saat melakukan analisa permasalahan. Beberapa hal yang muncul pada Hard Constraint, Soft Constraint, serta Nilai Bonus terhadap solusi akan menjadi bagian dalam pembentukan informasi yang tertampung di dalam Tabel Master yang diperlukan dalam penerapan Algoritma Genetika. Dari contoh bentuk Gen (Detail Solusi) yang diberikan di atas (Guru A Mengajar Matematika di Kelas IA Pada Hari Senin Sesi Pertama), Tabel Master yang diperlukan dalam sistem termasuk Tabel Master Guru, Tabel Master Mata Pelajaran, Tabel Master Kelas, dan Tabel Master Waktu Mengajar.

Dari tulisan di atas, hal-hal utama yang diperlukan untuk menerapkan Algoritma Genetika dalam permasalahan optimasi sudah diberikan. Beberapa hal yang juga sering dibahas dalam penjelasan Algoritma Genetika adalah metode-metode yang digunakan untuk melakukan Mutasi dan Crossover, yang tentunya perlu dipelajari tersendiri, walaupun untuk tingkat pemula, mungkin cukup menggunakan metode sederhana misalnya metode random.

Demikian sedikit tulisan tentang penerapan Algoritma Genetika dalam mencari solusi yang paling optimal dari suatu permasalahan optimasi. Semoga bermanfaat.





Performance Reports of A Project Activity

21 04 2016

Dalam tulisan terdahulu, telah disampaikan bahwa aktivitas yang tercakup dalam suatu kegiatan project, harus dianalisa dengan detail dalam bentuk diskripsi yang idealnya memuat semua hal yang perlu dicakup di dalam pelaksanaan kegiatan tersebut. Dalam menganalisa suatu aktivitas dan sebagai bagian dari kegiatan project management, beberapa hal perlu untuk dipersiapkan sebagai bentuk pertanggung jawaban performance dari kegiatan project tersebut. Komponen pendukung tersebut mencakup:

  1. Dasar Hukum: yang dapat berupa dasar hukum yang berlaku umum atau yang berlaku spesifik untuk suatu unit organisasi
  2. Standard Operational Procedure (SOP)/Buku Pedoman: yang merupakan panduan/pedoman cara kerja baku pelaksanaan dan penyelesaian aktivitas project.
  3. Perencanaan: yang merupakan dokumen penting untuk memberikan kerangka acuan kerja penyelesaian aktivitas baik dari sisi cakupan kerja, waktu, penanggung jawab, biaya, dan pendukung lain yang diperlukan.
  4. Proses: yang merupakan bagian dari pertanggung jawaban terhadap SOP terkait bagaimana aktivitas tersebut dilaksanakan. Masing-masing proses secara umum akan memerlukan input dan output yang umumnya memerlukan bentuk fisik sebagai bukti kerjanya.
  5. Laporan Progress: yang merupakan kegiatan yang membandingkan performance aktivitas antara perencanaan yang telah ditetapkan dan realisasi penyelesaian aktivitas.
  6. Pengendali: yang merupakan kegiatan untuk mengendalikan progress maupun proses pelaksanaan aktivitas. Pengendali bisa dalam bentuk rapat pengendalian ataupun arahan/kebijakan dalam bentuk pengendalian resiko, kualitas, dan progress.
  7. Output: yang merupakan hasil akhir dari pelaksanaan kegiatan.
  8. Penyelesaian: yang merupakan penanda bahwa aktivitas sudah selesai dilaksanakan. Bentuk umum dari penyelesaian ini umumnya berupa Berita Acara Serah Terima (BAST) terhadap output hasil aktivitas project.
  9. Laporan Kegiatan: yang merupakan bentuk laporan umum yang memberikan informasi pelaksanaan kegiatan, progress dari waktu ke waktu, penyimpangan SOP yang terjadi selama pelaksanaan pekerjaan, permasalahan dan solusi yang diambil selama pelaksanaan aktivitas, dan dokumentasi foto dari pelaksanaan aktivitas.
  10. Catatan Capaian Kinerja Perorangan: sebagai pertanggung jawaban kinerja secara perorangan terhadap pelaksanaan aktivitas.
  11. Catatan Capaian Kinerja Organisasi: sebagai pertanggung jawaban kinerja secara organisasi terhadap pelaksanaan aktivitas.&(

Laporan-laporan atau dokumentasi ini akan memberikan gambaran bagaimana aktivitas proyek yang dilaksanakan memenuhi unsur akuntabilitas. Dengan bentuk laporan dan dokumentasi ini, akuntabilitas tersebut bisa dilihat secara hitam di atas putih, bukan dari penjelasan verbal, yang sering dilakukan. Dengan penyediaan dokumentasi seperti ini, konsistensi antara apa yang dilaporkan dengan apa yang benar-benar dilaksanakan di lapangan bisa terpantau.

Hal lain yang menjadi keuntungan dengan adanya bentuk pelaporan dan dokumentasi ini adalah adanya kontinuitas efek serta pembelajaran yang berkelanjutan terhadap suatu kegiatan tertentu. Dengan tercatatnya permasalahan dan solusi, pengendalian resiko, kualitas, dan progress, segala bentuk persiapan untuk kegiatan yang sama di masa yang akan datang, sudah tersedia, tanpa harus menguras tenaga, pikiran, dan waktu yang lebih banyak.





Visits to Malaysia

21 04 2016

Sudah beberapa kali berkunjung ke Malaysia, tetapi belum sempat menulis tentang tempat yang sudah dikunjungi tersebut. Kalau tidak salah ingat, sudah 3 (tiga) kali saya pergi ke Malaysia. Pertama saat melakukan kunjungan penelitian dalam rangka meninjau kegiatan penelitian mahasiswa Perancis di Help University dan juga dalam kaitan dengan proyek penelitian yang dilaksanakan dalam sebuah projek yang dinamakan Expedo. Yang kedua, adalah dalam rangka kunjungan kerja rombongan ke Malaysia dan Singapore. Dan yang ketiga, dalam rangka mengantar mahasiswa dual degree yang akan wisuda Bachelor of Information Technology di Help University, Malaysia.

Kesan yang saya dapat terkait kunjungan saya ke Malaysia, adalah pertama, kegiatan penelitian di tingkat universitas di Malaysia sudah demikian maju, dan bisa bersaing dengan penelitian tingkat internasional dari universitas dan lembaga penelitian di negara maju. Tempat-tempat nongkrong dan tempat wisatanya juga sudah ditata dengan baik, sehingga ada kesan modernnya, dimana tempat-tempat tersebut sudah ditata sedemikian rupa sehingga pengunjung mempunyai kesempatan untuk melihat berbagai macam atraksi selama masa kunjungan mereka.

Beberapa tempat wisata yang sempat saya kunjungi selama berada di Malaysia antara lain Petronas Twin Tower, Genting Highland, Batu Cave, Universitas Lim Kok Wing, Pusat Pemerintahan Putra Jaya, dan beberapa tempat lainnya. Berikut adalah gambar yang sempat saya ambil, yang mungkin bisa menggambarkan kemajuan pariwisata Malaysia saat ini.

PetronasPetronasPetronasPutrajayaGentingGentingPutrajayaLim Kok Wing UniversityBatu CaveBatu CaveBatu CaveIstana Kerajaan





Tenganan – The Bali Aga Village

20 04 2016

Tenganan merupakan salah satu desa asli Bali (Bali Aga) yang masih mempertahankan pola hidup dan budaya asli yang pernah ada. Tenganan terletak di kabupaten Karangasem. Letaknya berdekatan dengan daerah Candidasa. Tempat tinggal di desa tenganan masih ditata dengan pola lama, dan saling berdampingan satu dengan yang lainnya. Halaman depan rumah merupakan sebuah lapangan yang luas yang dipakai bersama-sama oleh penduduk desa tenganan dalam melakukan kegiatan upacara desa yang dilakukan secara bersama-sama.

Tenganan mempunyai keunikan karya seni berupa tulisan di atas lontar dan kain ndek gringsing tenganan yang mempunyai ciri khas dan sudah banyak difabrikasi di luar desa tenganan.

Dalam suatu kesempatan kami sekeluarga sempat untuk berkunjung ke sana untuk melihat keadaan desa tenganan, dan berikut ada foto-foto yang kami ambil saat berkunjung ke sana.

TengananTengananTengananTengananTengananTengananTengananTengananTengananTengananTengananTenganan

Travelling Bali Part 2 Direction: Untuk mencapai Desa Tenganan Karangasem, anda perlu untuk keluar kota Denpasar melalui jalan By Pass Ida Bagus Mantra terus ke arah timur mengikuti jalan besar melewati Padangbai. Sebelum sampai di Candidasa, ada jalan belok ke kiri dari jalan besar. Letak Desa Tenganan Karangasem dapat dilihat di peta pada nomor 19.





An Introduction to Project Management

13 03 2015

Project Management merupakan suatu kegiatan yang bertujuan untuk memastikan bahwa project yang ditangani bisa diselesaikan sesuai dengan yang diharapkan. Project Management yang baik akan mempunyai kemungkinan yang lebih besar untuk membuat suatu project berhasil dibandingkan dengan project management yang kurang teratur, apalagi yang tidak memiliki pola project management sama sekali.

Project management mempunyai beberapa aspek yang menjadi perhatian termasuk di dalamnya adalah cakupan, waktu, biaya, dan kualitas dari project yang sedang dikerjakan. Beberapa aspek lain yang bisa dikatakan sebagai aspek pendukung juga perlu mendapat perhatian yang khusus termasuk sumber daya manusia, komunikasi, resiko, dan pengadaan barang dan jasa. Untuk mengatakan bahwa suatu project sudah melalui proses project management yang bagus, ke-delapan aspek tersebut harus mendapat perhatian dan perencanaan untuk masing-masing aspek perlu untuk dilakukan secara menyeluruh.

Aspek cakupan yang merupakan aspek utama dalam pelaksanaan suatu project akan berisikan aktivitas yang perlu dilaksanakan untuk bisa menyelesaikan keseluruhan project. Untuk masing-masing aktivitas perlu untuk diset waktu yang diperlukan, biaya yang harus disediakan, dan kualitas yang akan dicapai. Ketiga aspek ini, perlu untuk diset per aktivitas yang didefinisikan sebagai bagian dari penyelesaian projek. Adapun aspek pendukung diperlukan untuk memastikan bahwa setiap aktivitas berjalan dengan baik. Mekanisme pengaturan SDM, pola komunikasi, manajemen resiko, dan pengadaan barang serta jasa, tidak perlu untuk diset per aktivitas, tetapi perlu untuk disediakan skemanya sehingga seluruh aktivitas bisa berjalan dengan lebih lancar.

Beberapa catatan yang perlu untuk mendapat perhatian dalam penentuan waktu, biaya, dan kualitas, adalah bahwa analisa mendalam perlu dilaksanakan untuk setiap aspek. Tips untuk melakukan analisa mendalam misalnya dengan mendeskripsikan setiap aktivitas dengan rinci sebelum menentukan keperluan waktu dan biaya. Sedangkan aspek kualitas perlu untuk memperhatikan output apa yang dihasilkan dalam setiap aktivitas sehingga dimensi kualitas untuk setiap output yang dikeluarkan bisa didefinisikan.

Sedangkan untuk aspek pendukung, berbagai skema perlu untuk disiapkan sehingga seluruh aspek pendukung bisa tersedia dengan optimal pada saat diperlukan.