Spatial query adalah bagian terkecil dari spatial computing. Penjelasan mengenai spatial computing dapat dibaca di thesis masternya Simon Greenwold dari MIT, yaitu interaksi manusia dan mesin dimana mesin mampu memvisualisasikannya melalui proses manipulasi referensi obyek dan ruangnya. Salah satunya adalah membuat obyek tertentu di dalam mesin (space in the machine). Sedangkan spatial query lebih pada query/request atau pertanyaan/permintaan yang dibuat sedemikian rupa agar mesin memahami dan menjalankan perintah kita. Seperti kalau kita menggunakan perintah =sum(A1:A20) di excel, maka secara otomatis excel akan menjumlahkan nilai di kolom A baris 1 hingga baris 20. Jumlahnya berapa, itulah jawaban atas query atau pertanyaan yang kita lontarkan ke mesin yaitu excel.

Mirip dengan itu, namun ini dilakukan di suatu ruang/ spatial maka disebutnya sebagai spatial query. Contoh klasik dari spatial query adalah kita meminta ArcGIS untuk menghitung kepadatan penduduk netto dengan cara: jumlah penduduk dibagi dengan luas areal terbangun. Luas areal terbangun dihitung dari area SHP sedangkan jumlah penduduk didapatkan dari data kependudukan (misal dari BPS). Proses itu juga bisa disebut sebagai spatial query, meskipun secara teknis bisa juga dilakukan di Excel. Namun karena ada proses perhitungan spasial yaitu luas areal terbangun dari polygon shp maka proses itu bisa disebut sebagai bagian dari spatial query. Menghitung saja, belum melakukan proses analisis statistik tingkat lanjut.

Begitupula dikala kita ingin menghitung kedekatan suatu obyek, bisa dihitung berdasarkan jarak Euclidean atau bisa juga dihitung berdasarkan jarak jaringan (network distance) berdasarkan jaringan jalan ataupun jaringan sungai. Tergantung kebutuhan. Bagi yang berada di daratan dimana jaringan jalan menjadi penghubung maka line network bisa dijelaskan oleh jalan itu. Kebalikannya kalau jaringan penghubung justru adalah sungai seperti yang ada di pedesaan kalimantan selatan maka line network bisa diasumsikan sebagai sungai. Berapa panjang garis (sungai atau jalan) yang menghubungkan 2 titik, itulah jarak yang dimaksud. Dikala ditemukan garis terpendek maka disebut sebagai jarak terpendek, begitupula sebaliknya. Tidak menutup kemungkinan membuat alternatif yang artinya membuka kemungkinan untuk mencari alternatif rute berdasarkan garis jalan atau sungai. Itu adalah salah satu bentuk spatial query yaitu menghitung jarak terpendek berdasarkan Euclidean dengan menghitung jarak antar 2 koordinat (xi, yi) dan juga jarak terpendek berdasarkan jaringan garis (sungai atau jalan).

Dari penjelasan sederhana di atas, kita bisa kembangkan untuk menghitung jarak tercepat. Tentu masih ingat ada rumus s = v.t dimana s untuk jarak, v untuk kecepatan (m/s) dan t adalah waktu (s). Karena satuan jarak tercepat adalah waktu maka kita perlu mempertimbangkan kecepatan rata-rata di ruas jalan tertentu. Sehingga dari rumus itu akan berubah menjadi t = s/v. Oleh karena itu, untuk menghitung jarak tercepat selain kita membutuhkan jarak antar dua titik berdasarkan jaringan (network distance) kita juga memerlukan kecepatan rata-rata kendaraan yang melaju di ruas jalan tertentu (berlaku hal yang sama untuk di sungai). Di sinilah traffict counting dibutuhkan terutama untuk mengetahui kecepatan rata-rata. Bukan hanya untuk menghitung level of service (LOS) jalan tetapi juga bisa digunakan untuk hal lain seperti menghitung layanan kota.

Saya rasa ada beberapa alternatif untuk menghitung kecepatan rata-rata ruas jalan. Setidaknya ada 2 yang saya ketahui yaitu (1) survei lapangan, menghitung kecepatan rata-rata dengan mengendari kendaraan mengikuti arus lalu lintas; dan (2) menggunakan layanan pihak ketiga. Untuk alternatif 1, itu sangat konvensional. Mengikuti arus lalu lintas kemudian mencatat kecepatan rata-rata kendaraannya yang ditunjukkan oleh speedometer. Kelamahan dan keuntungan dari metode ini tentu bisa diprediksi. Biaya lebih mahal, waktu lebih lama mungkin beberapa kelemahan. Keuntungannya jelas kita tidak perlu melakukan coding ataupun komputasi ruang. Kelemahan alternatif 1 ini terjawab oleh metode ke-2 yaitu menggunakan layanan pihak ketiga. Kita bisa ambil contoh google traffic, waze, here, atau bisa juga yang gratisan yaitu open route service. Pihak ketiga ini memberikan layanan berdasarkan tracking GPS smartphone.

GPS Tracking data

Kita sebagai smartphone holder sebenarnya adalah pencacah data spatial. Smartphone kita sudah dilengkapi dengan fiture-fiture spatial analitic yang begitu canggih. Bagi para pengguna android, di kala anda mengaktifkan GPS maka secara langsung akan terkoneksi ke google. Pihak google menyebut layanannya sebagai Google Location Services (baca di sini). Perjalanan kita akan di rekam/ tracking oleh GPS di smartphone kemudian di kirim meta data perjalanan itu ke layanan google. Meta data perjalanan ini mungkin hanya beberapa kilobyte, kecil sekali, tidak akan memakan memory ataupun paket data internet yang terlalu tinggi. Sehingga proses uploading dan downloading data akan berjalan normal dan diperkirakan tidak mengganggu jaringan internet 4G anda.

Data perjalanan melalui GPS tracking itu dikompilasi oleh google kemudian mereka sajikan dalam bentuk live traffic di google maps seperti pada gambar di bawah ini. Dari situlah kita bisa mengetahui kecepatan rata-rata setiap ruas jalan termasuk kalau ada perlambatan yang selanjutnya kita definisikan sebagai kemacetan. Data kecepatan rata-rata ini dihitung berdasarkan rumus kecepatan di atas (v=s/t). Secara otomatis GPS tracking akan memberikan informasi mengenai (1) jarak dari titik awal (origin) dan titik akhir (destination). kemudian (2) waktu tempuh perjalanan dari 2 titik itu Dari situ tinggal masuk ke rumus untuk menghitung kecepatan. Pencacahan data ini dilakukan secara disagregat dari setiap GPS smartphone yang dipegang oleh para pengendara. Kemudian dicatat oleh google dan kemudian disajikan di google maps traffic.

symptom checker italiano https://embedmaps.com/google-maps-authorization/script.js?id=bc88ac5265212565d758bb91e7b0fb7bef45d219

Apa kegunaannya? Bagi yang belajar mobility tentu mengenal bahwa perilaku berkendara sangat ditentukan oleh waktu tempuh dan alternatif rute. Bahkan secara teoritis, Ben-Akiva & Bierlaire (1999) mengatahkan bahwa value-of-time akan menentukan perilaku perjalanan yang ditunjukkan oleh oleh waktu tempuh, alternatif rute dan pada akhirnya adalah konsumsi energi. Di artikel yang sama dia juga menulis: “Modeling travel behavior is a key aspect of demand analysis, where aggregate demand is the accumulation of individuals’ decisions”. Silakan interpretasikan sendiri-sendiri fungsi dari value-of-time itu. Bagi saya sendiri, akan menyoroti pada demand analysis, yaitu bagaimana kita bisa memahami perilaku pasar. Tentu tidak berhenti di sini, bagi yang seneng dengan analisis ekonomi seperti land value capture, kenapa tidak memperhatikan ini juga selain memperhatikan harga lahan.

Kembali ke judul artikel, spatial query. Data-data GPS tracking yang ada di beberapa provider itu sebenarnya bisa kita panen namun bukan dalam bentuk raw data melainkan memanfaatkan API (application programming interface) yang disediakan oleh provider kemudian kita bisa melakukan komputasi. Ini yang kemudian kita sebut sebagai spatial query tetapi memanfaatkan provider pihak ke-3. Kita memanfaatkan data-data mereka dengan meminta (request) API kemudian kita bisa running syntax kita untuk melakukan kalkulasi kecepatan rata-rata dan juga waktu tempuh. Kemudian apa maksud merangkai angka di balik gambar? – Dikala kita melakukan komputasi, maka visualisasi gambar yang diterima. Namun sebenenarnya dibalik gambar itu ada rangkaian angka-angka yang diambil dari tracking GPS secara disagregate kemudian dikompilasi menjadi satu informasi.