JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-9
1
Prediksi Permintaan Gas Cair Menggunakan Fuzzy Inference Model pada PT Air Products Gresik Lailatul Khikmiyah,Wiwik Anggraini, S.Si, M.Kom., Retno Aulia Vinarti, S.Kom., M.Kom. Sistem Informasi, Fakultas Teknologi Informasi (FTIf), Institut Teknologi Sepuluh Nopember (ITS) Jl. Arief Rahman Hakim, Surabaya 60111 E-mail:
[email protected]
Abstrak—PT Air Products adalah sebuah perusahaan penghasil gas dan liquida yang berasal dari udara. Setiap hari, perusahaan memproduksi nitrogen, oksigen dan argon yang berupa cairan (liquida) serta tersedia pula dalam bentuk gas. Salah satu plant PT Air Products Indonesia , yaitu plant Gresik menghasilkan tiga produk gas cair (liquida) yaitu LIN (Liquida Nitrogen), LAR (Liquida Argon) dan LOX (Liquida Oxygen) sebanyak 330 ton/hari. Proses produksi ketiga gas cair tersebut sangat dipengaruhi oleh permintaan pasar dan space inventory di tangki penyimpanan. Gas cair yang sudah diproduksi bisa menguap jika terlalu lama disimpan di dalam tangki penyimpanan. Untuk itulah peramalan permintaan untuk ketiga gas tersebut dinilai sangat penting. Apabila jumlah permintaan gas dapat diramalkan secara akurat, maka dapat membantu perusahaan dalam pengambilan keputusan dan perencanaan produksi selanjutnya. Dalam paper ini, penulis menggunakan fuzzy inference model untuk meramal jumlah permintaan gas cair LOX (liquida oxigen). Metode fuzzy untuk peramalan permintaan gas cair ini dipilih karena metode ini lebih cepat dan akurat daripada metode peramalan tradisional yang membutuhkan data yang banyak dan membutuhkan waktu yang lama. Dengan menggunakan metode fuzzy inference model ini, didapatkan hasil peramalan dengan nilai MAPE di bawah 20% Kata Kunci— PT Air Products Gresik, fuzzy inference model, liquida, LOX, peramalan I. PENDAHULUAN Di dalam sebuah perusahaan, peramalan merupakan hal yang sangat penting. Peramalan berguna untuk proses pengambilan keputusan di dalam perusahaan meliputi area fungsional keuangan, pemasaran, produksi dan operasi. Dalam area fungsional keuangan, peramalan memberikan dasar dalam menentukan anggaran dan pengendalian biaya. Pada bagian pemasaran, peramalan penjualan dibutuhkan untuk merencanakan produk baru, kompensasi tenaga penjual, dan beberapa keputusan penting lainnya. Lalu, bagian produksi dan operasi menggunakan data-data peramalan untuk perencanaan kapasitas, fasilitas, produksi, penjadwalan, dan pengendalian persedian (inventory control).
Peramalan adalah menduga atau memperkiraan suatu keadaan di masa yang akan datang berdasarkan keadaan masa lalu dan sekarang yang diperlukan untuk menetapkan kapan suatu peristiwa akan terjadi, sehingga tindakan yang tepat dapat dilakukan [1]. Sebuah organisasi merencanakan tujuan, memprediksi faktor lingkungan, kemudian memilih aksi-aksi yang diharapkan dapat mengasilkan pencapaian tujuan. PT Air Products Gresik adalah sebuah perusahaan penghasil gas dan liquida yang berasal dari udara, yaitu O2, O3, N2, CO, CO2, H2, He, Ar, Kr. Setiap hari, perusahaan memproduksi nitrogen, oksigen dan argon yang berupa cairan (liquida) serta tersedia pula dalam bentuk gas. Gas nitrogen, argon dan oksigen yang telah dihasilkan dalam bentuk cair disebut LIN (Liquida Nitrogen), LAR (Liquida Argon) dan LOX (Liquida Oxygen). Proses produksi ketiga gas cair tersebut sangat dipengaruhi oleh permintaan pasar dan space inventory di tangki penyimpanan. Setiap hari permintaan akan ketiga produk tersebut tidak menentu. Gas cair yang sudah diproduksi bisa menguap jika terlalu lama disimpan di dalam tangki penyimpanan Untuk itulah peramalan permintaan untuk ketiga gas tersebut dinilai sangat penting. Apabila jumlah permintaan gas dapat diramalkan secara akurat, maka dapat membantu perusahaan dalam pengambilan keputusan dan perencanaan produksi selanjutnya, seperti perencanaan kapasitas, fasilitas, produksi, penjadwalan, dan pengendalian persedian (inventory control). Banyak penelitian telah dilakukan terkait metode fuzzy untuk peramalan, salah satu contohnya adalah penelitian yang dilakukan untuk sistem tenaga listrik di India yang menggunakan pendekatan fuzzy untuk peramalan beban jangka pendek (short-term load forecasting). Dengan hanya menggunakan parameter temperatur dan waktu untuk inputan sistem. Mereka menunjukkan bahwa dengan logika fuzzy, mereka dapat mencapai hasil yang lebih mendekati dengan konsumsi yang sebenarnya daripada menggunakan konsep peramalan tradisional yang menggunakan prinsip yang sama. Dalam paper ini, penulis memilih fuzzy inference model dalam meramalkan jumlah permintaan gas cair LOX. Metode ini lebih cepat dan akurat daripada metode peramalan tradisional yang membutuhkan data yang banyak dan membutuhkan waktu yang lama.
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-9 II. TINJAUAN PUSTAKA A. PT Air Products Gresik PT Air Products berdiri pertama kali pada tahun 1990 dengan nama PT United Air Products Indonesia yang mana perusahaan tersebut merupakan Joint Venture (kerjasama) antara Air Products and Chemicals, Inc (APCI), perusahaan penghasil gas dan liquida yang berasal dari udara (O2, O3, N2, CO, CO2, H2, He, Ar, Kr, dll) yang berpusat di Detroit Michigan, USA pada tahun 1940, dengan Astra International, Tbk, perusahaan ternama di Asia yang bergerak di bidang otomotif. Pada tahun 1996 berdiri sendiri dengan nama Air Products, karena PT Astra Indonesia lebih memfokuskan ke mesin atau otomotif. Pada tanggal 4 Juli 1998 didirikan plant PT Air Products di Gresik tepatnya di Jalan Alpha Maspion LOT L-12, Kawasan Industri Maspion, Desa Manyar, Gresik 61151, propinsi Jawa Timur. Produk PT Air Products Indonesia adalah nitrogen, oksigen dan argon yang berupa cairan (liquida) serta tersedia pula dalam bentuk gas. Customer yang dimiliki PT. Air Products Indonesia pun bermacam-macam dari pabrik gas saingan, seperti: • Industri makanan, • Food freezer • Industri Baja • Industri Glass • Industri Manufacture • Depo Filling Station B. Peramalan Peramalan adalah menduga atau memperkiraan suatu keadaan di masa yang akan datang berdasarkan keadaan masa lalu dan sekarang yang diperlukan untuk menetapkan kapan suatu peristiwa akan terjadi, sehingga tindakan yang tepat dapat dilakukan [2]. Sebuah organisasi merencanakan tujuan, memprediksi faktor lingkungan, kemudian memilih aksi-aksi yang diharapkan dapat mengasilkan pencapaian tujuan. Teknik peramalan dibagi menjadi dua kategori, yaitu metode kuantitatif dan metode kualitatif : Metode kualitatif digunakan ketika data historis tidak tersedia. Metode peramalan kualitatif ini adalah metode subyektif. Hal ini meliputi metode pencatatan faktor-faktor yang dianggap akan mempengaruhi produksi terhadap hasil produksi tersebut, ataupun mengikuti pendapatan para pakar yang ahli terhadap produk yang hendak diprediksi. Dengan dasar informasi tersebut kita dapat memprediksi kejadian kejadian di masa yang akan datang. Metode peramalan kuantitatif dapat dibagi menjadi dua tipe, causal dan time series. Metode peramalan causal meliputi faktor-faktor yang berhubungan dengan variable yang diprediksi. Sebaliknya peramalan time series merupakan metode kuantitatif untuk menentukan data masa lampau yang telah dikumpulkan secara teratur. Data lampau tersebut dapat dijadikan acuan untuk peramalan data di masa yang akan datang.
2 C. Logika Fuzzy Logika fuzzy pertama kali diperkenalkan oleh Prof. Lotfi A Zadeh dari Universitas California, Berkeley pada 1965. Logika fuzzy merupakan salah satu komponen pembentuk soft computing. Dasar logika fuzzy adalah teori himpunan fuzzy. Pada teori himpunan fuzzy, peranan derajat keanggotaan sebagai penentu keberadaan elemen dalam suatu himpunan sangatlah penting. Nilai keanggotaan atau derajat keanggotaan menjadi ciri utama dari penalaran logika fuzzy tersebut. Logika klasik menyatakan bahwa segala hal dapat diekspresikan dalam istilah binary (0 atau 1, hitam atau putih, ya atau tidak). Logika fuzzy menggantikan kebenaran boolean dengan tingkat kebenaran. Logika fuzzy memungkinkan nilai keanggotaan antara 0 dan 1, tingkat keabuan dan juga hitam dan putih, dan dalam bentuk linguistik, konsep tidak pasti seperti "sedikit", "lumayan", dan "sangat". Dengan kata lain, logika fuzzy menyediakan suatu cara untuk merubah pernyataan linguistik menjadi suatu numerik[3]. D. Himpunan Fuzzy Himpunan fuzzy merupakan kelas dari objek-objek dengan rangkaian tingkatan keanggotaan. Pada himpunan tegas (crisp), nilai keanggotaan suatu item x dalam suatu himpunan A, yang sering ditulis dengan µA (x) , memiliki dua kemungkinan, yaitu: satu (1), yang berarti bahwa suatu item menjadi anggota dalam suatu himpunan, atau nol (0), yang berarti bahwa suati item tidak menjadi anggota dalam suatu himpunan. Berikut merupakan beberapa definisi dasar dari himpunan fuzzy: Misal X merupakan semesta dari objek, dengan elemen berupa x. Maka, X = {x}. Himpunan (kelas) fuzzy A pada X didefinisikan oleh fungsi keanggotaan fA(x) yang berasosiasi dengan tiap poin pada X berupa angka real dalam interval [0,1], dengan nilai fA(x) pada x merepresentasikan tingkat keanggotaan x pada A. Maka dari itu, semakin dekat nilai fA(x) dengan nilai 1, maka semakin tinggi tingkat keanggotaan x pada A. E. Fungsi Keanggotaan Fuzzy Fungsi keanggotaan adalah suatu kurva yang menunjukkan pemetaan titik-titik input data kedalam nilai keanggotaan yang memiliki interval antara 0 sampai 1. Salah satu cara yang dapat digunakan untuk mendapatkan nilai keanggotaan adalah dengan melalui pendekatan fungsi [4]. F. Operator Dasar Zadeh untuk Operasi Himpunan Fuzzy Seperti halnya himpunan konvensional, ada beberapa operasi yang didefinisikan secara khusus untuk mengkombinasi dan memodifikasi himpunan fuzzy. Nilai keanggotaan sebagai hasil dari operasi dua himpunan sering dikenal dengan nama fire strength atau α-cut. Ada tiga operator dasar yang diciptakan oleh Zadeh[5], yaitu: Operator AND Operator ini berhubungan dengan operasi interseksi pada himpunan. Persamaan (1) menunjukkan α-predikat sebagai hasil operasi dengan operator AND diperoleh dengan
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-9
3
mengambil nilai keanggotaan terkecil antar elemen pada himpunan-himpunan yang bersangkutan.
µ ∩
=
(µ ( ), µ ( ))
(1)
Operator OR Operator ini berhubungan dengan operasi union pada himpunan α-predikat sebagai hasil operasi dengan operator OR diperoleh dengan mengambil nilai keanggotaan terbesar antarelemen pada himpunan-himpunan yang bersangkutan. Persamaan (3) menunjukkan rumus operator OR.
µ ∪
=
(µ ( ), µ ( ))
(2)
Operator NOT Operator ini berhubungan dengan operasi komplemen pada himpunan. α-predikat sebagai hasil operasi dengan operator NOT diperoleh dengan mengurangkan nilai keanggotaan elemen pada himpunan yang bersangkutan dari 1. Persamaan (3) menunjukkan rumus operator NOT.
µ
( ) = 1 − µ ( )
(3)
G. Penalaran Monoton Metode penalaran secara monoton digunakan sebagai dasar untuk teknik implikasi fuzzy. Jika 2 variabel fuzzy direlasikan dengan implikasi sederhana sebagai berikut: If x is A Then Y is B atau bisa ditulis seperti ini y=f((x,A),B) maka sistem fuzzy dapat berjalan tanpa harus melalui komposisi dan dekomposisi fuzzy. Nilai output dapat diestimasi secara langsung dari nilai keanggotaan yang berhubungan dengan antesendennya. H. Fungsi Implikasi Aturan Fuzzy If-Then (atau disebut juga aturan fuzzy, fuzzy implikasi, atau pernyataan kondisional fuzzy) adalah aturan yang digunakan untuk merumuskan relasi conditional antara 2 atau lebih himpunan fuzzy. Bentuk umum : If (X1 is A1) (X2 is A2) … (Xn is An) Then Y is B; xi, yi skalar, dan A, B himpunan fuzzy. Ada 2 fungsi implikasi yang digunakan yaitu : 1. Min (minimum), fungsi ini akan memotong output (konsekuen) himpunan fuzzy. 2. Dot (product), fungsi ini akan menskala output himpunan fuzzy. [6] I.Pengukuran Akurasi Peramalan Ada beberapa istilah untuk menunjukkan ukuran kesalahan atau tingkat error dari hasil suatu peramalan [ 1], yaitu: Mean Absolute Deviation (MAD) yaitu rata-rata kesalahan mutlak selama periode tertentu tanpa memperhatikan apakah hasil peramalan lebih besar atau lebih kecil dibandingkan kenyataannya. Rumus (4) adalah rumus untuk menghitung MAD, yaitu:
MAD =
∑|
n = jumlah kesalahan peramalan
|
=
∑|
|
(4)
Mean Absolute Percentage Error (MAPE) yaitu persentase kesalahan hasil peramalan terhadap permintaan aktual selama periode tertentu yang akan memeberikan informasi persentase kesalahan terlalu tinggi atau terlalu rendah. Di bawah ini adalah rumus (5) untuk menghitung nilai MAPE: |
MAPE =
∑
|
∗
%
(5)
Mean Squared Error (MSE) yaitu penjumlahan kuadrat semua kesalahan peramalan pada setiap periode dan membaginya dengan jumlah periode peramalan. Di bawah ini adalah rumus (6) untuk menghitung nilai MSE:
MSE =
∑(
)
=
∑(
)
(6)
J. Peramalan Menggunakan Fuzzy Inference Model Metode Fuzzy Inference Model, pernah dilakukan dengan menggunakan studi kasus dari National Electric Power Company (NEPCO) di Jordania. [7] Data yang digunakan adalah data histori dari tahun 2000 sampai tahun 2007. Mereka menggunakan langkah-langkah untuk mengimplementasikan fuzzy inference model sebagai berikut: 1. Menentukan variabel linguistik dan himpunan fuzzy Setiap input dan output terbagi ke dalam beberapa himpunan fuzzy. Hasil yang keluar (output) akan terbagi menjadi beberapa himpunan fuzzy, hal ini menunjukkan tingkat pemakaian beban yang diramalkan dengan memperhatikan keadaan input. 2. Menjalankan aturan fuzzy Pada tahap ini, kita buat sejumlah aturan fuzzy yang akan digunakan untuk memprediksi beban yang dipengaruhi oleh pengaruh input yang berbeda. 3. Melakukan inferensi fuzzy ke dalam sistem Inferensi fuzzy adalah proses penyusunan pemetaan dari masukan (input) yang diberikan untuk hasil keluaran (output) menggunakan logika fuzzy. Pemetaan ini kemudian memberikan dasar dari mana keputusan dapat dibuat atau pola dibedakan. Proses inferensi fuzzy melibatkan fungsi keanggotaan, operator logika fuzzy, dan aturan if-then[9]. Dalam percobaannya, mereka membandingkan antara peramalan tradisional dengan peramalan menggunakan metode fuzzy. Mereka menggunakan mean absolute percentage error (MAPE) untuk mengukur tingkat kesalahan dari kedua metode tersebut. Error yang dihasilkan oleh metode fuzzy disebabkan karena variasi sifat dari konsumsi beban dan juga karena keterbatasan input data. Apabila ada input data, maka metode fuzzy bisa melakukan prediksi variasi beban dengan cara yang lebih akurat. Mereka menyadari bahwa peramalan tradisional menggunakan masukan data yang terbatas untuk proses peramalan beban, jadi sangat direkomendasikan untuk mempertimbangkan penggunaan parameter yang lebih, misalnya saja temperatur, kelembaban, kecepatan angin dan tingkat konsumsi. Metode fuzzy yang disertai dengan database
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-9 cuaca dipercaya bisa memprediksi variasi beban dengan lebih akurat III. IMPLEMENTASI E. Menentukan Variabel Linguistik dan Himpunan Fuzzy Peramalan gas cair LOX dengan metode fuzzy inference model ini menggunakan data permintaan harian selama 6 bulan (Februari – Juli 2011) yang dilakukan extension sampai tanggal 30 Juni 2012. Selain data permintaan, juga ada beberapa variabel yang mempengaruhi, yaitu ‘day’ (bilangan biner yang menunjukkan apakah hari itu hari kerja/workday atau hari libur/holiday), ‘lastday_day’ (bilangan biner yang menunjukkan apakah hari kemarin adalah hari kerja/workday atau hari libur/holiday), ‘lastday_load’ (jumlah permintaan pada hari kemarin), dan ‘lastweek_load’ (jumlah permintaan seminggu yang lalu). Gambar kombinasi antara input dan output dari fuzzy inference model yang ditunjukkan pada gambar 1 di bawah ini:
Gambar. 1. Model kombinasi input/output fuzzy
Variabel input untuk model ini adalah day, lastday_day, lastday_load dan lastweek_load. Lalu keempat variabel tersebut akan diproses oleh controller yaitu fuzzy mamdani atau biasa disebut fuzzy min-max. Di dalam controller ini terdapat aturan-aturan fuzzy (fuzzy rules) yang akan menjadikan keempat variabel tersebut menjadi satu output yaitu forecast yang merupakan hasil dari peramalan. Tabel 1 menunjukkan daftar variabel yang digunakan beserta keterangannya: Tabel 1. Variabel yang digunakan
Nama Variabel day
lastday_day
lastday_load
Keterangan Variabel day berisi bilangan biner 0 dan 1, 0 berarti hari libur (holiday) dan 1 berarti hari kerja (workday). Variabel hari sangat mempengaruhi tingkat permintaan, pada hari kerja, permintaan cenderung tinggi, sedangkan pada hari libur, permintaan cenderung turun (tidak setinggi pada hari hari kerja). Variabel ini sama seperti variabel day, yaitu berisi bilangan biner 0 dan 1, 0 berarti hari libur (holiday) dan 1 berarti hari kerja (workday), tetapi variabel ini berisi keterangan hari pada hari sebelumnya. Variabel lastday_load ini berisi permintaan pada data historikal. Variabel ini digunakan untuk
4 Nama Variabel
lastweek_load
semuadata
peramalan
Keterangan menentukan pola pernintaan pada hari kerja dan pada hari libur. Variabel lastweek_load ini berisi data permintaan pada minggu sebelumnya. Variabel ini digunakan untuk menentukan pola permintaan pada hari libur (holiday) Variabel ini berisi gabungan semua data input atau variabel yang akan diproses oleh controller (fuzzy mamdani) Hasil (output) peramalan permintaan dari semua input (variabel) yang dimasukkan.
Output untuk hasil peramalan dibagi menjadi tujuh himpunan fuzzy. Ketujuh himpunan fuzzy tersebut menunjukkan tingkat permintaan untuk gas cair sesuai dengan input yang telah dimasukkan. Himpunan fuzzy tersebut yaitu: Very very low (VVL) Very low (VL) Low (L) Normal (N) High (H) Very high (VH) Very very high (VVH) Interval hasil output ditunjukkan pada gambar kurva di bawah ini :
Gambar. 2. Kurva gauss fungsi keanggotaan hasil forecast
Berikut ini adalah batasan-batasan tiap fungsi keanggotaan dari kurva gauss output ‘forecast’: [Output1] Name='forecast' Range=[0 212] NumMFs=7 MF1='VVL':'gaussmf',[15.01 0] MF2='VL':'gaussmf',[15.01 35.34] MF3='L':'gaussmf',[15.01 70.66] MF4='N':'gaussmf',[15.01 106] MF5='H':'gaussmf',[15.01 141.3] MF6='VH':'gaussmf',[15.01 176.7] MF7='VVH':'gaussmf',[15.01 212] Range pada kurva gauss pada gambar 4.1.2 tersebut yaitu 0 – 212, yaitu dari nilai permintaan terkecil dan terbesar pada data historikal atau nilai minimun dan maksimum permintaan gas cair LOX.
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-9
5
Fungsi keanggotaan untuk data input day ditunjukkan oleh gambar 3 di bawah ini:
Gambar. 3. Kurva gauss fungsi keanggotaan variabel day
Di bawah ini adalah keanggotaan dari kurva day:
batasan-batasan
Fungsi keanggotaan untuk data input lastday_load ditunjukkan oleh gambar kurva gauss di gambar 5:
Gambar. 5. Kurva gauss fungsi keanggotaan variabel lastday_load
tiap
fungsi
[Input1] Name='day' Range=[0 1] NumMFs=2 MF1='holiday':'trapmf',[-0.45 0.1 0.45 0.45] MF2='workday':'trapmf',[0.55 0.55 1.05 1.45]
Input data day sangat mempengaruhi tingkat permintaan, pada hari kerja, permintaan cenderung tinggi, sedangkan pada hari libur, permintaan cenderung turun (tidak setinggi pada hari hari kerja). Di bawah ini adalah kurva untuk input data lastday_day (gambar 4):
Di bawah ini adalah batasan-batasan keanggotaan dari kurva gauss lastday_load:
tiap
fungsi
[Input3] Name='lastday_load' Range=[0 212] NumMFs=7 MF1='VVL':'gaussmf',[15.01 0.560846560846556] MF2='VL':'gaussmf',[15.01 35.34] MF3='L':'gaussmf',[15.01 70.66] MF4='N':'gaussmf',[15.01 106] MF5='H':'gaussmf',[15.01 141.3] MF6='VH':'gaussmf',[15.01 176.7] MF7='VVH':'gaussmf',[15.01 212]
Fungsi keanggotaan untuk data input lastweek_load ditunjukkan oleh gambar kurva gauss di gambar 6:
Gambar. 6. Kurva gauss fungsi keanggotaan variabel lastweek_load Gambar. 4. Kurva gauss fungsi keanggotaan variabel lastday_day
Di bawah ini adalah batasan-batasan keanggotaan dari variabel ‘lastday_day’:
tiap
fungsi
[Input2] Name='lastday_day' Range=[0 1] NumMFs=2 MF1='holiday':'trapmf',[-0.45 0.1 0.45 0.45] MF2='workday':'trapmf',[0.55 0.55 1.05 1.45] Interval untuk lastday_load dan lastweek_load dibagi menjadi tujuh fungsi keanggotaan sama seperti yang sudah disebutkan sebelumnya.
Di bawah ini adalah batasan-batasan tiap fungsi keanggotaan dari kurva gauss lastweek_load. [Input4] Name='lastweek_load' Range=[0 212] NumMFs=7 MF1='VVL':'gaussmf',[15.01 0] MF2='VL':'gaussmf',[15.01 35.34] MF3='L':'gaussmf',[15.01 70.66] MF4='N':'gaussmf',[15.01 106] MF5='H':'gaussmf',[15.01 141.3] MF6='VH':'gaussmf',[15.01 176.7] MF7='VVH':'gaussmf',[15.01 212]
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-9 F. Membuat Aturan Aturan Fuzzy (Fuzzy Rules) Setelah membuat himpunan fuzzy dan fungsi keanggotaan pada masing masing input dan output, maka sekarang tahap pembuatan fuzzy rules. Ada 28 fuzzy rules yang digunakan. Berikut ini adalah rincian aturan-aturan fuzzy secara lengkap: 1. if (day is workday) and (lastday_day is workday) and (lastday_load is VVH) then (forecast is VH) (1) 2. if (day is workday) and (lastday_day is workday) and (lastday_load is VH) then (forecast is VVH) (1) 3. if (day is workday) and (lastday_day is workday) and (lastday_load is H) then (forecast is H) (1) 4. if (day is workday) and (lastday_day is workday) and (lastday_load is N) then (forecast is N) (1) 5. if (day is workday) and (lastday_day is workday) and (lastday_load is L) then (forecast is VL) (1) 6. if (day is workday) and (lastday_day is workday) and (lastday_load is VL) then (forecast is L) (1) 7. if (day is workday) and (lastday_day is workday) and (lastday_load is VVL) then (forecast is VL) (1) 8. if (day is workday) and (lastday_day is holiday) and (lastday_load is VVH) then (forecast is N) (1) 9. if (day is workday) and (lastday_day is holiday) and (lastday_load is VH) then (forecast is L) (1) 10. if (day is workday) and (lastday_day is holiday) and (lastday_load is H) then (forecast is VH) (1) 11. if (day is workday) and (lastday_day is holiday) and (lastday_load is N) then (forecast is VH) (1) 12. if (day is workday) and (lastday_day is holiday) and (lastday_load is L) then (forecast is N) (1) 13. if (day is workday) and (lastday_day is holiday) and (lastday_load is VL) then (forecast is N) (1) 14. if (day is workday) and (lastday_day is holiday) and (lastday_load is VVL) then (forecast is L) (1) 15. if (day is holiday) and (lastday_load is VVH) then (forecast is L) (1) 16. if (day is holiday) and (lastday_load is VH) then (forecast is VL) (1) 17. if (day is holiday) and (lastday_load is H) then (forecast is VVL) (1) 18. if (day is holiday) and (lastday_load is N) then (forecast is L) (1) 19. if (day is holiday) and (lastday_load is L) then (forecast is L) (1) 20. if (day is holiday) and (lastday_load is VL) then (forecast is VVL) (1) 21. if (day is holiday) and (lastday_load is VVL) then (forecast is VVL) (1) 22. if (day is holiday) and (lastweek_load is VVH) then (forecast is N) (1) 23. if (day is holiday) and (lastweek_load is VH) then (forecast is N) (1) 24. if (day is holiday) and (lastweek_load is H) then (forecast is N) (1) 25. if (day is holiday) and (lastweek_load is N) then (forecast is L) (1) 26. if (day is holiday) and (lastweek_load is L) then (forecast is VL) (1) 27. if (day is holiday) and (lastweek_load is VL) then (forecast is VL) (1)
6 28. if (day is holiday) and (lastweek_load is VVL) then (forecast is VVL) (1) G. Melakukan Inferensi Fuzzy ke dalam Sistem Fuzzy inference adalah proses formulasi untuk memetakan input yang diberikan sehingga menghasilkan output dengan menggunakan logika fuzzy. Pemetaan tersebut akan menghasilkan sebuah dasar dari keputusan yang dibuat dari pola yang ada. Gambar 7 berikut ini menunjukkan proses dari aturan aturan fuzzy yang telah dibuat :
Gambar. 7. Proses aturan logika fuzzy
Tahap inferensi ini untuk mengolah pemetaan dari nilai input menjadi suatu bilangan output. Tahap ini terdiri dari 3 sub proses, yaitu fuzzifikasi, aggregasi dan defuzzifikasi. Proses inferensi fuzzy yang terdiri dari 3 sub proses, yaitu fuzzifikasi, aggregasi dan defuzzifikasi ditunjukkan oleh gambar 8 di bawah ini :
Gambar. 8. Proses fuzzifikasi, aggregasi dan defuzzifikasi
Misalnya data yang dimasukkan adalah (day= holiday), (lastday_day = workday), (lastday_load = 69,1) dan (lastweek_load = 96,1). Maka data input tersebut akan
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-9 langsung diproses oleh controller (fuzzy mamdani) dan dimasukkan ke dalam aturan no 19 dan no 27. Nilai asli yang dimasukkan diubah menjadi bilangan fuzzy (fuzzifikasi). Dari beberapa aturan diambil jumlah keseluruhan nilai fuzzy yang didapat (aggregasi). Setelah itu, dilakukan proses defuzzifikasi untuk mendapatkan nilai asli (angka crisp) dari bilangan fuzzy yaitu 62,5. II. HASIL DAN UJI COBA A. Ekstensi Data Sebelum melakukan uji coba dengan menggunakan berbagai macam skenario dan parameter yang berbeda, telah dilakukan ekstensi terhadap data yang ada sampai tanggal 30 Juni 2012. B. Peramalan Menggunakan Fuzzy Inference Model Dari proses impementasi model pada bab sebelumnya, dipakai aturan fuzzy sebanyak 28 dan batasan yang sudah ditentukan. Dari data peramalan sebanyak 17 bulan, maka digunakan data train set 14 bulan dan data test set 3 bulan. Test set inilah yang diuji dan kemudian dihitung tingkat errornya (MAPE) terhadap data permintaan aktual. Test set yang digunakan adalah pada periode 1 April – 30 Juni 2012. Pada grafik pada gambar 9, terlihat bahwa beberapa hasil peramalan sudah sangat mendekati data aktual. Nilai rata-rata kesalahan atau error persentage per periode di antara 0 sampai 20%. Dari grafik tersebut, didapatkan nilai MAPE rata-rata adalah 11,858 %. Hasil tersebut bisa dikatakan baik karena masih dibawah 20%.
7 Dari data diperoleh MAPE rata-rata sebesar 11,858 %. Nilai tersebut dinilai baik untuk ukuran peramalan. Kemampuan peramalan dikatakan sangat baik apabila nilai MAPE kurang dari 10%, serta dikatakan baik apabila nilai MAPE kurang dari 20%[1]. D. Uji Coba Model Uji coba dilakukan berdasarkan beberapa skenario yang diterapkan untuk melakukan prediksi jumlah permintaan gas cair LOX pada PT Air Products Gresik. Data historikal permintaan gas cair sebanyak 516 hari. Uji coba ini dilakukan untuk peramalan sepanjang 90 hari. 1. Uji coba dengan mengubah jumlah aturan fuzzy Dalam skenario uji coba ini dilakukan perubahan terhadap rules atau aturan aturan fuzzy yang telah dibuat sebelumnya. Aturan-aturan tersebut jumlahnya dikurangi dari 28 menjadi 21 aturan. Berikut ini adalah grafik hasil dari peramalan dengan 21 aturan fuzzy (gambar 10):
Permintaan Aktual
Peramalan
200 150 100 50 0
Gambar. 10. Hasil peramalan dengan menggunakan 21 aturan fuzzy
Permintaan Aktual
Peramalan
200 150 100 50 0
Gambar. 9. Grafik perbandingan data aktual dan hasil peramalan pada periode 1 April – 30 Juni 2012
C. Validasi Model Dalam paper ini dilakukan validasi terhadap kesalahan peramalan atau error. MAPE atau Mean Absolute Percentage Error dapat menujukkan tingkat error atau ukuran kesalahan dari hasil suatu peramalan. MAPE yaitu persentase kesalahan hasil peramalan terhadap permintaan aktual selama periode tertentu yang akan memeberikan informasi persentase kesalahan terlalu tinggi atau terlalu rendah, dengan menggunakan rumus (5).
Dari grafik diatas dapat dilihat bahwa nilai MAPE yang dihasilkan tiap periode sangat bervariasi. Sebagian besar sudah cukup bagus karena masih di bawah 20%. Tetapi pada beberapa periode ada nilai MAPE yang sangat besar yaitu sebesar 40,74%. Hal itu dikarenakan karena dengan menggunakan jumlah aturan fuzzy yang lebih sedikit, maka ada beberapa data tidak tercover dengan baik ke dalam aturanaturan fuzzy yang telah dibuat. Hasil peramalan yang dihasilkan menjadi sangat berbeda jauh dengan data aktual dan menghasilkan nilai mape yang besar. Nilai MAPE ratarata dari tabel tersebut adalah 13,697%. Hasil tersebut lebih besar bila dibandingkan dengan menggunakan 28 aturan fuzzy yang memiliki nilai MAPE 11,858 %. 2. Uji coba dengan mengubah batasan himpunan fuzzy Dalam skenario uji coba ini dilakukan perubahan terhadap nilai batasan dari himpunan fuzzy. Berikut ini adalah grafik yang menunjukkan batasan dari setiap himpunan fuzzy yang sudah diubah dari batasan yang telah ditentukan sebelumnya (Gambar 11). Batasan baru ini juga diterapkan pada kurva gauss variabel ‘lastweek_load’ dan juga kurva gauss variabel ‘forecast’.
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-9
8 Berikut ini adalah grafik perbandingan hasil peramalan dengan data aktual dengan batasan yang telah diubah (gambar 12) : Permintaan Aktual
Peramalan
200 150 Gambar. 11. Kurva gauss fungsi keanggotaan variabel lastweek_load
Berikut ini adalah batasan-batasan tiap fungsi keanggotaan dari kurva gauss lastday_load. [Input3] Name='lastday_load' Range=[0 212] NumMFs=7 MF1='VVL':'gaussmf',[11.67 -0.561] MF2='VL':'gaussmf',[16.9 35.3] MF3='L':'gaussmf',[20.22 70.7] MF4='N':'gaussmf',[22.63 106] MF5='H':'gaussmf',[22.82 141] MF6='VH':'gaussmf',[19.57 177] MF7='VVH':'gaussmf',[10.24 212] Berikut ini adalah batasan-batasan tiap fungsi keanggotaan dari kurva gauss lastweek_load: [Input4] Name='lastweek_load' Range=[0 212] NumMFs=7 MF1='VVL':'gaussmf',[11.67 -0.561] MF2='VL':'gaussmf',[16.9 35.3] MF3='L':'gaussmf',[20.22 70.7] MF4='N':'gaussmf',[22.63 106] MF5='H':'gaussmf',[22.82 141] MF6='VH':'gaussmf',[19.57 177] MF7='VVH':'gaussmf',[10.24 212] Berikut ini adalah batasan-batasan tiap fungsi keanggotaan dari kurva gauss forecast: [Output1] Name='forecast' Range=[0 212] NumMFs=7 MF1='VVL':'gaussmf',[11.67 -0.561] MF2='VL':'gaussmf',[16.9 35.3] MF3='L':'gaussmf',[20.22 70.7] MF4='N':'gaussmf',[22.63 106] MF5='H':'gaussmf',[22.82 141] MF6='VH':'gaussmf',[19.57 177] MF7='VVH':'gaussmf',[10.24 212]
100 50 0
Gambar. 12. Hasil peramalan dengan batasan yang telah diubah
Dari grafik diatas dapat dilihat bahwa banyak sekali hasil peramalan yang berbeda jauh dengan data aktual. Nilai MAPE yang dihasilkan tiap periode pun menjadi bertambah besar dibanding dengan sebelum batasan diubah. Pada beberapa periode, nilai MAPEnya ada yang kecil, tetapi ada pula yang sangat besar mencapai 45,114%. Hal itu dikarenakan batasan yang diubah secara random tanpa memperhatikan batas atas dan batas bawah data aktual. Nilai MAPE rata-rata sebesar 12,561%. Nilai itu lebih besar dibandingkan dengan sebelum batasannya diubah yaitu sebesar 11,858%. III. KESIMPULAN DAN SARAN Berdasarkan implementasi model yang telah dibuat serta uji coba yang telah dilakukan pada bab-bab sebelumnya, maka dapat diambil beberapa kesimpulan. Uji coba dilakukan dengan cara mengganti jumlah aturan fuzzy dan juga mengubah batasan dari himpunan fuzzy. Uji coba tersebut menghasilkan hasil peramalan yang berbeda-beda serta nilai MAPE yang berbeda pula. Berikut ini adalah kesimpulan yang dapat diambil: Untuk peramalan gas cair LOX dengan menggunakan fuzzy inference model dengan 28 aturan fuzzy menghasilkan nilai error (MAPE) sebesar 11,858%. Hasil tersebut adalah yang paling bagus diantara semua skenario uji coba. Hal itu disebabkan karena 28 aturan fuzzy lebih banyak dan detail daripada 21 aturan fuzzy sehingga hasil peramalannya pun hampir mendekati data aktual. Batasan yang digunakan adalah batasan normal, sehingga MAPEnya lebih kecil daripada uji coba yang menggunakan batasan random. Semakin banyak dan detail aturan fuzzy yang dibuat, maka hasil peramalan bisa semakin mendekati nilai aktual. Faktor-faktor yang mempengaruhi jumlah permintaan yang digunakan sebagai input model juga sangat berpengaruh terhadap hasil peramalan. Semakin banyak faktor yang digunakan, maka semakin banyak
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-9 pula variabel input yang dimasukkan ke dalam sistem. Jumlah variabel membuat aturan menjadi lebih detail dan hasil peramalan yang dihasilkan bisa lebih mendekati aktual dan error yang dihasilkan juga lebih kecil. Nilai batasan untuk himpunan fuzzy sangat berpengaruh pada output yang dihasilkan. Semakin bagus atau optimal batasan yang digunakan, maka semakin bagus pula hasil peramalannya (nilai MAPEnya kecil). Kelebihan fuzzy inference model ini adalah adanya aturan-aturan fuzzy (fuzzy rules) yang dibuat berdasarkan pola data sehingga menghasilkan suatu hasil peramalan yang lebih mendekati akurat. Jika aturan yang dibuat lebih banyak dan detail (disertai jumlah variabel yang banyak), maka akan menghasilkan hasil peramalan yang sangat bagus dengan nilai MAPE yang kecil (di bawah 10%). Kekurangan dari fuzzy inference model ini adalah batasan himpunan fuzzy diatur secara normal atau memiliki range yang sama untuk setiap himpuan fuzzy. Berikut ini merupakan saran yang dapat dipertimbangkan: Diharapkan bisa menambah faktor-faktor yang bisa mempengaruhi permintaan sehingga aturan (rules) yang dibuat bisa lebih banyak dan detail. Faktor-faktor yang mempengaruhi permintaan tersebut misalnya saja adalah temperatur, cuaca atau inflasi. Batasan himpunan fuzzy pada fuzzy inference model yang diatur secara normal masih belum optimal, karena MAPE yang dihasilkan masih di atas 10%. Jika batasan tersebut optimal, maka tingkat errornya bisa lebih kecil lagi. Untuk menentukan batasan fuzzy yang optimal, bisa menggunakan algoritma untuk mengoptimasi batasanbatasan pada himpunan fuzzy sehingga hasil peramalan bisa lebih bagus (MAPE di bawah 10%). DAFTAR PUSTAKA [1] [2]
[3] [4] [5] [6] [7]
Makridarkis, S., Wheelwright, S.,C. & McGee, V., E. 1999. Metode Dan Aplikasi Peramalan Edisi.2 Volume.1. Jakarta : Binarupa Aksara Makridakis, S., Wheelwright, S. C., & Hyndman, R. J. (1998). Forecasting : Methods and Application. Hoboken: John Willey & Sons, Inc. Synaptic. (2006). Fuzzy Math, Part I, The Theory. http://www.scholarpedia.org/article/Fuzzy_logic. march 2012 Zimmermann, H.-J..(1991). Fuzzy Set Theory and Its Application. Kluwer Academic Publisher, Dordrecht Zadeh, L. A. (1965). "Fuzzy Sets". Information and Control , 338-353. Yan, J., M. Ryan and J. Power. (1994). Using Fuzzy Logic Towards Intelligent Systems. Prentice Hall International, London Mamlook R., Badran, O., Abdulhadi, E. (2008). A fuzzy Inference Model for Short-Term Load Forecastng.
9