APLIKASI PENJADWALAN MATA KULIAH MENGGUNAKAN ALGORITMA GENETIKA DENGAN FRAMEWORK CODEIGNITER

20:24 Pemrograman Web 14 Comments



Algoritma genetik adalah algoritma pencarian (algoritma pencarian) yang menggunakan prinsip seleksi alam dalam genetika untuk mengembangkan solusi untuk masalah-masalah. algoritma genetika adalah kelas algoritma pencarian stokastik berdasarkan biologi evolusi.

algoritma genetika terinspirasi munculnya teori-teori dalam ilmu biologi, begitu banyak istilah dan konsep dalam algoritma genetika biologi. Seperti namanya, adalah proses yang terjadi dalam algoritma genetika, mirip dengan apa yang terjadi pada evolusi biologis.

Ide dasar dari algoritma genetika adalah untuk mengelola populasi individu yang mewakili solusi calon masalah. Umumnya, algoritma genetika memiliki lima komponen dasar, yaitu:
1. tips presentasi genetik.
2. Bagaimana untuk membentuk populasi awal dari solusi.
3. Fungsi evaluasi yang saya-tingkat (Rating) solusi berdasarkan kesesuaian mereka.
4. Operator genetik yang mengubah komposisi genetik keturunan selama pemutaran.
5. Nilai untuk parameter dari algoritma genetika.

Algoritma mempertahankan populasi maksimum individu untuk setiap generasi. Setiap individu Menyatakan solusi yang mungkin untuk masalah yang dihadapi. Setiap individu dievaluasi untuk memberikan ukuran kebugaran mereka. Nilai fitness adalah nilai tingkat ketangguhan menunjukkan kromosom dalam adaptasi untuk masalah ini.

Salah satu aplikasi untuk memecahkan algoritma genetika untuk masalah optimasi adalah untuk mendapatkan nilai solusi optimal untuk masalah yang banyak kemungkinan solusi. Daya tarik dari algoritma genetika adalah kesederhanaan dan kemampuan untuk menemukan solusi yang baik untuk masalah cepat dan kompleks.

Kelebihan Algoritma Genetika

Beberapa hal, seperti melalui algoritma genetika adalah sebagai berikut:
1. Optimasi dengan variabel kontinu atau diskrit,
2. memerlukan informasi non-derivatif,
3. Cari komprehensif, simultan sampling pada muatan permukaan,
4. Sehubungan dengan sejumlah besar variabel,
5. Cocok untuk komputer paralel,
6. Optimasi permukaan variabel untuk sangat kompleks (GA dapat melompat keluar dari minimum lokal)
7. Menyediakan jumlah yang optimal dari variabel, bukan solusi tunggal,
8. Dapat mengkodekan variabel sehingga optimasi dilakukan dengan pengkodean variabel dan
9. Menggunakan data numerik yang dihasilkan, eksperimental data atau analisis fungsi.

Algoritma genetika berbeda dari solusi set disebut populasi secara acak. Sementara setiap individu yang disebutkan dalam kromosom populasi yang mewakili masing-masing solusi dan untuk ketanggguhannya (Pusat) dievaluasi oleh fungsi yang telah ditentukan. Melalui proses seleksi alam pada operator genetik, gen dari dua kromosom (disebut orang tua) mengharapkan kromosom baru dengan tingkat kebugaran yang lebih tinggi dari generasi baru atau keturunan (anak) menghasilkan berikutnya. Kromosom disebut generasi dihitung ulang (generasi). Dalam setiap generasi, kromosom dievaluasi berdasarkan nilai fungsi fitness . Setelah beberapa generasi, algoritma genetika konvergen adalah kromosom terbaik, yang merupakan solusi optimal.

Dalam studi kasus kali ini saya punya aplikasi perencanaan untuk menghindari program pengulangan pada jadwal instruktur untuk mengajar. Ada beberapa tabel, unsur-unsur yang digunakan, yaitu tabel dosen, ruang kuliah.

masalah penjadwalan kuliah adalah salah satu yang sulit ketika kasus ini diselesaikan dengan metode konvensional seperti exhaust attack, brutus algorithm, maupun teknik-teknik lain sejenis dalam penyelesaiannya, sehingga sering ketika penjadwalan waktu perencanaan selesai secara manual. Masalah dalam penjadwalan kendala-biasanya berhubungan dengan pembatasan berikut:
1. Satu mata kuliah bisa mempunyai beberapa kelas, misal kelas A, B, C.
2. Seorang dosen bisa mengampu lebih dari satu mata kuliah di beberapa kelas.
3. Gabungan konstrain 1 dan 2 akan bertemu dengan hari jam mengajar.
4. Konstrain 3 akan bertemu dengan ruangan yang digunakan.

Penyelesaian masalah rumit dan membingunkan jika diselesaikan dengan cara konvensional atau manual. Dengan cara konvensional akan sangat tinggi untuk waktu yang lama karena julah iterasi membutukan. Secara manual akan membuat bingung dan memerlukan akurasi tinggi. Karena ada hal-hal yang harus diperhatikan adalah:
Satu ruangan hanya boleh digunakan oleh satu jadwal kuliah untuk 1 set jam kuliah, misal 3 SKS 1 mata kuliah di alokasikan jam 7.00 sampai 10.00 berarti untuk jam tersebut di sebuah ruang kuliah hanya boleh digunakan 1 mata kuliah pda satu kelas.
Tidak sembarang jam kuliah bisa digunakan oleh dosen tersebut, misalnya hari senin jam 7.00 sampai 10.00 dosen pengampu sebuah mata kuliah tidak bisa hadir, hanya bisa dihari selain hari senin.
Satu dosen tidak mungkin berada di sebuah jadwal untuk dua mata kuliah atau satu mata kuliah 2 kelas.

untuk menyederhanakan struktur kromosom dalam algoritma genetika, sebaiknya diatur dalam gen kromosom membentuk seperti sedemeikian, sebagai berikut:
Setiap gen akan berisi komponen : dosen, jadwal. Misalnya (D,J) à D adalah dosen, J adalah jadwal.
Subgen dosen terdiri dari : dosen, mata kuliah, kelas.
Subgen jadwal terdiri dari komponen : hari, jam, ruangan. Setiap korelasi dosen dengan jadwal diberikan derajat kehadiran dengan skala 1 – 9. Derajat 1 berarti dosen tidak bisa hadir, derajat 9 berarti dosen bisa hadir dengan pasti pada jadwal tersebut.
Nilai derajat kehadiran dari korelasi dosen-jadwal berkontribuasi pada nilai fitness kromosom. Misalnya jumlah gen dalam sebuah kromosom ada 10, maka nilai nilai fitness yang diinginkan adalah 9*10 = 90, hal ini berarti semua dosen bisa hadir dengan pasti pada setiap jadwal yang diberikan. Nilai fitness terendah adalah 9*1 = 9, yang artinya semua dosen tidak bisa hadir pada jadwal kuliah yang diberikan.

Berikut adalah hasil analisis data mentah dimasukkan sebagai komponen dalam pelaksanaan algoritma genetika. mengambil tagihan di bawah satu kasus di sebuah universitas swasta di mana penulis disajikan dengan mengikuti keterbatasan-keterbatasan (seperti kasus yang dijelaskan di atas):
1. Satu dosen bisa mengajar sembarang mata kuliah sembarang kelas (A,B,C).
2. Hari kuliah adalah senin sampai sabtu. Dengan jam kuliah mulai jam 7.00 sampai 16.00 (ada sedikit modifikasi pada jam kuliah).
3. 1 SKS mata kuliah berdurasi 1 jam.
4. Ruangan yang tersedia ada 4
5. Satu dosen tidak boleh berada pada dua jadwal untuk waktu/jam yang sama.
6. Tidak dikaitkan dengan pengambilan mata kuliah oleh mahasiswa yang biasanya bervariasi.
7. Untuk sebuah jadwal kuliah, seorang dosen mungkin tidak bisa hadir sehingga untuk jadwal tersebut harus dihindari, diprioritaskan pada jadwal yang dosen tersebut bisa pasti hadir.

Proses Berikut langkah - langkah untuk merek dari aplikasi:

1. Instal XAMPP

2. Impor database yang ada pada aplikasi

3. Salin proyek yang ada di htdocs map

4. Lakukan perubahan untuk konfigurasi dan kode sumber basis data

5. Pilih aplikasi di browser

6. Buat Proses Penjadwalan melalui tanah untuk membentuk tekanan tanpa pengulangan data jadwal kursus baru.




Nama : Yusep Muhamad Saefudin
NPM : 1134065
Kelas : D4 Teknik Informatika 3A

14 komentar: