Implementasi Game  Theory Pada  Simulasi  Dan  Perancangan Software Berbasis Matriks Pay-Off Dengan Metode Non-Zero Sum Game
Ghani Mutaqin 1,* , Fany Parama Admaja 2 , Ainatul Mardhiyah 3
Jurusan Teknik Informatika, Universitas Islam Negeri Maulana Malik Ibrahim, Indonesia
1 ghanimutaqin85@gmail.com; 2 admaja404@gmail.com; 3 ainadimana@gmail.com; * corresponding author

## PENDAHULUAN
Dalam  sebuah  bisnis,  keuntungan  merupakan  suatu  hal  yang  sangat  krusial.  Karena keuntungan memberikan dampak dalam berlangsungnya sebuah industri. Kerugian juga hal yang harus diperhatikan agar bisa ditekan seminimal mungkin [1]. Dalam teori permainan, keuntungan akan dicari sebesar mungkin, sedangkan kerugian akan ditekan dengan sekecil- kecilnya [1]. Dalam penerapannya, terdapat dua macam metode pada teori permainan. Yaitu Zero  Sum  Game dan Non-Zero  Sum  Game. Teori Zero  Sum  Game adalah  teori  dimana keuntungan  setara  dengan  kerugian,  sehingga  perubahan  yang  terjadi  adalah  nol.  Teori permainan non-zero  sum  game dilakukan  untuk  melihat  pada  kemungkinan  terbaik  dan terburuk dari strategi yang digunakan dalam pengambilan keputusan [2].
Strategi yang optimal untuk dipertimbangkan ialah dengan melihat nilai pay-off [3]. Nilai dari  matriks pay-off adalah  nilai  yang  diharapkan  terjadi  dari  strategi  yang  digunakan.

## A R T I K E L I N F O A B S T R A K

## Sejarah Artikel
Diterima: 12 Mei 2020 Direvisi: 23 Juni 2021 Diterbitkan: 30 Agustus 2021 Tujuan  dari  penilitian  ini  adalah  untuk  merancang  suatu  aplikasi  yang berguna untuk perumusan situasi pengambilan keputusan menggunakan game-theory.  Game-theory sendiri  merupakan  suatu  metode  yang berguna  untuk  melakukan  analisis  proses  pengambiilan  keputusan antara  pemain  yang  saling  bersaing  satu  sama  lain.  Setiap  pemain memiliki suatu tujuan, yaitu untuk memperoleh keuntungan semaksimal mungkin  dan  kerugian  seminimal  mungkin.  Untuk  dapat  mencapai tujuannya,  setiap  pemain  harus  cerdas  dan  memiliki  suatu  strategi. Strategi digunakan oleh setiap pemain sebagai  aksi dan reaksi terhadap lawan  mainnya.  Karena  itu, pengambilan keputusan  strategi  yang tepat bisa    mempengaruhi  hasil permainan tersebut. Strategi  yang digunakan oleh setiap pemain direpresentasikan dengan menggunakan matriks pay- off yang  mana  memiliki  nilai  pada  setiap  baris  dan  kolomnya. Pengambilan keputusan ini didasarkan pada dua kriteria , yaitu minimax dan maximin. Nilai  dari  matriks pay-off sendiri  nantinya  akan diinputkan  langsung  oleh user .  Aplikasi  tersebut  nantinya  akan  meng- generate inputan  lalu  melakukan  perbandingan  sehingga  didapatkan nilai minimax dan maximin. Dengan  aplikasi  ini,  pemain  dapat  lebih mudah  dan  cepat  dalam  pemiihan  keputusan  yang  akan  diambil. Penelitian  ini  bisa  dibilang  sukses  karena  menghasilkan  nilai  yang akurat.  Akan  tetapi,  kekurangan  dari  aplikasi  ini  yaitu  proses perhitungan  hanya  dapat  dilakukan  apabila  matriks payoff memiliki ordo dengan jumlah kelipatan yang sama .
Kata Kunci
Game Theory Matriks pay-off Non-Zero Sum
Dimana hal ini dimaksudkan untuk mendapat keuntungan maksimal dan kerugian minimal dalam permainan [4].
Penelitian  yang pernah dilakukan dalam penerapan matriks pay-off adalah pada konsep game theory pada pengambilan keputusan dalam pemilihan kepala daerah Jawa Barat 2013 [5]. Penelitian tersebut menggunakan metode non-zero sum game dengan hasil dari survei pada  masa  kampanye.  Hasil  yang  ditunjukkan  penelitian  tersebut  ialah game  theory , masing-masing  pasangan  calon  disarankan  agar  melakukan  strategi  tertentu  untuk melakukan penjaringan secara optimal pada suara yang dibutuhkan.
Maka dari itu, penulis mencoba membuat rancangan software dengan mengimplementasikan  konsep  dari  teori  permainan  dengan  metode non-zero  sum  game pada matriks pay-off .

## METODE

## Non-Zero Sum Game
Metode menggambarkan situasi di mana keuntungan dan kerugian agregat pihak-pihak yang  berinteraksi  bisa  lebih  kecil  dari  atau  lebih  dari  nol. Zero-sum  game juga  disebut sebagai  permainan  yang sangat  kompetitif , sedangkan  permainan  yang  bukan  merupakan zero-sum bisa  bersifat  kompetitif  atau  non-kompetitif. Game  zero-sum  paling  sering diselesaikan  dengan teorema  minimax yang  terkait  erat  dengan dualitas  pemrograman linier.
Dalam  perancangan software ini,  kami  merancang  dan  mengembangan  metode non- zero  sum  game pada  matriks pay-off dengan editor Netbeans  8.2  menggunakan  bahasa java. Dalam pengembanganya, kami memasukkan variable-variabel yang dibutuhkan agar nilai matriks yang diinginkan sesuai dengan konsep nilai tidak sama dengan nol. Variable- variabel  yang  kami  deklarasikan  dalam  perancangan software ini  antara  lain  ialah  baris, kolom, nilai maksimin, nilai minimax, dan pay-off. Konsep pada perancangan software ini digambarkan pada flowchart pada Gambar 1.
Vol. 3, No. 2, Agustus 2021, Halaman 266-272

## Matriks Pay-Off
Pada  konsep Game  Theory ,  dari  setiap  strategi  yang  digunakan,  setiap  pemain  akan mendapatkan  keuntungan  dan  kerugian.  Keuntungan  atau  kerugian  yang  didapatkan  bisa ditentukan dengan melihat nilai pay-off dari strategi masing-masing pemain. Pay-off dalam suatu  permainan  menyatakan  ukuran  seberapa  bagus  pemain  dalam  melakukan  suatu permainan[6][7].
Nilai dari pay-off tersebut, terdapat pada matriks yang disebut matriks pay-off. Dalam perancangan software ini,  kami  menggunakan  konsep non-zero  sum sehingga  didapatkan bentuk  umum  dari  matriks pay-off yang  kami  gunakan.  Betuk  umum  dari  matriks  yang digunakan[3] bisa dilihat pada Gambar 2.
Gambar 2. Bentuk Matriks pada metode Non-zero Game
Pada  matriks  tersebut,  interpretasi  dari  a ijk adalah  bagi  pemain  dalam  menggunakan nilai pay-off. Sehingga  didapatkan  rumus  yang  dapat  menentukan    nilai pay-off pada sebuah permainan. Rumus tersebut dapat dilihat bisa Gambar 3.
Gambar 3. Rumus untuk menentukan nilai pay-off pada matriks
Pada  penerapan Game  Theory, menentukan  nilai  optimal  dapat  dilakukan  dengan metode Ekuilbrium Nash. Ekuilibrium Nash ialah kombinasi dari strategi yang digunakan dengan  keadaan  dimana  satu  pemain  menggunakan  cara  yang  dilakukan  pemain  lain sehingga semua pemain menggunakan metode ekuilibrium [8].

## HASIL DAN PEMBAHASAN

## Hasil Penghitungan Optimal Pada Matriks Pay-Off
Dari  hasil  penelitian  dan  perancangan  yang  kami  lakukan,  kami  menyimpulkan  bahwa dalam  implementasi  dari  metode non-zero  sum  game ada  beberapa  sifat  yang  harus terpenuhi yaitu :
1. Jumlah pemain terbatas, dimana hal tersebut diwakilkan oleh jumlah baris dan kolom matriks.
2. Kemungkinan yang dimiliki oleh setiap pemain adalah terbatas.
3. Aturan permainan untuk mengukurberbagai kemungkinan dalam permainan.
4. Hasil dari semua kombinasi yang bisa dilakukan adalah bernilai positif atau negative.
Kami  memberikan  contoh  dengan  memasukkan  beberapa  bilangan  sebagai  nilai  dari matriks tersebut. Contoh dari penerapan tersebut dapat dilihat pada Tabel 1.
Tabel 1. Tabel Matriks dengan ordo 3x3 PEMAIN B PEMAIN A 3 5 1 2 1 4 8 6 4
Pada  tabel  matriks  tersebut,  kami  memberikan  contoh  dengan  matriks  ber-ordo  3x3. Menggunakan langkah penyelesaian sebagai berikut:
1. Untuk pemain A, memilih nilai yang paling kecil sehingga akan didapat hasil yang dapat dilihat pada Gambar 4.

## Gambar 4. Nilai minimal pada setiap baris (pemain A)
Nilai  maksimum  nya  adalah  4,  sehingga  4  merupakan  nilai  maksimin.  Nilai  maksimin merupakan nilai keuntungan.
2. Untuk pemain kolom (Pemain B), pilih nilai      yang paling besar.  Maka didapat hasil yang bisa dilihat pada Gambar 5.

## Gambar 5. Nilai maksimal pada setiap kolom (pemain B)
Nilai  minimumnya  adalah  4.  Jadi  minimaksnya  adalah  4.  Nilai  minimaks  merupakan nilai kerugian.
3. Karena nilai maksimin sama dengan minimaks, maka terdapat saddle point, yaitu 4. Dengan hasil tersebut, nilai permainan ini dikatakan optimal.

## Memodelkan Matriks Pada Source Code Software
Pada  kode  program  menggunakan  bahasa Java yang  kami  rancang,  kami  memberikan beberapa method untuk  menghitung  dan  melihat  apakah  nilai-nilai  yang  dimasukkan memenuhi  syarat  atau  tidak  untuk  mendapatkan saddle  point, dimana saddle  point merupakan  nilai  optimal. Method-method yang  kami  gunakan  dalam  melakukan penghitungan matriks bisa dilihat pada Tabel 2, 3, 4, 5, 6, dan 7.
Tabel 2. Method untuk memasukkan nilai matriks
Tabel 3. Method untuk menentukan batas jumlah kolom
Tabel 4. Method untuk menentukan batas jumlah baris
public void insertmetrik(int baris, int kolom){ payoff = new int [baris][kolom]; String tampil= ""; for (int i = 0; i < baris; i++) { for (int j = 0; j < kolom; j++) {
payoff[i][j]=Integer.parseInt(JOptionPane.showInputDialog("Masukkan nilai baris ke "+(i+1)+" kolom ke "+(j+1)+" : ")); tampil+="Nilai baris ke "+(i+1)+" kolom ke "+(j+1)+" : "+payoff[i][j]+"\t";
} tampil+="\n"; txinput.setText(tampil); } };
public void totalkolom(int baris, int kolom){ kolomx=new int[kolom]; String hasil=""; for (int i = 0; i < kolom; i++) { int terbesar=payoff[0][i]; for (int j = 0; j < baris; j++) { if(terbesar<payoff[j][i]){ terbesar=payoff[j][i]; }else if(terbesar>payoff[j][i] && terbesar==payoff[j][i]){ terbesar=terbesar; } } kolomx[i]=terbesar; } };
public void totalbaris(int baris, int kolom){ barisx=new int[baris]; String hasil = ""; for (int i = 0; i < baris; i++) { int terkecil = payoff[i][0]; for (int j = 0; j < kolom; j++) { if(terkecil>payoff[i][j]){ terkecil=payoff[i][j]; }else if(terkecil<payoff[i][j] && terkecil==payoff[i][j]){ terkecil=terkecil; } } barisx[i]=terkecil; } };
Tabel 5. Method untuk mencari nilai maksimin dan minimaks
Tabel 6. Method untuk menentukan apakah terdapat saddle-point atau
tidak
Dari method-method yang  telah  diberikan  tersebut,  maka  kami  menguji  coba  dengan bilangan  yang  sama  pada  matriks  yang  kami  hitung  secara  manual.  Hasilnya  adalah bilangan  yang  keluar  pada software ini,  sama  dengan  hasil  yang  dihitung  secara  manual. Hasil  dari  penghitungan  menggunakan software yang  telah  dibuat  dapat  dilihat  pada Gambar 11.
public void cariminimax(int kolom){ int min=kolomx[0]; for (int i = 0; i < kolom; i++) { if(min>kolomx[i]){ min=kolomx[i]; }else{ min=min; } } nilaiminimax=min; minimax.setText(""+nilaiminimax); };
public void carimaximin(int baris){ int max=barisx[0]; for (int i = 0; i < baris; i++) { if(max<barisx[i]){ max=barisx[i]; }else{ max=max; } } nilaimaximin=max; maximin.setText(""+nilaimaximin); };
public void carisaddle(){ if(nilaimaximin==nilaiminimax){ saddleP.setText(""+nilaimaximin); JOptionPane.showMessageDialog(reset,"Saddle point-nya adalah "+nilaimaximin); }else{ JOptionPane.showMessageDialog(reset,"Saddle point-nya tidak ketemu "); } };
Gambar 6. Hasil penghitungan nilai optimal menggunakan software yang dibuat

## KESIMPULAN
Dari  penelitian  yang  telah  dilakukan,  dapat  disimpulkan  bahwa  proses  pengambilan keputusan menggunakan metode game theory dapat diimplementasikan ke dalam aplikasi dengan  menggunakan  algoritma  matematika.  Sehingga  proses  dalam  pengambilan keputusan menjadi lebih cepat dan mendapat hasil akurat. Nilai yang diinputkan oleh user sangat  berpengaruh  terhadap  nilai  yang  dihasilkan.  Apabila  nilai minimax dan maximin memiliki  nilai  yang  sama,  makan  akan  didapatkan saddle  point .  Semakin  sedikit  jumlah baris dan kolom maka akan semakin cepat proses perhitungannya. Akan tetapi, kekurangan dari  aplikasi  ini  yaitu  proses  perhitungan  hanya  dapat  dilakukan  apabila  matriks payoff memiliki ordo dengan jumlah kelipatan yang sama.

## REFERENSI
[1] S.  Rathnasiri,  P.  Ray,  S.  M.  N.  Islam,  and  C.  A.  Vega-Mejía,  “E-commerce  Supply  Chain  Cost Optimization  with  Incentive  Compatibility  Constraints,” 2019  IEEE  Int.  Conf.  Serv.  Oper.  Logist. Informatics , pp. 253–257, 2019, doi: 10.1109/SOLI48380.2019.8955039.
[2] X. Li and Q. Zhao, “Study on Cooperation Strategies  between Supply Chain Enterprises Based on Evolutionary Game Theory,” 2018 15th  Int. Conf. Serv. Syst. Serv. Manag. ICSSSM 2018 , pp. 1–5, 2018, doi: 10.1109/ICSSSM.2018.8465031.
[3] A.  SAIFUDDIN,  N.  K.  T.  TASTRAWATI,  and  K.  SARI,  “PENERAPAN  KONSEP  TEORI PERMAINAN  (GAME  THEORY)  DALAM  PEMILIHAN  STRATEGI  KAMPANYE  POLITIK (Studi Kasus : Strategi Pemenangan Pemilukada DKI Jakarta Tahun 201,” E-Jurnal Mat. , vol. 7, no. 2, p. 173, 2018, doi: 10.24843/mtk.2018.v07.i02.p200.
[4] F. Juliyanto and  evi yuliawati Sari, “Analisis persaingan perbankan dengan,” vol. 5, no. 1, pp. 54– 62, 2018.
[5] K.  Mustaqim,  “Kiki  Mustaqim,  2013  Aplikasi  Konsep  Teori  Permainan  Dalam  Pengambilan Keputusan Politik Universitas Pendidikan Indonesia | repository.upi.edu,” pp. 17–62, 2013.
[6] M. J. Dema, “a Non-Zero Sum Game : How Game Theory Can Inform Better Transboundary Water Rights Treaty Drafting,” Eur. Sci. J. , vol. 2, no. September, pp. 126–142, 2014.
[7] C.  T.  Leondes  and  R.  K.  Nandi,  “An  application  of  non-zero-sum  games  to  competitive  decision making†,” Int. J. Syst. Sci. , vol. 8, no. 9, pp. 1009–1020, 1977, doi: 10.1080/00207727708942098.
[8] “ANALISIS  TEORI  PERMAINAN  DAN  EKUILIBRIUM  NASH  PADA  SIMULASI  LELANG  ( AUCTION ) PASAR LISTRIK HENNY IKA SEPTYANI NIM :  23205047 Program Studi Teknik Tenaga  Elektrik  INSTITUT  TEKNOLOGI  BANDUNG  ANALISIS  TEORI  PERMAINAN  DAN EKUILIBRIUM NASH PADA SIMULASI LELANG ( AUCTION ) PASAR LISTRIK,” 2007.