MASALAH PENUGASAN MAHASISWA DALAM PROGRAM KEGIATAN PENGABDIAN PADA MASYARAKAT MENGGUNAKAN METODE GOAL PROGRAMMING
ANIS FAUZIYYAH
DEPARTEMEN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2014
2
3
PERNYATAAN MENGENAI SKRIPSI DAN SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA Dengan ini saya menyatakan bahwa skripsi berjudul Masalah Penugasan Mahasiswa dalam Program Kegiatan Pengabdian pada Masyarakat Menggunakan Metode Goal Programming adalah benar karya saya dengan arahan dari komisi pembimbing dan belum diajukan dalam bentuk apa pun kepada perguruan tinggi mana pun. Sumber informasi yang berasal atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor.
Bogor, September 2014 Anis Fauziyyah NIM G54100005
4
ABSTRAK ANIS FAUZIYYAH. Masalah Penugasan Mahasiswa dalam Program Kegiatan Pengabdian pada Masyarakat Menggunakan Metode Goal Programming. Dibimbing oleh TONI BAKHTIAR dan FARIDA HANUM. Goal programming merupakan perluasan dari pemrograman linear yang mampu mengoptimalkan beberapa tujuan berbeda dengan meminimumkan besarnya penyimpangan yang terjadi. Karya ilmiah ini membahas model goal programming untuk menyelesaikan masalah penugasan mahasiswa dalam program kegiatan pengabdian pada masyarakat di Kabupaten Bondowoso, Jawa Timur, yang dilakukan oleh mahasiswa Fakultas Kedokteran Hewan IPB. Model ini bertujuan memaksimumkan keinginan mahasiswa terhadap pemilihan waktu, jenis kegiatan, dan lokasi penugasan. Koordinator memberikan tingkat ideal untuk memenuhi sumber daya yang diperlukan dalam penyelesaian kegiatan di tempat tertentu dan waktu tertentu. Sedangkan mahasiswa memberikan keinginannya terhadap beban waktu bertugas serta batas toleransinya dan pemilihan lokasi kegiatan. Keluaran utama dari model adalah jadwal penugasan menurut waktu dan lokasi yang dipilih. Jadwal tersebut dapat ditampilkan menurut perspektif mahasiswa dan koordinator. Kata kunci : goal programming, penugasan, penjadwalan
ABSTRACT ANIS FAUZIYYAH. Student Assignment Problems in Community Service Activity Programs Using Goal Programming. Supervised by TONI BAKHTIAR and FARIDA HANUM. Goal programming is an extension of linear programming that can optimize several different purposes by minimizing the amount of deviation. This paper discusses a goal programming model to solve the student assignment problem in community service activities program in Bondowoso regency, East Java. The assignment is performed by the students of the Faculty of Veterinary Medicine IPB. This model aims to maximizes the student’s preferences for time slots, type of activity, and location of assignment. The coordinator provides an ideal level to meet the necessary resources in the completion of activities in a particular place and a particular time. While students giving their preferences to duty time load, tolerance limits and site selection activities. The main output of the model is the assignment schedule according to the time and location selected. This schedule can be displayed according to the perspective of the students and coordinator. Keywords: assignment, goal programming, scheduling
5
MASALAH PENUGASAN MAHASISWA DALAM PROGRAM KEGIATAN PENGABDIAN PADA MASYARAKAT MENGGUNAKAN METODE GOAL PROGRAMMING
ANIS FAUZIYYAH
Skripsi sebagai salah satu syarat untuk memperoleh gelar Sarjana Sains pada Departemen Matematika
DEPARTEMEN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2014
6
8
PRAKATA Untaian rasa syukur penulis panjatkan kepada Allah subhanahu wa ta’ala atas segala nikmat dan karunia-Nya sehingga karya ilmiah yang berjudul Masalah Penugasan Mahasiswa dalam Program Kegiatan Pengabdian pada Masyarakat Menggunakan Metode Goal Programming dapat diselesaikan tanpa hambatan yang berarti. Shalawat serta salam tak lupa penulis sampaikan kepada Rasulullah shalallahu’alaihi wasallam, yang syafa’atnya selalu dinantikan di yaumil akhir nanti. Terima kasih penulis sampaikan kepada Dr Toni Bakhtiar, MSc selaku dosen pembimbing I, Dra Farida Hanum, MSi selaku dosen pembimbing II, dan Muhammmad Ilyas, MSi MSc selaku dosen penguji yang telah banyak menyediakan waktu dan memberikan ilmu, nasihat, masukan, arahan serta kesabaran, saran dan kritik yang membangun dan sangat berarti bagi penulis. Ungkapan terima kasih juga penulis sampaikan kepada ibu, bapak, adik-adik dan seluruh keluarga yang selalu memberikan doa, semangat, motivasi, dan kasih sayang yang tiada henti. Tidak lupa penulis ucapkan terima kasih kepada seluruh dosen dan segenap staf Departemen Matematika, teman-teman seperjuangan Matematika 47 yang tetap ceria, keluarga Tis’atul Muharrik, keluarga Cendana 53 dan semua teman yang senantiasa memberikan doa, semangat, motivasi, dan kebersamaannya. Semoga karya ilmiah ini bermanfaat bagi dunia ilmu pengetahuan khususnya bidang matematika dan menjadi inspirasi bagi penelitian selanjutnya.
Bogor, September 2014 Anis Fauziyyah
9
DAFTAR ISI DAFTAR TABEL
x
DAFTAR GAMBAR
x
DAFTAR LAMPIRAN
x
PENDAHULUAN
1
Latar Belakang
1
Tujuan
1
TINJAUAN PUSTAKA
2
MODEL PENUGASAN
4
Deskripsi Masalah
4
Formulasi Masalah
4
STUDI KASUS DAN PENYELESAIANNYA
7
HASIL DAN PEMBAHASAN
13
SIMPULAN DAN SARAN
22
Simpulan
22
Saran
22
DAFTAR PUSTAKA
22
LAMPIRAN
24
RIWAYAT HIDUP
44
10
DAFTAR TABEL 1 Daftar blok waktu 2 Daftar lokasi penugasan mahasiswa 3 Daftar kecamatan yang dapat dijangkau dan tidak dapat dijangkau pada pergantian shift 4 Daftar jumlah ideal mahasiswa di kecamatan 𝑗 pada waktu 𝑘 (𝜇𝑗𝑘 ) 5 Jumlah dan persentase keinginan mahasiswa 6 Parameter lain yang digunakan pada model penugasan mahasiswa 7 Nilai variabel deviasi minimum yang dihasilkan 8 Kekurangan jumlah mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘 9 Jumlah mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘a 10 Jumlah mahasiswa dengan pemenuhan keinginan maksimum terhadap sasaran 11 Nilai variabel deviasi yang dihasilkan saat meminimumkan jumlah mahasiswa 12 Jadwal penugasan berdasarkan perspektif mahasiswa 13 Jadwal penugasan berdasarkan perspektif koordinator
8 8 9 10 11 11 13 15 15 16 17 18 20
DAFTAR GAMBAR 1 Peta lokasi kegiatan di Kabupaten Bondowoso 2 Persentase mahasiswa berdasarkan jumlah blok waktu yang dibebankan 3 Persentase mahasiswa berdasarkan kelebihan jumlah ideal waktu dari yang diinginkan
9 14 14
DAFTAR LAMPIRAN 1 Sintaks program LINGO 11.0 untuk menyelesaikan contoh kasus pemrograman linear 2 Sintaks program LINGO 11.0 untuk menyelesaikan contoh kasus goal programming 3 Sintaks program LINGO 11.0 untuk menyelesaikan contoh kasus goal programming dengan bobot 4 Pemilihan blok waktu setiap mahasiswa terhadap jenis kegiatan (𝛼𝑖𝑘 ) 5 Jumlah ideal blok waktu yang diinginkan setiap mahasiswa (𝜏𝑖 ) 6 Lokasi penugasan/kecamatan yang diinginkan setiap mahasiswa (𝛽𝑖𝑗 ) 7 Sintaks program LINGO 11.0 untuk masalah penugasan mahasiswa menggunakan goal programming dengan meminimumkan variabel deviasi 8 Sintaks program LINGO 11.0 untuk masalah penugasan mahasiswa menggunakan goal programming dengan meminimumkan jumlah mahasiswa
24 24 25 26 27 28
29
37
PENDAHULUAN Latar Belakang Usaha dalam meningkatkan kesejahteraan masyarakat dapat dilakukan oleh masyarakatnya sendiri, pemerintah, ataupun keduanya. Perguruan tinggi melalui Tridharma ketiga, yaitu pengabdian pada masyarakat, memiliki tujuan yang sama dan berperan penting dalam usaha ini. Dengan dasar ilmu pengetahuan yang dimiliki mahasiswa diharapkan dapat memberi dukungan inovasi pemikiran, teknologi aplikatif tepat guna serta pengembangan lainnya demi mewujudkan kondisi masyarakat yang lebih baik. Untuk menyalurkan kemampuan tersebut tak jarang perguruan tinggi memiliki program pengabdian pada masyarakat yang melibatkan mahasiswa dalam pelaksanaannya. Program ini juga dapat meningkatkan pengetahuan, wawasan, dan softskill mahasiswa untuk menjawab tuntutan keprofesian dalam masyarakat. Oleh karena itu, diperlukan peran koordinator yang dapat mengatur keberlangsungan program ini. Koordinator memiliki tugas utama untuk mengalokasikan jumlah mahasiswa, jenis kegiatan, lokasi, dan waktu agar program tersebut dapat berjalan dengan baik. Menugaskan mahasiswa secara acak mungkin bukanlah keputusan yang tepat dalam memenuhi kebutuhan yang diinginkan koordinator. Terlebih lagi, koordinator juga harus mempertimbangkan keinginan-keinginan mahasiswa terhadap waktu yang dimiliki ataupun pemilihan lokasi di mana mahasiswa akan ditugaskan. Inilah mengapa diperlukan pengelolaan penugasan mahasiswa dengan cara memaksimumkan keinginan mahasiswa sekaligus memenuhi kebutuhan koordinator dalam melaksanakan program pengabdian pada masyarakat. Goal programming merupakan perluasan dari pemrograman linear. Metode ini mengoptimalkan beberapa tujuan berbeda dengan meminimumkan variabelvariabel penyimpangan sehingga dapat mencapai semua tujuan seoptimal mungkin. Pada karya ilmiah ini akan diterapkan metode goal programming untuk menyelesaikan masalah penugasan mahasiswa. Dengan demikian, diperoleh jadwal penugasan sedemikian sehingga kebutuhan koordinator dan keinginan mahasiswa dapat diakomodasi.
Tujuan Tujuan dari karya ilmiah ini ialah: 1 memformulasikan masalah penugasan mahasiswa dalam kegiatan pengabdian pada masyarakat menggunakan metode goal programming, 2 menerapkan metode goal programming pada masalah penugasan mahasiswa dalam kegiatan pengabdian pada masyarakat bagi mahasiswa Fakultas Kedokteran Hewan Institut Pertanian Bogor di Kabupaten Bondowoso, Jawa Timur.
2
TINJAUAN PUSTAKA Model goal programming merupakan perluasan model pemrograman linear yang diperkenalkan oleh A Charnes dan WM Cooper pada tahun 1955. Model goal programming mampu menyelesaikan kasus-kasus pemrograman linear yang memiliki lebih dari satu sasaran yang hendak dicapai. Perbedaannya terletak pada kehadiran sepasang variabel deviasi pada fungsi tujuan dan fungsi-fungsi kendala, yaitu 𝑑𝑘+ dan 𝑑𝑘− yang taknegatif. Variabel deviasi berfungsi menampung penyimpangan atau deviasi yang akan terjadi pada nilai ruas kiri suatu kendala terhadap nilai ruas kanannya. Variabel ini dibedakan menjadi dua, yaitu variabel 𝑑𝑘− yang berfungsi menampung deviasi yang berada di bawah sasaran yang dikehendaki dan variabel 𝑑𝑘+ yang berfungsi menampung deviasi yang berada di atas sasaran yang dikehendaki. Menurut Siswanto (1993) ada tiga kemungkinan yang akan terjadi dalam penyelesaian dengan metode ini, yaitu: a sasaran tercapai, terjadi jika 𝑑𝑘− = 𝑑𝑘+ = 0. b sasaran tidak tercapai, terjadi jika 𝑑𝑘− > 0 dan 𝑑𝑘+ = 0 . Hasil yang diperoleh pada kondisi ini ialah di bawah sasaran. c sasaran terlampaui, terjadi jika 𝑑𝑘− = 0 dan 𝑑𝑘+ > 0. Hasil yang diperoleh pada kondisi ini ialah di atas sasaran. Fungsi tujuan dari model goal programming yaitu meminimumkan total variabel deviasi (Romero 2004) yang dapat ditulis secara matematis sebagai berikut, 𝐾
min ∑(𝛼𝑘 𝑑𝑘− + 𝛽𝑘 𝑑𝑘+ ) 𝑘=1
terhadap kendala-kendala:
𝑓𝑘 (𝑥) + 𝑑𝑘− − 𝑑𝑘+ = 𝑏𝑘 , 𝑘 = 1, 2, … , 𝐾, 𝑥 ∈ 𝐹, ∀ 𝑑𝑘− , 𝑑𝑘+ ≥ 0
dengan 𝛼𝑘 , 𝛽𝑘 : bobot-bobot pada variabel deviasi ke-𝑘, 𝑥 : vektor variabel keputusan, 𝐹 : himpunan kendala yang mungkin terjadi, 𝑏𝑘 : sasaran ke-𝑘 yang ingin dicapai. Ilustrasi model goal programming (Taha 2007) dapat dilihat pada contoh berikut. Misalkan diberikan model pemrograman linear: max 𝑍 = 𝑥1 + 𝑥2 terhadap kendala-kendala: 4 𝑥1 + 8 𝑥2 ≥ 45 8 𝑥1 + 24 𝑥2 ≤ 100 𝑥1 + 2 𝑥2 ≤ 10 𝑥1 ≤ 6 𝑥1 , 𝑥2 ≥ 0. Dengan software LINGO 11.0 model pemrograman linear tersebut merupakan masalah takfisibel (lihat Lampiran 1). Hal ini menunjukkan bahwa model pemrograman linear hanya mampu menyelesaikan masalah yang memenuhi
3
fungsi kendala yang ada. Jika model ini diubah menjadi model goal programming maka terdapat sasaran yang harus dicapai pada fungsi kendala sehingga nilai untuk memenuhi fungsi tersebut lebih fleksibel. Misalkan yang menjadi sasaran ialah fungsi kendala pertama dan kedua. Fungsi tujuannya yaitu meminimumkan total deviasi yang terdapat pada kendala tersebut sehingga bentuk perubahannya dapat dilihat di bawah ini. min 𝑍 = 𝑑1− + 𝑑2+ terhadap kendala-kendala:
4 𝑥1 + 8 𝑥2 + 𝑑1− − 𝑑1+ = 45 8 𝑥1 + 24 𝑥2 + 𝑑2− − 𝑑2+ = 100 𝑥1 + 2 𝑥2 ≤ 10 𝑥1 ≤ 6 − 𝑥𝑖 , 𝑑𝑖 , 𝑑𝑖+ ≥ 0 dengan 𝑖=1, 2.
Hasil yang diperoleh yaitu fungsi tujuan sebesar 5 dengan solusi optimal 𝑥1 = 6, 𝑥2 = 2, 𝑑1− = 5, 𝑑1+ = 0, 𝑑2− = 4, 𝑑2+ = 0 (lihat Lampiran 2). Model goal programming mengubah fungsi kendala dari pertaksamaan linear menjadi persamaan linear. Pertaksamaan linear dengan simbol ≥, artinya membuat nilai ruas kanan agar sesuai dengan nilai ruas kirinya yaitu mengurangi dengan suatu nilai yang disimpan dalam variabel 𝑑𝑖+ dan meminimumkan variabel 𝑑𝑖− . Begitu pula pertaksamaan linear dengan simbol ≤, artinya membuat nilai ruas kanan agar sesuai dengan nilai ruas kirinya yaitu menambahkan dengan suatu nilai yang disimpan dalam variabel 𝑑𝑖− dan meminimumkan variabel 𝑑𝑖+ . Menurut Taha (2007), jika pertaksamaan linear berbentuk ≤ dan nilai 𝑑𝑖− > 0 maka sasaran terpenuhi, sedangkan jika 𝑑𝑖+ > 0 maka sasaran tidak terpenuhi. Jika pertaksamaan linear berbentuk ≥ dan nilai 𝑑𝑖+ > 0 maka sasaran terpenuhi, sedangkan jika 𝑑𝑖− > 0 maka sasaran tidak terpenuhi. Model goal programming diatas menghasilkan nilai variabel deviasi 𝑑1− ≥ 0 saat pertaksamaan linearnya berbentuk ≥ , artinya model tersebut memiliki sasaran yang tidak terpenuhi terhadap fungsi kendala awal. Apabila setiap sasaran yang ingin dicapai memiliki prioritas yang berbeda, maka setiap variabel deviasi pada fungsi tujuan dapat diberi bobot. Semakin besar bobot yang diberikan menunjukkan semakin besar pula prioritas untuk meminimumkan variabel deviasinya. Bentuk fungsi tujuan yang diberikan bobot sebagai prioritas, yaitu: min 𝑍 = 2 𝑑1− + 𝑑2+ terhadap kendala-kendala:
4 𝑥1 + 8 𝑥2 + 𝑑1− − 𝑑1+ = 45 8 𝑥1 + 24 𝑥2 + 𝑑2− − 𝑑2+ = 100 𝑥1 + 2 𝑥2 ≤ 10 𝑥1 ≤ 6 𝑥𝑖 , 𝑑𝑖− , 𝑑𝑖+ ≥ 0 dengan 𝑖=1, 2.
Hasil yang diperoleh yaitu fungsi tujuan sebesar 10 dengan solusi optimal 𝑥1 = 6, 𝑥2 = 2, 𝑑1− = 5, 𝑑1+ = 0, 𝑑2− = 4, 𝑑2+ = 0 (lihat Lampiran 3). Model goal programming di atas menunjukkan prioritas untuk meminimumkan 𝑑1− lebih besar, namun nilai variabel deviasinya tetap sama, yaitu 𝑑1− ≥ 0, artinya sasaran tidak terpenuhi terhadap fungsi kendala awal.
4
MODEL PENUGASAN Deskripsi Masalah Kegiatan pengabdian pada masyarakat ini merupakan salah satu contoh kegiatan yang dilakukan secara sukarela, tidak bertujuan memaksimumkan keuntungan tetapi lebih mementingkan misi kemanusiaannya (Falasca et al. 2009). Seorang yang bekerja secara sukarela tidaklah mudah untuk mempertahankan semangat dan motivasinya agar tetap melakukan pekerjaan ini. Tanpa motivasi orang tersebut tidak akan berbuat apa-apa dan tidak akan bergerak. Hal ini juga berlaku pada mahasiswa dalam konteks pelaksanaan kegiatan pengabdian pada masyarakat. Mahasiswa yang ditugaskan memiliki komitmen untuk melaksanakan kegiatan tersebut. Selain bertanggung jawab atas pekerjaan yang dilakukannya, mahasiswa juga ingin menambah pengalaman bersama masyarakat untuk mengasah keahlian di bidang profesinya. Model penugasan mahasiswa pada karya ilmiah ini merupakan implementasi dan pengembangan dari model penugasan sukarelawan yang dilakukan oleh Kaspari (2005). Model penugasan mahasiswa ini mempertimbangkan preferensi tugas, waktu, dan lokasi yang diinginkan mahasiswa sesuai dengan kebutuhan yang ditetapkan oleh koordinator. Dalam mendeskripsikan masalah penugasan mahasiswa, koordinator harus mengetahui kondisi yang terjadi di lapang. Kondisi ini dapat berbeda-beda sesuai dengan kebutuhan. Pada umumnya, koordinator menentukan jenis kegiatan, waktu, lokasi, dan jumlah mahasiswa ideal. Dalam penyusunan jadwal penugasan mahasiswa ini terdapat dua jenis parameter yaitu parameter yang ditetapkan oleh mahasiswa dan parameter yang ditetapkan oleh koordinator. Selain itu, kendala yang dipakai merupakan kendala masalah penugasan pada umumnya dan kendala sasaran/target dengan variabel deviasi yang keduanya harus terpenuhi.
Formulasi Masalah Langkah awal membangun model penugasan mahasiswa ini ialah mendeskripsikan masalah tersebut dengan jelas dan lengkap. Selanjutnya masalah tersebut diformulasikan dalam bentuk goal programming dengan metode pembobotan, yaitu dengan memberikan biaya penalti sebagai bobot pada setiap deviasi yang terjadi. Pemodelan masalah ini dibuat berdasarkan kebutuhan jumlah ideal mahasiswa yang ditetapkan koordinator dengan mempertimbangkan keinginan mahasiswa terhadap waktu, lokasi, dan tugas yang dikerjakan. Asumsi Model penugasan pada karya ilmiah ini menggunakan beberapa asumsi, yaitu: 1 koordinator telah menetapkan pembagian kegiatan, waktu, lokasi, dan jumlah mahasiswa yang bertugas, 2 setiap mahasiswa yang ditugaskan dapat mengerjakan serangkaian kegiatan yang diberikan,
5
3 setiap mahasiswa yang ditugaskan dapat bertugas di lokasi penugasan yang telah ditentukan, 4 waktu penugasan merupakan waktu untuk mengerjakan kegiatan termasuk waktu istirahat dan berpindah lokasi. Himpunan, Indeks, dan Parameter Model penugasan pada karya ilmiah ini menggunakan beberapa himpunan dan indeks, yaitu: 𝕄 : himpunan mahasiswa, dengan indeks 𝑖, 𝕍 : himpunan kecamatan, dengan indeks 𝑗, 𝕋 : himpunan blok waktu, dengan indeks 𝑘, 𝔻 : himpunan pasangan kecamatan yang tidak dapat dijangkau, 𝔼 : himpunan pasangan blok waktu yang berurutan. Parameter yang digunakan dalam penugasan mahasiswa ini terbagi menjadi dua jenis, yaitu parameter yang ditetapkan oleh mahasiswa dan parameter yang ditetapkan oleh koordinator. 1 Parameter yang ditetapkan mahasiswa, yaitu: 𝛼𝑖𝑘 : bernilai 1 jika mahasiswa 𝑖 dapat bertugas pada waktu 𝑘, bernilai 0 jika selainnya, : bernilai 1 jika mahasiswa 𝑖 ingin bertugas di kecamatan 𝑗, bernilai 0 𝛽𝑖𝑗 jika selainnya, : jumlah ideal waktu yang diinginkan mahasiswa 𝑖, 𝜏𝑖 + 𝜏𝑖 : deviasi maksimum terhadap jumlah waktu yang diinginkan mahasiswa 𝑖, − 𝜏𝑖 : deviasi minimum terhadap jumlah waktu yang diinginkan mahasiswa 𝑖. 2 Parameter yang ditetapkan koordinator, yaitu: 𝜇𝑗𝑘 : jumlah ideal mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘, 𝜔𝑖 : jumlah ideal waktu yang dibebankan kepada mahasiswa 𝑖, + : deviasi maksimum terhadap jumlah ideal mahasiswa yang bertugas di 𝜇𝑗𝑘 kecamatan 𝑗 pada waktu 𝑘, − 𝜇𝑗𝑘 : deviasi minimum terhadap jumlah ideal mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘. Variabel Keputusan 𝑥𝑖𝑗𝑘 : variabel keputusan, dengan 1 ; jika mahasiswa 𝑖 bertugas di kecamatan 𝑗 pada waktu 𝑘, 𝑥𝑖𝑗𝑘 = { 0 ; selainnya. 𝑦𝑖
:
variabel keputusan untuk mengaktifkan beberapa fungsi kendala, dengan 1 ; jika mahasiswa 𝑖 bertugas di sebarang kecamatan/waktu, 𝑦𝑖 = { 0 ; selainnya. Variabel Deviasi Variabel deviasi yang terdapat dalam model penugasan mahasiswa ini ialah: + : kelebihan jumlah mahasiswa yang bertugas di kecamatan 𝑗 pada 𝑢𝑗𝑘 waktu 𝑘,
6
− 𝑢𝑗𝑘
: kekurangan jumlah mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘, : kelebihan jumlah waktu yang dibebankan kepada mahasiswa 𝑖 berdasarkan keinginan mahasiswa, : kekurangan jumlah waktu yang dibebankan kepada mahasiswa 𝑖 berdasarkan keinginan mahasiswa, : kelebihan jumlah waktu yang dibebankan kepada mahasiswa 𝑖 berdasarkan kebutuhan yang telah ditetapkan koordinator, : kekurangan jumlah waktu yang dibebankan kepada mahasiswa 𝑖 berdasarkan kebutuhan yang telah ditetapkan koordinator.
𝑡𝑖+ 𝑡𝑖− 𝑤𝑖+ 𝑤𝑖−
Fungsi Objektif Secara umum fungsi objektif pada masalah penugasan mahasiswa ialah meminimumkam total kelebihan/kekurangan deviasi terhadap sasaran yang ingin dicapai akibat ketidaksesuaian jumlah mahasiswa dan waktu yang dibebankan. Fungsi objektif pada masalah penugasan mahasiswa ini ialah: 6
min ∑ 𝑧𝑛 , 𝑛=1
dengan + 1 𝑧1 = ∑ ∑ 𝑝𝑗𝑘 𝑢𝑗𝑘 𝑗
𝑘
2 − 𝑧2 = ∑ ∑ 𝑝𝑗𝑘 𝑢𝑗𝑘 𝑗
𝑘
𝑧3 = ∑ 𝑝𝑖3 𝑡𝑖+ 𝑖
𝑧4 = ∑ 𝑝𝑖4 𝑡𝑖− 𝑖
𝑧5 = ∑ 𝑝𝑖5 𝑤𝑖+ 𝑖
𝑧6 = ∑ 𝑝𝑖6 𝑤𝑖− 𝑖
: total biaya penalti akibat kelebihan jumlah mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘 : total biaya penalti akibat kekurangan jumlah mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘 : total biaya penalti akibat kelebihan jumlah waktu yang dibebankan kepada mahasiswa 𝑖 berdasarkan keinginan mahasiswa : total biaya penalti akibat kekurangan jumlah waktu yang dibebankan kepada mahasiswa 𝑖 berdasarkan keinginan mahasiswa : total biaya penalti akibat kelebihan jumlah waktu yang dibebankan kepada mahasiswa 𝑖 berdasarkan kebutuhan yang telah ditetapkan koordinator : total biaya penalti akibat kekurangan jumlah waktu yang dibebankan kepada mahasiswa 𝑖 berdasarkan kebutuhan yang telah ditetapkan koordinator.
Kendala-Kendala Kendala-kendala masalah penugasan mahasiswa adalah sebagai berikut: 1 Mahasiswa 𝑖 bertugas sebanyak-banyaknya pada satu kecamatan di setiap waktu yang dipilihnya. ∑ 𝑥𝑖𝑗𝑘 ≤ 𝛼𝑖𝑘 , 𝑗
∀ 𝑖 ∈ 𝕄, ∀ 𝑘 ∈ 𝕋.
2 Mahasiswa 𝑖 hanya bertugas pada kecamatan yang dipilihnya. 𝑥𝑖𝑗𝑘 ≤ 𝛽𝑖𝑗 , ∀ 𝑖 ∈ 𝕄, ∀ 𝑗 ∈ 𝕍, ∀ 𝑘 ∈ 𝕋. 3 Agar 𝑥𝑖𝑗𝑘 dan 𝑦𝑖 memiliki nilai yang benar haruslah
7
𝑥𝑖𝑗𝑘 ≤ 𝑦𝑖 , ∀ 𝑖 ∈ 𝕄, ∀ 𝑗 ∈ 𝕍, ∀ 𝑘 ∈ 𝕋. 4 Mahasiswa 𝑖 tidak dapat bertugas di dua kecamatan berbeda pada hari yang sama jika kedua kecamatan tidak dapat dijangkau dalam waktu tertentu. 𝑥𝑖𝑗𝑘 + 𝑥𝑖𝑗′𝑘′ ≤ 1, ∀ 𝑖 ∈ 𝕄, ∀ (𝑗, 𝑗 ′ ) ∈ 𝔻, ∀ (𝑘, 𝑘 ′ ) ∈ 𝔼. 5 Sebanyak 𝜇𝑗𝑘 mahasiswa ditargetkan untuk bertugas di kecamatan 𝑗 pada waktu 𝑘. + − ∑ 𝑥𝑖𝑗𝑘 + 𝑢𝑗𝑘 − 𝑢𝑗𝑘 = 𝜇𝑗𝑘 ,
∀ 𝑗 ∈ 𝕍, ∀ 𝑘 ∈ 𝕋.
𝑖
6 Mahasiswa 𝑖 ingin bertugas sebanyak 𝜏𝑖 waktu. ∑ ∑ 𝑥𝑖𝑗𝑘 + 𝑡𝑖− − 𝑡𝑖+ = 𝑦𝑖 𝜏𝑖 , 𝑗
∀ 𝑖 ∈ 𝕄.
𝑘
7 Mahasiswa 𝑖 ditargetkan bertugas sebanyak 𝜔𝑖 waktu. ∑ ∑ 𝑥𝑖𝑗𝑘 + 𝑤𝑖− − 𝑤𝑖+ = 𝑦𝑖 𝜔𝑖 , 𝑗
∀ 𝑖 ∈ 𝕄.
𝑘
8 Kekurangan dan kelebihan jumlah mahasiswa yang dinyatakan pada variabel deviasi tidak boleh melewati batas minimum dan maksimum yang ditetapkan. − − 0 ≤ 𝑢𝑗𝑘 ≤ 𝜇𝑗𝑘 , + + 0 ≤ 𝑢𝑗𝑘 ≤ 𝜇𝑗𝑘 , ∀ 𝑗 ∈ 𝕍, ∀ 𝑘 ∈ 𝕋. 9 Kekurangan dan kelebihan jumlah waktu yang dinyatakan pada variabel deviasi tidak boleh melewati batas minimum dan maksimum yang ditetapkan. 0 ≤ 𝑡𝑖− ≤ 𝜏𝑖− , 0 ≤ 𝑡𝑖+ ≤ 𝜏𝑖+ , ∀ 𝑖 ∈ 𝕄. 10 Ketaknegatifan variabel deviasi yang menyatakan kebutuhan jumlah waktu yang ditetapkan oleh koordinator. 𝑤𝑖− , 𝑤𝑖+ ≥ 0, ∀ 𝑖 ∈ 𝕄.
STUDI KASUS DAN PENYELESAIANNYA Model penugasan mahasiswa akan diterapkan dalam program pengabdian pada masyarakat di Kabupaten Bondowoso yang dilakukan oleh mahasiswa Fakultas Kedokteran Hewan Institut Pertanian Bogor. Tujuan diadakan program ini ialah menyukseskan program swasembada daging melalui sistem pertanian terpadu. Sebanyak 50 mahasiswa, yaitu M1, M2, ..., M50, yang berpartisipasi dan ditugaskan pada serangkaian kegiatan selama berlangsungnya program ini. Daftar kegiatan yang ditetapkan koordinator, yaitu: 1 Sosialisasi ASUH : Sosialisasi pemahaman daging segar yang ASUH (Aman Sehat Utuh Halal). 2 Promosi FKH : Promosi FKH dan IPB pada SMA di Kabupaten Bondowoso. 3 Puskeswan : Membantu petugas pelayanan pusat kesehatan hewan (Puskeswan). 4 IB : Membantu inseminator dalam pelaksanaan inseminasi buatan (IB).
8
5
Obat cacing
: Pemberian obat cacing dan multivitamin pada hewan ternak. 6 Sosialisasi limbah : Sosialisasi pemanfaatan limbah pertanian untuk pembuatan ransum ternak. 7 Sosialisasi kandang : Sosialisasi konstruksi kandang yang baik dan benar. 8 Sosialisasi pupuk : Sosialisasi pembuatan pupuk organik dan biogas dari limbah peternakan. Program ini berlangsung selama 10 hari dan terdapat dua blok waktu per hari yaitu shift pagi (pukul 07.00-12.00) dan shift siang (pukul 13.00-18.00) sehingga total blok waktu yang ada yaitu sebanyak 20 blok waktu. Untuk lebih lengkapnya, daftar blok waktu disajikan pada Tabel 1.
Hari ke1 2 3 4 5
Waktu 07.00 – 12.00 13.00 – 18.00 07.00 – 12.00 13.00 – 18.00 07.00 – 12.00 13.00 – 18.00 07.00 – 12.00 13.00 – 18.00 07.00 – 12.00 13.00 – 18.00
Tabel 1 Daftar blok waktu Blok Hari Waktu Waktu keS1 6 07.00 – 12.00 S2 13.00 – 18.00 S3 7 07.00 – 12.00 S4 13.00 – 18.00 S5 8 07.00 – 12.00 S6 13.00 – 18.00 S7 9 07.00 – 12.00 S8 13.00 – 18.00 S9 10 07.00 – 12.00 S10 13.00 – 18.00
Blok Waktu S11 S12 S13 S14 S15 S16 S17 S18 S19 S20
Untuk menugaskan 50 mahasiswa, koordinator memilih sebanyak 10 lokasi di 9 kecamatan yang ada di Kabupaten Bondowoso. Lokasi penugasan mahasiswa ini dapat dilihat pada Tabel 2.
Lokasi ke1 2 3 4 5
Tabel 2 Daftar lokasi penugasan mahasiswa Nama Lokasi Nama Kecamatan Kecamatan keKecamatan Curah Dami K1 6 Maesan Tegalampel K2 7 Tapen Tenggarang K3 8 Wonosari Bondowoso 1 K4 9 Cermee Bondowoso 2 K5 10 Prajekan
Kecamatan K6 K7 K8 K9 K10
9
Lokasi penugasan mahasiswa ini tersebar di Kabupaten Bondowoso. Karena waktu jeda yang ada saat pergantian shift adalah terbatas, mahasiswa yang bertugas pada shift pagi dan siang pada hari yang sama dengan lokasi yang berbeda harus dapat menjangkau lokasi dalam waktu 20 menit. Perkiraan waktu ini diperoleh berdasarkan perhitungan jarak di sekitar lokasi penugasan menggunakan bantuan Googlemap. Peta lokasi kegiatan di Kabupaten Bondowoso dan daftar lokasi yang dapat dijangkau selama pergantian shift bertutut-turut dapat dilihat pada Gambar 1 dan Tabel 3.
Gambar 1 Peta lokasi kegiatan di Kabupaten Bondowoso
Tabel 3 Daftar kecamatan yang dapat dijangkau dan tidak dapat dijangkau pada pergantian shift Kecamatan yang KecaNama Kecamatan yang dapat tidak dapat kecamatan dijangkau matan (𝑗) dijangkau (𝑗′) K1 Curah Dami K1, K2, K3, K4, K5, K6, K8 K7, K9, K10 K2 Tegalampel K1, K2, K3, K4, K5, K7, K8, K6 K9, K10 K3 Tenggarang K1, K2, K3, K4, K5, K6, K7, K9, K10 K8 K4 Bondowoso 1 K1, K2, K3, K4, K5, K6, K7, K9, K10 K8 K5 Bondowoso 2 K1, K2, K3, K4, K5, K6, K7, K9, K10 K8 K6 Maesan K1, K3, K4, K5, K6 K2, K7, K8, K9, K10
10
Tabel 3 Daftar kecamatan yang dapat dijangkau dan tidak dapat dijangkau pada pergantian shift (lanjutan) Kecamatan yang KecaNama Kecamatan yang dapat tidak dapat kecamatan dijangkau matan (𝑗) dijangkau (𝑗′) K7 Tapen K2, K3, K4, K5, K7, K8, K9, K1, K6 K10 K8 Wonosari K1, K2, K3, K4, K5, K7, K8, K6 K9, K10 K9 Cermee K2, K7, K8, K9, K10 K1, K3, K4, K5, K6 K10 Prajekan K2, K7, K8, K9, K10 K1, K3, K4, K5, K6 Untuk memenuhi kebutuhan dalam melaksanakan program ini, koordinator telah menetapkan pembagian blok waktu dan jenis kegiatan serta kebutuhan jumlah ideal mahasiswa yang ditugaskan disajikan pada Tabel 4. Tabel 4 Daftar jumlah ideal mahasiswa di kecamatan 𝑗 pada waktu 𝑘 (𝜇𝑗𝑘 ) Hari ke1 2 3 4 5 6 7 8 9 10
Blok waktu keS1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15 S16 S17 S18 S19 S20
Jenis kegiatan Promosi FKH Sosialisasi ASUH Puskeswan IB Sosialisasi limbah Sosialisasi pupuk Obat cacing Sosialisasi kandang Promosi FKH Sosialisasi limbah Promosi FKH Sosialisasi ASUH Sosialisasi ASUH Sosialisasi ASUH Puskeswan IB Obat cacing Sosialisasi kandang Sosialisasi pupuk Sosialisasi limbah
K1
K2
K3
K4
3 4 3 5 4 4 4 5 5 6 3 5 6 4 4 3 5 3 5 5
4 3 5 4 5 6 4 3 4 5 5 4 4 5 4 5 4 3 3 6
3 6 5 5 3 3 3 4 6 3 6 3 5 3 3 5 3 5 4 5
3 4 3 4 4 3 3 3 4 5 4 3 4 4 3 4 3 4 6 3
Kecamatan K5 K6 K7 3 5 5 4 4 5 5 4 3 4 5 4 3 3 5 4 3 4 3 5
5 4 5 3 5 6 6 5 4 5 3 5 3 6 5 3 5 3 5 4
6 3 4 3 4 5 5 4 3 4 3 4 4 5 4 6 3 6 3 3
K8
K9
K10
4 4 3 4 6 4 5 6 5 4 5 4 4 6 3 6 5 6 6 4
6 4 3 5 6 5 4 3 3 4 4 3 5 3 5 3 4 3 3 3
5 6 5 4 3 4 5 4 3 3 3 5 6 5 5 5 6 5 4 4
Setiap mahasiswa diperbolehkan memilih blok waktu, jenis kegiatan, dan lokasi penugasan yang diinginkannya. Pemilihan ini dapat dilakukan dengan mengisi kuesioner yang dibagikan kepada setiap mahasiswa sehingga diperoleh data preferensi mahasiswa. Pada karya ilmiah ini, data yang digunakan untuk memenuhi data preferensi mahasiswa merupakan data hipotetik. Misalkan, berdasarkan jenis kegiatannya, jumlah pemilihan blok waktu yang dapat dikerjakan
11
mahasiswa merupakan anggota himpunan {17, 18, 19, 20}. Namun, jumlah ideal waktu yang diinginkan mahasiswa ialah 𝜏𝑖 ∈ {14, 15, 16, 17}. Jumlah pemilihan lokasi penugasan yang diinginkan mahasiswa merupakan anggota himpunan {17, 18, 19, 20}. Rincian pemilihan blok waktu berdasarkan jenis kegiatan (𝛼𝑖𝑘 ), jumlah ideal blok waktu (𝜏𝑖 ), dan lokasi penugasan yang diinginkan oleh setiap mahasiswa (𝛽𝑖𝑗 ) dapat dilihat pada Lampiran 4, 5 dan 6, sedangkan jumlah dan persentase keinginannya disajikan pada Tabel 5. Tabel 5 Jumlah dan persentase keinginan mahasiswa Jumlah blok waktu maksimum 17 18 19 20
Jumlah mahasiswa 5 (10%) 10 (20%) 10 (20%) 25 (50%)
Jumlah ideal blok waktu 14 15 16 17
Jumlah mahasiswa 13 (26%) 12 (24%) 15 (30%) 10 (20%)
Jumlah lokasi kecamatan 7 8 9 10
Jumlah mahasiswa 12 (24%) 14 (28%) 12 (24%) 12 (24%)
Selain data-data di atas, terdapat beberapa parameter lainnya yang disajikan pada Tabel 6. Tabel 6 Parameter lain yang digunakan pada model penugasan mahasiswa Parameter Keterangan Nilai Jumlah ideal waktu yang dibebankan kepada mahasiswa 16 𝜔𝑖 𝑖 (ditetapkan koordinator) + Deviasi maksimum terhadap jumlah ideal mahasiswa 5 𝜇𝑗𝑘 yang bertugas di kecamatan 𝑗 pada waktu 𝑘 − Deviasi minimum terhadap jumlah ideal mahasiswa 1 𝜇𝑗𝑘 yang bertugas di kecamatan 𝑗 pada waktu 𝑘 Deviasi maksimum terhadap jumlah waktu yang 3 𝜏𝑖+ diinginkan mahasiswa 𝑖 Deviasi minimum terhadap jumlah waktu yang 2 𝜏𝑖− diinginkan mahasiswa 𝑖 Penyelesaian masalah penugasan mahasiswa ini bertujuan memaksimumkan keinginan mahasiswa terhadap waktu dan lokasi penugasan serta jumlah ideal mahasiswa yang ditetapkan koordinator. Masalah ini diformulasikan dengan metode goal programming yang memiliki himpunan dan indeks, fungsi objektif serta kendala-kendala yang dapat dilihat di bawah ini. Himpunan dan Indeks = Himpunan mahasiswa, dengan indeks 𝑖. 𝕄 = {M1, M2, ..., M50} = Himpunan kecamatan, dengan indeks 𝑗. 𝕍 = {K1, K2, ..., K10} = {S1, S2, ..., S20} = Himpunan blok waktu, dengan indeks 𝑘. 𝕋 ′ ′ 𝔻 = {(𝑗, 𝑗 ) | 𝑗, 𝑗 ∈ 𝕍, dengan 𝑗′ tidak dapat dijangkau dari 𝑗}. 𝔼 = {(𝑘, 𝑘′) | 𝑘, 𝑘 ′ ∈ 𝕋, dengan 𝑘 dan 𝑘′ berurutan}.
12
Fungsi Objektif Untuk memaksimumkan keinginan mahasiswa dan koordinator, fungsi objektif yang digunakan yaitu meminimumkam total deviasi/penyimpangan terhadap sasaran yang ingin dicapai. Biaya penalti sebagai prioritas dari setiap penyimpangan sama dengan satu sehingga fungsi objektifnya, yaitu + − min {∑ ∑(𝑢𝑗𝑘 + 𝑢𝑗𝑘 ) + ∑(𝑡𝑖+ + 𝑡𝑖− + 𝑤𝑖+ + 𝑤𝑖− )}. 𝑗
𝑘
𝑖
Selain meminimumkan biaya penalti akibat penyimpangan terhadap sasaran yang diinginkan, koordinator dapat mengetahui jumlah minimum mahasiswa yang bertugas dengan mengubah fungsi objektif sebagai berikut min ∑ 𝑦𝑖 . 𝑖
Kendala-Kendala 1 Mahasiswa 𝑖 bertugas sebanyak-banyaknya pada satu kecamatan di setiap waktu yang dipilihnya. ∑ 𝑥𝑖𝑗𝑘 ≤ 𝛼𝑖𝑘 ,
∀ 𝑖 ∈ 𝕄, ∀ 𝑘 ∈ 𝕋.
𝑗
2 Mahasiswa 𝑖 hanya bertugas pada kecamatan yang dipilihnya. 𝑥𝑖𝑗𝑘 ≤ 𝛽𝑖𝑗 , ∀ 𝑖 ∈ 𝕄, ∀ 𝑗 ∈ 𝕍, ∀ 𝑘 ∈ 𝕋. 3 Agar 𝑥𝑖𝑗𝑘 dan 𝑦𝑖 memiliki nilai yang benar haruslah 𝑥𝑖𝑗𝑘 ≤ 𝑦𝑖 , ∀ 𝑖 ∈ 𝕄, ∀ 𝑗 ∈ 𝕍, ∀ 𝑘 ∈ 𝕋. 4 Mahasiswa 𝑖 tidak dapat bertugas di dua kecamatan berbeda pada hari yang sama jika kedua kecamatan tidak dapat dijangkau dalam waktu 20 menit. 𝑥𝑖𝑗𝑘 + 𝑥𝑖𝑗′𝑘′ ≤ 1, ∀ 𝑖 ∈ 𝕄, ∀ (𝑗, 𝑗 ′ ) ∈ 𝔻, ∀ (𝑘, 𝑘 ′ ) ∈ 𝔼. 5 Sebanyak 𝜇𝑗𝑘 mahasiswa ditargetkan untuk bertugas di kecamatan 𝑗 pada waktu 𝑘. + − ∑ 𝑥𝑖𝑗𝑘 + 𝑢𝑗𝑘 − 𝑢𝑗𝑘 = 𝜇𝑗𝑘 ,
∀ 𝑗 ∈ 𝕍, ∀ 𝑘 ∈ 𝕋.
𝑖
6 Mahasiswa 𝑖 ingin bertugas sebanyak 𝜏𝑖 waktu. ∑ ∑ 𝑥𝑖𝑗𝑘 + 𝑡𝑖− − 𝑡𝑖+ = 𝑦𝑖 𝜏𝑖 , 𝑗
∀ 𝑖 ∈ 𝕄.
𝑘
7 Mahasiswa 𝑖 ditargetkan bertugas sebanyak 𝜔𝑖 waktu. ∑ ∑ 𝑥𝑖𝑗𝑘 + 𝑤𝑖− − 𝑤𝑖+ = 𝑦𝑖 𝜔𝑖 , 𝑗
∀ 𝑖 ∈ 𝕄.
𝑘
8 Kekurangan dan kelebihan jumlah mahasiswa yang dinyatakan pada variabel deviasi tidak boleh melewati batas minimum dan maksimum yang ditetapkan. − − 0 ≤ 𝑢𝑗𝑘 ≤ 𝜇𝑗𝑘 , + + 0 ≤ 𝑢𝑗𝑘 ≤ 𝜇𝑗𝑘 , ∀ 𝑗 ∈ 𝕍, ∀ 𝑘 ∈ 𝕋. 9 Kekurangan dan kelebihan jumlah waktu yang dinyatakan pada variabel deviasi tidak boleh melewati batas minimum dan maksimum yang ditetapkan.
13
0 ≤ 𝑡𝑖− ≤ 𝜏𝑖− , 0 ≤ 𝑡𝑖+ ≤ 𝜏𝑖+ , ∀ 𝑖 ∈ 𝕄. 10 Ketaknegatifan variabel deviasi yang menyatakan kebutuhan jumlah waktu yang ditetapkan oleh koordinator. 𝑤𝑖− , 𝑤𝑖+ ≥ 0, ∀ 𝑖 ∈ 𝕄.
HASIL DAN PEMBAHASAN Penyelesaian masalah penugasan mahasiswa ini dilakukan dengan bantuan software LINGO 11.0 dan diperoleh nilai fungsi objektif untuk meminimumkan deviasi sebesar 83. Waktu yang dibutuhkan untuk mendapatkan solusi tersebut sekitar 35 detik dan menghasilkan sebanyak 40116 iterasi dengan menggunakan komputer Intel® CoreTM i3 CPU
[email protected] 2.67GHz 2 GB dan sintaks program dicantumkan pada Lampiran 7. Hasil komputasi yang diperoleh dapat memberikan informasi mengenai jadwal penugasan mahasiswa yang terdiri atas lokasi dan waktu penugasan setiap mahasiswa berdasarkan keinginannya. Informasi tersebut digunakan koordinator untuk mengetahui mahasiswa mana saja yang bertugas serta jumlah mahasiswa di tiap lokasi dan waktu. Jadwal penugasan ini dapat dilihat berdasarkan prespektif mahasiswa dan koordinator yang disajikan pada Tabel 12 dan Tabel 13. Selain itu, deviasi yang terjadi dari setiap sasaran juga dapat diketahui. Nilai-nilai variabel deviasi tersebut disajikan pada Tabel 7. Tabel 7 Nilai variabel deviasi minimum yang dihasilkan Variabel Keterangan Total kelebihan jumlah mahasiswa yang bertugas di + ∑ ∑ 𝑢𝑗𝑘 kecamatan 𝑗 pada waktu 𝑘 𝑗
Nilai 0
𝑘
− ∑ ∑ 𝑢𝑗𝑘 𝑗
𝑘
∑ 𝑡𝑖+ 𝑖
∑ 𝑡𝑖− 𝑖
∑ 𝑤𝑖+ 𝑖
∑ 𝑤𝑖− 𝑖
Total kekurangan jumlah mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘
35
Total kelebihan jumlah waktu yang dibebankan mahasiswa 𝑖 berdasarkan keinginan mahasiswa Total kekurangan jumlah waktu yang dibebankan mahasiswa 𝑖 berdasarkan keinginan mahasiswa Total kelebihan jumlah waktu yang dibebankan mahasiswa 𝑖 berdasarkan kebutuhan yang telah ditetapkan koordinator Total kekurangan jumlah waktu yang dibebankan mahasiswa 𝑖 berdasarkan kebutuhan yang telah ditetapkan koordinator
38 0 10
0
Berdasarkan Tabel 7 dapat dilihat bahwa semua sasaran yaitu jumlah mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘 , jumlah waktu yang dibebankan mahasiswa 𝑖 berdasarkan keinginan mahasiswa, dan jumlah waktu
14
yang dibebankan mahasiswa 𝑖 berdasarkan kebutuhan yang telah ditetapkan koordinator tidak tercapai. Hasil yang diperoleh menunjukkan semua mahasiswa bertugas pada kecamatan yang diinginkannya dengan jumlah blok waktu yang dibebankan pada mahasiswa merupakan anggota himpunan {16, 17}. Persentase banyaknya mahasiswa yang bertugas berdasarkan jumlah blok waktu dapat dilihat pada Gambar 2.
10 (20%)
16 Blok Waktu 17 Blok Waktu 40 (80%)
Gambar 2
Persentase mahasiswa berdasarkan jumlah blok waktu yang dibebankan
Pada Gambar 2 dapat dilihat bahwa terdapat sebanyak 10 mahasiswa bertugas dengan jumlah waktu lebih banyak dari yang ditetapkan koordinator yaitu 16 blok waktu. Kelebihan ini menyebabkan total deviasi terhadap jumlah waktu yang dibebankan mahasiswa, yaitu ∑𝑖 𝑤𝑖+ bernilai 10. Jumlah ini sesuai dengan banyaknya mahasiswa yang memiliki jumlah ideal waktu yang diinginkannya, yaitu pada mahasiswa M1, M2, M13, M14, M17, M19, M33, M37, M41, M50. Selain itu, tidak ada mahasiswa yang ditugaskan dengan jumlah waktu yang lebih sedikit dari waktu yang ditetapkan koordinator. Setiap mahasiswa yang memiliki keinginan jumlah ideal waktu kurang dari waktu yang ditetapkan koordinator harus menambah blok waktu yang sesuai dengan pilihannya. Persentase banyaknya mahasiswa berdasarkan kelebihan blok waktu yang dibebankan dapat dilihat pada Gambar 3.
13 (26%) 25 (50%) 12 (24%)
Gambar 3
0 Blok Waktu 1 Blok Waktu 2 Blok Waktu
Persentase mahasiswa berdasarkan kelebihan jumlah ideal waktu dari yang diinginkan
15
Gambar 3 menunjukkan sebanyak 25 mahasiswa telah memenuhi jumlah waktu yang ditetapkan oleh koordinator yaitu pada mahasiswa yang memiliki jumlah ideal waktu sebanyak 16 dan 17 blok waktu yang masing-masing sebanyak 15 dan 10 mahasiswa. Mahasiswa tersebut bertugas sesuai dengan jumlah ideal waktu yang diinginkannya sehingga pemenuhan keinginan tercapai. Sedangkan untuk mahasiswa yang memiliki keinginan jumlah ideal waktu sebanyak 14 dan 15 blok waktu harus bertugas 1-2 blok waktu lebih banyak sehingga dapat memenuhi waktu yang ditetapkan koordinator. Variabel deviasi untuk menampung kelebihan waktu berdasarkan keinginan mahasiswa, yaitu ∑𝑖 𝑡𝑖+ bernilai 38 yang diperoleh dari total kelebihan blok waktu dari mahasiswa tersebut. Jumlah ideal mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘 yang ditetapkan koordinator juga tidak seluruhnya dapat dipenuhi. Terdapat kekurangan − sebesar mahasiswa yang bertugas pada setiap kecamatan dan waktu, yaitu ∑𝑗𝑘 𝑢𝑗𝑘 35. Hal ini terjadi karena prioritas untuk meminimumkan total deviasi terhadap jumlah mahasiswa yang bertugas setiap shift dan kecamatan setara dengan prioritas untuk meminimumkan total deviasi terhadap jumlah ideal waktu dan pilihan kecamatan yang diinginkan mahasiswa. Kekurangan jumlah mahasiswa dan banyaknya jumlah mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘 secara berturut-turut dapat dilihat pada Tabel 8 dan Tabel 9. Tabel 8 Kekurangan jumlah mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘 K1 K2 K3 K4 K5 K6 K7 K8 K9 K10
S 1 0 1 0 0 1 0 0 0 0 0
S 2 0 0 0 0 0 0 0 0 1 0
S 3 0 0 0 0 1 0 0 0 0 1
S 4 0 0 0 0 0 0 0 1 0 0
S 5 0 0 0 0 0 0 0 0 0 1
S 6 0 0 0 0 1 1 0 0 0 0
S 7 0 0 0 0 0 0 0 1 0 0
S 8 0 0 0 1 1 1 1 0 0 0
S 9 0 0 0 0 0 0 1 1 0 0
S 10 0 0 0 0 1 0 0 0 0 1
S 11 0 0 0 0 1 0 0 0 0 0
S 12 1 0 0 0 0 0 0 0 0 0
S 13 0 0 0 0 0 0 1 1 0 0
S 14 0 0 1 0 0 0 0 0 0 0
S 15 0 0 0 1 0 0 0 0 0 0
S 16 0 1 0 0 1 0 0 0 0 0
S 17 0 0 0 0 0 0 0 0 0 0
S 18 0 1 1 0 0 1 0 0 0 0
S 19 0 0 1 0 0 1 0 0 0 0
S 20 0 1 1 0 0 0 0 0 1 1
Total
2
1
2
1
1
2
1
4
2
2
1
1
2
1
1
2
0
3
2
4
− 𝜇𝑗𝑘
Tabel 9 Jumlah mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘a Keca- S matan 1
S 2
S 3
S 4
S 5
S 6
S 7
S 8
S 9
S 10
S 11
S 12
S 13
S 14
S 15
S 16
S 17
S 18
S 19
S 20
K1
3
4
3
5
4
4
4
5
5
6
3
4
6
4
4
3
5
3
5
5
K2
3
3
5
4
5
6
4
3
4
5
5
4
4
5
4
4
4
2
3
5
K3
3
6
5
5
3
3
3
4
6
3
6
3
5
2
3
5
3
4
3
4
K4
3
4
3
4
4
3
3
2
4
5
4
3
4
4
2
4
3
4
6
3
K5
2
5
4
4
4
4
5
3
3
3
4
4
3
3
5
3
3
4
3
5
K6
5
4
5
3
5
5
6
4
4
5
3
5
3
6
5
3
5
2
4
4
K7
6
3
4
3
4
5
5
3
2
4
3
4
3
5
4
6
3
6
3
3
16
Tabel 9 Jumlah mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘a (lanjutan) Keca- S Matan 1 K8 4
S 2 4
S 3 3
S 4 3
S 5 6
S 6 4
S 7 4
S 8 6
S 9 4
S 10 4
S 11 5
S 12 4
S 13 3
S 14 6
S 15 3
S 16 6
S 17 5
S 18 6
S 19 6
S 20 4
K9
6
3
3
5
6
5
4
3
3
4
4
3
5
3
5
3
4
3
3
2
K10
5
6
4
4
2
4
5
4
3
2
3
5
6
5
5
5
6
5
4
3
Total 40
42
39
40
43
43
43
37
38
41
40
39
42
43
40
42
41
39
40
38
aSel
yang berwarna biru merupakan jumlah mahasiswa yang kurang dari jumlah ideal mahasiswa yang ditetapkan koordinator.
Berdasarkan analisis hasil dari penyelesaian yang telah diperoleh dapat diketahui jumlah mahasiswa yang bertugas sesuai dengan keinginan yang dipilihnya berdasarkan blok waktu, lokasi penugasan, jumlah ideal waktu serta ketetapan yang diberikan oleh koordinator. Jumlah mahasiswa tersebut disajikan pada Tabel 10. Tabel 10 Jumlah mahasiswa dengan pemenuhan keinginan maksimum terhadap sasaran Jumlah mahasiswa Sasaran Tidak Terpenuhi terpenuhi 50 0 Mahasiswa bertugas di kecamatan 𝑗 pada waktu 𝑘 25 25 Waktu yang dibebankan mahasiswa 𝑖 berdasarkan keinginan mahasiswa 15 35 Waktu yang dibebankan mahasiswa 𝑖 berdasarkan ketetapan koordinator Jumlah minimum mahasiswa yang bertugas dapat diketahui dengan cara mengganti fungsi objektif untuk meminimumkan deviasi menjadi fungsi objektif untuk meminimumkan jumlah mahasiswa sehingga diperoleh nilai fungsi objektif sebesar 35. Waktu yang dibutuhkan untuk mendapatkan solusi tersebut sekitar 3 menit 55 detik dan menghasilkan sebanyak 247138 iterasi dengan menggunakan komputer Intel® CoreTM i3 CPU
[email protected] 2.67GHz 2 GB dan sintaks program dicantumkan pada Lampiran 8. Hasil yang diperoleh menunjukkan bahwa sebanyak 35 mahasiswa dari 50 mahasiswa yang ada sudah memenuhi keinginan koordinator untuk melaksanakan program kegiatan pengabdian pada masyarakat. Namun, total penyimpangan yang terjadi untuk memenuhi sasaran lebih besar yaitu sebesar 392. Hal ini terjadi karena model goal programming memberikan solusi efisien yang dapat memenuhi sasaran yang diinginkan dengan tidak memperhatikan adanya optimisasi (Taha, 2007). Nilai variabel deviasi yang dihasilkan saat meminimumkan jumlah mahasiswa yang bertugas dapat dilihat pada Tabel 11.
17
Tabel 11 Nilai variabel deviasi yang dihasilkan saat meminimumkan jumlah mahasiswa Variabel Keterangan Nilai Total kelebihan jumlah mahasiswa yang bertugas di 0 + ∑ ∑ 𝑢𝑗𝑘 kecamatan 𝑗 pada waktu 𝑘 𝑗
𝑘
− ∑ ∑ 𝑢𝑗𝑘 𝑗
𝑘
∑ 𝑡𝑖+ 𝑖
∑ 𝑡𝑖− 𝑖
∑ 𝑤𝑖+ 𝑖
∑ 𝑤𝑖− 𝑖
Total kekurangan jumlah mahasiswa yang bertugas di kecamatan 𝑗 pada waktu 𝑘
200
Total kelebihan jumlah waktu yang dibebankan mahasiswa 𝑖 berdasarkan keinginan mahasiswa Total kekurangan jumlah waktu yang dibebankan mahasiswa 𝑖 berdasarkan keinginan mahasiswa Total kelebihan jumlah waktu yang dibebankan mahasiswa 𝑖 berdasarkan kebutuhan yang telah ditetapkan koordinator Total kekurangan jumlah waktu yang dibebankan mahasiswa 𝑖 berdasarkan kebutuhan yang telah ditetapkan koordinator
102 5 85
0
Akibat dari meminimumkan jumlah mahasiswa ialah hampir seluruh mahasiswa yang bertugas menambah beban waktu bertugasnya dari yang diinginkan sehingga nilai deviasi terhadap kelebihan waktu yang dibebankan berdasarkan keinginan mahasiswa, yaitu ∑𝑖 𝑡𝑖+ bernilai 102. Akan tetapi, nilai deviasi terhadap kekurangan waktu yang dibebankan berdasarkan keinginan mahasiswa, yaitu ∑𝑖 𝑡𝑖− ≠ 0 yang berarti kedua variabel deviasi tersebut bekerja untuk mencapai sasaran pada mahasiswa (i) tertentu. Padahal menurut Siswanto (1993), terdapat tiga kemungkinan yang terjadi dalam penyelesaian dengan metode goal programming, yaitu sasaran tercapai saat 𝑑𝑘− = 𝑑𝑘+ = 0, sasaran tidak tercapai saat 𝑑𝑘− > 0 dan 𝑑𝑘+ = 0, dan sasaran terlampaui 𝑑𝑘+ > 0 dan 𝑑𝑘− = 0. Kondisi ini terjadi karena fungsi objektif yang digunakan ialah tidak bertujuan untuk meminimumkan nilai variabel deviasi tetapi meminimumkan jumlah mahasiswa. Oleh karena itu, banyak terjadi penyimpangan yang membuat nilai deviasi menjadi lebih besar. Begitu pula dengan nilai deviasi terhadap kekurangan jumlah mahasiswa yang bertugas di setiap kecamatan dan waktu, yaitu − ∑𝑗 ∑𝑘 𝑢𝑗𝑘 bernilai 200 dan kelebihan jumlah waktu yang dibebankan mahasiswa berdasarkan ketetapan koordinator, yaitu ∑𝑖 𝑤𝑖+ bernilai 85. Setiap deviasi yang terjadi tidak melebihi batas deviasi maksimum dan minimum yang diberikan sehingga pemenuhan keinginan untuk mahasiswa dan koordinator masih dapat terpenuhi walaupun tidak maksimal. Hasil penyelesaian penugasan mahasiswa ini ialah berupa informasi jadwal penugasan yang memaksimumkan keinginan bagi 50 mahasiswa dan koordinator. Bentuk jadwal penugasan mahasiswa yang diperoleh dapat dibedakan menjadi dua, yaitu jadwal penugasan berdasarkan perspektif mahasiswa dan jadwal penugasan berdasarkan perspektif koordinator. Kedua jenis jadwal tersebut disajikan secara bertutut-turut pada Tabel 12 dan Tabel 13.
18
Tabel 12 Jadwal penugasan berdasarkan perspektif mahasiswa Mahasiswa
S1
S2
S3
S4
S5
S6
S7
S8
S9
S10
S11
S12
S13
S14
S15
S16
S17
S18
S19
S20
M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 M12 M13 M14 M15 M16 M17 M18 M19 M20 M21 M22 M23 M24 M25 M26 M27 M28 M29 M30
K9 K5 K6 K9 K6 K8 K3 K10 K9 K7 K5 K4 K3 K8 K7 K10 K10 K3 K6 K8 K7 K1 K2
K10 K1 K6 K5 K3 K5 K9 K5 K8 K9 K2 K5 K8 K10 K9 K10 K7 K4 K4 K4 K8 K8 K7 K4 K5
K9 K10 K3 K6 K5 K9 K2 K4 K9 K3 K4 K10 K4 K3 K7 K2 K10 K5 K7 K6 K5
K10 K2 K9 K9 K7 K6 K3 K2 K3 K5 K10 K5 K3 K10 K5 K4 K1 K9 K6 K10 K4 K4
K10 K2 K10 K2 K8 K8 K7 K9 K9 K9 K8 K5 K9 K1 K7 K3 K4 K7 K2 K4 K6 K7 K3 K6 K6
K9 K10 K6 K5 K8 K4 K4 K4 K5 K3 K2 K9 K10 K2 K8 K10 K6 K7 K7 K10 K7 K9 K6 K5 K6 K1
K8 K3 K3 K6 K2 K5 K10 K7 K7 K7 K3 K6 K9 K10 K10 K5 K9 K9 K10 K9 K4 K7 K5 K2 K4 K5
K3 K9 K6 K1 K9 K4 K3 K2 K3 K5 K6 K1 K2 K8 K10 K5 K10 K2 K8 K7 K10 -
K4 K3 K1 K5 K3 K4 K9 K9 K3 K6 K9 K4 K1 K6 K8 K7 K8 K7 K8 K8 K2 K1 K6 K5 K6 -
K7 K6 K6 K1 K2 K3 K4 K3 K9 K9 K1 K6 K5 K9 K4 K1 K5 K10 K2 K2 K8 K9 K2 K4 K6 K1 K4
K10 K4 K2 K10 K3 K2 K6 K2 K9 K9 K1 K5 K8 K8 K5 K7 K3 K1 K8 K3 K6 K4 K1 K3
K10 K6 K1 K8 K7 K8 K3 K6 K5 K10 K9 K6 K3 K9 K10 K4 K4 K8 K7 K1 K8 K7 K2
K9 K8 K2 K3 K10 K7 K1 K2 K4 K6 K10 K9 K2 K5 K8 K8 K7 K2 K6 K3 K1 K1 K4 K1 K3 K10 K5 K9 -
K9 K10 K10 K6 K2 K2 K6 K6 K9 K7 K10 K1 K6 K2 K10 K2 K4 K6 K7 K3 K5 K5 K1 K3 K7 -
K6 K10 K6 K6 K6 K2 K1 K9 K7 K10 K10 K9 K9 K4 K4 K6 K2 K7 K5 K10 K1 K1
K1 K10 K10 K7 K10 K6 K8 K3 K1 K6 K9 K5 K9 K4 K3 K9 K2 K7 K3 K2 K3 K4 K3 K7 K10 K2
K4 K1 K10 K6 K8 K6 K9 K10 K6 K9 K5 K1 K1 K7 K3 K2 K4 K2 K10 K2 K5 K1 K8 K3 K6 K6 K8 K1
K2 K2 K6 K7 K5 K8 K7 K6 K3 K4 K3 K3 K5 K1 K3 K7 K1 K4 K4 K5 K7 K9 K4
K10 K1 K5 K4 K6 K8 K3 K6 K9 K1 K4 K1 K4 K1 K8 K1 K6 K7 K8 K8 K7 K5
K3 K9 K1 K1 K8 K5 K5 K6 K6 K1 K7 K4 K3 K10 K2 K8 K9 K5 K6 K7 K8 K5 K7 K6
Tabel 12 Jadwal penugasan berdasarkan perspektif mahasiswa (lanjutan) Mahasiswa
S1
S2
S3
S4
S5
S6
S7
S8
S9
S10
S11
S12
S13
S14
S15
S16
S17
S18
S19
S20
M30 M24 M25 M26 M27 M28 M29 M30 M31 M32 M33 M34 M35 M36 M37 M38 M39 M40 M41 M42 M43 M47 M48 M49 M50
K2 K6 K8 K7 K1 K2 K6 K9 K1 K8 K4 K2 K6 K9 K4 K9 K2 K10 K7 K7 K7
K5 K4 K4 K8 K8 K7 K4 K5 K6 K6 K10 K3 K1 K1 K6 K3 K3 K2 K1 K10 K10 K3 K3
K5 K2 K10 K5 K7 K6 K5 K2 K10 K6 K6 K1 K8 K8 K8 K7 K5 K3 K6 K1 K7 K2 K3
K4 K4 K1 K9 K6 K10 K4 K4 K2 K8 K3 K6 K1 K8 K1 K9 K7 K3 K9 K7 K5 K4 K8
K6 K6 K7 K3 K6 K6 K4 K9 K8 K9 K6 K1 K2 K8 K6 K1 K5 K3 K5 K2 K5 K8
K1 K9 K6 K5 K6 K1 K8 K7 K7 K9 K2 K9 K3 K5 K1 K2 K3 K2 K8 K1
K5 K4 K7 K5 K2 K4 K5 K1 K1 K4 K5 K10 K2 K7 K8 K1 K8 K6 K6 K2 K6 -
K8 K7 K10 K8 K8 K5 K6 K1 K1 K7 K8 K10 K3 K6 K7 K1 K4 K8
K8 K2 K1 K6 K5 K6 K1 K10 K1 K3 K10 K10 K4 K2 K2 K3 K3
K4 K8 K9 K2 K4 K6 K1 K4 K4 K6 K8 K2 K8 K8 K7 K7 K10 K7 K3 K1 K5 -
K3 K8 K3 K6 K4 K1 K3 K3 K7 K10 K7 K6 K4 K3 K2 K5 K5 K2 K9 K9
K2 K8 K7 K2 K2 K4 K2 K1 K6 K7 K1 K6 K3 K5 K10 K2 K10
K4 K1 K3 K10 K5 K9 K5 K9 K4 K3 K10 K10 K7 K10 K1 K6 K1
K5 K1 K3 K7 K8 K8 K8 K7 K1 K4 K7 K10 K8 K2 K8 K9 K6 K4 K5
K1 K6 K2 K7 K5 K10 K1 K1 K5 K1 K3 K10 K7 K5 K8 K8 K5 K2 K7 K5 K2 K3 K9
K2 K4 K3 K7 K10 K2 K8 K6 K5 K10 K4 K5 K2 K1 K8 K8 K4 K8 K7 K7
K1 K8 K3 K6 K6 K8 K1 K7 K5 K10 K10 K7 K4 K3 K2 K8 K8 K9 -
K4 K4 K4 K5 K7 K9 K4 K10 K8 K5 K10 K9 K8 K8 K1 K10 K7 K10 K8 K8
K5 K6 K7 K8 K8 K7 K5 K8 K6 K10 K3 K2 K10 K4 K7 K4 K8 K9 K2 K5 K3 K4
K6 K6 K7 K8 K5 K7 K6 K3 K4 K3 K10 K5 K4 K10 K8 K2 K2 K2 K1
19
Blok waktu
K1
K2
K3
K4
K5
S1
M29, M35, M44
M30, M38, M43
M9, M18, M23
M17, M37, M41
M2, M16
S2
M2, M35, M36, M43
M14, M42, M45
M23, M24, M25, M29
S3
M35, M46, M47
M9, M17, M19
M4, M9, M11, M15, M30 M5, M27, M30, M40
S4
M25, M35, M37, M44, M46 M17, M36, M40, M44
M8, M24, M31, M45, M49 M5, M11, M31, M45
M7, M34, M38, M41, M49, M50 M3, M16, M20, M42, M50 M10, M12, M17, M33, M40 M19, M28, M42
M24, M29, M30, M48
M13, M15, M23, M47
M20, M23, M31, M46
M15, M41, M43, M49
M10, M38, M42
M6, M7, M8
M4, M9, M28, M39
M3, M4, M14
M24, M29, M35
M9, M16, M22
M1, M8, M11, M40
M7, M48
M25, M42, M44, M47
M4, M7, M11, M37, M49, M50 M6, M8, M47
S5
S6
M30, M40, M46, M50
S7
M33, M34, M41, M44
S8
M4, M15, M35, M36, M47 M5, M17, M26, M34, M36 M4, M12, M18, M29, M44, M48
S9
S10
M2, M6, M22, M37, M47 M11, M15, M36, M41, M43, M44 M6, M28, M38, M48
M5, M21, M22, M26, M37
K6
K7
20
Tabel 13 Jadwal penugasan berdasarkan perspektif koordinator K8
K9
M3, M6, M24, M32, M39 M3, M31, M32, M37
M15, M20, M27, M48, M49, M50 M22, M28, M46
M7, M19, M26, M36
M4, M29, M33, M34, M43 M9, M27, M34
M22, M28, M39, M48
M36, M37, M38
M1, M7, M11
M8, M39, M42
M32, M36, M50
M10, M18, M21, M25
M7, M9, M14, M33, M38, M50 M5, M16, M31, M48
M8, M19, M27, M30, M36 M13, M19, M33
M24, M29, M30, M35, M39 M3, M19, M26, M29, M45 M5, M15, M43, M45, M47, M49 M3, M14, M34, M41
M6, M7, M26, M38, M41 M11, M12, M13, M16, M32, M34 M1, M13, M25, M34, M37 M16, M20, M21, M23
M2, M8, M14, M40
M6, M28, M46
M12, M18, M27, M29
M20, M22
M7, M17, M27, M30, M31
M15, M19, M49
M2, M3, M14, M28, M33
M1, M40, M41, M43
M20, M21, M23, M32, M33 M10, M12, M13, M26, M39 M27, M37, M42
M12, M17, M26, M27
M1, M40, M42, M46
M1, M5, M14, M33, M40, M42 M10, M13, M20
K10 M10, M21, M22, M45, M47 M1, M19, M21, M33, M47, M48 M2, M18, M26, M32 M1, M14, M18, M28 M1, M5
M2, M14, M18, M22 M9, M17, M18, M22, M37 M18, M21, M28, M39
M17, M26, M31, M32, M38, M50 M19, M21, M23, M24
M2, M6, M46
M9, M10, M13
M35, M38, M39
M24, M36, M38, M39
M9, M10, M16, M25
M20, M42
Tabel 14 Jadwal penugasan berdasarkan perspektif koordinator (lanjutan) Blok waktu
K1
S11
M14, M23, M29
S12
M3, M23, M35, M41
S13
K2
K3
K4
K5
K6
K7
M4, M8, M11, M41, M48 M30, M31, M33, M49
M7, M21, M25, M30, M31, M39 M8, M15, M43
M3, M27, M37, M45
M15, M18, M42, M43
M10, M26, M36
M20, M32, M34
M18, M19, M32
M11, M44, M45, M47
M2, M10, M14, M36, M42
M5, M22, M25, M37
M7, M22, M23, M25, M48, M50
M3, M8, M13, M19
M4, M21, M26, M37, M45
M9, M24, M35, M46
M14, M28, M33
M10, M20, M49
S14
M14, M25, M36, M46
M5, M8, M16, M18, M42
M22, M28
M19, M38, M45, M49
M23, M24, M50
S15
M13, M29, M30, M32
M12, M25, M41, M47
M33, M45, M49
M22, M23
S16
M1, M10, M39
M19, M22, M30, M38
M8, M16, M21, M23, M26
S17
M2, M12, M13, M23, M30
M17, M19, M21, M40
S18
M18, M21, M40
S19
S20
K8
K9
K10
M12, M13, M49, M50
M1, M6, M33
M13, M16, M46
M1, M12, M17, M48, M50
M6, M18, M41
M2, M16, M17
M1, M12, M29, M34, M44
M5, M11, M27, M39, M40, M43
M4, M9, M10, M15, M20, M48
M12, M21, M29, M35, M39
M31, M32, M33, M41, M43, M44
M1, M11, M47
M2, M3, M13, M17, M40
M27, M31, M36, M40, M43
M1, M6, M10, M11, M24
M16, M26, M35, M42
M37, M38, M46
M14, M19, M20, M44, M50
M2, M17, M18, M28, M34
M15, M25, M35, M47
M13, M33, M37
M6, M11, M32
M4, M20, M27, M45, M49, M50
M7, M31, M41, M43, M44, M48
M12, M14, M17
M16, M25, M39
M1, M18, M38
M11, M22, M32
M4, M6, M9, M26, M27
M15, M31, M37
M5, M24, M28, M47, M48
M7, M10, M46, M49
M2, M3, M5, M28, M34 M3, M8, M20, M34, M35, M45
M2, M3
M11, M13, M15, M19
M12, M25, M26, M30
M6, M16, M27, M33
M4, M9
M5, M8, M20, M28, M42, M45
M7, M32, M36, M38, M48, M50
M29, M35, M46
M31, M34, M41, M43, M44
M3, M12, M14, M16, M23
M36, M43, M44
M8, M35, M49
M5, M13, M15, M38, M40, M50
M4, M30, M47
M6, M9, M24, M32
M25, M29, M39
M7, M22, M26, M27, M31, M41
M11, M42, M46
M2, M34, M37, M45
M3, M4, M12, M44, M50
M19, M45, M47, M48, M49
M1, M15, M31, M33
M14, M32, M40
M6, M8, M23, M28, M39
M9, M10, M24, M30
M13, M25, M29
M5, M20, M27, M43
M2, M21
M17, M34, M41
21
M16, M17, M24, M44, M46 M4, M7, M21, M24
SIMPULAN DAN SARAN Simpulan Pada karya ilmiah ini telah diperlihatkan penyelesaian masalah penugasan mahasiswa dalam program kegiatan pengabdian pada masyarakat yang bertujuan memaksimumkan keinginan mahasiswa dan koordinator. Masalah yang diangkat merupakan masalah penugasan mahasiswa yang dilakukan oleh mahasiswa FKH IPB di Kabupaten Bondowoso, Jawa Timur. Masalah ini diformulasikan sebagai model goal programming dengan cara meminimumkan total variabel-variabel deviasi menggunakan metode pembobotan yang memiliki prioritas sama di setiap sasarannya. Selain itu, jumlah minimum mahasiswa yang bertugas dapat diketahui akan tetapi keinginan mahasiswa dan koordinator masih belum bisa terpenuhi secara maksimal. Penyelesaian masalah ini menggunakan bantuan software LINGO 11.0.
Saran Karya ilmiah ini mengangkat permasalahan penugasan mahasiswa dalam program kegiatan pengabdian pada masyarakat yang dimodifikasi dari kondisi kegiatan yang sebenarnya. Data yang digunakan sebagai data preferensi/keinginan mahasiswa dan koordinator merupakan data hipotetik. Saran untuk penulisan karya ilmiah selanjutnya adalah menggunakan data sebenarnya misalnya dengan memberikan kuesioner berisi preferensi terhadap waktu, lokasi, dan kegiatan yang ingin dikerjakan serta disesuaikan dengan kebutuhan dan keadaan sebenarnya. Selain itu, model yang digunakan dalam karya ilmiah ini dapat dikembangkan lebih jauh seperti penentuan lokasi penginapan yang strategis, penambahan syarat khusus dalam pembagian lokasi dan tugas, dan sebagainya. Dengan begitu, model ini dapat membantu koordinator program kegiatan pengabdian pada masyarakat membuat penugasan mahasiswa yang baik. Penyelesaian masalah ini juga dapat dicoba menggunakan metode lain.
DAFTAR PUSTAKA Falasca M, Zobel CW, Fetter GM. 2009. An optimization model for humanitarian relief volunteer management. Di dalam: Landgren J, Jul S, editors. Proceedings of the 6th International ISCRAM Conference; 2009 Mei; Gothenburg, Sweden. Blacksburg (VA): Virginia Tech. Kaspari M. 2005. Optimal volunteer assignment with an application to the Denver b-cycle bike sharing program [tesis]. Denver (US): University of Colorado Denver. Romero C. 2004. A general structure of achievement function for a goal programming model. European Journal of Operational Research. 153: 675686.doi:10.1016/S0377-2217(02)00793-2
23
Siswanto. 1993. Goal Programming Menggunakan Lindo. Jakarta (ID): PT Elex Media Komputindo. Taha HA. 2007. Operations Research: An Introduction. Ed ke-8. New Jersey (US): Pearson Prentice Hall.
24
LAMPIRAN Lampiran 1 Sintaks program LINGO 11.0 untuk menyelesaikan contoh kasus pemrograman linear !fungsi objektif; max = x1+x2; !kendala; 4*x1+8*x2>=45; 8*x1+24*x2<=100; x1+2*x2<=10; x1<=6; x1>=0; X2>=0; No feasible solution found. Infeasibilities: Total solver iterations: Variable X1 X2
Value 6.000000 2.000000
5.000000 2 Reduced Cost 0.000000 0.000000
Lampiran 2 Sintaks program LINGO 11.0 untuk menyelesaikan contoh kasus goal programming !fungsi objektif; min = d1n+d2p; !kendala; 4*x1+8*x2+d1n-d1p=45; 8*x1+24*x2+d2n-d2p=100; x1+2*x2<=10; x1<=6; x1>=0; X2>=0; d1n>=0; d1p>=0; d2n>=0; d2p>=0; Global optimal solution found. Objective value: Infeasibilities: Total solver iterations: Variable D1N D2P X1 X2 D1P D2N
Value 5.000000 0.000000 6.000000 2.000000 0.000000 4.000000
5.000000 0.000000 3 Reduced Cost 0.000000 1.000000 0.000000 0.000000 1.000000 0.000000
25
Lampiran 3 Sintaks program LINGO 11.0 untuk menyelesaikan contoh kasus goal programming dengan bobot !fungsi objektif; min = 2*d1n+d2p; !kendala; 4*x1+8*x2+d1n-d1p=45; 8*x1+24*x2+d2n-d2p=100; x1+2*x2<=10; x1<=6; x1>=0; X2>=0; d1n>=0; d1p>=0; d2n>=0; d2p>=0; Global optimal solution found. Objective value: Objective bound: Infeasibilities: Total solver iterations: Variable D1N D2P X1 X2 D1P D2N
Value 5.000000 0.000000 6.000000 2.000000 0.000000 4.000000
10.00000 10.00000 0.000000 3 Reduced Cost 0.000000 1.000000 0.000000 0.000000 2.000000 0.000000
26
Lampiran 4 Pemilihan blok waktu setiap mahasiswa terhadap jenis kegiatan (𝛼𝑖𝑘 ) Mahasiswa
S 1
S 2
S 3
S 4
S 5
S 6
S 7
S 8
S 9
S 10
S 11
S 12
S 13
S 14
S 15
S 16
S 17
S 18
S 19
S 20
Jumlah
M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 M12 M13 M14 M15 M16 M17 M18 M19 M20 M21 M22 M23 M24 M25 M26 M27 M28 M29 M30 M31 M32 M33 M34 M35 M36 M37 M38 M39 M40 M41 M42 M43 M44 M45 M46 M47 M48 M49 M50
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1
1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0
1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1
1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1
1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0
0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
17 20 20 17 17 18 18 20 17 20 18 20 20 18 19 19 20 19 17 20 19 18 20 18 20 20 18 20 20 20 19 20 20 19 19 20 20 18 19 20 20 18 20 19 20 20 19 20 20 18
27
Lampiran 5 Jumlah ideal blok waktu yang diinginkan setiap mahasiswa (𝜏𝑖 ) Mahasiswa M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 M12 M13 M14 M15 M16 M17 M18 M19 M20 M21 M22 M23 M24 M25
Jumlah waktu ideal 17 17 14 14 16 16 15 16 14 15 14 15 17 17 15 16 17 16 17 16 15 14 16 14 14
Mahasiswa M26 M27 M28 M29 M30 M31 M32 M33 M34 M35 M36 M37 M38 M39 M40 M41 M42 M43 M44 M45 M46 M47 M48 M49 M50
Jumlah waktu ideal 14 16 15 14 15 14 16 17 15 15 16 17 16 14 16 17 16 15 14 14 16 16 15 15 17
28
Lampiran 6 Lokasi penugasan/kecamatan yang diinginkan setiap mahasiswa (𝛽𝑖𝑗 ) Mahasiswa
K1
K2
K3
K4
K5
K6
K7
K8
K9
K10
Jumlah
M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 M12 M13 M14 M15 M16 M17 M18 M19 M20 M21 M22 M23 M24 M25 M26 M27 M28 M29 M30 M31 M32 M33 M34 M35 M36 M37 M38 M39 M40 M41 M42 M43 M44 M45 M46 M47 M48 M49 M50
1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 0 1 1 0 0 1 1 0 1 1 1 1 1 1 0 1 1 1 0 1 1 0 1 1 1 0 1
1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0
1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 0 1 1 1 1 1 1
1 1 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 0 1 1 1 0 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1
1 1 1 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1
1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 0 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1
1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 0 1 1 1 0 1 0 1 1 1 1 1 0 1 1 0 1 1 1 1 1 0 1 1 0 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1
10 10 9 10 9 10 7 8 10 9 8 9 8 9 10 8 9 8 8 8 8 9 7 8 7 10 7 7 7 7 9 9 10 8 9 7 10 8 8 10 10 8 10 7 7 7 9 8 7 9
29
Lampiran 7 Sintaks program LINGO 11.0 untuk masalah penugasan mahasiswa menggunakan goal programming dengan meminimumkan variabel deviasi model: sets: mahasiswa/1..50/:y,wp,wn,WB,tp,tn,TO,TOp,TOn,hasilwp,hasilwn,hasil tp,hasiltn; kecamatan/1..10/; waktu/1..20/; link1(mahasiswa,kecamatan,waktu):x, hasilx; link2(mahasiswa,waktu):A, jumlahkec; link3(mahasiswa,kecamatan):B; link4(kecamatan,waktu):M,up,un,Mp,Mn,hasilun,hasilup; endsets data: A=@ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','A'); B=@ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','B'); M=@ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','MU'); Mp=@ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','Mp'); Mn=@ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','Mn'); WB=@ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','WB'); TO=@ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','TO'); TOp=@ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','TOp'); TOn=@ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','TOn'); enddata
mahasiswa\data kondisi mahasiswa\data kondisi mahasiswa\data kondisi mahasiswa\data kondisi mahasiswa\data kondisi mahasiswa\data kondisi mahasiswa\data kondisi mahasiswa\data kondisi mahasiswa\data kondisi
@for(mahasiswa(i):@for(kecamatan(j):@for(waktu(k):@bin(x(i,j,k)))) ); @for(mahasiswa(i):@bin(y(i))); !fungsi objektif; min=@sum(link4(j,k):un(j,k)+up(j,k))+@sum(mahasiswa(i):tn(i)+tp(i) +wn(i)+wp(i)); jum1=@sum(link4(j,k):un(j,k)); jum2=@sum(link4(j,k):up(j,k)); jum3=@sum(mahasiswa(i):tn(i)); jum4=@sum(mahasiswa(i):tp(i)); jum5=@sum(mahasiswa(i):wn(i)); jum6=@sum(mahasiswa(i):wp(i)); !kendala; @for(mahasiswa(i):@for(waktu(k):@sum(kecamatan(j):x(i,j,k))<=A(i,k ))); @for(mahasiswa(i):@for(kecamatan(j):@for(waktu(k):x(i,j,k)<=B(i,j) )));
30
@for(mahasiswa(i):@for(kecamatan(j):@for(waktu(k):x(i,j,k)<=y(i))) ); @for(kecamatan(j):@for(waktu(k):@sum(mahasiswa(i):x(i,j,k))+un(j,k )-up(j,k)=M(j,k))); @for(mahasiswa(i):@sum(kecamatan(j):@sum(waktu(k):x(i,j,k)))+wn(i) -wp(i)=y(i)*WB(i)); @for(mahasiswa(i):@sum(kecamatan(j):@sum(waktu(k):x(i,j,k)))+tn(i) -tp(i)=y (i)*TO(i)); @for(mahasiswa(i):tn(i)<=TOn(i)); @for(mahasiswa(i):tp(i)<=TOp(i)); @for(kecamatan(j):@for(waktu(k):un(j,k)<=Mn(j,k))); @for(kecamatan(j):@for(waktu(k):up(j,k)<=Mp(j,k))); @for(kecamatan(j):@for(waktu(k):@gin(un(j,k)))); @for(kecamatan(j):@for(waktu(k):@gin(up(j,k)))); @for(mahasiswa(i):@gin(tp(i))); @for(mahasiswa(i):@gin(tn(i))); @for(mahasiswa(i):@gin(wp(i))); @for(mahasiswa(i):@gin(wn(i))); @for(kecamatan(j):@for(waktu(k):un(j,k)>=0)); @for(kecamatan(j):@for(waktu(k):up(j,k)>=0)); @for(mahasiswa(i):wn(i)>=0); @for(mahasiswa(i):wp(i)>=0); @for(mahasiswa(i):tn(i)>=0); @for(mahasiswa(i):tp(i)>=0); !kendala jarak; !kecamatan 1; @for(mahasiswa(i):x(i,1,1)+x(i,7,2)<=1); @for(mahasiswa(i):x(i,1,3)+x(i,7,4)<=1); @for(mahasiswa(i):x(i,1,5)+x(i,7,6)<=1); @for(mahasiswa(i):x(i,1,7)+x(i,7,8)<=1); @for(mahasiswa(i):x(i,1,9)+x(i,7,10)<=1); @for(mahasiswa(i):x(i,1,11)+x(i,7,12)<=1); @for(mahasiswa(i):x(i,1,13)+x(i,7,14)<=1); @for(mahasiswa(i):x(i,1,15)+x(i,7,16)<=1); @for(mahasiswa(i):x(i,1,17)+x(i,7,18)<=1); @for(mahasiswa(i):x(i,1,19)+x(i,7,20)<=1); @for(mahasiswa(i):x(i,1,1)+x(i,9,2)<=1); @for(mahasiswa(i):x(i,1,3)+x(i,9,4)<=1); @for(mahasiswa(i):x(i,1,5)+x(i,9,6)<=1); @for(mahasiswa(i):x(i,1,7)+x(i,9,8)<=1); @for(mahasiswa(i):x(i,1,9)+x(i,9,10)<=1); @for(mahasiswa(i):x(i,1,11)+x(i,9,12)<=1); @for(mahasiswa(i):x(i,1,13)+x(i,9,14)<=1); @for(mahasiswa(i):x(i,1,15)+x(i,9,16)<=1); @for(mahasiswa(i):x(i,1,17)+x(i,9,18)<=1); @for(mahasiswa(i):x(i,1,19)+x(i,9,20)<=1); @for(mahasiswa(i):x(i,1,1)+x(i,10,2)<=1); @for(mahasiswa(i):x(i,1,3)+x(i,10,4)<=1); @for(mahasiswa(i):x(i,1,5)+x(i,10,6)<=1); @for(mahasiswa(i):x(i,1,7)+x(i,10,8)<=1); @for(mahasiswa(i):x(i,1,9)+x(i,10,10)<=1); @for(mahasiswa(i):x(i,1,11)+x(i,10,12)<=1); @for(mahasiswa(i):x(i,1,13)+x(i,10,14)<=1); @for(mahasiswa(i):x(i,1,15)+x(i,10,16)<=1);
31
@for(mahasiswa(i):x(i,1,17)+x(i,10,18)<=1); @for(mahasiswa(i):x(i,1,19)+x(i,10,20)<=1); !kecamatan 2; @for(mahasiswa(i):x(i,2,1)+x(i,6,2)<=1); @for(mahasiswa(i):x(i,2,3)+x(i,6,4)<=1); @for(mahasiswa(i):x(i,2,5)+x(i,6,6)<=1); @for(mahasiswa(i):x(i,2,7)+x(i,6,8)<=1); @for(mahasiswa(i):x(i,2,9)+x(i,6,10)<=1); @for(mahasiswa(i):x(i,2,11)+x(i,6,12)<=1); @for(mahasiswa(i):x(i,2,13)+x(i,6,14)<=1); @for(mahasiswa(i):x(i,2,15)+x(i,6,16)<=1); @for(mahasiswa(i):x(i,2,17)+x(i,6,18)<=1); @for(mahasiswa(i):x(i,2,19)+x(i,6,20)<=1); !kecamatan 3; @for(mahasiswa(i):x(i,3,1)+x(i,9,2)<=1); @for(mahasiswa(i):x(i,3,3)+x(i,9,4)<=1); @for(mahasiswa(i):x(i,3,5)+x(i,9,6)<=1); @for(mahasiswa(i):x(i,3,7)+x(i,9,8)<=1); @for(mahasiswa(i):x(i,3,9)+x(i,9,10)<=1); @for(mahasiswa(i):x(i,3,11)+x(i,9,12)<=1); @for(mahasiswa(i):x(i,3,13)+x(i,9,14)<=1); @for(mahasiswa(i):x(i,3,15)+x(i,9,16)<=1); @for(mahasiswa(i):x(i,3,17)+x(i,9,18)<=1); @for(mahasiswa(i):x(i,3,19)+x(i,9,20)<=1); @for(mahasiswa(i):x(i,3,1)+x(i,10,2)<=1); @for(mahasiswa(i):x(i,3,3)+x(i,10,4)<=1); @for(mahasiswa(i):x(i,3,5)+x(i,10,6)<=1); @for(mahasiswa(i):x(i,3,7)+x(i,10,8)<=1); @for(mahasiswa(i):x(i,3,9)+x(i,10,10)<=1); @for(mahasiswa(i):x(i,3,11)+x(i,10,12)<=1); @for(mahasiswa(i):x(i,3,13)+x(i,10,14)<=1); @for(mahasiswa(i):x(i,3,15)+x(i,10,16)<=1); @for(mahasiswa(i):x(i,3,17)+x(i,10,18)<=1); @for(mahasiswa(i):x(i,3,19)+x(i,10,20)<=1); !kecamatan 4; @for(mahasiswa(i):x(i,4,1)+x(i,9,2)<=1); @for(mahasiswa(i):x(i,4,3)+x(i,9,4)<=1); @for(mahasiswa(i):x(i,4,5)+x(i,9,6)<=1); @for(mahasiswa(i):x(i,4,7)+x(i,9,8)<=1); @for(mahasiswa(i):x(i,4,9)+x(i,9,10)<=1); @for(mahasiswa(i):x(i,4,11)+x(i,9,12)<=1); @for(mahasiswa(i):x(i,4,13)+x(i,9,14)<=1); @for(mahasiswa(i):x(i,4,15)+x(i,9,16)<=1); @for(mahasiswa(i):x(i,4,17)+x(i,9,18)<=1); @for(mahasiswa(i):x(i,4,19)+x(i,9,20)<=1); @for(mahasiswa(i):x(i,4,1)+x(i,10,2)<=1); @for(mahasiswa(i):x(i,4,3)+x(i,10,4)<=1); @for(mahasiswa(i):x(i,4,5)+x(i,10,6)<=1); @for(mahasiswa(i):x(i,4,7)+x(i,10,8)<=1); @for(mahasiswa(i):x(i,4,9)+x(i,10,10)<=1); @for(mahasiswa(i):x(i,4,11)+x(i,10,12)<=1); @for(mahasiswa(i):x(i,4,13)+x(i,10,14)<=1); @for(mahasiswa(i):x(i,4,15)+x(i,10,16)<=1); @for(mahasiswa(i):x(i,4,17)+x(i,10,18)<=1);
32
@for(mahasiswa(i):x(i,4,19)+x(i,10,20)<=1); !kecamatan 5; @for(mahasiswa(i):x(i,5,1)+x(i,9,2)<=1); @for(mahasiswa(i):x(i,5,3)+x(i,9,4)<=1); @for(mahasiswa(i):x(i,5,5)+x(i,9,6)<=1); @for(mahasiswa(i):x(i,5,7)+x(i,9,8)<=1); @for(mahasiswa(i):x(i,5,9)+x(i,9,10)<=1); @for(mahasiswa(i):x(i,5,11)+x(i,9,12)<=1); @for(mahasiswa(i):x(i,5,13)+x(i,9,14)<=1); @for(mahasiswa(i):x(i,5,15)+x(i,9,16)<=1); @for(mahasiswa(i):x(i,5,17)+x(i,9,18)<=1); @for(mahasiswa(i):x(i,5,19)+x(i,9,20)<=1); @for(mahasiswa(i):x(i,5,1)+x(i,10,2)<=1); @for(mahasiswa(i):x(i,5,3)+x(i,10,4)<=1); @for(mahasiswa(i):x(i,5,5)+x(i,10,6)<=1); @for(mahasiswa(i):x(i,5,7)+x(i,10,8)<=1); @for(mahasiswa(i):x(i,5,9)+x(i,10,10)<=1); @for(mahasiswa(i):x(i,5,11)+x(i,10,12)<=1); @for(mahasiswa(i):x(i,5,13)+x(i,10,14)<=1); @for(mahasiswa(i):x(i,5,15)+x(i,10,16)<=1); @for(mahasiswa(i):x(i,5,17)+x(i,10,18)<=1); @for(mahasiswa(i):x(i,5,19)+x(i,10,20)<=1); !kecamatan 6; @for(mahasiswa(i):x(i,6,1)+x(i,2,2)<=1); @for(mahasiswa(i):x(i,6,3)+x(i,2,4)<=1); @for(mahasiswa(i):x(i,6,5)+x(i,2,6)<=1); @for(mahasiswa(i):x(i,6,7)+x(i,2,8)<=1); @for(mahasiswa(i):x(i,6,9)+x(i,2,10)<=1); @for(mahasiswa(i):x(i,6,11)+x(i,2,12)<=1); @for(mahasiswa(i):x(i,6,13)+x(i,2,14)<=1); @for(mahasiswa(i):x(i,6,15)+x(i,2,16)<=1); @for(mahasiswa(i):x(i,6,17)+x(i,2,18)<=1); @for(mahasiswa(i):x(i,6,19)+x(i,2,20)<=1); @for(mahasiswa(i):x(i,6,1)+x(i,7,2)<=1); @for(mahasiswa(i):x(i,6,3)+x(i,7,4)<=1); @for(mahasiswa(i):x(i,6,5)+x(i,7,6)<=1); @for(mahasiswa(i):x(i,6,7)+x(i,7,8)<=1); @for(mahasiswa(i):x(i,6,9)+x(i,7,10)<=1); @for(mahasiswa(i):x(i,6,11)+x(i,7,12)<=1); @for(mahasiswa(i):x(i,6,13)+x(i,7,14)<=1); @for(mahasiswa(i):x(i,6,15)+x(i,7,16)<=1); @for(mahasiswa(i):x(i,6,17)+x(i,7,18)<=1); @for(mahasiswa(i):x(i,6,19)+x(i,7,20)<=1); @for(mahasiswa(i):x(i,6,1)+x(i,8,2)<=1); @for(mahasiswa(i):x(i,6,3)+x(i,8,4)<=1); @for(mahasiswa(i):x(i,6,5)+x(i,8,6)<=1); @for(mahasiswa(i):x(i,6,7)+x(i,8,8)<=1); @for(mahasiswa(i):x(i,6,9)+x(i,8,10)<=1); @for(mahasiswa(i):x(i,6,11)+x(i,8,12)<=1); @for(mahasiswa(i):x(i,6,13)+x(i,8,14)<=1); @for(mahasiswa(i):x(i,6,15)+x(i,8,16)<=1); @for(mahasiswa(i):x(i,6,17)+x(i,8,18)<=1); @for(mahasiswa(i):x(i,6,19)+x(i,8,20)<=1);
33
@for(mahasiswa(i):x(i,6,1)+x(i,9,2)<=1); @for(mahasiswa(i):x(i,6,3)+x(i,9,4)<=1); @for(mahasiswa(i):x(i,6,5)+x(i,9,6)<=1); @for(mahasiswa(i):x(i,6,7)+x(i,9,8)<=1); @for(mahasiswa(i):x(i,6,9)+x(i,9,10)<=1); @for(mahasiswa(i):x(i,6,11)+x(i,9,12)<=1); @for(mahasiswa(i):x(i,6,13)+x(i,9,14)<=1); @for(mahasiswa(i):x(i,6,15)+x(i,9,16)<=1); @for(mahasiswa(i):x(i,6,17)+x(i,9,18)<=1); @for(mahasiswa(i):x(i,6,19)+x(i,9,20)<=1); @for(mahasiswa(i):x(i,6,1)+x(i,10,2)<=1); @for(mahasiswa(i):x(i,6,3)+x(i,10,4)<=1); @for(mahasiswa(i):x(i,6,5)+x(i,10,6)<=1); @for(mahasiswa(i):x(i,6,7)+x(i,10,8)<=1); @for(mahasiswa(i):x(i,6,9)+x(i,10,10)<=1); @for(mahasiswa(i):x(i,6,11)+x(i,10,12)<=1); @for(mahasiswa(i):x(i,6,13)+x(i,10,14)<=1); @for(mahasiswa(i):x(i,6,15)+x(i,10,16)<=1); @for(mahasiswa(i):x(i,6,17)+x(i,10,18)<=1); @for(mahasiswa(i):x(i,6,19)+x(i,10,20)<=1); !kecamatan 7; @for(mahasiswa(i):x(i,7,1)+x(i,1,2)<=1); @for(mahasiswa(i):x(i,7,3)+x(i,1,4)<=1); @for(mahasiswa(i):x(i,7,5)+x(i,1,6)<=1); @for(mahasiswa(i):x(i,7,7)+x(i,1,8)<=1); @for(mahasiswa(i):x(i,7,9)+x(i,1,10)<=1); @for(mahasiswa(i):x(i,7,11)+x(i,1,12)<=1); @for(mahasiswa(i):x(i,7,13)+x(i,1,14)<=1); @for(mahasiswa(i):x(i,7,15)+x(i,1,16)<=1); @for(mahasiswa(i):x(i,7,17)+x(i,1,18)<=1); @for(mahasiswa(i):x(i,7,19)+x(i,1,20)<=1); @for(mahasiswa(i):x(i,7,1)+x(i,6,2)<=1); @for(mahasiswa(i):x(i,7,3)+x(i,6,4)<=1); @for(mahasiswa(i):x(i,7,5)+x(i,6,6)<=1); @for(mahasiswa(i):x(i,7,7)+x(i,6,8)<=1); @for(mahasiswa(i):x(i,7,9)+x(i,6,10)<=1); @for(mahasiswa(i):x(i,7,11)+x(i,6,12)<=1); @for(mahasiswa(i):x(i,7,13)+x(i,6,14)<=1); @for(mahasiswa(i):x(i,7,15)+x(i,6,16)<=1); @for(mahasiswa(i):x(i,7,17)+x(i,6,18)<=1); @for(mahasiswa(i):x(i,7,19)+x(i,6,20)<=1); !kecamatan 8; @for(mahasiswa(i):x(i,8,1)+x(i,6,2)<=1); @for(mahasiswa(i):x(i,8,3)+x(i,6,4)<=1); @for(mahasiswa(i):x(i,8,5)+x(i,6,6)<=1); @for(mahasiswa(i):x(i,8,7)+x(i,6,8)<=1); @for(mahasiswa(i):x(i,8,9)+x(i,6,10)<=1); @for(mahasiswa(i):x(i,8,11)+x(i,6,12)<=1); @for(mahasiswa(i):x(i,8,13)+x(i,6,14)<=1); @for(mahasiswa(i):x(i,8,15)+x(i,6,16)<=1); @for(mahasiswa(i):x(i,8,17)+x(i,6,18)<=1); @for(mahasiswa(i):x(i,8,19)+x(i,6,20)<=1); !kecamatan 9; @for(mahasiswa(i):x(i,9,1)+x(i,1,2)<=1);
34
@for(mahasiswa(i):x(i,9,3)+x(i,1,4)<=1); @for(mahasiswa(i):x(i,9,5)+x(i,1,6)<=1); @for(mahasiswa(i):x(i,9,7)+x(i,1,8)<=1); @for(mahasiswa(i):x(i,9,9)+x(i,1,10)<=1); @for(mahasiswa(i):x(i,9,11)+x(i,1,12)<=1); @for(mahasiswa(i):x(i,9,13)+x(i,1,14)<=1); @for(mahasiswa(i):x(i,9,15)+x(i,1,16)<=1); @for(mahasiswa(i):x(i,9,17)+x(i,1,18)<=1); @for(mahasiswa(i):x(i,9,19)+x(i,1,20)<=1); @for(mahasiswa(i):x(i,9,1)+x(i,3,2)<=1); @for(mahasiswa(i):x(i,9,3)+x(i,3,4)<=1); @for(mahasiswa(i):x(i,9,5)+x(i,3,6)<=1); @for(mahasiswa(i):x(i,9,7)+x(i,3,8)<=1); @for(mahasiswa(i):x(i,9,9)+x(i,3,10)<=1); @for(mahasiswa(i):x(i,9,11)+x(i,3,12)<=1); @for(mahasiswa(i):x(i,9,13)+x(i,3,14)<=1); @for(mahasiswa(i):x(i,9,15)+x(i,3,16)<=1); @for(mahasiswa(i):x(i,9,17)+x(i,3,18)<=1); @for(mahasiswa(i):x(i,9,19)+x(i,3,20)<=1); @for(mahasiswa(i):x(i,9,1)+x(i,4,2)<=1); @for(mahasiswa(i):x(i,9,3)+x(i,4,4)<=1); @for(mahasiswa(i):x(i,9,5)+x(i,4,6)<=1); @for(mahasiswa(i):x(i,9,7)+x(i,4,8)<=1); @for(mahasiswa(i):x(i,9,9)+x(i,4,10)<=1); @for(mahasiswa(i):x(i,9,11)+x(i,4,12)<=1); @for(mahasiswa(i):x(i,9,13)+x(i,4,14)<=1); @for(mahasiswa(i):x(i,9,15)+x(i,4,16)<=1); @for(mahasiswa(i):x(i,9,17)+x(i,4,18)<=1); @for(mahasiswa(i):x(i,9,19)+x(i,4,20)<=1); @for(mahasiswa(i):x(i,9,1)+x(i,5,2)<=1); @for(mahasiswa(i):x(i,9,3)+x(i,5,4)<=1); @for(mahasiswa(i):x(i,9,5)+x(i,5,6)<=1); @for(mahasiswa(i):x(i,9,7)+x(i,5,8)<=1); @for(mahasiswa(i):x(i,9,9)+x(i,5,10)<=1); @for(mahasiswa(i):x(i,9,11)+x(i,5,12)<=1); @for(mahasiswa(i):x(i,9,13)+x(i,5,14)<=1); @for(mahasiswa(i):x(i,9,15)+x(i,5,16)<=1); @for(mahasiswa(i):x(i,9,17)+x(i,5,18)<=1); @for(mahasiswa(i):x(i,9,19)+x(i,5,20)<=1); @for(mahasiswa(i):x(i,9,1)+x(i,6,2)<=1); @for(mahasiswa(i):x(i,9,3)+x(i,6,4)<=1); @for(mahasiswa(i):x(i,9,5)+x(i,6,6)<=1); @for(mahasiswa(i):x(i,9,7)+x(i,6,8)<=1); @for(mahasiswa(i):x(i,9,9)+x(i,6,10)<=1); @for(mahasiswa(i):x(i,9,11)+x(i,6,12)<=1); @for(mahasiswa(i):x(i,9,13)+x(i,6,14)<=1); @for(mahasiswa(i):x(i,9,15)+x(i,6,16)<=1); @for(mahasiswa(i):x(i,9,17)+x(i,6,18)<=1); @for(mahasiswa(i):x(i,9,19)+x(i,6,20)<=1); !kecamatan 10; @for(mahasiswa(i):x(i,10,1)+x(i,1,2)<=1); @for(mahasiswa(i):x(i,10,3)+x(i,1,4)<=1); @for(mahasiswa(i):x(i,10,5)+x(i,1,6)<=1); @for(mahasiswa(i):x(i,10,7)+x(i,1,8)<=1);
35
@for(mahasiswa(i):x(i,10,9)+x(i,1,10)<=1); @for(mahasiswa(i):x(i,10,11)+x(i,1,12)<=1); @for(mahasiswa(i):x(i,10,13)+x(i,1,14)<=1); @for(mahasiswa(i):x(i,10,15)+x(i,1,16)<=1); @for(mahasiswa(i):x(i,10,17)+x(i,1,18)<=1); @for(mahasiswa(i):x(i,10,19)+x(i,1,20)<=1); @for(mahasiswa(i):x(i,10,1)+x(i,3,2)<=1); @for(mahasiswa(i):x(i,10,3)+x(i,3,4)<=1); @for(mahasiswa(i):x(i,10,5)+x(i,3,6)<=1); @for(mahasiswa(i):x(i,10,7)+x(i,3,8)<=1); @for(mahasiswa(i):x(i,10,9)+x(i,3,10)<=1); @for(mahasiswa(i):x(i,10,11)+x(i,3,12)<=1); @for(mahasiswa(i):x(i,10,13)+x(i,3,14)<=1); @for(mahasiswa(i):x(i,10,15)+x(i,3,16)<=1); @for(mahasiswa(i):x(i,10,17)+x(i,3,18)<=1); @for(mahasiswa(i):x(i,10,19)+x(i,3,20)<=1); @for(mahasiswa(i):x(i,10,1)+x(i,4,2)<=1); @for(mahasiswa(i):x(i,10,3)+x(i,4,4)<=1); @for(mahasiswa(i):x(i,10,5)+x(i,4,6)<=1); @for(mahasiswa(i):x(i,10,7)+x(i,4,8)<=1); @for(mahasiswa(i):x(i,10,9)+x(i,4,10)<=1); @for(mahasiswa(i):x(i,10,11)+x(i,4,12)<=1); @for(mahasiswa(i):x(i,10,13)+x(i,4,14)<=1); @for(mahasiswa(i):x(i,10,15)+x(i,4,16)<=1); @for(mahasiswa(i):x(i,10,17)+x(i,4,18)<=1); @for(mahasiswa(i):x(i,10,19)+x(i,4,20)<=1); @for(mahasiswa(i):x(i,10,1)+x(i,5,2)<=1); @for(mahasiswa(i):x(i,10,3)+x(i,5,4)<=1); @for(mahasiswa(i):x(i,10,5)+x(i,5,6)<=1); @for(mahasiswa(i):x(i,10,7)+x(i,5,8)<=1); @for(mahasiswa(i):x(i,10,9)+x(i,5,10)<=1); @for(mahasiswa(i):x(i,10,11)+x(i,5,12)<=1); @for(mahasiswa(i):x(i,10,13)+x(i,5,14)<=1); @for(mahasiswa(i):x(i,10,15)+x(i,5,16)<=1); @for(mahasiswa(i):x(i,10,17)+x(i,5,18)<=1); @for(mahasiswa(i):x(i,10,19)+x(i,5,20)<=1); @for(mahasiswa(i):x(i,10,1)+x(i,6,2)<=1); @for(mahasiswa(i):x(i,10,3)+x(i,6,4)<=1); @for(mahasiswa(i):x(i,10,5)+x(i,6,6)<=1); @for(mahasiswa(i):x(i,10,7)+x(i,6,8)<=1); @for(mahasiswa(i):x(i,10,9)+x(i,6,10)<=1); @for(mahasiswa(i):x(i,10,11)+x(i,6,12)<=1); @for(mahasiswa(i):x(i,10,13)+x(i,6,14)<=1); @for(mahasiswa(i):x(i,10,15)+x(i,6,16)<=1); @for(mahasiswa(i):x(i,10,17)+x(i,6,18)<=1); @for(mahasiswa(i):x(i,10,19)+x(i,6,20)<=1); !output; @for(mahasiswa(i):@for(waktu(k):jumlahkec(i,k)=@sum(kecamatan(j):x (i,j,k)))); @for(link1(i,j,k):hasilx(i,j,k)=x(i,j,k); @for(link4(j,k):hasilup(j,k)=up(j,k)); @for(link4(j,k):hasilun(j,k)=un(j,k)); @for(mahasiswa(i):hasiltp(i)=tp(i)); @for(mahasiswa(i):hasiltn(i)=tn(i));
36
@for(mahasiswa(i):hasilwp(i)=wp(i)); @for(mahasiswa(i):hasilwn(i)=wn(i)); ); DATA: @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasilup')=hasilup; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasilun')=hasilun; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasiltp')=hasiltp; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasiltn')=hasiltn; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasilwp')=hasilwp; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasilwn')=hasilwn; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasilx')=hasilx; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlahkec')=jumlahkec; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','Y')=y; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlah1')=jum1; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlah2')=jum2; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlah3')=jum3; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlah4')=jum4; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlah5')=jum5; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlah6')=jum6; enddata end
Hasil yang diperoleh:
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
mahasiswa\rekap
kondisi
37
Lampiran 8 Sintaks program LINGO 11.0 untuk masalah penugasan mahasiswa menggunakan goal programming dengan meminimumkan jumlah mahasiswa model: sets: mahasiswa/1..50/:y,wp,wn,WB,tp,tn,TO,TOp,TOn,hasilwp,hasilwn,hasil tp,hasiltn; kecamatan/1..10/; waktu/1..20/; link1(mahasiswa,kecamatan,waktu):x, hasilx; link2(mahasiswa,waktu):A, jumlahkec; link3(mahasiswa,kecamatan):B; link4(kecamatan,waktu):M,up,un,Mp,Mn,hasilun,hasilup; endsets data: A=@ole('D:\Draft Skripsi 2014\Kodingan\50 mahasiswa\data kondisi 1B.xlsx','A'); B=@ole('D:\Draft Skripsi 2014\Kodingan\50 mahasiswa\data kondisi 1B.xlsx','B'); M=@ole('D:\Draft Skripsi 2014\Kodingan\50 mahasiswa\data kondisi 1B.xlsx','MU'); Mp=@ole('D:\Draft Skripsi 2014\Kodingan\50 mahasiswa\data kondisi 1B.xlsx','Mp'); Mn=@ole('D:\Draft Skripsi 2014\Kodingan\50 mahasiswa\data kondisi 1B.xlsx','Mn'); WB=@ole('D:\Draft Skripsi 2014\Kodingan\50 mahasiswa\data kondisi 1B.xlsx','WB'); TO=@ole('D:\Draft Skripsi 2014\Kodingan\50 mahasiswa\data kondisi 1B.xlsx','TO'); TOp=@ole('D:\Draft Skripsi 2014\Kodingan\50 mahasiswa\data kondisi 1B.xlsx','TOp'); TOn=@ole('D:\Draft Skripsi 2014\Kodingan\50 mahasiswa\data kondisi 1B.xlsx','TOn'); enddata @for(mahasiswa(i):@for(kecamatan(j):@for(waktu(k):@bin(x(i,j,k)))) ); @for(mahasiswa(i):@bin(y(i))); !fungsi objektif; min=@sum(mahasiswa(i):y(i)); jum1=@sum(link4(j,k):un(j,k)); jum2=@sum(link4(j,k):up(j,k)); jum3=@sum(mahasiswa(i):tn(i)); jum4=@sum(mahasiswa(i):tp(i)); jum5=@sum(mahasiswa(i):wn(i)); jum6=@sum(mahasiswa(i):wp(i)); !kendala; @for(mahasiswa(i):@for(waktu(k):@sum(kecamatan(j):x(i,j,k))<=A(i,k ))); @for(mahasiswa(i):@for(kecamatan(j):@for(waktu(k):x(i,j,k)<=B(i,j) ))); @for(mahasiswa(i):@for(kecamatan(j):@for(waktu(k):x(i,j,k)<=y(i))) );
38
@for(kecamatan(j):@for(waktu(k):@sum(mahasiswa(i):x(i,j,k))+un(j,k )-up(j,k)=M(j,k))); @for(mahasiswa(i):@sum(kecamatan(j):@sum(waktu(k):x(i,j,k)))+wn(i) -wp(i)=y(i)*WB(i)); @for(mahasiswa(i):@sum(kecamatan(j):@sum(waktu(k):x(i,j,k)))+tn(i) -tp(i)=y (i)*TO(i)); @for(mahasiswa(i):tn(i)<=TOn(i)); @for(mahasiswa(i):tp(i)<=TOp(i)); @for(kecamatan(j):@for(waktu(k):un(j,k)<=Mn(j,k))); @for(kecamatan(j):@for(waktu(k):up(j,k)<=Mp(j,k))); @for(kecamatan(j):@for(waktu(k):@gin(un(j,k)))); @for(kecamatan(j):@for(waktu(k):@gin(up(j,k)))); @for(mahasiswa(i):@gin(tp(i))); @for(mahasiswa(i):@gin(tn(i))); @for(mahasiswa(i):@gin(wp(i))); @for(mahasiswa(i):@gin(wn(i))); @for(kecamatan(j):@for(waktu(k):un(j,k)>=0)); @for(kecamatan(j):@for(waktu(k):up(j,k)>=0)); @for(mahasiswa(i):wn(i)>=0); @for(mahasiswa(i):wp(i)>=0); @for(mahasiswa(i):tn(i)>=0); @for(mahasiswa(i):tp(i)>=0); !kendala jarak; !kecamatan 1; @for(mahasiswa(i):x(i,1,1)+x(i,7,2)<=1); @for(mahasiswa(i):x(i,1,3)+x(i,7,4)<=1); @for(mahasiswa(i):x(i,1,5)+x(i,7,6)<=1); @for(mahasiswa(i):x(i,1,7)+x(i,7,8)<=1); @for(mahasiswa(i):x(i,1,9)+x(i,7,10)<=1); @for(mahasiswa(i):x(i,1,11)+x(i,7,12)<=1); @for(mahasiswa(i):x(i,1,13)+x(i,7,14)<=1); @for(mahasiswa(i):x(i,1,15)+x(i,7,16)<=1); @for(mahasiswa(i):x(i,1,17)+x(i,7,18)<=1); @for(mahasiswa(i):x(i,1,19)+x(i,7,20)<=1); @for(mahasiswa(i):x(i,1,1)+x(i,9,2)<=1); @for(mahasiswa(i):x(i,1,3)+x(i,9,4)<=1); @for(mahasiswa(i):x(i,1,5)+x(i,9,6)<=1); @for(mahasiswa(i):x(i,1,7)+x(i,9,8)<=1); @for(mahasiswa(i):x(i,1,9)+x(i,9,10)<=1); @for(mahasiswa(i):x(i,1,11)+x(i,9,12)<=1); @for(mahasiswa(i):x(i,1,13)+x(i,9,14)<=1); @for(mahasiswa(i):x(i,1,15)+x(i,9,16)<=1); @for(mahasiswa(i):x(i,1,17)+x(i,9,18)<=1); @for(mahasiswa(i):x(i,1,19)+x(i,9,20)<=1); @for(mahasiswa(i):x(i,1,1)+x(i,10,2)<=1); @for(mahasiswa(i):x(i,1,3)+x(i,10,4)<=1); @for(mahasiswa(i):x(i,1,5)+x(i,10,6)<=1); @for(mahasiswa(i):x(i,1,7)+x(i,10,8)<=1); @for(mahasiswa(i):x(i,1,9)+x(i,10,10)<=1); @for(mahasiswa(i):x(i,1,11)+x(i,10,12)<=1); @for(mahasiswa(i):x(i,1,13)+x(i,10,14)<=1); @for(mahasiswa(i):x(i,1,15)+x(i,10,16)<=1); @for(mahasiswa(i):x(i,1,17)+x(i,10,18)<=1); @for(mahasiswa(i):x(i,1,19)+x(i,10,20)<=1);
39
!kecamatan 2; @for(mahasiswa(i):x(i,2,1)+x(i,6,2)<=1); @for(mahasiswa(i):x(i,2,3)+x(i,6,4)<=1); @for(mahasiswa(i):x(i,2,5)+x(i,6,6)<=1); @for(mahasiswa(i):x(i,2,7)+x(i,6,8)<=1); @for(mahasiswa(i):x(i,2,9)+x(i,6,10)<=1); @for(mahasiswa(i):x(i,2,11)+x(i,6,12)<=1); @for(mahasiswa(i):x(i,2,13)+x(i,6,14)<=1); @for(mahasiswa(i):x(i,2,15)+x(i,6,16)<=1); @for(mahasiswa(i):x(i,2,17)+x(i,6,18)<=1); @for(mahasiswa(i):x(i,2,19)+x(i,6,20)<=1); !kecamatan 3; @for(mahasiswa(i):x(i,3,1)+x(i,9,2)<=1); @for(mahasiswa(i):x(i,3,3)+x(i,9,4)<=1); @for(mahasiswa(i):x(i,3,5)+x(i,9,6)<=1); @for(mahasiswa(i):x(i,3,7)+x(i,9,8)<=1); @for(mahasiswa(i):x(i,3,9)+x(i,9,10)<=1); @for(mahasiswa(i):x(i,3,11)+x(i,9,12)<=1); @for(mahasiswa(i):x(i,3,13)+x(i,9,14)<=1); @for(mahasiswa(i):x(i,3,15)+x(i,9,16)<=1); @for(mahasiswa(i):x(i,3,17)+x(i,9,18)<=1); @for(mahasiswa(i):x(i,3,19)+x(i,9,20)<=1); @for(mahasiswa(i):x(i,3,1)+x(i,10,2)<=1); @for(mahasiswa(i):x(i,3,3)+x(i,10,4)<=1); @for(mahasiswa(i):x(i,3,5)+x(i,10,6)<=1); @for(mahasiswa(i):x(i,3,7)+x(i,10,8)<=1); @for(mahasiswa(i):x(i,3,9)+x(i,10,10)<=1); @for(mahasiswa(i):x(i,3,11)+x(i,10,12)<=1); @for(mahasiswa(i):x(i,3,13)+x(i,10,14)<=1); @for(mahasiswa(i):x(i,3,15)+x(i,10,16)<=1); @for(mahasiswa(i):x(i,3,17)+x(i,10,18)<=1); @for(mahasiswa(i):x(i,3,19)+x(i,10,20)<=1); !kecamatan 4; @for(mahasiswa(i):x(i,4,1)+x(i,9,2)<=1); @for(mahasiswa(i):x(i,4,3)+x(i,9,4)<=1); @for(mahasiswa(i):x(i,4,5)+x(i,9,6)<=1); @for(mahasiswa(i):x(i,4,7)+x(i,9,8)<=1); @for(mahasiswa(i):x(i,4,9)+x(i,9,10)<=1); @for(mahasiswa(i):x(i,4,11)+x(i,9,12)<=1); @for(mahasiswa(i):x(i,4,13)+x(i,9,14)<=1); @for(mahasiswa(i):x(i,4,15)+x(i,9,16)<=1); @for(mahasiswa(i):x(i,4,17)+x(i,9,18)<=1); @for(mahasiswa(i):x(i,4,19)+x(i,9,20)<=1); @for(mahasiswa(i):x(i,4,1)+x(i,10,2)<=1); @for(mahasiswa(i):x(i,4,3)+x(i,10,4)<=1); @for(mahasiswa(i):x(i,4,5)+x(i,10,6)<=1); @for(mahasiswa(i):x(i,4,7)+x(i,10,8)<=1); @for(mahasiswa(i):x(i,4,9)+x(i,10,10)<=1); @for(mahasiswa(i):x(i,4,11)+x(i,10,12)<=1); @for(mahasiswa(i):x(i,4,13)+x(i,10,14)<=1); @for(mahasiswa(i):x(i,4,15)+x(i,10,16)<=1); @for(mahasiswa(i):x(i,4,17)+x(i,10,18)<=1); @for(mahasiswa(i):x(i,4,19)+x(i,10,20)<=1);
40
!kecamatan 5; @for(mahasiswa(i):x(i,5,1)+x(i,9,2)<=1); @for(mahasiswa(i):x(i,5,3)+x(i,9,4)<=1); @for(mahasiswa(i):x(i,5,5)+x(i,9,6)<=1); @for(mahasiswa(i):x(i,5,7)+x(i,9,8)<=1); @for(mahasiswa(i):x(i,5,9)+x(i,9,10)<=1); @for(mahasiswa(i):x(i,5,11)+x(i,9,12)<=1); @for(mahasiswa(i):x(i,5,13)+x(i,9,14)<=1); @for(mahasiswa(i):x(i,5,15)+x(i,9,16)<=1); @for(mahasiswa(i):x(i,5,17)+x(i,9,18)<=1); @for(mahasiswa(i):x(i,5,19)+x(i,9,20)<=1); @for(mahasiswa(i):x(i,5,1)+x(i,10,2)<=1); @for(mahasiswa(i):x(i,5,3)+x(i,10,4)<=1); @for(mahasiswa(i):x(i,5,5)+x(i,10,6)<=1); @for(mahasiswa(i):x(i,5,7)+x(i,10,8)<=1); @for(mahasiswa(i):x(i,5,9)+x(i,10,10)<=1); @for(mahasiswa(i):x(i,5,11)+x(i,10,12)<=1); @for(mahasiswa(i):x(i,5,13)+x(i,10,14)<=1); @for(mahasiswa(i):x(i,5,15)+x(i,10,16)<=1); @for(mahasiswa(i):x(i,5,17)+x(i,10,18)<=1); @for(mahasiswa(i):x(i,5,19)+x(i,10,20)<=1); !kecamatan 6; @for(mahasiswa(i):x(i,6,1)+x(i,2,2)<=1); @for(mahasiswa(i):x(i,6,3)+x(i,2,4)<=1); @for(mahasiswa(i):x(i,6,5)+x(i,2,6)<=1); @for(mahasiswa(i):x(i,6,7)+x(i,2,8)<=1); @for(mahasiswa(i):x(i,6,9)+x(i,2,10)<=1); @for(mahasiswa(i):x(i,6,11)+x(i,2,12)<=1); @for(mahasiswa(i):x(i,6,13)+x(i,2,14)<=1); @for(mahasiswa(i):x(i,6,15)+x(i,2,16)<=1); @for(mahasiswa(i):x(i,6,17)+x(i,2,18)<=1); @for(mahasiswa(i):x(i,6,19)+x(i,2,20)<=1); @for(mahasiswa(i):x(i,6,1)+x(i,7,2)<=1); @for(mahasiswa(i):x(i,6,3)+x(i,7,4)<=1); @for(mahasiswa(i):x(i,6,5)+x(i,7,6)<=1); @for(mahasiswa(i):x(i,6,7)+x(i,7,8)<=1); @for(mahasiswa(i):x(i,6,9)+x(i,7,10)<=1); @for(mahasiswa(i):x(i,6,11)+x(i,7,12)<=1); @for(mahasiswa(i):x(i,6,13)+x(i,7,14)<=1); @for(mahasiswa(i):x(i,6,15)+x(i,7,16)<=1); @for(mahasiswa(i):x(i,6,17)+x(i,7,18)<=1); @for(mahasiswa(i):x(i,6,19)+x(i,7,20)<=1); @for(mahasiswa(i):x(i,6,1)+x(i,8,2)<=1); @for(mahasiswa(i):x(i,6,3)+x(i,8,4)<=1); @for(mahasiswa(i):x(i,6,5)+x(i,8,6)<=1); @for(mahasiswa(i):x(i,6,7)+x(i,8,8)<=1); @for(mahasiswa(i):x(i,6,9)+x(i,8,10)<=1); @for(mahasiswa(i):x(i,6,11)+x(i,8,12)<=1); @for(mahasiswa(i):x(i,6,13)+x(i,8,14)<=1); @for(mahasiswa(i):x(i,6,15)+x(i,8,16)<=1); @for(mahasiswa(i):x(i,6,17)+x(i,8,18)<=1); @for(mahasiswa(i):x(i,6,19)+x(i,8,20)<=1); @for(mahasiswa(i):x(i,6,1)+x(i,9,2)<=1); @for(mahasiswa(i):x(i,6,3)+x(i,9,4)<=1);
41
@for(mahasiswa(i):x(i,6,5)+x(i,9,6)<=1); @for(mahasiswa(i):x(i,6,7)+x(i,9,8)<=1); @for(mahasiswa(i):x(i,6,9)+x(i,9,10)<=1); @for(mahasiswa(i):x(i,6,11)+x(i,9,12)<=1); @for(mahasiswa(i):x(i,6,13)+x(i,9,14)<=1); @for(mahasiswa(i):x(i,6,15)+x(i,9,16)<=1); @for(mahasiswa(i):x(i,6,17)+x(i,9,18)<=1); @for(mahasiswa(i):x(i,6,19)+x(i,9,20)<=1); @for(mahasiswa(i):x(i,6,1)+x(i,10,2)<=1); @for(mahasiswa(i):x(i,6,3)+x(i,10,4)<=1); @for(mahasiswa(i):x(i,6,5)+x(i,10,6)<=1); @for(mahasiswa(i):x(i,6,7)+x(i,10,8)<=1); @for(mahasiswa(i):x(i,6,9)+x(i,10,10)<=1); @for(mahasiswa(i):x(i,6,11)+x(i,10,12)<=1); @for(mahasiswa(i):x(i,6,13)+x(i,10,14)<=1); @for(mahasiswa(i):x(i,6,15)+x(i,10,16)<=1); @for(mahasiswa(i):x(i,6,17)+x(i,10,18)<=1); @for(mahasiswa(i):x(i,6,19)+x(i,10,20)<=1); !kecamatan 7; @for(mahasiswa(i):x(i,7,1)+x(i,1,2)<=1); @for(mahasiswa(i):x(i,7,3)+x(i,1,4)<=1); @for(mahasiswa(i):x(i,7,5)+x(i,1,6)<=1); @for(mahasiswa(i):x(i,7,7)+x(i,1,8)<=1); @for(mahasiswa(i):x(i,7,9)+x(i,1,10)<=1); @for(mahasiswa(i):x(i,7,11)+x(i,1,12)<=1); @for(mahasiswa(i):x(i,7,13)+x(i,1,14)<=1); @for(mahasiswa(i):x(i,7,15)+x(i,1,16)<=1); @for(mahasiswa(i):x(i,7,17)+x(i,1,18)<=1); @for(mahasiswa(i):x(i,7,19)+x(i,1,20)<=1); @for(mahasiswa(i):x(i,7,1)+x(i,6,2)<=1); @for(mahasiswa(i):x(i,7,3)+x(i,6,4)<=1); @for(mahasiswa(i):x(i,7,5)+x(i,6,6)<=1); @for(mahasiswa(i):x(i,7,7)+x(i,6,8)<=1); @for(mahasiswa(i):x(i,7,9)+x(i,6,10)<=1); @for(mahasiswa(i):x(i,7,11)+x(i,6,12)<=1); @for(mahasiswa(i):x(i,7,13)+x(i,6,14)<=1); @for(mahasiswa(i):x(i,7,15)+x(i,6,16)<=1); @for(mahasiswa(i):x(i,7,17)+x(i,6,18)<=1); @for(mahasiswa(i):x(i,7,19)+x(i,6,20)<=1); !kecamatan 8; @for(mahasiswa(i):x(i,8,1)+x(i,6,2)<=1); @for(mahasiswa(i):x(i,8,3)+x(i,6,4)<=1); @for(mahasiswa(i):x(i,8,5)+x(i,6,6)<=1); @for(mahasiswa(i):x(i,8,7)+x(i,6,8)<=1); @for(mahasiswa(i):x(i,8,9)+x(i,6,10)<=1); @for(mahasiswa(i):x(i,8,11)+x(i,6,12)<=1); @for(mahasiswa(i):x(i,8,13)+x(i,6,14)<=1); @for(mahasiswa(i):x(i,8,15)+x(i,6,16)<=1); @for(mahasiswa(i):x(i,8,17)+x(i,6,18)<=1); @for(mahasiswa(i):x(i,8,19)+x(i,6,20)<=1); !kecamatan 9; @for(mahasiswa(i):x(i,9,1)+x(i,1,2)<=1); @for(mahasiswa(i):x(i,9,3)+x(i,1,4)<=1); @for(mahasiswa(i):x(i,9,5)+x(i,1,6)<=1);
42
@for(mahasiswa(i):x(i,9,7)+x(i,1,8)<=1); @for(mahasiswa(i):x(i,9,9)+x(i,1,10)<=1); @for(mahasiswa(i):x(i,9,11)+x(i,1,12)<=1); @for(mahasiswa(i):x(i,9,13)+x(i,1,14)<=1); @for(mahasiswa(i):x(i,9,15)+x(i,1,16)<=1); @for(mahasiswa(i):x(i,9,17)+x(i,1,18)<=1); @for(mahasiswa(i):x(i,9,19)+x(i,1,20)<=1); @for(mahasiswa(i):x(i,9,1)+x(i,3,2)<=1); @for(mahasiswa(i):x(i,9,3)+x(i,3,4)<=1); @for(mahasiswa(i):x(i,9,5)+x(i,3,6)<=1); @for(mahasiswa(i):x(i,9,7)+x(i,3,8)<=1); @for(mahasiswa(i):x(i,9,9)+x(i,3,10)<=1); @for(mahasiswa(i):x(i,9,11)+x(i,3,12)<=1); @for(mahasiswa(i):x(i,9,13)+x(i,3,14)<=1); @for(mahasiswa(i):x(i,9,15)+x(i,3,16)<=1); @for(mahasiswa(i):x(i,9,17)+x(i,3,18)<=1); @for(mahasiswa(i):x(i,9,19)+x(i,3,20)<=1); @for(mahasiswa(i):x(i,9,1)+x(i,4,2)<=1); @for(mahasiswa(i):x(i,9,3)+x(i,4,4)<=1); @for(mahasiswa(i):x(i,9,5)+x(i,4,6)<=1); @for(mahasiswa(i):x(i,9,7)+x(i,4,8)<=1); @for(mahasiswa(i):x(i,9,9)+x(i,4,10)<=1); @for(mahasiswa(i):x(i,9,11)+x(i,4,12)<=1); @for(mahasiswa(i):x(i,9,13)+x(i,4,14)<=1); @for(mahasiswa(i):x(i,9,15)+x(i,4,16)<=1); @for(mahasiswa(i):x(i,9,17)+x(i,4,18)<=1); @for(mahasiswa(i):x(i,9,19)+x(i,4,20)<=1); @for(mahasiswa(i):x(i,9,1)+x(i,5,2)<=1); @for(mahasiswa(i):x(i,9,3)+x(i,5,4)<=1); @for(mahasiswa(i):x(i,9,5)+x(i,5,6)<=1); @for(mahasiswa(i):x(i,9,7)+x(i,5,8)<=1); @for(mahasiswa(i):x(i,9,9)+x(i,5,10)<=1); @for(mahasiswa(i):x(i,9,11)+x(i,5,12)<=1); @for(mahasiswa(i):x(i,9,13)+x(i,5,14)<=1); @for(mahasiswa(i):x(i,9,15)+x(i,5,16)<=1); @for(mahasiswa(i):x(i,9,17)+x(i,5,18)<=1); @for(mahasiswa(i):x(i,9,19)+x(i,5,20)<=1); @for(mahasiswa(i):x(i,9,1)+x(i,6,2)<=1); @for(mahasiswa(i):x(i,9,3)+x(i,6,4)<=1); @for(mahasiswa(i):x(i,9,5)+x(i,6,6)<=1); @for(mahasiswa(i):x(i,9,7)+x(i,6,8)<=1); @for(mahasiswa(i):x(i,9,9)+x(i,6,10)<=1); @for(mahasiswa(i):x(i,9,11)+x(i,6,12)<=1); @for(mahasiswa(i):x(i,9,13)+x(i,6,14)<=1); @for(mahasiswa(i):x(i,9,15)+x(i,6,16)<=1); @for(mahasiswa(i):x(i,9,17)+x(i,6,18)<=1); @for(mahasiswa(i):x(i,9,19)+x(i,6,20)<=1); !kecamatan 10; @for(mahasiswa(i):x(i,10,1)+x(i,1,2)<=1); @for(mahasiswa(i):x(i,10,3)+x(i,1,4)<=1); @for(mahasiswa(i):x(i,10,5)+x(i,1,6)<=1); @for(mahasiswa(i):x(i,10,7)+x(i,1,8)<=1); @for(mahasiswa(i):x(i,10,9)+x(i,1,10)<=1); @for(mahasiswa(i):x(i,10,11)+x(i,1,12)<=1);
43
@for(mahasiswa(i):x(i,10,13)+x(i,1,14)<=1); @for(mahasiswa(i):x(i,10,15)+x(i,1,16)<=1); @for(mahasiswa(i):x(i,10,17)+x(i,1,18)<=1); @for(mahasiswa(i):x(i,10,19)+x(i,1,20)<=1); @for(mahasiswa(i):x(i,10,1)+x(i,3,2)<=1); @for(mahasiswa(i):x(i,10,3)+x(i,3,4)<=1); @for(mahasiswa(i):x(i,10,5)+x(i,3,6)<=1); @for(mahasiswa(i):x(i,10,7)+x(i,3,8)<=1); @for(mahasiswa(i):x(i,10,9)+x(i,3,10)<=1); @for(mahasiswa(i):x(i,10,11)+x(i,3,12)<=1); @for(mahasiswa(i):x(i,10,13)+x(i,3,14)<=1); @for(mahasiswa(i):x(i,10,15)+x(i,3,16)<=1); @for(mahasiswa(i):x(i,10,17)+x(i,3,18)<=1); @for(mahasiswa(i):x(i,10,19)+x(i,3,20)<=1); @for(mahasiswa(i):x(i,10,1)+x(i,4,2)<=1); @for(mahasiswa(i):x(i,10,3)+x(i,4,4)<=1); @for(mahasiswa(i):x(i,10,5)+x(i,4,6)<=1); @for(mahasiswa(i):x(i,10,7)+x(i,4,8)<=1); @for(mahasiswa(i):x(i,10,9)+x(i,4,10)<=1); @for(mahasiswa(i):x(i,10,11)+x(i,4,12)<=1); @for(mahasiswa(i):x(i,10,13)+x(i,4,14)<=1); @for(mahasiswa(i):x(i,10,15)+x(i,4,16)<=1); @for(mahasiswa(i):x(i,10,17)+x(i,4,18)<=1); @for(mahasiswa(i):x(i,10,19)+x(i,4,20)<=1); @for(mahasiswa(i):x(i,10,1)+x(i,5,2)<=1); @for(mahasiswa(i):x(i,10,3)+x(i,5,4)<=1); @for(mahasiswa(i):x(i,10,5)+x(i,5,6)<=1); @for(mahasiswa(i):x(i,10,7)+x(i,5,8)<=1); @for(mahasiswa(i):x(i,10,9)+x(i,5,10)<=1); @for(mahasiswa(i):x(i,10,11)+x(i,5,12)<=1); @for(mahasiswa(i):x(i,10,13)+x(i,5,14)<=1); @for(mahasiswa(i):x(i,10,15)+x(i,5,16)<=1); @for(mahasiswa(i):x(i,10,17)+x(i,5,18)<=1); @for(mahasiswa(i):x(i,10,19)+x(i,5,20)<=1); @for(mahasiswa(i):x(i,10,1)+x(i,6,2)<=1); @for(mahasiswa(i):x(i,10,3)+x(i,6,4)<=1); @for(mahasiswa(i):x(i,10,5)+x(i,6,6)<=1); @for(mahasiswa(i):x(i,10,7)+x(i,6,8)<=1); @for(mahasiswa(i):x(i,10,9)+x(i,6,10)<=1); @for(mahasiswa(i):x(i,10,11)+x(i,6,12)<=1); @for(mahasiswa(i):x(i,10,13)+x(i,6,14)<=1); @for(mahasiswa(i):x(i,10,15)+x(i,6,16)<=1); @for(mahasiswa(i):x(i,10,17)+x(i,6,18)<=1); @for(mahasiswa(i):x(i,10,19)+x(i,6,20)<=1); !output; @for(mahasiswa(i):@for(waktu(k):jumlahkec(i,k)=@sum(kecamatan(j):x (i,j,k)))); @for(link1(i,j,k):hasilx(i,j,k)=x(i,j,k); @for(link4(j,k):hasilup(j,k)=up(j,k)); @for(link4(j,k):hasilun(j,k)=un(j,k)); @for(mahasiswa(i):hasiltp(i)=tp(i)); @for(mahasiswa(i):hasiltn(i)=tn(i)); @for(mahasiswa(i):hasilwp(i)=wp(i));
44
@for(mahasiswa(i):hasilwn(i)=wn(i)); ); DATA: @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasilup')=hasilup; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasilun')=hasilun; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasiltp')=hasiltp; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasiltn')=hasiltn; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasilwp')=hasilwp; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasilwn')=hasilwn; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','hasilx')=hasilx; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlahkec')=jumlahkec; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','Y')=y; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlah1')=jum1; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlah2')=jum2; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlah3')=jum3; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlah4')=jum4; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlah5')=jum5; @ole('D:\Draft Skripsi 2014\Kodingan\50 1B.xlsx','jumlah6')=jum6; enddata end
Hasil yang diperoleh:
mahasiswa\rekap kondisi mahasiswa\rekap kondisi mahasiswa\rekap kondisi mahasiswa\rekap kondisi mahasiswa\rekap kondisi mahasiswa\rekap kondisi mahasiswa\rekap kondisi mahasiswa\rekap kondisi mahasiswa\rekap kondisi mahasiswa\rekap kondisi mahasiswa\rekap kondisi mahasiswa\rekap kondisi mahasiswa\rekap kondisi mahasiswa\rekap kondisi mahasiswa\rekap kondisi
45
RIWAYAT HIDUP Penulis bernama lengkap Anis Fauziyyah dilahirkan di Jakarta, 1 November 1992 dari pasangan bapak Agus Suparno dan Ibu Sumarmi. Penulis merupakan putri pertama dari empat bersaudara. Pendidikan formal yang dijalani penulis mulai dari TK Islam At Thahirin, Ciledug, Tangerang (1997-1998), SDN Sudimara 1 Ciledug (1998-2004), SMPN 110 Jakarta (2004-2007), SMAN 63 Jakarta (20072010). Pada tahun 2010, penulis diterima menjadi mahasiswa Departemen Matematika, Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor melalui jalur Undangan Seleksi Masuk IPB (USMI). Selama mengemban ilmu di Institut Pertanian Bogor, penulis aktif di berbagai organisasi kemahasiswaan di antaranya sebagai anggota Lembaga Dakwah Kampus Al Hurriyyah IPB pada tahun 2011-2014 dan anggota Lembaga Dakwah Fakultas Serambi Ruhiyah Mahasiswa G (Serum G) pada tahun 2012. Selain itu, penulis juga aktif dalam berbagai kepanitiaan di antaranya panitia Masa Perkenalan Kampus Mahasiswa Baru (MPKMB) IPB sebagai anggota Divisi Logistik dan Transportasi pada tahun 2011, panitia Masa Perkenalan Fakultas (MPF) FMIPA IPB sebagai sekretaris Divisi Logistik dan Transportasi pada tahun 2012 serta anggota Divisi Scientist Guargian pada tahun 2013, panitia Festival Ilmuan Muslim Nasional (FIM Nas) FMIPA IPB sebagai anggota Divisi Penginapan pada tahun 2011 serta sebagai bendahara umum pada tahun 2012, dan aktif membantu di berbagai kepanitiaan lainnya. Pengalaman kerja penulis ialah sebagai tentor Pengantar Matematika dan Landasan Matematika pada bimbingan belajar SM@RT dan Salam ISC serta menjadi pengajar di bimbingan belajar Science Master Cabang Bogor. Selain itu, penulis juga berkesempatan untuk menyajikan makalah yang berjudul “Penerapan Goal Programming dalam Penjadwalan dan Penugasan Kegiatan Kemahasiswaan” dalam Konferensi Nasional Matematika XVII di Institut Teknologi Sepuluh Nopember Surabaya 2014.