Minggu, 08 Juni 2014

Soal Program Linear (Sistem Pengambilan Keputusan)

Suatu perusahaan akan memproduksi 2 jenis produk yaitu lemari dan kursi. Untuk memproduksi 2 produk tersebut di butuhkan 2 kegiatan yaitu proses perakitan dan pengecatan. Perusahaan menyediakan waktu 56 jam untuk proses perakitan dan 60 jam untuk proses pengecatan. Untuk produksi 1 unit lemari diperlukan waktu 8 jam perakitan dan 5 jam pengecatan. Untuk produksi 1 unit kursi diperlukan 7 jam perakitan dan 12 jam pengecatan. Jika masing masing produk adalan Rp. 200 ribu untuk lemari dan 100 ribu untuk kursi. Tentukan solusi optimal agar mendapatkan untuk masimal.

Penyelesaian :

Fungsi Tujuan :
Z = 200x + 100y
Fungsi Kendala :
(i)                  8x + 7y <= 56
(ii)                5x + 12y <= 60
Menentukan titik potong
(i)                  Jika x = 0                      Jika y = 0
8(0) + 7y = 56                             8x + 7(0) = 56
           7y = 56                               8x   = 56
            y  = 56/7                             x   = 56/8
            y = 8                                   x = 7
    (0,8)                                                   (7,0)
(ii)                Jika  x = 0                     jika y =0
5(0) + 12y = 60           5x + 12(0) =60
           12y = 60             5x   = 60
                Y = 60/12      x     = 60/5
               Y = 5               x = 12
             (0,5)                                  (12,0)


A ( 0,5)
B ( 4.1, 3.3)
C (7,0)
8x + 7y   = 56  x5  40x + 35y  = 280
5x + 12y = 60  x8  40x + 96y  = 480
                                          -61y = -200
                                                   Y  = 200/61
                                               Y  = 3,3
8x + 7 (3,3) = 56
8x + 23,1 =56
8x             = 56 – 23,1
8x             =   32,9
X               =  32,9/8
X               =  4,1


A = 200(0) + 100(5)         Yang paling menguntungkan adalah solusi C
   = 500   
B = 200(4.1) + 100(3.3)
   = 820 + 330
  = 1150
C = 200 (7) + 100(0)
   =  1400

Sistem Pendukung Keputusan Pemilihan Paket Wisata Dan Reservasi Travel Dengan Metode Ahp Dan Topsis Berbasis Web

Perkembangan teknologi informasi yang semakin hari semakin meningkat. Membuat dampak yang cukup besar dalam seluruh aspek kehidupan dan membawa manusia ke dalam era globalisasi, dimana pada era ini manusia memerlukan informasi yang terbaru (up to date) dengan cepat, praktis, efisien.
Internet adalah salah satu teknologi yang sangat pesat perkembangannya dan sudah merupakan symbol dari cara berkomunikasi secara bebas, tanpa dibatasi ruang, jarak dan waktu. Informasi yang disajikan pun tidak terbatas pada teks dan gambar saja. Melainkan juga suara dan animasi gambar yang membuatnya menjadi interaktif. Dengan ditunjang oleh berbagai kelebihan yang dimiliki oleh internet, diantaranya biaya koneksi yang relatif terjangkau dan ketersediaan informasi yang tidak terbatas, internet kini menjadi alternatif utama untuk memenuhi segala kebutuhan terutama kebutuhan akan informasi.
Dalam sektor bisnis khususnya pariwisata, peranan internet sangatlah dibutuhkan.selain sebagai sarana promosi dan informasi tempat wisata, juga bisa dimanfaatkan juga oleh travel agent untuk memperkenalkan layanan dan alternatif paket wisata yang ditawarkan. Dengan adanya banyak pilihan paket wisata ditawarkan travel agent ini, maka para calon wisatawan akan dihadapkan dengan kesulitan dalam melakukan pilihan terlebih lagi menyesuaikan pilihan faktor kriteria yang berpengaruh terhadap pilihan. Proses pemesanan juga biasanya masih dilakukan secara manual, sehingga calon wisatawan tidak dapat melakukan pemilihan dan pemesanan dengan leluasa. 
Berdasarkan permasalahan tersebut Mekar Wisata Tour and Travel berkeinginan untuk merancang suatu sistem pendukung keputusan pemilihan paket wisata dan reservasi travel berbasis web selain dapat untuk membantu dalam hal mempromosikan travel agent ini, juga dapat mempermudah wisatawan untuk melakukan proses pemilihan paket wisata dan pemesanan paket wisata
1. Sistem Pendukung Keputusan
Sistem pendukung keputusan merupakan suatu penerapan sistem informasi yang ditujukan untuk membantu pimpinan dalam proses pengambilan keputusan. Sistem pendukung keputusan menggabungkan kemampuan komputer dalam pelayanan interaktif dengan pengolahan atau pemanipulasi data yang memanfaatkan model atau aturan penyelesaian yang tidak terstruktur (Turban, 2005:19). Sistem pendukung keputusan mempunyai beberapa sumber intelektual dengan kemampuan dari komputer untuk memperbaiki kualitas keputusan.
Hal yang terpenting dari pengertian ini adalah sistem pendukung keputusan merupakan alat pelengkap bagi mereka yang terlibat dalam proses pengambilan keputusan. Dimana sistem pendukung keputusan tidak ditujukan untuk mengganti si pengambil keputusan dalam pembuatan keputusan.
Suatu SPK memiliki tiga subsistem utama yaitu subsistem manajemen basis data, subsistem manajemen basis model dan subsistem perangkat lunak penyelenggara dialog (Hasan, 2002:32).
a. Subsistem Manajemen Basis Data
Kemampuan yang dibutuhkan dari manajemen basis data antara lain :
1. Kemampuan untuk mengkombinasikan berbagai variasi data melalui pengambilan dan ekstraksi data.
2. Kemampuan untuk menambahkan sumber data secara mudah dan cepat.
3. Kemampuan untuk menggambarkan struktur data logikal sesuai dengan pengertian pemakai sehingga pemakai mengetahui apa yang tersedia dan dapat menentukan kebutuhan penambahan dan pengurangan.
4. Kemampuan untuk menangani data secara personil sehingga pemakai dapat mencoba berbagai alternatif pertimbangan personil.
5. Kemampuan untuk mengelola berbagai variasi data.
b. Subsistem Manajemen Basis Model
Kemampuan yang dimiliki subsistem basis model meliputi:
1. Kemampuan untuk menciptakan model–model baru secara cepat dan mudah.
2. Kemampuan untuk mengakses dan mengintegrasikan model–model keputusan.
3. Kemampuan untuk mengelola basis model dengan fungsi manajemen yang analog dan manajemen basis data (seperti mekanisme untuk menyimpan, membuat dialog, menghubungkan dan mengakses model).
c. Subsistem Perangkat Lunak Penyelenggara Dialog
Kemampuan yang harus dimiliki oleh SPK untuk mendukung dialog pemakai/sistem meliputi:
1. Kemampuan untuk menangani berbagai variasi gaya dialog.
2. Kemampuan untuk mengakomodasi tindakan pemakai dengan berbagai peralatan masukan.
3. Kemampuan untuk menampilkan data dengan berbagai variasi format dan peralatan keluaran.
4. Kemampuan untuk memberikan dukungan yang fleksibel untuk mengetahui basis pengetahuan pemakai.
AHP
Analytical Hierarchy Process(AHP) adalah salah satu bentuk metode pengambilan keputusan yang pada dasarnya berusaha menutupi semua kekurangan dari metode sebelumnya. Peralatan utama dari metode AHP adalah sebuah hirarki fungsional dengan input utamanya adalah persepsi manusia. Dengan hirarki, suatu yang komplek dan tidak terstruktur dipecahkan ke dalam kelompok dan kemudian kelompok tersebut diatur menjadi suatu bentuk hirarki(Permadi, 1992:5).
Langkah yang harus dilakukan dalam menyelesaikan persoalan dengan AHP (Mulyono, 1996:108) yaitu:
a. Decomposition
Decomposition adalah proses menganalisa permasalahan riil dalam struktur hirarki atas unsur – unsur pendukungnya. Struktur hirarki secara umum dalam metode AHP yaitu: Jenjang 1 : Goal atau Tujuan, Jenjang 2 : Kriteria, Jenjang 3 : Subkriteria (optional), Jenjang 4 : Alternatif.
b. Comperative judgment
Comperative judgment adalah berarti membuat suatu penilaian tentang kepentingan relatif antara dua elemen pada suatu tingkat tertentu yang disajikan dalam bentuk matriks dengan menggunakan skala prioritas. Jika terdapat n elemen, maka akan diperoleh matriks pairwise comparison (matriks perbandingan) berukuran n x n dan banyaknya penilaian yang diperlukan adalah n(n-1)/2. Ciri utama dari matriks perbandingan yang dipakai dalam metode AHP adalah elemen diagonalnya dari kiri atas ke kanan bawah adalah satu karena elemen yang dibandingkan adalah dua elemen yang sama. Selain itu, sesuai dengan sistimatika berpikir otak manusia, matriks perbandingan yang terbentuk akan bersifat matriks resiprokal dimana apabila elemen A lebih disukai dengan skala 3 dibandingkan elemen B, maka dengan sendirinya elemen B lebih disukai dengan skala 1/3 dibanding elemen A.
Dengan dasar kondisi – kondisi di atas dan skala standar input AHP dari 1 sampai 9, maka dalam matriks perbandingan tersebut angka terendah yang mungkin terjadi adalah 1/9, sedangkan angka tertinggi yang mungkin terjadi adalah 9/1. Angka 0 tidak dimungkinkan dalam matriks ini, sedangkan pemakaian skala dalam bentuk desimal dimungkinkan sejauh si expert memang menginginkan bentuk tersebut untuk persepsi yang lebih akurat.
c. Synthesis of priority
Setelah matriks perbandingan untuk sekelompok elemen selesai dibentuk maka langkah berikutnya adalah mengukur bobot prioritas setiap elemen tersebut. Hasil akhir dari penghitungan bobot prioritas tersebut adalah suatu bilangan desimal di bawah satu (misalnya 0.01 sampai 0.99) dengan total prioritas untuk elemen – elemen dalam satu kelompok sama dengan satu. Bobot prioritas dari masing – masing matriks dapat menentukan prioritas lokal dan dengan melakukan sintesa di antara prioritas lokal, maka akan didapat prioritas global.
Usaha untuk memasukkan kaitan antara elemen yang satu dengan elemen yang lain dalam menghitung bobot prioritas secara sederhana dapat dilakukan dengan cara berikut:
1. Jumlahkan elemen pada kolom yang sama pada matriks perbandingan yang terbentuk. Lakukan hal yang sama untuk setiap kolom.
2. Bagilah setiap elemen pada setiap kolom dengan jumlah elemen kolom tersebut (hasil dari langkah 1). Lakukan hal yang sama untuk setiap kolom sehingga akan terbentuk matrik yang baru yang elemen – elemennya berasal dari hasil pembagian tersebut.
3. Jumlahkan elemen matrik yang baru tersebut menurut barisnya.
4. Bagilah hasil penjumlahan baris (hasil dari langkah 3) dengan total alternatif agar didapatkan prioritas terakhir setiap elemen dengan total bobot prioritas sama dengan satu.
Proses yang dilakukan untuk membuat total bobot prioritas sama dengan satu biasa disebut proses normalisasi. 
d. Logical consistency
Salah satu asumsi utama metode AHP yang membedakannya dengan metode yang lainnya adalah tidak adanya syarat konsistensi mutlak. Dengan metode AHP yang memakai persepsi manusia sebagai inputannya maka ketidakkonsistenan itu mungkin terjadi karena manusia mempunyai keterbatasan dalam menyatakan persepsinya secara konsisten terutama kalau membandingkan banyak elemen. Berdasarkan konsisi ini maka manusia dapat menyatakan persepsinya dengan bebas tanpa harus berpikir apakah persepsinya tersebut akan konsisten nantinya atau tidak. Persepsi yang 100 % konsisten belum tentu memberikan hasil yang optimal atau benar dan sebaliknya persepsi yang tidak konsisten penuh mungkin memberikan gambaran keadaan yang sebenarnya atau yang terbaik.
Penentuan nilai preferansi antar elemen harus secara konsisten logis, yang dapat diukur dengan menghitung Consistency Index (CI) dan Consistency Ratio (CR)

 


TOPSIS
TOPSIS didasarkan pada konsep dimana alternatif terpilih yang terbaik tidak hanya memiliki jarak terpendek dari solusi ideal positif, namun juga memiliki jarak terpanjang dari solusi ideal negatif (Kusumadewi, 2006:87). Konsep ini banyak digunakan pada beberapa model MADM untuk menyelesaikan masalah keputusan secara praktis. Hal ini disebabkan konsepnya sederhana dan mudah dipahami, komputasinya efisien, dan memiliki kemampuan untuk mengukur kinerja relatif dari alternatif-alternatif keputusan dalam bentuk matematis yang sederhana.
Secara umum, prosedur TOPSIS mengikuti langkah-langkah sebagai berikut:
a. Membuat matriks keputusan yang ternormalisasi;
b. Membuat matriks keputusan yang ternormalisasi terbobot;
c. Menentukan matriks solusi ideal positif dan matriks solusi ideal negatif;
d. Menentukan jarak antara nilai setiap alternatif dengan matriks solusi ideal positif dan matriks solusi ideal negatif;
e. Menentukan nilai preferensi untuk setiap alternatif.
TOPSIS membutuhkan rating kerja setiap alternatif Ai pada setiap kriteria Cj yang ternormalisasi
 
dengan i=1,2,...,m; dan j=1,2,...,n 
dimana :
rij = matriks ternormalisasi [i][j]
xij = matriks keputusan [i][j]
Solusi ideal positif A+ dan solusi ideal negatif A- dapat ditentukan berdasarkan rating bobot ternormalisasi (yij) sebagai :
yij = wi.rij ; dengan i=1,2,...,m; dan j=1,2,...,n 
A+ = (y1+, y2+, ..., yn+); 
A- = (y1-, y2-, ..., yn-); 
dimana :
yij = matriks ternormalisasi terbobot [i][j]
wi = vektor bobot[i] dari proses AHP
yj+ = max yij, jika j adalah atribut keuntungan
min yij, jika j adalah atribut biaya
yj- = min yij, jika j adalah atribut keuntungan
max yij, jika j adalah atribut biaya 
j = 1,2,...,n
Jarak antara alternatif Ai dengan solusi ideal positif.
 
Perancangan Model
Untuk membangun aplikasi Sistem Pendukung Keputusan ini digunakan Data Flow Diagram (DFD) dimana DFD berfungsi untuk menggambarkan proses aliran data yang terjadi di dalam sistem dari tingkat yang tertinggi sampai yang terendah (Hartono, 1999). Pembuatan DFD pada level Context Diagram dan level 0. Selain itu juga digunakan ERD secara conceptual dan physical.
System Flow
System flow menunjukkan arus perhitungan pekerjaan dari suatu sistem yang menjelaskan urutan prosedur-prosedur yang terdapat di dalam sistem.
Gambar. System Flow
Context Diagram
Gambar Context Diagram
Pada Context Diagram tampak aliran data yang bergerak dari sistem ke masing-asing entitas.
 
 
Gambar. DFD Level 0
Dari pembuatan context diagram maka dapat dilakukan proses break down yang biasa disebut sebagai Data Flow Diagram (DFD) level 0 untuk mengetahui proses secara keseluruhan.
 
 Entity Relationship Diagram (ERD)
HASIL DAN PEMBAHASAN
Fitur ini diawali dengan admin yang memberikan pembobotan terhadap masing-masing criteria untuk kemudian diproses dengan perhitungan metode AHP.
Gambar. Halaman pembobotan kriteria
Selanjutnya, berpindah ke sisi wisatawan, wisatawan diminta memilih paket wisata kemudian memberikan bobot untuk dimasukkan kedalam perhitungan topsis.
SIMPULAN
Berdasarkan hasil evaluasi yang telah dilakukan dalam pembuatan Pemilihan Paket wisata Dengan Metode AHP dan TOPSIS Berbasis Web, dapat ditarik beberapa poin-poin kesimpulan dari pengerjaan Tugas Akhir ini yaitu:
a. Sistem pendukung keputusan dengan menggunakan AHP dan TOPSIS terbukti mampu memberikan rekomendasi paket wisata yang tepat sesuai dengan kriteria dan alternatif yang diinginkan.
b. Metode dapat diimplementasikan dengan baik pada aplikasi web dan dapat menganalisa kriteria dan alternatif yang dibandingkan, kemudian memberikan urutan prioritas paket wisata.

DAFTAR RUJUKAN
Hasan, I., 2002, Pokok – Pokok Materi Teori Pengambilan Keputusan, Ghalia Indonesia, Jakarta.
Hartono, Jogiyanto 1999, Analisis & Disain Sistem Informasi : Pendekatan terstruktur teori dan praktek aplikasi bisnis, ANDI, Yogyakarta.
Kusumadewi, Sri dkk.,2006, Fuzzy Multi-Attribute Decision Making (Fuzzy MADM), Graha Ilmu, Yogyakarta.
Mulyono, Sri, 1996, Teori Pengambilan Keputusan, Fakultas Ekonomi Universitas Indonesia, Jakarta.
Permadi, B., 1992, AHP, Pusat Antar Universitas – Studi Ekonomi Universitas Indonesia, Jakarta.
Turban, Efraim, 2005, Sistem Pendukung Keputusan dan Sistem Cerdas, Andi, Yogyakarta.
 
 

SPK Menggunakan Metode AHP dalam Kasus Pemilihan Pemenang Tender Proyek

Pada proses pemilihan pemenang tender proyek dengan metode AHP terdapat hirarki sistem yang telah disesuaikan dengan tujuan awal penelitian yaitu pemilihan pemenang tender proyek. Hirarki proses ini sebelumnya telah dijelaskan pada bab Landasan teori hanya secara umum sesuai dengan konsep AHP. Hirarki sistem ini sebenarnya adalah dekomposisi dari masalah pemilihan pemenang tender proyek. Menentukan tujuan (pemilihan pemenang tender proyek), mencari kriteria tepat yang digunakan untuk menyelesaikan tujuan serta dekomposisi dari kriteria yang telah ditentukan. Dekomposisi ini merupakan penjabaran dari kriteria yang telah ditentukan yang menghasilkan identifikasi-identifikasi item dekomposisi masalah dalam pemilihan pemenang tender proyek. Dalam matriks keputusan tujuan ini disebut dengan goal. Sedangkan administrasi, teknis, harga, dan kualifikasi merupakan atribut yang merupakan karakteristik atau kriteria dari keputusan. Tiap kriteria ini memiliki item penilaian dimana setiap elemen item penilaian berhubungan erat dengan kriteria tersebut. Semua item penilaian itu dihubungkan secara langsung dengan kriterianya dan membentuk pohon hirarki yang dapat terlihat pada gambar 3.1.

Keterangan:
A = Administrasi
T = Teknis
H = Harga
Gambar.  Hirarki Pemilihan Pemenang Tender Proyek

Setelah penyusunan hirarki selesai maka langkah selanjutnya adalah melakukan perbandingan antara elemen-elemen dengan memperhatikan pengaruh elemen pada level di atasnya. Pembagian pertama dilakukan untuk elemen-elemen pada level kriteria dengan memperhatikan level di atasnya, yaitu goal atau tujuan utama (Pemilihan Pemenang Tender Proyek). Perbandingan dilakukan dengan skala satu sampai sembilan dan memenuhi aksioma-aksioma AHP.

PROGRAM SPK (SISTEM PENDUKUNG KEPUTUSAN) METODE SAW (SIMPLE ADDITIVE WEIGHTING) DENGAN VB 6

Berikut ini adalah sintax dari program SPK (Sisten Pendukung Keputusan) dengan VB 6 :

Dim pertama(6) As Currency, a As Currency
Dim kedua(6) As Currency, b As Currency
Dim ketiga(6) As Currency, c As Currency
Dim keempat(6) As Currency, d As Currency
Dim satu, dua, tiga, empat, lima, enam As Currency
Dim terakhir(6) As Currency, akhir As Currency
Private Sub cmdkeluar_Click()
Unload Me
End Sub
Private Sub cmdbersih_Click()
On Error Resume Next
c1a.SetFocus
c1a.Text = ""
c2a.Text = ""
c3a.Text = ""
c4a.Text = ""
c1b.Text = ""
c2b.Text = ""
c3b.Text = ""
c4b.Text = ""
c1c.Text = ""
c2c.Text = ""
c3c.Text = ""
c4c.Text = ""
c1d.Text = ""
c2d.Text = ""
c3d.Text = ""
c4d.Text = ""
c1e.Text = ""
c2e.Text = ""
c3e.Text = ""
c4e.Text = ""
c1f.Text = ""
c2f.Text = ""
c3f.Text = ""
c4f.Text = ""
p1.Text = ""
p2.Text = ""
p3.Text = ""
p4.Text = ""
r1a.Text = ""
r2a.Text = ""
r3a.Text = ""
r4a.Text = ""
r1b.Text = ""
r2b.Text = ""
r3b.Text = ""
r4b.Text = ""
r1c.Text = ""
r2c.Text = ""
r3c.Text = ""
r4c.Text = ""
r1d.Text = ""
r2d.Text = ""
r3d.Text = ""
r4d.Text = ""
r1e.Text = ""
r2e.Text = ""
r3e.Text = ""
r4e.Text = ""
r1f.Text = ""
r2f.Text = ""
r3f.Text = ""
r4f.Text = ""
rc1.Text = ""
rc2.Text = ""
rc3.Text = ""
rc4.Text = ""
h1.Text = ""
h2.Text = ""
h3.Text = ""
h4.Text = ""
h5.Text = ""
h6.Text = ""
nama1.Text = ""
nama2.Text = ""
nama3.Text = ""
nama4.Text = ""
nama5.Text = ""
nama6.Text = ""
nm1.Caption = ""
nm2.Caption = ""
nm3.Caption = ""
nm4.Caption = ""
nm5.Caption = ""
nm6.Caption = ""
hasilnilai.Text = ""
gambar.Visible = False
End Sub
Private Sub cmdproses_Click()

pertama(0) = Val(c1a.Text)
pertama(1) = Val(c1b.Text)
pertama(2) = Val(c1c.Text)
pertama(3) = Val(c1d.Text)
pertama(4) = Val(c1e.Text)
pertama(5) = Val(c1f.Text)


pertamamaks = pertama(1)
For a = 0 To 5
    If pertama(a) > pertamamaks Then pertamamaks = pertama(a)
Next
r1a.Text = Val(c1a.Text) / pertamamaks
r1b.Text = Val(c1b.Text) / pertamamaks
r1c.Text = Val(c1c.Text) / pertamamaks
r1d.Text = Val(c1d.Text) / pertamamaks
r1e.Text = Val(c1e.Text) / pertamamaks
r1f.Text = Val(c1f.Text) / pertamamaks

r1a.Text = Format((r1a.Text), "0.00")
r1b.Text = Format((r1b.Text), "0.00")
r1c.Text = Format((r1c.Text), "0.00")
r1d.Text = Format((r1d.Text), "0.00")
r1e.Text = Format((r1e.Text), "0.00")
r1f.Text = Format((r1f.Text), "0.00")

kedua(0) = Val(c2a.Text)
kedua(1) = Val(c2b.Text)
kedua(2) = Val(c2c.Text)
kedua(3) = Val(c2d.Text)
kedua(4) = Val(c2e.Text)
kedua(5) = Val(c2f.Text)
keduamaks = kedua(1)
For b = 0 To 5
    If kedua(b) > keduamaks Then keduamaks = kedua(b)
Next
r2a.Text = Val(c2a.Text) / keduamaks
r2b.Text = Val(c2b.Text) / keduamaks
r2c.Text = Val(c2c.Text) / keduamaks
r2d.Text = Val(c2d.Text) / keduamaks
r2e.Text = Val(c2e.Text) / keduamaks
r2f.Text = Val(c2f.Text) / keduamaks

r2a.Text = Format((r2a.Text), "0.00")
r2b.Text = Format((r2b.Text), "0.00")
r2c.Text = Format((r2c.Text), "0.00")
r2d.Text = Format((r2d.Text), "0.00")
r2e.Text = Format((r2e.Text), "0.00")
r2f.Text = Format((r2f.Text), "0.00")

ketiga(0) = Val(c3a.Text)
ketiga(1) = Val(c3b.Text)
ketiga(2) = Val(c3c.Text)
ketiga(3) = Val(c3d.Text)
ketiga(4) = Val(c3e.Text)
ketiga(5) = Val(c3f.Text)
ketigamaks = ketiga(1)
For c = 0 To 5
    If ketiga(c) > ketigamaks Then ketigamaks = ketiga(c)
Next
r3a.Text = Val(c3a.Text) / ketigamaks
r3b.Text = Val(c3b.Text) / ketigamaks
r3c.Text = Val(c3c.Text) / ketigamaks
r3d.Text = Val(c3d.Text) / ketigamaks
r3e.Text = Val(c3e.Text) / ketigamaks
r3f.Text = Val(c3f.Text) / ketigamaks

r3a.Text = Format((r3a.Text), "0.00")
r3b.Text = Format((r3b.Text), "0.00")
r3c.Text = Format((r3c.Text), "0.00")
r3d.Text = Format((r3d.Text), "0.00")
r3e.Text = Format((r3e.Text), "0.00")
r3f.Text = Format((r3f.Text), "0.00")

keempat(0) = Val(c4a.Text)
keempat(1) = Val(c4b.Text)
keempat(2) = Val(c4c.Text)
keempat(3) = Val(c4d.Text)
keempat(4) = Val(c4e.Text)
keempat(5) = Val(c4f.Text)
keempatmaks = keempat(1)
For d = 0 To 5
    If keempat(d) > keempatmaks Then keempatmaks = keempat(d)
Next
r4a.Text = Val(c4a.Text) / keempatmaks
r4b.Text = Val(c4b.Text) / keempatmaks
r4c.Text = Val(c4c.Text) / keempatmaks
r4d.Text = Val(c4d.Text) / keempatmaks
r4e.Text = Val(c4e.Text) / keempatmaks
r4f.Text = Val(c4f.Text) / keempatmaks

r4a.Text = Format((r4a.Text), "0.00")
r4b.Text = Format((r4b.Text), "0.00")
r4c.Text = Format((r4c.Text), "0.00")
r4d.Text = Format((r4d.Text), "0.00")
r4e.Text = Format((r4e.Text), "0.00")
r4f.Text = Format((r4f.Text), "0.00")

satu = (Val(r1a.Text) * Val(p1.Text)) + (Val(r2a.Text) * Val(p2.Text)) + (Val(r3a.Text) * Val(p3.Text)) + (Val(r4a.Text) * Val(p4.Text))
dua = (Val(r1b.Text) * Val(p1.Text)) + (Val(r2b.Text) * Val(p2.Text)) + (Val(r3b.Text) * Val(p3.Text)) + (Val(r4b.Text) * Val(p4.Text))
tiga = (Val(r1c.Text) * Val(p1.Text)) + (Val(r2c.Text) * Val(p2.Text)) + (Val(r3c.Text) * Val(p3.Text)) + (Val(r4c.Text) * Val(p4.Text))
empat = (Val(r1d.Text) * Val(p1.Text)) + (Val(r2d.Text) * Val(p2.Text)) + (Val(r3d.Text) * Val(p3.Text)) + (Val(r4d.Text) * Val(p4.Text))
lima = (Val(r1e.Text) * Val(p1.Text)) + (Val(r2e.Text) * Val(p2.Text)) + (Val(r3e.Text) * Val(p3.Text)) + (Val(r4e.Text) * Val(p4.Text))
enam = (Val(r1f.Text) * Val(p1.Text)) + (Val(r2f.Text) * Val(p2.Text)) + (Val(r3f.Text) * Val(p3.Text)) + (Val(r4f.Text) * Val(p4.Text))

h1.Text = satu
h2.Text = dua
h3.Text = tiga
h4.Text = empat
h5.Text = lima
h6.Text = enam

terakhir(0) = Val(h1.Text)
terakhir(1) = Val(h2.Text)
terakhir(2) = Val(h3.Text)
terakhir(3) = Val(h4.Text)
terakhir(4) = Val(h5.Text)
terakhir(5) = Val(h6.Text)

h1.Text = Format((h1.Text), "0.000")
h2.Text = Format((h2.Text), "0.000")
h3.Text = Format((h3.Text), "0.000")
h4.Text = Format((h4.Text), "0.000")
h5.Text = Format((h5.Text), "0.000")
h6.Text = Format((h6.Text), "0.000")

terakhirmaks = terakhir(1)
For akhir = 0 To 5
    If terakhir(akhir) > terakhirmaks Then terakhirmaks = terakhir(akhir)
Next
hasilnilai.Text = terakhirmaks
hasilnilai.Text = Format((hasilnilai.Text), "0.000")
gambar.Visible = True
End Sub

Private Sub Image1_Click()
makeTransparent Me.hWnd, 50
End Sub

Private Sub nama1_Change()
nm1.Caption = nama1.Text
End Sub

Private Sub nama1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub

Private Sub nama2_Change()
nm2.Caption = nama2.Text
End Sub

Private Sub nama2_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub

Private Sub nama3_Change()
nm3.Caption = nama3.Text
End Sub

Private Sub nama3_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub

Private Sub nama4_Change()
nm4.Caption = nama4.Text
End Sub

Private Sub nama4_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub

Private Sub nama5_Change()
nm5.Caption = nama5.Text
End Sub

Private Sub nama5_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub

Private Sub nama6_Change()
nm6.Caption = nama6.Text
End Sub
Private Sub c1a_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c2a_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c3a_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c4a_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub

Private Sub c1b_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c2b_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c3b_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c4b_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub

Private Sub c1c_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c2c_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c3c_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c4c_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub

Private Sub c1d_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c2d_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c3d_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c4d_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub

Private Sub c1e_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c2e_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c3e_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c4e_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub

Private Sub c1f_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c2f_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c3f_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub c4f_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub nama6_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub

Private Sub p1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub p2_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub p3_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub
Private Sub p4_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys "{tab}"
End If
End Sub

SISTEM PENDUKUNG KEPUTUSAN DENGAN MENGGUNAKAN METODE TOPSIS

 
TOPSIS adalah salah satu metode pengambilan keputusan multikriteria yang pertama kali diperkenalkan oleh Kwangsun Yoon and Hwang Ching-Lai (1981).
·         Yoon, K., “System Selection by Multiple Attribute Decision Making,” Ph. D. Dissertation, Kansas State University, Manhattan, Kansas, 1980.
·         Yoon, K. and C. L. Hwang, “TOPSIS (Technique for Order Preference by Similarity to Ideal Solution)- A Multiple Attribute Decision Making,” a paper to be published, 1980.
Kategori dari metode TOPSIS adalah kategori Multi-Criteria Decision Making (MCDM) yaitu teknik pengambilan keputusan dari beberapa pilihan alternatif yang ada ,khususnya MADC(Multi Attribute Decision Making).TOPSIS bertujuan untuk menentukan solusi ideal positif dan solusi ideal negatif. Solusi ideal positif memaksimalkan kriteria manfaat dan meminimalkan kriteria biaya, sedangkan solusi ideal negatif memaksimalkan kriteria biaya dan meminimalkan kriteria manfaat (Fan dan Cheng, 2009 : 4).
Kriteria manfaat merupakan kriteria dimana ketika nilai kriteria tersebut semakin besar maka semakin layak pula untuk dipilih. Sedangkan kriteria biaya merupakan kebalikan dari kriteria manfaat, semakin kecil nilai dari kriteria tersebut maka akan semakin layak untuk dipilih. Dalam metode TOPSIS, alternatif yang optimal adalah yang paling dekat dengan solusi ideal positif dan paling jauh dari solusi ideal negatif.
TOPSIS menggunakan prinsip bahwa alternatif yang terpilih tidak hanya mempunyai jarak terpendek dari solusi ideal positif, namun juga memiliki jarak terpanjang dari solusi ideal negatif. Konsep ini banyak digunakan untuk menyelesaikan masalah keputusan secara praktis. Konsepnya sederhana dan mudah dipahami, komputasinya efisien dan memiliki kemampuan untuk mengukur kinerja relatif dari alternatif-alternatif keputusan kedalam bentuk matematis yang sederhana (kusumadewi dkk. , 2006:88). Konsep fundamental dari metode ini adalah penentukan jarak Euclide terpendek dari solusi ideal positif dan jarak.
Langkah-langkah :
1. Membangun normalized decision matrix. Elemen rij hasil dari normalisasi decision matrix R dengan metode Euclidean length  of a vector adalah:
2. Membangun weighted normalized decision matrix. Dengan bobot W= (w1, w2,.....,wn), maka normalisasi bobot matriks V adalah: 
3. Menentukan solusi ideal dan solusi ideal negatif. Solusi ideal dinotasikan A*, sedangkan solusi ideal negatif dinotasikan A- 
 
 4. Menghitung separasi .Si* adalah jarak (dalam pandangan Euclidean) alternatif dari solusi ideal didefinisikan sebagai:  
Dan jarak terhadap solusi negatif-ideal didefinisikan sebagai: 
5. Menghitung kedekatan relatif terhadap solusi ideal
6. Merangking Alternatif .Alternatif dapat dirangking berdasarkan urutan Ci*. Maka dari itu, alternatif terbaik adalah salah satu yang berjarak terpendek terhadap solusi ideal dan berjarak terjauh dengan solusi negatif-ideal.  
Implementasi
Ø  Sistem Pendukung Keputusan Untuk Pemilihan Sistem Operasi dengan metode TOPSIS (Serkan Ballı and Serdar Korukoğlu,2009)
Ø  Sistem Pendukung Keputusan Untuk Pemilihan rencana strategi terbaik dalam Model BSC (Javad Dodangeh, Rosnah Bt Mohd Yusuff ,Javad Jassbi ,2010)
Ø  Sistem Pendukung Keputusan untuk menentukan peringkat siswa dalam pembelajaran TIK (Eka Risyana Pribadi,2010)
Ø  Pembuatan Peringkat Kabin Eksekutif ulang-alik Kereta Api menggunakan metode TOPSIS (lanjdono Josowidagdo,2003)



Sistem Pendukung Keputusan ( SPK )

Konsep Sistem Pendukung Keputusan (SPK) / Decision Support Sistem (DSS) pertama kali diungkapkan pada awal tahun 1970-an oleh Michael S. Scott Morton dengan istilah Management Decision Sistem. Sistem tersebut adalah suatu sistem yang berbasis komputer yang ditujukan untuk membantu pengambil keputusan dengan memanfaatkan data dan model tertentu untuk memecahkan berbagai persoalan yang tidak terstruktur .
Istilah SPK mengacu pada suatu sistem yang memanfaatkan dukungan komputer dalam proses pengambilan keputusan. Untuk memberikan pengertian yang lebih mendalam, akan diuraikan beberapa difinisi mengenai SPK yang dikembangkan oleh beberapa ahli, diantaranya oleh Man dan Watson yang memberikan definisi sebagai berikut, SPK merupakan suatu sistem yang interaktif, yang membantu pengambil keputusan melalui penggunaan data dan model-model keputusan untuk memecahkan masalah yang sifatnya semi terstruktur maupun yang tidak terstruktur.
Karakteristik dan Nilai Guna
Karakteristik sistem pendukung keputusan adalah:
  1. Sistem Pendukung Keputusan dirancang untuk membantu pengambil keputusan dalam memecahkan masalah yang sifatnya semi terstruktur ataupun tidak terstruktur dengan menambahkan kebijaksanaan manusia dan informasi komputerisasi.
  2. Dalam proses pengolahannya, sistem pendukung keputusan mengkombinasikan penggunaan model-model analisis dengan teknik pemasukan data konvensional serta fungsi-fungsi pencari / interogasi informasi.
  3. Sistem Pendukung Keputusan, dirancang sedemikian rupa sehingga dapat digunakan/dioperasikan dengan mudah.
  4. Sistem Pendukung Keputusan dirancang dengan menekankan pada aspek fleksibilitas serta kemampuan adaptasi yang tinggi.
Dengan berbagai karakter khusus diatas, SPK dapat memberikan berbagai manfaat dan keuntungan. Manfaat yang dapat diambil dari SPK adalah :
  1. SPK memperluas kemampuan pengambil keputusan dalam memproses data / informasi bagi pemakainya.
  2. SPK membantu pengambil keputusan untuk memecahkan masalah terutama berbagai masalah yang sangat kompleks dan tidak terstruktur.
  3. SPK dapat menghasilkan solusi dengan lebih cepat serta hasilnya dapat diandalkan.
  4. Walaupun suatu SPK, mungkin saja tidak mampu memecahkan masalah yang dihadapi oleh pengambil keputusan, namun ia dapat menjadi stimulan bagi pengambil keputusan dalam memahami persoalannya, karena mampu menyajikan berbagai alternatif pemecahan.
Di samping berbagai keuntungan dan manfaat seperti dikemukakan diatas, SPK juga memiliki beberapa keterbatasan, diantaranya adalah :
  1. Ada beberapa kemampuan manajemen dan bakat manusia yang tidak dapat dimodelkan, sehingga model yang ada dalam sistem tidak semuanya mencerminkan persoalan sebenarnya.
  2. Kemampuan suatu SPK terbatas pada perbendaharaan pengetahuan yang dimilikinya (pengetahuan dasar serta model dasar).
  3. Proses-proses yang dapat dilakukan SPK biasanya juga tergantung pada perangkat lunak yang digunakan.
  4. SPK tidak memiliki kemampuan intuisi seperti yang dimiliki manusia. Sistem ini dirancang hanyalah untuk membantu pengambil keputusan dalam melaksanakan tugasnya.
Jadi secara dapat dikatakan bahwa SPK dapat memberikan manfaat bagi pengambil keputusan dalam meningkatkan efektifitas dan efisiensi kerja terutama dalam proses pengambilan keputusan.
Komponen Sistem Pendukung Keputusan
Sistem pendukung keputusan terdiri atas tiga komponen utama yaitu :
  1. Subsistem pengelolaan data (database).
  2. Subsistem pengelolaan model (modelbase).
  3. Subsistem pengelolaan dialog (userinterface).
Hubungan antara ketiga komponen ini dapat dilihat pada gambar dibawah.
 
Gambar : Hubungan antara tiga komponen sistem pendukung keputusan
Sub sistem pengelolaan data (database)
Sub sistem pengelolaan data (database) merupakan komponen SPK yang berguna sebagai penyedia data bagi sistem. Data tersebut disimpan dan diorganisasikan dalam sebuah basis data yang diorganisasikan oleh suatu sistem yang disebut dengan sistem manajemen basis data (Database Management System).
Sub sistem pengelolaan model (model base)
Keunikan dari SPK adalah kemampuannya dalam mengintegrasikan data dengan model-model keputusan. Model adalah suatu tiruan dari alam nyata. Kendala yang sering dihadapi dalam merancang suatu model adalah bahwa model yang dirancang tidak mampu mencerminkan seluruh variabel alam nyata, sehingga keputusan yang diambil tidak sesuai dengan kebutuhan oleh karena itu, dalam menyimpan berbagai model harus diperhatikan dan harus dijaga fleksibilitasnya. Hal lain yang perlu diperhatikan adalah pada setiap model yang disimpan hendaknya ditambahkan rincian keterangan dan penjelasan yang komprehensif mengenai model yang dibuat.
Subsistem pengelolaan dialog (user interface)
Keunikan lainnya dari SPK adalah adanya fasilitas yang mampu mengintegrasikan sistem yang terpasang dengan pengguna secara interaktif, yang dikenal dengan subsistem dialog. Melalui subsistem dialog, sistem diimplementasikan sehingga pengguna dapat berkomunikasi dengan sistem yang dibuat.Fasilitas yang dimiliki oleh subsistem dialog dibagi menjadi tiga komponen [10]:
  1. Bahasa aksi (action language), yaitu suatu perangkat lunak yang dapat digunakan oleh user untuk berkomunikasi dengan sistem, yang dilakukan melalui berbagai pilihan media seperti keyboard, joystick dan keyfunction yang lainnya.
  2. Bahasa tampilan (display and presentation language), yaitu suatu perangkat yang berfungsi sebagai sarana untuk menampilkan sesuatu. Peralatan yang digunakan untuk merealisasikan tampilan ini diantaranya adalah printer, grafik monitor, plotter, dan lain-lain.
  3. Basis pengetahuan (knowladge base), yaitu bagian yang mutlak diketahui oleh pengguna sehingga sistem yang dirancang dapat berfungsi secara interaktif.