Decision Support System Series

Composite Performance Index Method

Contoh implementasi DSS (Decision Support System) dengan metode CPI menggunakan PHP dan MySQL

Composite Performance Index merupakan indeks gabungan (Composite Index) yang dapat digunakan untuk menentukan penilaian atau peringkat dari berbagai alternatif (i) berdasarkan beberapa kriteria (j). Metode Composite Performance Index merupakan salah satu metode perhitungan dari pengambilan keputusan berbasis indeks kinerja, metode Composite Performance Index digunakan untuk penilaian dengan kriteria yang tidak seragam

author : cahya dsn, published on : November 16th, 2014 updated on : May 22nd, 2022

minerva minerva donasi donation

Mau lihat artikel lainya? Dapatkan artikel-artikel lain seputar pemrograman website di sini, dan dapatkan ide-ide baru

Composite Performance Index yang merupakan indeks gabungan (Composite Index) yang dapat digunakan untuk menentukan penilaian atau peringkat dari berbagai alternatif (i) berdasarkan beberapa kriteria (j). (Pandian 2013)

Metode Composite Performance Index merupakan salah satu metode perhitungan dari pengambilan keputusan berbasis indeks kinerja, metode Composite Performance Index digunakan untuk penilaian dengan kriteria yang tidak seragam. Composit performance Index digunakan karena model penilaian antar kriteria yang satu berbeda dengan kriteria yang lain, atau model penilaiannya menggunakan 2 model penilaian (Penilaian skala numerik dan skala ordinal)

Pre-requisites

  • Pemahaman terhadap dasar-dasar Sistem Pengambilan Keputusan
  • Pemahaman terhadap dasar-dasar teknologi web,HTML dan CSS
  • Pemahaman terhadap dasar-dasar basis data/database, terutama query SQL pada MySQL/mariaDB
  • Pemahaman terhadap dasar-dasar pemrograman PHP, terutama fungsi-fungsi koneksi database dan pengelolaan tipe data array

Index gabungan (composite index) dapat digunakan untuk menentukan penentuan atau peringkat dari berbagai alternatif berdasarkan beberapa kriteria untuk pengambilan keputusan menggunakan skala numerik (secara analitik) dan skala ordinal (secara intuitif).

Keputusan diambil dengan tepat secara intuitif ketika keputusan dibuat dalam situasi yang sama dan telah dilakukan analisa sebelumnya. Analisa sebelum dilakukan keputusan membutuhkan waktu lebih lama karena kebutuhan akan data yang tepat dan metode pemrosesan yang tepat agar keputusan dapat diimplementasikan dengan baik. (Pandian 2013)

Untuk metode CPI difokuskan kepada penyelesaian masalah yang sejenis, sebagai contoh untuk pemilihan printer yang cocok terhadap permasalahan yang ada. Ini dapat dikembangkan pada kasus pemilihan kendaraan, pemilihan jenis TV, jenis komputer dan lain lain.

1.1. Langkah-langkah CPI

Prosedur di Composite Performance Index (CPI) adalah sebagai berikut.[1]

1.1.1. Identifikasi Tren Kriteria

Identifikasi tren kriteria yaitu positif (semakin tinggi nilainya semakin baik), dan negatif (semakin rendah nilainya semakin baik). Tren kriteria positif biasa disebut juga sebagai kriteria benefit, sedangkan tren kriteria negatif biasa disebut sebagai kriteria cost

1.1.2. Pembentukan Matriks Keputusan (X)

$X=\left[\begin{array}{cccc} x_{11} & \ldots & x_{1j} & \ldots & x_{1n} \\ \vdots & \ddots & \vdots & \ddots & \vdots \\ x_{i1} & \ldots & x_{ij} & \ldots & x_{in} \\ \vdots & \ddots & \vdots & \ddots & \vdots \\ x_{m1} & \ldots & x_{m2} & \ldots & x_{mn} \\ \end{array}\right] (i=0,1,2,...,m; j=1,2,...,n)$
.. [CPI-01]

xij menunjukkan nilai kinerja alternatif ke-i pada kriteria ke-j, m adalah banyaknya alternatif sedangkan n adalah banyaknya kriteria.

1.1.3. Pembentukan Matriks Normalisasi (R)

Untuk kriteria tren positif, nilai minimum pada setiap kriteria ditransformasi ke seratus, sedangkan nilai lainnya ditransformasi secara proporsional lebih tinggi.

$r_{ij}=\frac{x_{ij}\star 100}{x_{ij(min)}}$
.. [CPI-02]

Untuk kriteria tren negatif, nilai minimum pada setiap kriteria ditransformasi ke seratus, sedangkan nilai lainnya ditransformasikan lebih rendah.

$r_{ij}=\frac{x_{ij(min)}\star 100}{x_{ij}}$
.. [CPI-03]

Dimana
$x_{ij}$ = Nilai alternatif ke $i$ pada kriteria ke $j$
$x_{ij(min)}$ = Nilai minimum pada kriteria ke $j$
$r_{ij}$ = Nilai normalisasi untuk alternatif ke $i$ pada kriteria ke $j$

1.1.4. Pembobotan Composite Index(I)

$i_{i}=\sum^{n}_{j=1}(r_{ij} \star w_{j})$
.. [CPI-04]

Perhitungan nilai Alternatif atau Composite Index (I) merupakan jumlah dari perkalian antara nilai kriteria dengan bobot kriteria untuk masing-masing alternatif.

1.1.5. Perangkingan

Penentuan alternatif terbaik diperoleh dari perangkingan nilai alternatif atau Composite Index (I) dari yang terbesar hingga yang terkecil. Nilai dengan nilai alternatif tertinggi (ranking 1) adalah yang terbaik.

[1] Langkah-langkah CPI yang tertulis serta persamaan yang tampilkan dalam artikel ini berbeda dengan beberapa literatur yang ada sebelumnya. Dalam artikel ini tetap memakai prinsip kerja metode Composite Performance Index (CPI) namun langkah-langkah dan persamaannya ditulis ulang untuk lebih memudahkan dalam pemahaman metode CPI ini (pen)

Penentuan mahasiswa penerima beasiswa yang diambil dari 12 kandidat yang akan diberi beasiswa. Akan dipilih satu orang terbaik berdasarkan kriteria-kriteria yang telah ditentukan. Konsepnya adalah mencari mahasiswa yang layak mendapatkan beasiswa

This document using Dynamic Content Technology for enrichment sample case and reading experience
  • Data yang digunakan BUKAN merupakan data real, tapi data yang digenerate secara otomatis/random/acak dari sistem
  • Data dan Nilai Perhitungan yang ditampilkan akan SELALU BERBEDA jika halaman di refresh/reload
  • Jumlah Data Kriteria dan nilai atributnya ditampilkan secara acak/random antara 4 s.d 7
  • Jumlah Data Alternatif dan nilai atributnya ditampilkan secara acak/random antara 6 s.d 12

Universitas Teknologi Informasi akan menentukan mahasiswanya yang layak untuk mendapatkan dana beasiswa. Saat ini ada 12 mahasiswa yang masuk ke daftar kandidat penerima beasiswa, yaitu Bella M., L. Zaki, Gatot, Reza, Kevin D., Dewi, N. Shinta, F. Alfian, Nina, Carlie M., Usman, dan Yuna. Dari ke 12 orang mahasiswa tersebut akan dipilih satu orang untuk mendapatkan beasiswa penuh dari Universitas.

2.1. Kriteria dan Bobot

Pada kasus penentuan mahasiswa yang layak menerima beasiswa ini telah ditentukan 5 buah kriteria yang diperhitungkan, yaitu Penghasilan Ortu, Semester, IPK, Pemakaian Listrik, dan Prestasi dengan rincian bobot penilaian seperti pada TABEL 1 berikut :

TABEL 1 : Kriteria dan Bobot Penerima Beasiswa
KodeKriteriaTren[2]Bobot[3]
C1Penghasilan Ortunegatif0.273
C2Semesternegatif0.136
C3IPKpositif0.364
C4Pemakaian Listriknegatif0.091
C5Prestasipositif0.136

[2] `positif` menandakan lebih besar lebih baik (Benefit Criteria) sedangkan `negatif` menandakan lebih kecil lebih baik (Cost Criteria)

[3] Nilai bobot ditentukan oleh pakar/orang yang berwenang/kompeten untuk memberi pembobotan; atau bisa diperoleh dari hasil kuisioner

2.2. Data Evaluasi

Data-data awal yang akan diperhitungkan dengan metoda CPI ini adalah seperti yang tercantum dalam TABEL 2 berikut ini [4]

TABEL 2 : Contoh Data Evaluasi
Alternatif Kriteria
Kode Nama C1C2C3C4C5
A1Bella M.3060405030
A2L. Zaki3070307030
A3Gatot5080608040
A4Reza3060307040
A5Kevin D.3070205050
A6Dewi4070604030
A7N. Shinta5070607050
A8F. Alfian4060407040
A9Nina3070406030
A10Carlie M.5080704050
A11Usman5060806040
A12Yuna5080806040

Keterangan

  • C1 : Penghasilan Ortu
  • C2 : Semester
  • C3 : IPK
  • C4 : Pemakaian Listrik
  • C5 : Prestasi

[4] Data yang diberikan merupakan data yang sudah di KUANTISASI, BUKAN berupa data MENTAH. Data dalam contoh di generate secara otomatis dari nilai acak/random

2.3. Perhitungan Manual

Berikut ini akan dijabarkan perhitungan dengan metoda CPI secara manual lengkah demi langkah untuk memudahkan pemahaman terhadap metoda CPI ini

2.3.1. Matriks Keputusan (X)

Langkah pertama adalah membuat matriks keputusan (X) dari data awal yang ada. Dari data pada TABEL 2 dapat dibuat matriks keputusan sebagai berikut :

$X=\left[ \begin{array}{ccccc}\\ 30 & 60 & 40 & 50 & 30 \\30 & 70 & 30 & 70 & 30 \\50 & 80 & 60 & 80 & 40 \\30 & 60 & 30 & 70 & 40 \\30 & 70 & 20 & 50 & 50 \\40 & 70 & 60 & 40 & 30 \\50 & 70 & 60 & 70 & 50 \\40 & 60 & 40 & 70 & 40 \\30 & 70 & 40 & 60 & 30 \\50 & 80 & 70 & 40 & 50 \\50 & 60 & 80 & 60 & 40 \\50 & 80 & 80 & 60 & 40\end{array} \right]$

Pada matriks keputusan (X) tersebut, data pada baris ke-i adalah menunjukan data dari Alternatif ke-i; sedangkan data pada kolom ke-j menunjukkan kriteria ke-j. Misalnya untuk data x6,3 menunjukkan data untuk alternatif ke 6 yaitu Dewi untuk kriteria ke 3 (IPK) dengan nilai 60

Data matriks keputusan (X) tersebut dapat ditampilkan dalam bentuk tabular/grid (tabel) sebagai berikut:

TABEL 3 : Data Matriks Keputusan [5]
NoAlternatifKriteria
KodeNamaC1C2C3C4C5
1A1Bella M.3060405030
2A2L. Zaki3070307030
3A3Gatot5080608040
4A4Reza3060307040
5A5Kevin D.3070205050
6A6Dewi4070604030
7A7N. Shinta5070607050
8A8F. Alfian4060407040
9A9Nina3070406030
10A10Carlie M.5080704050
11A11Usman5060806040
12A12Yuna5080806040
[5] Data yang berwarna BIRU adalah merupakan data dengan nilai minimum (terendah) pada setiap kriteria

2.3.2. Matriks Normalisasi (R)

Perhitungan nilai normalisasi R berdasarkan persamaan [CPI-02] dan [CPI-03]. Sebagai contoh, untuk data x6,5 yaitu data untuk alternatif ke-6 dan kriteria ke-5(Prestasi), dimana kriteria ini memiliki tren positif (lebih besar lebih baik) sehingga berlaku persamaan [CPI-02] sebagai berikut:

$\begin{align} r_{6,5}&=\frac{x_{6,5}\star 100}{x_{6,5(min)}}\\ &=\frac{30\star 100}{30}\\ &=\frac{3000}{30}\\ &=100.00\end{align}$

Sedangkan untuk kriteria yang memiliki tren negatif (lebih kecil lebih baik), berlaku persamaan [CPI-02]. Sebagai contoh untuk data x6,2 dapat dihitung nilai normalisasinya sebagai berikut

$\begin{align} r_{6,2}&=\frac{x_{6,2(min)}}{x_{6,2}\star 100}\\ &=\frac{60\star 100}{70}\\ &=\frac{6000}{70}\\ &=85.71\end{align}$

Dengan menggunakan perhitungan yang sama pada semua data matriks keputusan X, maka di peroleh matriks normalisasi R sebagai berikut:

$R=\left[ \begin{array}{ccccc}\\ 100.00 & 100.00 & 200.00 & 80.00 & 100.00 \\100.00 & 85.71 & 150.00 & 57.14 & 100.00 \\60.00 & 75.00 & 300.00 & 50.00 & 133.33 \\100.00 & 100.00 & 150.00 & 57.14 & 133.33 \\100.00 & 85.71 & 100.00 & 80.00 & 166.67 \\75.00 & 85.71 & 300.00 & 100.00 & 100.00 \\60.00 & 85.71 & 300.00 & 57.14 & 166.67 \\75.00 & 100.00 & 200.00 & 57.14 & 133.33 \\100.00 & 85.71 & 200.00 & 66.67 & 100.00 \\60.00 & 75.00 & 350.00 & 100.00 & 166.67 \\60.00 & 100.00 & 400.00 & 66.67 & 133.33 \\60.00 & 75.00 & 400.00 & 66.67 & 133.33\end{array} \right]$

Dalam bentuk tabular data normalisasi R adalah sebagai berikut

TABEL 4 : Nilai Normalisasi (R)
No.AlternatifNilai Normalisasi (R)
KodeNamaC1C2C3C4C5
1A1Bella M.100.00100.00200.0080.00100.00
2A2L. Zaki100.0085.71150.0057.14100.00
3A3Gatot60.0075.00300.0050.00133.33
4A4Reza100.00100.00150.0057.14133.33
5A5Kevin D.100.0085.71100.0080.00166.67
6A6Dewi75.0085.71300.00100.00100.00
7A7N. Shinta60.0085.71300.0057.14166.67
8A8F. Alfian75.00100.00200.0057.14133.33
9A9Nina100.0085.71200.0066.67100.00
10A10Carlie M.60.0075.00350.00100.00166.67
11A11Usman60.00100.00400.0066.67133.33
12A12Yuna60.0075.00400.0066.67133.33

2.3.3. Nilai Alternatif/Composite Index (I)

Nilai alternatif/composite index (I) setiap alternatif dihitung berdasarkan persamaan [CPI-04. Sebagai contoh untuk nilai composite index alternatif ke 11 adalah:

$\begin{align} I_{11}&=\sum^{5}_{j=1}(r_{11,j}\star w_j)\\ &=r_{11,1}\star w_{1}+r_{11,2}\star w_{2}+r_{11,3}\star w_{3}+r_{11,4}\star w_{4}+r_{11,5}\star w_{5} \\ &={60.00} * {0.27}+{100.00} * {0.14}+{400.00} * {0.36}+{66.67} * {0.09}+{133.33} * {0.14} \\ &=16.38+13.60+145.60+6.07+18.13 \\ &=199.78\end{align}$

Dengan menggunakan perhitungan yang sama terhadap semua data matriks normalisasi R dari semua alternatif, ,maka diperoleh nilai composite index (I) sebagai berikut:

$I=[134.58,\ 112.36,\ 158.46,\ 118.83,\ 105.30,\ 164.03,\ 165.10,\ 130.21,\ 131.42,\ 185.75,\ 199.78,\ 196.38]$

Data Nilai Composite Index (I) tersebut dapat direpresentasikan dalam bentuk tabel sebagai berikut:

TABEL 5 : Nilai Composite Index(I)
NoAlternatifComposite Index (I)
KodeNama
1A1Bella M.134.58
2A2L. Zaki112.36
3A3Gatot158.46
4A4Reza118.83
5A5Kevin D.105.30
6A6Dewi164.03
7A7N. Shinta165.10
8A8F. Alfian130.21
9A9Nina131.42
10A10Carlie M.185.75
11A11Usman199.78
12A12Yuna196.38

2.3.4. Perangkingan

Dari data nilai composite index (I) setelah diurutkan dari yang terbesar sampai yang terkecil diperoleh hasil seperti pada TABEL 6 berikut ini:

TABEL 6 : Hasil Perankingan
NoAlternatifComposite Index (I)Ranking
KodeNama
1A11Usman199.781
2A12Yuna196.382
3A10Carlie M.185.753
4A7N. Shinta165.104
5A6Dewi164.035
6A3Gatot158.466
7A1Bella M.134.587
8A9Nina131.428
9A8F. Alfian130.219
10A4Reza118.8310
11A2L. Zaki112.3611
12A5Kevin D.105.3012

Dari hasil perangkingan diperoleh untuk ranking pertama adalah alternatif ke 11 (A11) yaitu Usman dengan nilai performance composite index-nya sebesar 199.78

Bagian ini sebenarnya tidak termasuk dalam proses pembuatan aplikasi Composite Performance Index dengan PHP, namun untuk keperluan menjelaskan proses perhitungannya dengan memakai database server MySQL/MariaDB dan bahasa pemrograman PHP dalam artikel ini maka perlu disiapkan satu buah database. Sebagai contoh disini digunakan database bernama db_dss yang dibuat dengan sintak SQL sebagai berikut:

CREATE DATABASE IF NOT EXISTS db_dss;
USE db_dss;

Awalnya membuat dulu database dengan nama db_dss jika belum ada database dengan nama tersebut, kemudian gunakan database tersebut dengan memakai sintak USE db_dss;

Dalam hal ini, pembuatan database memakai command console dari database server yang bersangkutan

3.1.1. Membuat Data Tabel Kriteria

Berdasarkan contoh kasus di atas dibuatkan tabel untuk data-data kriteria sebagai berikut:

-- menghapus tabel cpi_criterias jika sudah ada
DROP TABLE IF EXISTS cpi_criterias;
-- membuat tabel cpi_criterias jika tidak ada
CREATE TABLE IF NOT EXISTS cpi_criterias(
  id_criteria TINYINT(3) UNSIGNED NOT NULL,
  name VARCHAR(100) NOT NULL,
  weight FLOAT NOT NULL,
  trend SET('positif','negatif'),
  PRIMARY KEY(id_criteria)
)ENGINE=MyISAM;

-- memasukkan data-data kriteria
INSERT INTO cpi_criterias(id_criteria,name,weight,trend)
VALUES
(1,'Penghasilan Ortu',0.273,'negatif'),
(2,'Semester',0.136,'negatif'),
(3,'IPK',0.364,'positif'),
(4,'Pemakaian Listrik',0.091,'negatif'),
(5,'Prestasi',0.136,'positif');

3.1.2. Membuat Data Tabel Alternatif

Data-data mengenai kandidat yang akan dievaluasi seperti yang tertera pada contoh kasus di atas dapat di representasikan dalam tabel database sebagai berikut:

-- menghapus tabel cpi_alternatives jika sudah ada
DROP TABLE IF EXISTS cpi_alternatives;
-- membuat tabel cpi_alternatives jika tidak ada
CREATE TABLE IF NOT EXISTS cpi_alternatives(
  id_alternative SMALLINT(5) UNSIGNED NOT NULL AUTO_INCREMENT,
  name VARCHAR(30) NOT NULL,
  PRIMARY KEY(id_alternative)
) ENGINE=MyISAM;

-- memasukkan data-data alternatif
INSERT INTO cpi_alternatives(id_alternative,name)
VALUES
(1,'Bella M.'),
(2,'L. Zaki'),
(3,'Gatot'),
(4,'Reza'),
(5,'Kevin D.'),
(6,'Dewi'),
(7,'N. Shinta'),
(8,'F. Alfian'),
(9,'Nina'),
(10,'Carlie M.'),
(11,'Usman'),
(12,'Yuna');

Dalam tabel cpi_alternatives tersebut hanya disimpan id dan nama alternatif-nya; dalam pengembangannya dapat ditambahkan atribut/properti data lainnya, semisal alamat, nomor telepon, email, dan sebagainya sesuai kebutuhan. Namun dalam contoh ini hanya diperlukan namanya saja.

3.1.3. Membuat Data Tabel Hasil Evaluasi

Berikutnya adalah membuat tabel yang berisi hasil evaluasi dari tiap-tiap kandidat(alternatif) terhadap kriteria-kriteria yang diberikan. Data-data yang ada pada contoh kasus di atas dapat di representasikan dalam tabel relasi antara tabel cpi_criterias dengan tabel cpi_alternatives sebagai berikut:

-- menghapus tabel cpi_evaluations jika sudah ada
DROP TABLE IF EXISTS cpi_evaluations;
-- membuat tabel cpi_evaluations jika tidak ada
CREATE TABLE IF NOT EXISTS cpi_evaluations(
  id_alternative SMALLINT(5) UNSIGNED NOT NULL,
  id_criteria TINYINT(3) UNSIGNED NOT NULL,
  value FLOAT NOT NULL,
  PRIMARY KEY (id_alternative,id_criteria)
)ENGINE=MyISAM;

INSERT INTO cpi_evaluations(id_alternative,id_criteria,value)
VALUES
(1,1,30),(1,2,60),(1,3,40),(1,4,50),(1,5,30),
(2,1,30),(2,2,70),(2,3,30),(2,4,70),(2,5,30),
(3,1,50),(3,2,80),(3,3,60),(3,4,80),(3,5,40),
(4,1,30),(4,2,60),(4,3,30),(4,4,70),(4,5,40),
(5,1,30),(5,2,70),(5,3,20),(5,4,50),(5,5,50),
(6,1,40),(6,2,70),(6,3,60),(6,4,40),(6,5,30),
(7,1,50),(7,2,70),(7,3,60),(7,4,70),(7,5,50),
(8,1,40),(8,2,60),(8,3,40),(8,4,70),(8,5,40),
(9,1,30),(9,2,70),(9,3,40),(9,4,60),(9,5,30),
(10,1,50),(10,2,80),(10,3,70),(10,4,40),(10,5,50),
(11,1,50),(11,2,60),(11,3,80),(11,4,60),(11,5,40),
(12,1,50),(12,2,80),(12,3,80),(12,4,60),(12,5,40);

Source code selengkapnya bisa dilihat di tautan ini source source

Beberapa simpulan yang bisa diperoleh adalah

  • Dalam metode Composite Performance Index (CPI) penentuan alternatif terbaik dapat dilakukan untuk beberapa kriteria yang tidak seragam, baik dalam skala numerik maupun skala ordinal
  • Penggunaan metode Composite Performance Index (CPI) untuk penentuan penerima beasiswa dengan indikator : Penghasilan Ortu, Semester, IPK, Pemakaian Listrik, dan Prestasi menghasilkan data yang valid dan hasil yang baik karena proses perhitungan sesuai dengan yang diharapkan
  • Pada contoh kasus yang diberikan terpilih alternatif A11 (Usman) sebagai penerima beasiswa, dengan nilai composite index sebesar 199.78

  • Pandian,G. S., Jawahar,N. and SP.Nachiappan, (2013) Composite Performance Index for Sustainability, IOSR Journal Of Environmental Science, Toxicology And Food Technology, vol. 3, no. 1, pp. 91-102, 2013
  • Rahim, R., Mesran, M. , Siahaan, A.P.U., Aryza, S. (2017) Composite Performance Index For Student Admission, International Journal of Research In Science & Engineering e-ISSN: 2394-8299 Volume: 3 Issue: 3 May-June 2017 p-ISSN: 2394-8280
  • Turban, E.T.P., Aronson, J., & Liang, (2005) Decision Support Systems and Inteligence System. US: Prentice-Hall