Anda di halaman 1dari 24

PEMODELAN MATEMATIKA DENGAN GEOGEBRA

Tinjauan pada Model Diskrit

Dewa Putu Wiadnyana Putra


dewa@usd.ac.id

1. Pendahuluan
Pemodelan matematika merupakan suatu aktivitas mentransformasi persoalan dunia nyata
ke dalam ide-ide matematis dan kemudian menentukan solusi (secara matematis) serta
diakhiri dengan merepresentasikan solusi yang diperoleh terhadap masalah yang diberikan.
Dalam diskusi kita, ada dua aktivitas utama yang perlu diperhatikan dalam pemodelan
matematika, yaitu aktivitas matematis yang berkaitan dengan pemodelan matematika dan
bagaimana merancang pembelajaran (problem based) untuk siswa (SMP atau SMA).
Dalam pembahasan ini, kita akan mencoba untuk mengintegrasikan teknologi dalam
membangun atau menentukan solusi dari model matematika. Salah satu program yang
dapat digunakan dalam kegiatan ini yaitu GeoGebra. GeoGebra dipilih karena merupakan
program yang sudah banyak dikenal dan digunakan, baik oleh siswa, guru ataupun umum.
Model matematika yang akan dibahas juga merupakan model-model matematika
sederhana yang dapat digunakan di tingkat sekolah maupun universitas. Diskusi ini
mengikuti buku karangan Jonas Hall dan Thomas Lingefjärd (2017) dengan judul
“Mathematical Modelling : Applications with GeoGebra”. Fokus pembahasan diskusi ini
adalah tentang model Diskrit.

2. Konsep Model Diskrit


Model Diskrit merupakan model dengan varibel-variabel diskrit. Model ini muncul sebagai
reaksi dari model Kontinu, yaitu variabel dalam model merupakan variabel kontinu. Dalam
permasalahan-permasahan berikut akan dibahas contoh-contoh penerapan dari model
Diskrit.
3. Masalah-masalah Pemodelan Diskrit
A. Pengrajin Furniture
Masalah ini merupakan masalah yang paling sederhana dari model Diskrit. Masalah ini
sangat dekat dengan masalah Program Linear. Jika pembaca sudah pernah mengenal
Program Bilangan Bulat (Integer Programing) maka masalah berikut akan menjadi
lebih mudah dipahami. Perhatikan masalah berikut.
Konteks. Seorang pengrajin Furniture membuat meja dan kursi dari kayu untuk
diekspor. Pengrajin tersebut hendak menjual meja dan kursi dengan harapan
keuntungan 30 USD per meja dan 10 USD per kursi. Furniture ini biasanya dijual
secara bersama-sama (satu paket) sehingga pengrajin tersebut memproduksi kursi
paling tidak tiga kali dari produksi meja. Pengrajin tersebut memerlukan waktu 6 hari
untuk menyelesaikan sebuah meja dan 3 hari untuk menyelesaikan sebuah kursi.
Pengrajin tersebut bekerja selama 40 hari setiap dua bulan, sehingga sisanya dapat
digunakan untuk berlibur maupun menjual meja dan kursinya. Semua furniturenya
terjual dalam setiap akhir periode kerjanya. Sebelum dijual, furniture tersebut
disimpan disebuah gudang kecil yang hanya dapat memuat 4 meja atau 16 kursi, atau
kombinasi dari meja dan kursi yang merupakan satu set. Permintaan yang tinggi
menyebabkan gudang tersebut selalu kosong diakhir periode kerja si pengrajin.
Permasalahan :
 Berapa banyak meja dan kursi yang harus pengrajin tersebut buat agar
keuntungan penjualannya maksimal?
 Bagaimana pertumbuhan keuntungannya?
Permasalahan di atas merupakan masalah program linear dengan fungsi tujuan
memaksimalkan f ( x, y)  30 x  10 y dengan x merupakan banyak meja yang
diproduksi dan y adalah banyak kursi yang diproduksi.
Adapun kendala-kendala dalam masalah ini yaitu :
y
y  3x,6 x  3 y  40, x   4
4
Selanjutnya, daerah penyelesaian dari program linear di atas dalam GeoGebra dapat
dilihat pada gambar berikut.
Gambar 1. Daerah Solusi dari Fungsi Kendala

Daerah-daerah dalam segimpat ABCD merupakan daerah penyelesain dari sistem


pertidaksamaan dalam kendala program linear. Selanjutnya dengan menggunakan
metode garis selidik, keuntungan maksimal akan diperoleh pada titik B, yaitu
(10.67,1.33) dengan keuntungan 145.6 USD. Akan tetapi hasil tersebut tidak dapat
diterima karena tidak mungkin menjual 10,67 kursi dan 1,33 meja. Solusi harus berupa
bilangan bulat yang menyatakan banyak meja dan kursi yang harus diproduksi. Oleh
karena itu, masalah ini dikenal dengan Integer Programming. Titik-titik berikut
merupakan solusi-solusi yang mungkin dari masalah tersebut. Dengan menggeser-geser
garis selidik ini, diperoleh keuntungan maksimalnya adalah 140 USD dengan
memproduksi 11 kursi dan 1 meja atau 8 kursi dan 2 meja.

Gambar 2. Solusi-solusi Bulat untuk Optimasi Keuntungan


B. Luas Daerah dalam suatu Persegi

Pada masalah ini kita akan menentukan perbandingan luas suatu persegi dengan
persegi yang berada di dalam persegi tersebut dengan konstruksi tertentu. Misalkan
diberikan suatu persegi ABCD. Masing-masing sisi persegi tersebut ditentukan titik
tengahnya. Kemudian dibentuk suatu persegi yang sisi-sisinya merupakan
perpotongan dari ruas-ruas garis yang ditarik dari masing-masing titik sudut persegi
ABCD ke titik tengah sisi dihadapannya. Sebuah pertanyaan logis yang dapat
dibangun adalah berapa perbandingan luas persegi yang dikonstruksi tersebut
dengan luas persegi awal? Lebih jauh, bagaimana jika konstruksinya tidak hanya
menggunakan titik tengah sisi persegi awal, tetapi juga titik-titik atas perbandingan
tertentu? Apakah terdapat pola hasil perbandingannya?

1 1 1
Gambar 3. Kontruksi persegi dengan perbandingan , ,
2 3 7

Pertanyaan-pertanyaan tersebut akan kita bahas pada bagian ini. Bagian pertama
adalah bagaimana mengkonstruksi suatu titik yang membagi suatu ruas garis
dengan perbandingan tertentu dalam GeoGebra. Dalam Geometri Analitik Bidang,
konsep ini tentunya sudah dibahas. Jika A( x1 , y1 ) dan B( x2 , y2 ) maka koordinat
titik C ( xc , yc ) yang berada diantara titik A dan B sedemikian sehingga
AC : CB  m : n , yaitu :
nx1  mx2 ny  my2
xc  dan yc  1 .
mn mn
Dalam Geogebra hanya disediakan fitur untuk membagi ruas garis menjadi dua
bagian sama panjang (midpoint or center). Jika titik C di atas tidak terletak tepat di
tengah-tengan A dan B, perlu beberapa kontruksi yang perlu dilakukan.
 Konstruksi menggunakan Lingkaran
Misalkan titik A( x1 , y1 ) dan B( x2 , y2 ) . Kita ingin membagi ruas garis AB
menjadi 3 bagian yang sama panjang. Pertama-tama, gambar ruas garis AB
pada Geogebra. Selanjutnya, melalui titik A buatlah sebarang garis yang
lain sehingga tidak berimpit dengan ruas garis AB. Buatlah lingkaran yang
berpusat di titik A dengan jari-jari sebarang. Kemudian tentukan titik
potong lingkaran dengan garis yang dibuat sebelumnya. Dari salah satu titik
potongnya, buat kembali lingkaran dengan pusat di titik potong tersebut dan
jari-jari yang sama dengan lingkaran sebelumnya. Lakukan hal yang sama
sehingga terbentuk tiga lingkaran. Pada pusat lingkaran terakhir, hubungkan
dengan titik B. Selanjutnya melalui titik-titik pusat lingkaran yang lain
dibuat garis sejajar dengan garis yang melalui titik pusat lingkaran terakhir
dengan titik B. Garis-garis tersebut akan memotong ruas garis AB. Titik-
titik potong tersebut merupakan titik-titik yang membagi ruas garis AB
menjadi 3 bagian yang sama panjang. Jika ingin membagi ruas garis AB
menjadi n bagian, langkah di atas bisa diulangi sampai membuat n buah
lingkaran.

Gambar 4. Membagi Ruas Garis AB menjadi 3 Bagian

 Konstruksi menggunakan formula dalam Input Bar


Kontruksi menggunakan car ini lebih sederhana karena hanya
memanfaatkan formula dalam menentukan titik-titik diantara ruas garis AB.
Formula yang digunakan mengadopsi formula menentukan letak suatu titik
pada suatu ruas garis dengan perbandingan tertentu di atas.
Misalnya, kita ingin membagi ruas garis AB menjadi 3 bagian. Diperlukan
dua titik diantara ruas garis AB, misalkan titik C dan titik D. Pertama-tama,
buatlah ruas garis AB dalam GeoGebra. Titik C dan D ditentukan sebagai
berikut.
C  2A  B / 3
D   A  2B  / 3
Titik C akan terletak pada AB sedemikian sehingga AC : CB = 1 : 2.
Sedangkan titik D terletak pada AB sedemikian sehingga AD : DB = 2 : 1.
Untuk perbandingan-perbandingan yang lainnya, formula di atas dapat
disesuaikan kembali.
Selanjutnya kita akan membuat visualisasi masalah persegi dalam suatu persegi.
Pertama-tama, buatlah persegi ABCD pada Geogebra (dapat menggunakan
Regular Polygon). Siapakan dua buah slider m dan n yang berupa bilangan bulat.
Selanjutnya inputkan formula berikut pada input bar
(nA  (n  m) B) / m
(nB  (n  m)C ) / m
(nC  (n  m) D) / m
(nD  (n  m) A) / m
Selanjutnya, persegi dalam dikonstruksi dengan menentukan perpotongan-
perpotongan setiap ruas garis yang ditarik dari setiap titik sudut persegi ABCD ke
titik-titik yang berada dihadapan masing-masing titik sudut persegi ABCD.

Gambar 5. Persegi Dalam ABCD


Kita dapat menentukan rasio dari luas persegi dalam dengan persegi ABCD.
Misalkan persegi ABCD dalam Geogebra adalah Poly1 dan persegi dalam adalah
Poly2 maka dalam input bar dapat kita inputkan
Rasio = Poly2/Poly1
Nilai perbandingan ini selalu dapat kita tentukan, hanya saja yang dapat kita lihat
adalah satu perbandingan tertentu saja (nilai perbandingan berubah saat nilai m dan
n berubah). Tujuan kita selanjutnya adalah menampilkan data nilai-nilai
perbandingan tersebut dalam berbagai kemungkinan nilai m dan n. Kita akan
menggunakan bantuan fasilitas Spreadseheet dalam GeoGebra. Dalam
Spreadsheet, kita inputkan nilai-nilai n secara mendatar dan m secara vertical.
Dalam setiap cell pertemuan antara nilai m dan n merupakan rasio antara Poly1 dan
Poly2. Luas persegi ABCD (Poly1) adalah tetap sementara luas persegi dalam
(Poly2) bergantung pada nilai m, n, dan juga letak titik A dan B (sebagai titik awal
pesegi ABCD). Diperlukan suatu formula dalam spreadsheet yang dapat
mengakomodasi luas persegi dalam. Formula ini akan dihubungkan oleh GeoGebra
melalui menu Tools>Create New Tool. Dalam list over object pilihlah Poly2 dan
kemudia Next. GeoGebra akan memberikan saran dalam kontak input, yaitu m, n,
titik A dan B (digunakan untuk menentukan luas Poly2). Langkah terakhir adalah
memberikan label Tool yang kita buat ini sehingga nanti dapat dikenali dalam
Spreadsheet. Misalnya kita berikan label “PersegiDalam”. Selanjutnya kita akan
bekerja dalam cell SpreadSheet. Misalnya, cell pertemuan untuk n = 1 dan m = 2
kita inputkan
=PersegiDalam[A,B,B$1,$A2]/Poly1
Selanjutnya, formula ini bisa didrag kesamping maupun ke bawah. Hasilnya akan
tampak seperti gambar berikut.

Gambar 6. Spreadsheet Rasio Poly2 dan Poly1

Nilai-nilai yang ada dalam SpreadSheet di atas adalah nilai-nila rasio antara persegi
dalam dan persegi yang asli (Poly2/Poly1).
Eksplorasi masalah ini bisa dikembangkan lebih jauh, yaitu bagaimana jika kita
tentukan rasio kebalikannya, yaitu Poly1/Poly2. Hasilnya dapat kita lihat pada
gambar berikut.
Gambar 7. Spreadsheet Rasio Poly1/Poly2
Hal yang menarik dari data di atas adalah pada kolom B semua hasilnya berupa
bilangan bulat. Adakah pola bilangan-bilangan bulat tersebut? (sebagai latihan :
Lihat Analisi Barisan Bilangan).

C. Graf
Salah satu topik yang menarik dalam model diskrit adalah teori Graf. Teori Graf
mempunyai banyak penerapan dalam berbagai bidang, misalnya jaringan, optimasi
rute, penjadwalan, dan lain-lain. Geogebra dapat digunakan untuk membuat suatu
graf, baik secara manual ataupun secara otimatis (random). Jika graf yang akan
dibuat secara manual, maka hanya perlu memanfaatkan objek titik (point) dan ruas
garis (segment). Dalam modul ini, kita akan membuat graf secara otomatis, yaitu
titik-titk (vertex) dan sisi-sisi (edges) dibuat secara acak pada Geogebra. Fasilitas
yang digunakan, yaitu Scripting. Scripting pada Geogebra ada tiga model, yaitu 1)
On Click, 2) On Update, dan 3) Global Java Script.
 On Click, script bekerja saat object yang dipilih di klik.
 On Update, script bekerja saat nilai atau kareakteristik (properties) dari
suatu objek berubah.
 Global Java Script, khusus untuk script dalam bahasa pemrograman java.
Tutorial lengkap untuk penggunaan scripting pada Geogebra dapat diakses melalui
tautan https://wiki.geogebra.org/en/Tutorial:Introduction_to_GeoGebraScript.
Langkah-langkah membuat graf pada Geogera, yaitu sebagai berikut.
1. Buatlah sebuah button yang akan diinputkan script untuk membuat graf.
2. Membuat posisi titik-tik graf secara acak, dalam kasus ini akan dibuat graf
dengan 10 titik. Script yang diinput adalah sebagai berikut.
for (var i = 0; i < 10; i++) {
ggbApplet.evalCommand("V_" + i + "=(random()*10,random()*10)");
ggbApplet.setPointSize("V_{" + i + "}", 5);
}
3. Membuat sisi-sisi pada graf. Setiap dua buah titik tidak harus dihubungkan oleh
sisi. Konsep peluang dapat digunakan untuk kemungkinan keterhubungan antar
titik. Semakin besar nilai yang diiputkan maka setiap dua titik mempunyai
kemungkinan yang semakin besar juga dihubungkan oleh sisi. Script yang
diinputkan adalah sebagai berikut.
for (var q = 0; q < i; q++) {
var r = Math.random();
for (var w = 0; w < i; w++) {
var t = Math.random();
if (ggbApplet.exists("e_{" + w + ", " + q + "}")) {
break;
} else {
if (r < 0.7 && t < 0.7) {
if (w == q) {
break;
} else {
ggbApplet.evalCommand("e_{" + q + ", " + w + "}=Segment[V_{"
+ q + "},V_{" + w + "}]");
}
} else {
break;
}
}
}
}
Jika ingin membersihkan tampilan geogebra, kita dapat menambahkan satu button
lagi dengan diinputkan script sebagai berikut.
for (var i = 0; i < 10; i++) {
ggbApplet.deleteObject("V_{" + i + "}");
}
Hasil graf dengan script di atas adalah sebagai berikut.
Gambar 7. Graf di Geogebra

D. Pemetaan Kebakaran Lahan


Kebakaran hutan cukup sering terjadi di Indonesia. Penyebaran kebakaran bisa
menjadi tidak terkendali jika tidak ditangani dengan baik. Dua faktor yang cukup
signifikan dalam menentukan kecepatan penyebaran titik api pada kebakaran
adalah kecepatan angin dan kelembaban. Melalui simulasi pemodelan
penyebaran kebakaran ini, diharapkan dapat menjadi salah satu rujukan dalam
proses pemadaman kebakaran hutan.
Pada model ini, asumsi tahapan kebakaran suatu hutan adalah sebagai berikut.
1. Tahap I : Kondisi dimana terjadi suatu kebakaran kecil dan tidak berbahaya,
misalkan intensitasnya adalah 0,5.
2. Tahap II : Kebakaran menyebar (arah angina dan kelembaban) sehingga
membakar suatu lahan, misalkan intensitasnya membesar menjadi 1.
3. Tahap III : Api mulai menghabiskan suatu vegetasi dan mulai mengecil,
misalkan intensitasnya berkurang menjadi 0,3.
4. Tahap IV : Vegetasi sudah mulai habis terbakar, yang mengindikasikan
kemungkinan penyebaran kebakaran dari titik tersebut sudah sangat kecil. Pada
kondisi ini dapat diasumsikan intensitas kebakarannya adalah 0,01.
Dalam model diskrit ini, angin bertiup berdasarkan 8 penjuru mata angin, yaitu
Utara, Timur, Selatan, Barat, Timur Laut, Tenggara, Barat Daya, dan Barat Laut.
Masing-masing arah mata angin mempunyai peluang tertentu untuk menentukan
penyebaran api. Pemodelan penyebaran kebakaran lahan ini, memerlukan cukup
banyak script. Oleh sebab itu, diperlukan bantuan program lain untuk membantu
membuat script ini. Dalam model ini, digunakan bantuan program Python.
Secara umum, langkah-langkah dalam membuat model penyebaran kebakaran lahan
adalah sebagai berikut.
1. Mengkonstruksi wilayah yang akan dipetakan (memanfaatkan SpreadSheet).
2. Membuat representasi grafis dari peta (menggunakan polygon).
3. Pembuatan perintah animasi, pada proses ini pembuatan script dilakukan.
4. Uji coba model.
Langkah-langkah secara rinci untuk model penyebaran kebakaran lahan dapat
dilihat lampiran. Berikut adalah salah satu hasil simulasi model pemetaan
penyebaran kebakaran lahan.

Gambar 8. Simulasi Pemetaan Penyebaran Kebakaran Lahan

Titik api semula hanya satu (kiri), kemudian seiring berjalan waktu kebakaran mulai
menyebar. Warna kuning akan perlahan-lahan menjadi merah (api semakin
membesar). Setelah api menghabiskan vegetasi lahan perlahan-lahan api akan
padam pada daerah tersebut yang ditandai dengan warna hitam.

4. Latihan dan Tugas


Berikut ini akan diberikan masalah-masalah dalam kehidupan sehari-hari. Silakan kalian
modelkan dan tentukan solusi dari masalah yang diberikan dengan menggunakan
GeoGebra.
Masalah 1. Kandungan Klorin dalam Kolam Renang
Klorin merupakan suatu zat yang dapat ditambahkan ke kolam renang untuk membersihkan
air kolam tersebut. Suatu hari, seseorang menambahkan 15 liter kloring ke dalam kolam.
Setelah 24 jam kandungan klorin dalam kolam tersebut hilang sebesar 15%. Setiap pagi di
hari berikutnya ditambahkan 1 liter klorin.
a. Berapa banyak klorin dalam kolam tersebut setelah satu hari? dua hari? tiga hari?
b. Buatlah model matematika dari masalah di atas, sehingga dapat digunakan untuk
menentukan kandungan klorin dalam kolam tersebut selama 1 bulan.
Masalah 2. Peternakan Rusa
Rusa merupakan hewan yang memiliki keindahan, terutama bagian tanduknya. Namun, di
beberapa daerah rusa juga ternyata untuk dikonsumsi dagingnya. Hal ini mengakibatkan
banyak perburuan rusa. Misalkan seorang peternak rusa menangkar sekitar 20 rusa di suatu
lahan. Seekor rusa betina dapat menghasilkan 1 sampai 3 anak setiap tahunnya. Asumsikan
seekor rusa betina dapat menghasilkan 1,5 anak per tahun dan terdapat 10% rusa yang mati
per tahunnya.
a. Tentukan banyak rusa setelah 20 tahun.
b. Konstruksilah model matematika untuk menentukan berapa rusa yang harus diburu per
tahun sehingga banyaknya rusa yang dimiliki oleh peternak tersebut tetap stabil di
sekitar 200 ekor rusa.

Masalah 3. Pola (Barisan) Bilangan


a. Tentukan aturan barisan bilangan 5, 13, 25, 41, 61, 85, …
b. Tentukan aturan barisan bilangan 8, 8, 8, 32, 128, 368, …

Masalah 4. Luasan di dalam Daerah suatu Segitiga


Masalah ini serupa dengan masalah B (Luas Daerah dalam Suatu Persegi), hanya saja
bangun yang digunakan adalah segitiga. Bagilah sisi-sisi segitga menjadi berapa bagian
yang sama. Selanjutnya, dengan membuat ruas-ruas garis melalui titik sudut segitiga dan
titik-titik pembagian tadi, akan terbentuk suatu bangun. Bangun-bangun tersebut seperti
pada gambar berikut ini.

Buatlah model matematika untuk menentukan perbandingan luas daerah dalam segitiga
yang terbentuk dengan luas daerah segitiga semula.
DAFTAR PUSTAKA

Barto, Andrew G. (1991). Discrete and Continuous Models. New York : Springer
Science+Business Media.

Jonas Hall dan Thomas Lingefjärd. 2017. Mathematical Modelling Applications with
GeoGebra. New Jersey : John Wiley and Sons, Inc.

Williams, Trevor Kenneth & David E. Brown. (2018). Graph Theory in


Geogebra. North American GeoGebra Journal Vol.7 No.1.
Lampiran

Nama : Yohanes Restu Dhyas Yulianto


Instansi :-
Judul : Pemodelan Peta Penyebaran Kebakaran Lahan (salah satu hasil project dalam IndoMS School)

A. MASALAH DAN DATA


Kebakaran hutan dan lahan adalah suatu keadaan di mana hutan dan lahan terbakar api
sehingga mengakibatkan kerusakan hutan dan lahan yang menimbulkan kerugian berbagai
aspek khususnya aspek ekonomis dan lingkungan (Badan Nasional Penanggulangan Bencana
(BNPB), -). Di Indonesia kebakaran hutan merupakan salah satu bencana non alam yang sering
terjadi terutama ketika musim kemarau tiba. Pada 23 April lalu, Badan Meteorologi, Klimatologi,
dan Geofisika (BMKG) memprakirakan daerah yang kering meluas setelah pancaroba dan
meminta pemda yang wilayahnya rawan mengalami kebakaran untuk waspada (Ramadhan,
2019). Salah satu daerah di antaranya adalah Provinsi Riau. Badan Penanggulangan dan
Bencana Daerah (BPBD) setempat mencatat selama paruh pertama tahun 2021 luas lahan yang
terbakar mencapai 901,57 hektare (Frislidia, 2019).
Kebakaran hutan dan lahan seperti contoh di atas berlangsung secara bertahap dan
penyebaran api sebagian besar dipengaruhi oleh tingkat kekeringan vegetasi yang dapat terbakar
dan kecepatan angin. Kebakaran lahan mungkin dapat menghanguskan seluruh daerah yang
cenderung kering dan berangin dan dapat menjadi ancaman bagi kehidupan di wilayah tersebut.
Berangkat dari hal-hal di atas, diperlukaan prediksi cuaca untuk menggambarkan
penyebaran kebakaran lahan. Prediksi ini disimulasikan dengan memperhatikan dua faktor
penyebab kebakaran yakni tingkat kekeringan dan kecepatan angin dengan menggunakan
parameter yang telah disesuaikan. Oleh karena itu diperlukan model yang dapat mensimulasikan
bagaimana api akan menyebar dari satu wilayah ke wilayah lain berdasarkan tingkat kekeringan,
kecepatan angin, dan parameter yang ditentukan. Penelitian ini mengacu pada kasus 8.11
Wildfire dalam buku (Hall & Lingefjard, 2017).

B. PEMODELAN DAN PENYELESAIAN DENGAN GEOGEBRA


Untuk menunjukkan proses penyebaran api, model akan dibangun seperti peta dengan
pembagian zona wilayah yang berbeda sehingga menunjukkan bagaimana proses penyebaran
api berlangsung. Jika titik kebakaran berada di suatu wilayah, kemungkinan besar wilayah lain
yang berdekatan akan segera terbakar. Probabilitas di sini bergantung pada beberapa faktor dan
dalam kasus ini bergantung pada tingkat kekeringan dan kecepatan angin.
Asumsi mengenai tahapan api membakar suatu wilayah dalam kasus ini sebagai berikut:
• Tahap I Kondisi di mana terjadi kebakaran kecil dan tidak berbahaya, intensitasnya
sekitar 𝑖 = 0,5
• Tahap II Instensitas kebakaran 𝑖 = 0,5 akan cepat menyala dan membara (bertambah
besar) sehingga dalam kondisi ini intensitasnnya adalah 𝑖 = 1
• Tahap III Setelah beberapa saat api berkobar di mana vegetasi yang mudah terbakar
mulai habis, api akan mereda dan pada kondisi ini intensitasnya 𝑖 = 0,3
• Tahap IV Setalah api mereda, kemungkinan kecil beberapa vegetasi di bawahnya
masih terbakar selama beberapa waktu. Pada kondisi ini intesitasnya i=0,01
untuk menunjukkan bahwa api masih memiliki kemungkinan dapat menyebar
lagi

Setiap wilayah yang akan dipetakan ditinjau dari segala arah mata angin. Representasi
grafis peta penyebaran digambarkan oleh setiap sel yang terbakar dari arah tertentu. Setiap
wilayah atau sel dikelilingi oleh delapan sel lainnya. Besarnya probabilitas suatu sel terbakar dari
arah tertentu, bergantung pada nilai variabel setiap arah mata angin.

Untuk setiap sel atau wilayah yang tidak terbakar, ditetapkan nilai probabilitas acak di antara 0
dan 1. Jika jumlah intensitas dan probabilitas melebihi angka tersebut, berarti api telah menyebar
pada sel tersebut dan intensitas sel tersebut berubah dari 𝑖 = 0 menjadi 𝑖 = 0,5.

Setelah sel terbakar, api tidak akan terpengaruh oleh faktor sekitarnya lagi. Tahapan api
membakar suatu sel dilihat berdasarkan instensitanya yang akan mengalami perubahan dari
𝑖 = 0 menjadi 𝑖 = 0,5 (api mulai membakar); kemudian 𝑖 = 1 (api membara); api mulai mereda
𝑖 = 0,3 hingga menuju 𝑖 = 0,01.

Pemodelan menggunakan GeoGebra


1. Pembuatan konstruksi area/suatu wilayah yang dipetakan. Pada spreadsheet disusun tiga
versi area berukuran 20 x 20 cell. Pada bagian tepi terluar digambarkan sebagai pembatas
suatu wilayah seperti jalan, sungai atau pembatas lain yang tidak dapat dilintasi api.
Pembatas terebut direpresentasikan dengan cell terluar bernilai 0, sedangkan bagian terluar
adalah nomor index baris dan kolom.

Gambar 1.1 Representasi Peta Wilayah dalam Spreadsheet


Seluruh area pada gambar 1.1 disalin sehingga terdapat tiga area yang identic dalam
spreadsheet yaitu
• Area I : A1:W23 menggambarkan wilayah saat ini (semula sebelum terjadi
kebakaran)
• Area II : A25:W47 digunakan untuk melakukan perhitungan/pembaharuan nilai
• Area III : A49:W71 menunjukkan tampilan grafis setelah mengalami perubahan
nilai (setelah terjadi kebakaran)

2. Membuat representasi grafis dari peta


a) Represntasi grafis ini diletakkan pada setiap cell di Area III yang disusun dengan
menggunakan perintah Polygon dengan menghubungkan empat titik berdekatan.
b) Pembuatannya diawali dari cell V51 (cell terluar kanan atas pada peta Area III). Titik-titik
yang digunakan adalah (𝑈1, 𝐴52), (𝑉1, 𝐴52), (𝑉1, 𝐴51), 𝑑𝑎𝑛 (𝑈1, 𝐴51). Pada cell V51
ditulis sebagai berikut:
= 𝑷𝒐𝒍𝒚𝒈𝒐𝒏((𝑼$𝟏, $𝑨𝟓𝟐), (𝑽$𝟏, $𝑨𝟓𝟐), (𝑽$𝟏, $𝑨𝟓𝟏), (𝑼$𝟏, $𝑨𝟓𝟏))
Rumus di atas bila disesuaikan dengan koordinat menjadi polygon yang terbentu dari titik
(𝟏𝟗, 𝟏𝟗), (𝟐𝟎, 𝟏𝟗), (𝟐𝟎, 𝟐𝟎), 𝒅𝒂𝒏 (𝟏𝟗, 𝟐𝟎).
c) Tanda $ berfungsi untuk mengunci bagian kolom dan baris untuk mempermudah ketika
membuat polygon pada cell-cell lain dengan cara drag.
d) Setiap polygon/persegi selanjutnya diberikan pewarnaan (representasi grafis) dengan
memberikan kondisi/syarat kejadian yang diatur pada perintah Properties - Advanced di
bagian color:
• Red : IF(V3 > 0.01, 1, 0)
• Green : IF(V3 = 0.01, 0, 1 - V3)
• Blue :0
e) Selanjutnya membuat polygon/persegi dengan kondisi yang sama dengan melakukan
drag dari cell V51 hingga keseluruah cell Area III

Gambar 1.2 Representasi Grafis


Lahan (Kondisi belum terjadi
kebakaran)
3. Pembuatan Perintah Animasi
Oleh karena model ini disusun dinamis (dapat diatur parameternya), dibuat beberapa tombol
animasi dan slider untuk mengatur nilai parameter dan menjalankan animasi.
a) Parameter kontrol waktu yang dibuat dengan menggunakan perintah slider yaitu
𝑺𝒑𝒆𝒆𝒅 = 𝟓
𝑻𝒊𝒎𝒆 = 𝟎,
Bagian time diatur dengan nilai 𝑀𝑖𝑛 = 0; 𝑀𝑎𝑥 = 1; 𝐼𝑛𝑐𝑟𝑒𝑚𝑒𝑛𝑡 = 1; 𝑆𝑝𝑒𝑒𝑑 = 𝑆𝑝𝑒𝑒𝑑, dan
bagian perulangan diatur Oscilating (bolak-balik)
b) Selanjutnya menginputkan variable lain yang memengaruhi model yakni tingkat
kekeringan (R) menggunakan slider
𝑹 = 𝟎. 𝟓
c) Pembuatan tombol menggunakan perintah Button
Button GeoGebrascript
Start StartAnimation(Time, true)
Stop StartAnimation(Time, false)
Step Time = 1 - Time
Start @L12 L12 = 0,5
Start @E10 E10 = 0,5
Reset Diisi script
Start @L12 dan Start @E10 merupakan asumsi bila titik kebakaran bermula dari daerah
di cell L12 dan/atau E10. Kebakaran awal diasumsikan intensitasnya 𝑖 = 0,5

Gambar 1.3 GUI sederhana

d) Selanjutnya pembuatan probabilitas suatu sel terbakar dari arah tertentu, yang
bergantung pada nilai variabel setiap arah mata angin.
East (E) = 0,2R West (W) = 0,2R
North East (NE) = 0,3R South West (SW) = 0,1R
North (N) = 0,4R South (S) = 0,05R
North West (NW) = 0,3R South East (SE) = 0,1R
dengan R tingkat kekeringan (poin b)

Sampai dengan tahap ketiga telah tersusun GUI sederhana dan representasi grafis dari Area III.
Namun diperlukan perintah/script yang digunakan untuk mengatur ulang nilai-nilai di cell lahan di
Area I (C3:V22). Karena nilai-nilai pada cell Area I memengaruhi representasi pada cell Area III.
Selain itu juga diperlukan script untuk memperbaharui nilai-nilai pada cell lahan Area II (C27:V46)
setiap kali terjadi perubahan waktu (Time). Script tersebut berlaku untuk setiap cell, dan terdapat
400 cell maka pembuatan script melibatkan bahasa pemrograman lain (Python) untuk
mempercepat penulisan script jumlah banyak

4. Pembuatan Script Button Reset


Button reset digunakan untu megatur ulang seluruh nilai dari cell-cell yang terletak pada Area
I (C3:V22) menjadi bernilai sama dengan nol (contoh V3 = 0). Perintah script yang digunakan
adalah sebagi berikut.
from __future__ import print_function
cols1 = ["", "A", "B", "C", "D", "E", "F", "G", "H"]
cols2 = ["I", "J", "K", "L", "M", "N", "O", "P", "Q"]
cols3 = ["R", "S", "T", "U", "V", "W", "X", "Y", "Z"]
cols = cols1 + cols2 + cols3
for cv in range(3, 23):
for row in range(3, 23):
print (cols[cv], row, ' =0', sep ='')
Fungsi di atas menghasilkan output sejumlah 400 data (nilai yang mengisi 400 cell)
C3 =0
C4 =0
C5 =0
… dst sampai dengan terakhir V22 =0
Output sebanyak 400 data di atas selanjutnya disalin dan diinputkan pada bagian Scripting button
Reset pada bagian On Click dengan pilihan GeoGebrascript. Pilihan on click digunakan karena
pengaturan ulang nilai ini berjalan ketika tombol reset di click.
Maksud dari script di atas
• Baris 1 merupakan library bawaan dari python yang berfungsi untuk mencetak output yang
mengalami perubahan dari satu cetakan ke proses cetakan berikutnya
• Baris 2-4 merupakan daftar kolom yang dibuat tanpa melebihi panjang baris
• Baris 5 menggabungkan ketiga set kolom
• Baris 6-7 merupakan perulangan berganda yang melewati setiap cell di setiap baris dan setiap
kolom pada Area I yang diatur sehingga sehingga akan melakukan eksekusi print perintah
baris 8
• Baris 8 perintah eksekusi yang tertulis seperti output dan menjadi script pada button Reset
Contoh:
cv=3 (kolom C), row=3, maka akan mencetak
(cols[cv], row, ‘ =0’, sep =’’) → C[3]=0.
Berlanjut cv=3 (kolom C), row=4, maka akan mencetak
(cols[cv], row, ‘ =0’, sep =’’)→ C[4]=0, dst sampai cv dan row
paling akhir yakni cv=22(kolom V) dan row=22 (baris pada cell 22)
5. Pembuatan Script Parameter Time
Ketika parameter waktu (Time) berjalan, terjadi perubahan nilai pada cell-cell di Area I dan II.
Perubahan nilai ini dibuat dengan cara yang sama dengan script button reset. Perintah yang
akan disusun memberikan akses Area II menjadi tempat untuk nilai baru dari nilai sebelumnya
pada Area I. Masisng-masing area membutuhkan 400 script yang dihasilkan dari dua meta-
script yang berbeda.
a) Meta-script I
Berikut fungsi yang disusun pada python. Penomoran di bawah ini hanya sebagai
petunjuk baris perintah.
1. from __future__ import print_function
2. cols1 = ["", "A", "B", "C", "D", "E", "F", "G", "H"] # 9
3. cols2 = ["I", "J", "K", "L", "M", "N", "O", "P", "Q"] # 9
4. cols3 = ["R", "S", "T", "U", "V", "W", "X", "Y", "Z"] # 9
5. c = cols1 + cols2 + cols3 #kolom total
6. for v in range(3, 23):
7. for r in range(3, 23):
8. print ('ggbApplet.evalCommand("', end='', sep='')
9. print (c[v], r+24, '=CopyFreeObject[', end='', sep='')
10. print ("If[", c[v], r, "==0.01,0.01", end='', sep='')
11. print (",If[", c[v], r, "==0.1,0.01", end='', sep='')
12. print (",If[", c[v], r, "==1,0.3", end='', sep='')
13. print (",If[", c[v], r, "==0.5,1", end='', sep='')
14. print (",If[", c[v], r, end='', sep='')
15. print ("==0,If[RandomUniform[0,1]<", end="", sep="")
16. print (c[v-1], r , "*NW+", end="", sep="")
17. print (c[v], r-1, "*N+", end="", sep="")
18. print (c[v+1], r, "*NE+", end="", sep="")
19. print (c[v-1], r, "*W+" , end="", sep="")
20. print (c[v+1], r, "*(E)+", end="", sep="")
21. print (c[v-1], r+1, "*SW+", end="", sep="")
22. print (c[v], r+1, "*S+", end="", sep="")
23. print (c[v+1], r+1, '*SE, 0.5, 0]]]]]]]")', sep="")

Serangkaian perintah di atas menghasilkan output:

ggbApplet.evalCommand("C27=CopyFreeObject[If[C3==0.01,0.01,If[C3==0.
1,0.01,If[C3==1,0.3,If[C3==0.5,1,If[C3==0,If[RandomUniform[0,1]<B2*N
W+C2*N+D3*NE+B3*W+D3*(E)+B4*SW+C4*S+D4*SE, 0.5, 0]]]]]]]") ….

ggbApplet.evalCommand("V46=CopyFreeObject[If[V22==0.01,0.01,If[V22==
0.1,0.01,If[V22==1,0.3,If[V22==0.5,1,If[V22==0,If[RandomUniform[0,1]
<U21*NW+V21*N+W22*NE+U22*W+W22*(E)+U23*SW+V23*S+W23*SE, 0.5,
0]]]]]]]")
Penggalan output di atas (perintah untuk cell C27 yang terletak di Area II) merupakan
aturan tahapan penyebaran api (proses dari 𝑖 = 0,5 hingga 𝑖 = 0,01) yang dinyatakan
sebagai serangkaian kondisi IF bersarang. Nilai tersebut diperhitungkan berdasarkan
probabilitas cell terbakar dari arah tertentu (perintah baris 15-23) yang variabelnya telah
ditentukan sebelumnya. Seluruh output (400 data) akan akan diinputkan pada Scripting
(JavaScript) slider Time.

b) Meta-script II
Berikut fungsi yang disusun pada python. Penomoran di bawah ini hanya sebagai
petunjuk baris perintah.
1. from __future__ import print_function
2. cols1 = ["", "A", "B", "C", "D", "E", "F", "G", "H"]
3. cols2 = ["I", "J", "K", "L", "M", "N", "O", "P", "Q"]
4. cols3 = ["R", "S", "T", "U", "V", "W", "X", "Y", "Z"]
5. cols = cols1 + cols2 + cols3
6. for v in range(3, 23):
7. for r in range(3, 23):
8. print ('ggbApplet.evalCommand("', end='', sep='')
9. print (c[v], r, '=CopyFreeObject[', end='', sep='')
10. print (c[v], r+24, ']")', sep='')

Serangkaian perintah di atas menghasilkan output dengan struktur berikut


ggbApplet.evalCommand("C3=CopyFreeObject[C27]")
… ggbApplet.evalCommand("V22=CopyFreeObject[V46]")

Meta-script II juga menghasilkan 400 baris struktur.


c) Selanjutnya seluruh output dari meta-script I dan meta-script II dijadikan satu (terdapat
800 baris script). Kemudian disalin untuk mengisi script variable Time. Ini dapat dilakukan
dengan menekan klik kanan pada slider Time, pilih perintah Object Properties > tab
Scripting > tab On Update dan disalin pada bagian itu. Hal yang perlu diperhatikan
adalah memilih JavaScript pada bagian bawah kotak dialog.

Gambar 1.4 Pengisian Script


Variabel Time dengan Meta-Script

6. Uji Coba Model


Sampai tahap kelima, konstruksi model peta penyebaran api pada kasus kebakaran lahan
telah selesai. Selanjutnya dilakukan uji coba untuk melihat keberhasilan aplikasi sederhana
ini. Klik salah satu tombol Start @L12 atau Start @E10 sebagai awal titik kobaran api.
Selanjutnya klik tombol Start, dan akan terlihat perubahan fase kebakaran pada suatu cell
yang selanjutnya akan merembet ke cell lain (wilayah lain).
Contoh Uji Coba 1:
Gambar 1.5 Uji Coba 1 langkah awal

1. Titik api diasumsikan berawal dari wilayah/cell E10. Klik button Start @E10, sehingga
dapat dilihat pada spreadsheet pada cell E10 dari 0 berubah menjadi 0.5 (intensitas awal
api membakar vegetasi).
2. Selanjutnya klik tombol Start untuk melihat pergerakan api

Gambar 1.6 Uji Coba 1 ketika api mulai menyebar


Di sini terlihat beberapa warna berbeda. Ini sesuai dengan nilai yang terdapat pada cell
spreadsheet Area I. Lihat cell 𝐸14 = 0.5, 𝐸13 = 0.3, 𝐸12 = 1, 𝑑𝑎𝑛 𝐷10 = 0,5
3. Berikut adalah gambaran lanjutan penyebaran api dari langkah 1 dan 2.

Gambar 1.7 Uji Coba 1 sebagian wilayah/cell telah padam


Cell berwarna hitam menunjukkan bahwa area tersebut telah padam, nilai di cell berubah
menjadi ? (menuju ke nilai 𝑖 = 0,01). Ini sesuai dengan kondisi yang diberikan pada tiap
cell yakni nilai 𝑖 = 0; 𝑖 = 0,5 (api mulai membakar); 𝑖 = 1 (api membara); api mulai mereda
𝑖 = 0,3 hingga menuju 𝑖 = 0,01.
KESIMPULAN DAN SARAN
Kesimpulan
Pemodelan kasus kebakaran lahan ini dalam bentuk animasi sederhana ini merupakan salah
satu penerapan matematika diskrit, di mana serangkaian representasi grafis dihasilkan dari
sejumlah banyak elemen/nilai yang tidak saling berkesinambungan (𝑖 = 0; 𝑖 = 0,5 ; 𝑖 = 1; 𝑖 =
0,3; 𝑖 = 0,01). Perubahan nilai-nilai tersebut juga dipengaruhi oleh nilai dari parameter lain
(nilai variable arah mata angin) dan tingkat kekeringan. Perubahan nilai parameter arah
angin, tingkat kekeringan, dan speed sangat memengaruhi perubahan nilai intensitas.
Banyaknya nilai parameter arah angin, tingkat kekeringan dan speed ini tidak terbatas
sehingga nilai intensitas yang akan mengisi cell-cell pada Area I juga tidak terbatas
jumlahnya. Setiap cell mengalami siklus perubahan nilai yang menggambarkan penyebaran
api (𝑖 = 0; 𝑖 = 0,5 ; 𝑖 = 1; 𝑖 = 0,3; 𝑖 = 0,01)
Saran
Pemodelan yang ada saat ini sangat memungkinkan dilakukan penyempurnaan. Bebrapa
hal yang dapat dilakukan untuk peneliti selanjutnya antara lain:
1. Uji coba dengan melakukan perubahan-perubahan nilai pada parameter tingkat
kekeringan (R), kecepatan (speed).
2. Probabilitas penyebaran api dari setiap arah angin diatur secara dinamis (nilainya dapat
diubah-ubah) dengan menambahkan parameter.
3. Penambahan faktor lain yang memengaruhi penyebaran api seperti tingkat vegetasi, laju
hembusan angin, luasan daerah.
4. Mengubah ukuran cell representasi peta ke ukuran yang lebih besar atau lebih kecil untuk
memperlihatkan konsep matematis yang lebih dalam.
REFERENSI
Badan Nasional Penanggulangan Bencana (BNPB). (-, - -). Definisi Bencana. Retrieved from
Badan Nasional Penanggulangan Bencana: https://www.bnpb.go.id/definisi-bencana
Frislidia. (2019, Juli 2019). 901 Hektare Lahan Di Riau Terbakar Selama Paruh Pertama Tahun
2021. Retrieved from Antara News: https://www.antaranews.com/berita/2249990/901-
hektare-lahan-di-riau-terbakar-selama-paruh-pertama-tahun-2021#mobile-nav
Hall, J., & Lingefjard, T. (2017). Mathematical Modeling - Applications with GeoGebra. Canada:
Willey.
Ramadhan, D. N. (2019, April 23). Daerah Rawan Kebakaran Hutan-Lahan Diminta Waspada
Usai Pancaroba. Retrieved from Antara News:
https://www.antaranews.com/berita/2117690/daerah-rawan-kebakaran-hutan-lahan-
diminta-waspada-usai-pancaroba

Anda mungkin juga menyukai