037) Animasi Excel untuk Fisika: Aliran Kendaraan di Jalan (Macet dan Lancar) dengan Metode Cellular Automata Sederhana.
Kita sudah sangat paham bahwa jika jumlah kendaraan di jalan masih sedikit maka hampir tidak terjadi kemacetan. Namun, jika jumlah kendaraan banyak maka macet akan sering terjadi seperti yang diamati di kota-kota besar. Dalam kondisi lancar maka kendaraan dapat bergerak tanpa ada halangan sedikit pun dari kendaraan di depannya. Namun, dalam kondisi macet, kendaraan kadang tidak dapat bergerak karena terhalang oleh kendaraan di depan yang masih berhenti. Akibatnya, dalam kondisi macet, aliran kendaraan menjadi terhambat. Bahkan dalam kondisi macet total tidak ada aliran kendaraan (semua kendaraan berhenti).
Tampak di sini bahwa aliran kendaraan (jumlah kendaraan yang melintas per satuan waktu) bergantung pada kerapatan kendaraan di jalan. Mula-mula aliran kendaraan bertambah dengan bertambahnya kerapatan kendaraan. Semua kendaraan belum mengalami hambatan. Akibatnya, makin besar kerapatan kendaraan maka makin banyak kendaraan yang mengalir per satuan waktu. Namun, jika kerapatan kendaraan sudah sangat tinggi maka penambahan kerapatan kendaraan tidak menyebabkan aliran kendaraan makin tinggi. Penambahan kerapatan kendaraan justru menyebabkan makin banyak kendaraan yang tidak dapat bergerak. Akibatnya, aliran kendaraan justru menurun. Dalam transportasi, ada namanya kurva fundamental, yaitu hubungan antara kerapatan kendaraan dan aliran kendaraan. Gambar 1 adalah contoh kurva fundametal tersebut. Kurva naik di sisi kiri dapat dikatakan sebagai kurva lalu lintas lancar dan kurva turun di sisi kanan adalah kondisi lalu lintas macet. Tampak bahwa ada kerapatan optimum di mana aliran kendaraan paling besar.

Berdasarkan kurva tersebut maka orang dapat merancang sistem lalu lintas. Berapa jumlah optimum kendaraan yang melewati suatu jalan sehingga tidak terjadi kemacetan.
Pertayaan menarik adalah, bisakah kita buat animasi dan simulasi gerak kendaraan di jalan sehingga diperoleh kurva fundamental seperti itu. Di sini saya buat program sederhana untuk itu. Untuk maksud tersebut diperlukan adanya “rule” (aturan) yang diimplementasikan pada program. Pada animasi ini “rule” yang saya gunakan sebagai berikut. Perhatikan Gambar 2.

- Kita asumsikan bahwa jalan yang kita bahas adalah jalan satu arah dan satu jalur.
- Kendaraan yang melewati jalan hanya mobil.
- Kemudian kita memasukkan panjang jalan yang akan disimulasi. Panjang jalan kita nyatakan dalam jumlah ruas. Panjang satu ruas adalah panjang jalan yang tepat diisi satu mobil dengan menyisakan sedikit ruang kosong di depan dan belakang. Dalam kondisi real, panjang satu ruas sekitar 6 meter.
- Kita definsikan kerapatan kendaraan. Jika jumlah ruas jaan adalan N maka untuk mencapai kerapatan r, jumlah kendaraan yang kita gunakan dalam simulasi adalah n = N * r
- Kondisi awal kita buat dengan menempatkan n kendaraan tersebut secara acak pada jalan.
- Kemudian simulasi di mulai dengan aturan sebagai
berikut:
- Jika di depan suatu kendaraan tidak ada kendaraan lain, maka pada step waktu berikutnya kendaraan tersebut bergerak maju satu ruas.
- Jika di depan suatu kendaraan ada kendaraan lain maka pada step waktu berikutnya kendaraan tersebut tetap pada tempatnya.
- Jika kendaraan sudah sapai di ujung jalan, maka ruas selanjutnya adalah ujung jalan yang satunya. Ini disebut syarat batas silkis. Dengan syarat ini maka ruas ke-(N+1) sama dengan ruas ke-1.
- Simulasi dilakukan dalam jumlah step yang lama
- Kita hitung laju aliran kendaraan sebagai jumlah kendaraan yang berpindah pada ruas ke-1 selama selang waktu iterasi dibagi dengan jumlah iterasi.
Langkah nomor 6 termasuk metode Cellular Automata sederhana. Setelah saya coba simulasi untuk jalang dengan panjang 100 ruas dan mengubah-ubah kerapatan kendaraan, saya dapatkan kurva fundamentasl seperti pada Gambar 3. Bentuknya sangat mirip dengan kurva pada Gambar 1.

Bagi yang ingin coba animasi dapat mendownload file berikut ini. Panjang jalan dan kerapatan kendaraan bebas dimasukkan sebagai input.
Sumber gambar fitur: “merdeka.com’