Tuesday, December 30, 2025
5 HP RAM 8 GB 128-256 GB Baterai Jumbo GPS Akurat Harga Rp2 Jutaan Terbaik untuk Driver Ojol
Sunday, August 31, 2025
AMUK
Sebuah postingan yang diposting Ustadz Abdul Somad atau yang kerap disapa UAS dalam akun instagramnya @ustadzabdulsomad_official pada Minggu 31, Agustus 2025
AMUK
Oleh. : UAS
Mengamuk seperti nyamuk
Ramai berdengung dan menusuk
Pernah membunuh namrudz terkutuk
400 tahun berkuasa di pucuk
Tumbang jatuh terkulai membusuk
Seperti batang kayu lapuk
Nampak kokoh padahal remuk
Kemarahan yang mengkristal
Terus menggumpal
Seperti ikan buntal
Pecah terpental
Berakibat fatal
Uya, Eko dan Sahroni hanya lagi sial
Hari sial yang tak punya tanggal
Masyarakat sudah lama kecewa
Mereka dimiskinkan tapi tidak gila
Dimanjakan BLT tiap pilpres dan pilkada
Janji-janji semata
Esemka tak kunjung tiba
Investor katanya antri ternyata tak ada
Katanya tak ada nafsu politika
Nyatanya mintak periode ketiga
Konstitusi diperkosa
Demi anak menantu berkuasa
Janji dan bohong semakin nyata
19 juta lapangan kerja
Tak kunjung tiba
Luka semakin menganga
Bertambah sakit kepala
Dari ijazah palsu sampai fufufafa
Jenuh, muak, bosan, nyaris putus asa
Masyarakat tidak minta banyak
Beri jalan yang layak
Anak sekolah murah dan enak
Tamat sekolah kerja tampak
Kalau sakit berobat tak tebayak
Jangan terlalu banyak pajak
Buzzer jangan diternak
Orang lapar
Jangan disuruh sabar
Bisa makin sangar
Menjarah dan membakar
Berikan solusi segar bukan kelakar
Tunjuk ajar supaya pintar
Agar hidup menjadi benar.
Tuesday, July 29, 2025
Materi Latihan Bahasa Inggris Level A1 (Beginner): Minggu 4
Di minggu ini, kita akan fokus pada kata kerja (verbs) dan kata sifat (adjectives) dasar, serta sedikit tentang preposisi tempat (prepositions of place).
Materi Latihan Bahasa Inggris Level A1 (Beginner): Minggu 4
Topik Utama: Kata Kerja Dasar, Kata Sifat Dasar, dan Preposisi Tempat
I. Vocabulary (Kosakata)
A. Verbs (Kata Kerja)
* Action Verbs (Kata Kerja Aksi):
* run (berlari)
* walk (berjalan)
* eat (makan)
* drink (minum)
* sleep (tidur)
* read (membaca)
* write (menulis)
* cook (memasak)
* sing (menyanyi)
* dance (menari)
* Verb "To Be" (Ulangi dari minggu sebelumnya jika perlu):
* am, is, are (adalah/ialah/berada)
B. Adjectives (Kata Sifat)
* Ukuran/Bentuk:
* big (besar)
* small (kecil)
* long (panjang)
* short (pendek)
* Warna (Ulangi dari minggu sebelumnya jika perlu):
* red (merah)
* blue (biru)
* green (hijau)
* yellow (kuning)
* black (hitam)
* white (putih)
* Kualitas:
* good (baik)
* bad (buruk)
* happy (senang)
* sad (sedih)
* hot (panas)
* cold (dingin)
C. Prepositions of Place (Preposisi Tempat)
* in (di dalam)
* on (di atas)
* under (di bawah)
* next to (di sebelah)
* behind (di belakang)
* in front of (di depan)
II. Grammar (Tata Bahasa)
A. Simple Present Tense (Untuk Rutinitas/Fakta)
* Subject + Verb (Base Form) + Object/Complement
* Digunakan untuk menyatakan kebiasaan, rutinitas, atau fakta umum.
* Perhatian: Untuk subjek he, she, it, atau kata benda tunggal, tambahkan -s atau -es pada kata kerjanya.
* Contoh:
* I eat rice every day. (Saya makan nasi setiap hari.)
* She drinks water. (Dia minum air.)
* They play soccer. (Mereka bermain sepak bola.)
B. Using Adjectives (Menggunakan Kata Sifat)
* Sebelum Kata Benda: an old car (mobil tua), a big house (rumah besar)
* Setelah Verb "To Be": The car is old. (Mobil itu tua.), The house is big. (Rumah itu besar.)
C. Using Prepositions of Place (Menggunakan Preposisi Tempat)
* Contoh:
* The book is on the table. (Buku itu di atas meja.)
* The cat is under the chair. (Kucing itu di bawah kursi.)
* The pen is in the bag. (Pena itu di dalam tas.)
III. Exercises (Latihan)
A. Fill in the Blanks (Isi Bagian Kosong)
Pilih kata kerja yang tepat dari daftar (eat, drink, sleep, read, write, cook, sing, dance) dan isi bagian kosong. Jangan lupa -s/-es jika perlu.
* I usually ______ breakfast at 7 AM.
* She ______ a book before bed.
* They ______ in the park on weekends.
* He ______ delicious food.
* We ______ water when we are thirsty.
B. Choose the Correct Adjective (Pilih Kata Sifat yang Benar)
Pilih kata sifat yang paling sesuai untuk melengkapi kalimat.
* The elephant is very (small / big).
* My hair is (short / long).
* The weather today is (hot / cold), wear a jacket!
* She is very (happy / sad) because she won the game.
* This is a (good / bad) idea, let's do it!
C. Look at the Picture and Complete the Sentence (Lihat Gambar dan Lengkapi Kalimat)
(Bayangkan ada gambar sederhana, misalnya, sebuah bola di bawah meja, buku di atas kursi, dll.)
* The ball is ______ the table. (under / on)
* The book is ______ the chair. (in / on)
* The cat is ______ the box. (in / next to)
* The car is ______ the house. (behind / in front of)
D. Make Sentences (Buat Kalimat)
Buat kalimat sederhana menggunakan kombinasi kata benda, kata kerja, dan kata sifat dari daftar kosakata minggu ini.
* (She / sing / happy) -> She sings happily. (Kita akan belajar adverb nanti, untuk sekarang bisa She is a happy singer. atau She sings a happy song.)
* (I / read / big / book) -> I read a big book.
* (They / walk / slow) -> They walk slowly. (Untuk sekarang, bisa They are slow walkers. atau They walk at a slow pace.)
* (The dog / sleep / under / tree) -> The dog sleeps under the tree.
* (My car / blue / small) -> My car is small and blue. atau My small car is blue.
IV. Speaking Practice (Latihan Berbicara)
* Describe Your Daily Routine: Ceritakan apa yang biasa Anda lakukan setiap hari menggunakan kata kerja yang sudah dipelajari. Contoh: "I wake up at 6 AM. I eat breakfast. I drink coffee. I read a book."
* Describe Objects Around You: Ambil beberapa benda di sekitar Anda dan deskripsikan menggunakan kata sifat dan preposisi tempat. Contoh: "The phone is black. It is on the table. The chair is brown. It is next to the door."
* Question and Answer:
* "What do you eat for breakfast?"
* "Where do you sleep?"
* "Is your house big or small?"
* "Where is your phone right now?"
V. Tips Tambahan untuk Minggu Ini:
* Dengarkan: Cari lagu anak-anak berbahasa Inggris atau video pendek yang menggunakan kosakata dasar ini.
* Ulangi: Ulangi pengucapan setiap kata berkali-kali.
* Buat Flashcards: Tulis kata di satu sisi dan artinya di sisi lain.
* Latihan Setiap Hari: Luangkan waktu minimal 15-30 menit setiap hari untuk berlatih.
Semoga materi ini membantu Anda di Minggu 4! Apakah ada bagian tertentu yang ingin Anda fokuskan lebih lanjut di minggu depan, atau ada pertanyaan tentang materi ini?
Materi Latihan Bahasa Inggris Level A1 (Beginner): Minggu 3
Kita akan fokus pada kegiatan sehari-hari, cara menyatakan suka dan tidak suka, preposisi tempat, dan penggunaan Simple Present Tense untuk kebiasaan.
Materi Latihan Bahasa Inggris Level A1 (Beginner): Minggu 3
Setelah menguasai dasar-dasar perkenalan dan deskripsi di Minggu 1 dan 2, kini saatnya kita belajar tentang kegiatan yang Anda lakukan setiap hari dan bagaimana mengungkapkan preferensi Anda.
Minggu 3: Kegiatan Sehari-hari dan Lokasi
1. Kata Kerja Dasar (Basic Verbs)
Kata kerja adalah kata yang menunjukkan tindakan. Di level ini, kita akan fokus pada kata kerja yang sering Anda gunakan dalam kehidupan sehari-hari.
* Kosakata Penting:
* Eat (Makan)
* Drink (Minum)
* Sleep (Tidur)
* Study (Belajar)
* Work (Bekerja)
* Read (Membaca)
* Write (Menulis)
* Listen (Mendengarkan)
* Watch (Menonton)
* Go (Pergi)
* Come (Datang)
* Latihan:
* Buat Kalimat Sederhana: Gunakan kata ganti orang dari Minggu 1 dan kata kerja ini.
* I eat rice. (Saya makan nasi.)
* You drink water. (Kamu minum air.)
* He sleeps at night. (Dia tidur di malam hari.) (Perhatikan: untuk He/She/It, kita tambah -s di akhir kata kerja)
* She reads a book. (Dia membaca sebuah buku.)
* We study English. (Kami belajar Bahasa Inggris.)
* They watch TV. (Mereka menonton TV.)
* Aktivitas Sehari-hari Anda: Tulis atau ucapkan 3-5 kalimat tentang apa yang Anda lakukan setiap hari menggunakan kata kerja ini.
* Contoh: I eat breakfast every morning. I go to work. I watch TV at night.
* Membuat Pertanyaan:
* What do you do? (Apa yang kamu lakukan?)
* Do you eat rice? (Apakah kamu makan nasi?)
* Does he sleep early? (Apakah dia tidur awal?)
2. Mengungkapkan Suka dan Tidak Suka (Expressing Likes and Dislikes)
Ini adalah cara dasar untuk menyatakan preferensi Anda.
* Frasa Penting:
* I like... (Saya suka...)
* I don't like... (Saya tidak suka...)
* Do you like...? (Apakah kamu suka...?)
* Latihan:
* Lengkapi Kalimat:
* I like _____ (makanan/minuman/hobi, contoh: coffee/kopi, reading/membaca).
* I don't like _____ (sesuatu yang tidak Anda suka, contoh: spicy food/makanan pedas, waking up early/bangun pagi).
* Berbicara tentang Preferensi: Praktikkan bertanya kepada teman atau keluarga, "Do you like [makanan/hobi/warna]?" dan jawab dengan "Yes, I like it." atau "No, I don't like it."
* Daftar Suka/Tidak Suka: Buat daftar 5 hal yang Anda suka dan 5 hal yang tidak Anda suka dalam Bahasa Inggris.
3. Preposisi Tempat (Prepositions of Place: in, on, under)
Preposisi ini membantu Anda menjelaskan lokasi suatu benda atau orang.
* Kosakata Penting:
* In (Di dalam)
* On (Di atas - menempel)
* Under (Di bawah)
* Latihan:
* Deskripsikan Lokasi Benda: Lihat benda-benda di sekitar Anda dan jelaskan lokasinya.
* The book is on the table. (Buku ada di atas meja.)
* My phone is in my bag. (HP saya ada di dalam tas.)
* The cat is under the chair. (Kucing itu ada di bawah kursi.)
* Praktikkan dengan Pertanyaan:
* Where is the book? (Di mana bukunya?)
* It is on the table.
* Where is your pen? (Di mana pulpen Anda?)
* It is in the pencil case.
* Game "Where Is It?": Minta teman menyembunyikan benda dan Anda bertanya "Where is the [benda]?" lalu mereka menjawab menggunakan in, on, under. Atau sebaliknya.
4. Simple Present Tense untuk Kebiasaan (Simple Present Tense for Habits)
Simple Present Tense digunakan untuk membicarakan kebiasaan, rutinitas, fakta umum, atau jadwal.
* Struktur:
* Subjek + Kata Kerja (bentuk dasar)
* Untuk subjek He, She, It, tambahkan -s atau -es pada kata kerja.
* Contoh:
* I drink coffee every morning. (Saya minum kopi setiap pagi.)
* She goes to school by bus. (Dia pergi ke sekolah dengan bus.)
* We study English on Monday. (Kami belajar Bahasa Inggris pada hari Senin.)
* Latihan:
* Lengkapi Kalimat dengan Kata Kerja yang Benar:
* I (eat) breakfast at 7 AM. -> I eat breakfast at 7 AM.
* She (work) in an office. -> She works in an office.
* They (play) football on Sunday. -> They play football on Sunday.
* He (watch) TV every night. -> He watches TV every night.
* Tulis 5 Kalimat tentang Rutinitas Anda: Gunakan Simple Present Tense.
* Contoh: I wake up at 6 AM. I drink water. I go to work. I eat lunch at 1 PM. I sleep at 10 PM.
* Buat Pertanyaan tentang Rutinitas Orang Lain:
* Do you work every day?
* Does she study English?
* What do you do on weekends?
Tips Umum untuk Minggu Ketiga:
* Gabungkan Materi: Coba buat kalimat yang menggabungkan semua yang sudah Anda pelajari. Contoh: "I like to read books in my room."
* Gunakan Kalender: Tandai setiap hari Anda berlatih di kalender untuk melihat kemajuan Anda.
* Jangan Takut Salah: Teruslah berlatih, kesalahan adalah bagian dari belajar.
Selamat berlatih! Minggu depan kita akan membahas makanan, minuman, dan belanja sederhana.
Windows dan Ubuntu
Perbedaan Windows dan Ubuntu: Mana yang Tepat untuk Anda?
Di dunia sistem operasi, dua nama besar yang sering menjadi perbincangan adalah Windows dan Ubuntu. Keduanya memiliki basis pengguna yang luas dan menawarkan pengalaman komputasi yang unik. Namun, di balik fungsionalitasnya, terdapat perbedaan mendasar yang bisa menjadi penentu dalam memilih sistem operasi yang paling sesuai dengan kebutuhan Anda. Mari kita telaah lebih dalam perbedaan antara Windows dan Ubuntu.
1. Filosofi dan Lisensi
* Windows: Dikembangkan oleh Microsoft, Windows adalah sistem operasi komersial berlisensi. Ini berarti Anda perlu membeli lisensi (atau perangkat yang sudah termasuk lisensi) untuk menggunakannya secara legal. Model bisnis ini memungkinkan Microsoft untuk menawarkan dukungan pelanggan yang ekstensif dan pengembangan fitur yang terus-menerus.
* Ubuntu: Berbasis Linux, Ubuntu adalah sistem operasi open-source dan gratis. Anda dapat mengunduh, menginstal, menggunakan, dan bahkan memodifikasi kodenya tanpa biaya. Filosofi open-source mendorong kolaborasi komunitas global untuk pengembangan dan peningkatan.
2. Antarmuka Pengguna (UI)
* Windows: Terkenal dengan antarmukanya yang familiar dan intuitif bagi banyak orang. Dimulai dari Start Menu, Taskbar, hingga File Explorer, Windows dirancang untuk kemudahan penggunaan langsung, terutama bagi pengguna yang baru pertama kali berinteraksi dengan komputer.
* Ubuntu: Biasanya menggunakan desktop environment GNOME (meskipun ada varian lain seperti KDE Plasma, XFCE, dll.). Antarmuka Ubuntu modern menawarkan desain yang bersih, minimalis, dan berfokus pada alur kerja yang efisien. Bagi pengguna Windows, mungkin ada sedikit kurva pembelajaran, tetapi banyak yang menemukan GNOME sangat produktif setelah terbiasa.
3. Kompatibilitas Perangkat Lunak dan Permainan
* Windows: Ini adalah salah satu keunggulan terbesar Windows. Sebagian besar perangkat lunak komersial, termasuk aplikasi profesional dan game terbaru, dirancang khusus untuk Windows. Jika Anda seorang gamer atau memerlukan aplikasi spesifik yang hanya tersedia di Windows, ini menjadi faktor krusial.
* Ubuntu: Meskipun ekosistem perangkat lunaknya terus berkembang pesat, pilihan aplikasi asli untuk Ubuntu mungkin tidak sebanyak Windows. Namun, banyak aplikasi populer memiliki versi Linux, dan ada juga solusi seperti Wine atau Proton (untuk gaming melalui Steam) yang memungkinkan Anda menjalankan beberapa aplikasi Windows. Komunitas open-source juga menyediakan banyak alternatif gratis dan kuat untuk berbagai kebutuhan.
4. Keamanan dan Stabilitas
* Windows: Karena pangsa pasarnya yang besar, Windows sering menjadi target utama serangan malware dan virus. Meskipun Microsoft terus meningkatkan keamanan, pengguna tetap perlu berhati-hati dan menggunakan perangkat lunak antivirus yang handal.
* Ubuntu: Umumnya dianggap lebih aman daripada Windows. Struktur Unix-like-nya dan model perizinan pengguna yang ketat membuat virus sulit menyebar. Selain itu, sifat open-source memungkinkan ribuan pengembang untuk meninjau kode, menemukan, dan memperbaiki kerentanan dengan cepat. Ubuntu juga dikenal dengan stabilitasnya yang tinggi, menjadikannya pilihan populer untuk server.
5. Kebutuhan Sumber Daya Sistem
* Windows: Versi terbaru Windows (misalnya Windows 11) memerlukan spesifikasi perangkat keras yang cukup tinggi untuk berjalan dengan lancar. Ini mungkin menjadi kendala bagi pengguna dengan komputer lama atau spesifikasi rendah.
* Ubuntu: Umumnya lebih ringan dan efisien dalam penggunaan sumber daya dibandingkan Windows. Bahkan dengan spesifikasi perangkat keras yang lebih rendah, Ubuntu seringkali dapat berjalan dengan mulus, terutama jika Anda memilih varian yang lebih ringan seperti Xubuntu atau Lubuntu.
6. Dukungan dan Komunitas
* Windows: Dukungan resmi disediakan oleh Microsoft melalui situs web, forum, dan layanan pelanggan berbayar.
* Ubuntu: Didukung oleh komunitas yang sangat aktif dan besar. Ada banyak forum daring, wiki, dan grup pengguna yang siap membantu Anda dengan masalah atau pertanyaan apa pun. Canonical (perusahaan di balik Ubuntu) juga menawarkan dukungan komersial berbayar untuk bisnis.
Kesimpulan: Mana yang Tepat untuk Anda?
Tidak ada jawaban tunggal tentang sistem operasi mana yang "terbaik." Pilihan tergantung pada kebutuhan dan preferensi Anda:
* Pilih Windows jika: Anda seorang gamer serius, membutuhkan perangkat lunak spesifik yang hanya tersedia di Windows (misalnya, Adobe Creative Suite, Microsoft Office versi penuh dengan fitur lengkap), terbiasa dengan antarmuka Windows, atau menginginkan dukungan resmi yang mudah diakses.
* Pilih Ubuntu jika: Anda mencari sistem operasi gratis dan open-source, menginginkan keamanan dan stabilitas yang lebih tinggi, memiliki perangkat keras lama, tertarik dengan filosofi open-source dan komunitas, atau membutuhkan sistem yang ringan dan cepat untuk produktivitas sehari-hari.
Bahkan, Anda bisa menggunakan keduanya! Banyak pengguna memilih untuk melakukan dual-boot, menginstal Windows dan Ubuntu secara berdampingan di satu komputer, memungkinkan mereka beralih antara keduanya sesuai kebutuhan.
Pada akhirnya, cara terbaik untuk memutuskan adalah dengan mencobanya sendiri. Unduh dan coba Ubuntu dalam mode live (tanpa instalasi) atau instal di mesin virtual untuk merasakan perbedaannya secara langsung.
Monday, July 21, 2025
Network Analisis: Vehicle Routing System With Openstreetmap
Network Analysis: Vehicle Routing System with OpenStreetMap
Untuk memahami bagaimana sistem rute kendaraan (Vehicle Routing System / VRS) bekerja menggunakan OpenStreetMap (OSM), kita bisa membagi analisisnya dalam beberapa aspek penting:
🔍 1. Pengertian Dasar
Vehicle Routing System (VRS) adalah sistem yang digunakan untuk menentukan rute optimal kendaraan dalam menyelesaikan serangkaian tugas, misalnya pengantaran barang, penjemputan penumpang, atau layanan logistik.
OpenStreetMap (OSM) adalah peta digital open-source yang menyimpan data geografis seperti jalan, bangunan, dan fitur lainnya.
🧠 2. Komponen Kunci dalam Network Analysis
a. Graf Jalan (Road Network Graph)
- OSM menyimpan data jalan dalam bentuk node (titik) dan way (garis penghubung node).
- Data ini diubah menjadi graph berbobot, dengan simpul (nodes) sebagai persimpangan jalan dan sisi (edges) sebagai jalan antar simpul.
b. Routing Engine
Untuk melakukan rute kendaraan berbasis OSM, dibutuhkan routing engine. Contoh:
- OSRM (Open Source Routing Machine) – cepat dan cocok untuk kendaraan bermotor.
- GraphHopper – ringan dan mendukung berbagai moda transportasi.
- pgRouting – berbasis PostgreSQL/PostGIS, cocok untuk analisis jaringan kompleks.
🛠️ 3. Langkah Kerja Vehicle Routing dengan OSM
1. Ekstraksi Data
- Download data OSM untuk area tertentu (format
.osm.pbf). - Parsing data jalan dan atributnya (misalnya:
highway=primary,maxspeed, dll).
2. Konversi ke Graph
- Jalan → edges.
- Titik persimpangan → nodes.
- Berat (cost) = jarak, waktu tempuh, atau biaya lainnya.
3. Algoritma Pencarian Rute
- Dijkstra: algoritma klasik untuk rute terpendek.
- A*: seperti Dijkstra tapi lebih cepat menggunakan heuristik.
- VRP Algorithms (Vehicle Routing Problem):
- Clarke-Wright Savings
- Tabu Search, Genetic Algorithm (untuk kasus kompleks)
- Capacitated VRP, Time Window VRP, dll
4. Visualisasi dan Eksekusi
- Tampilan peta hasil rute dengan leaflet.js atau peta interaktif lain.
- Output rute bisa diubah menjadi file
.gpxatau.geojsonuntuk navigasi.
📦 4. Contoh Studi Kasus Sederhana
Studi Kasus: Perusahaan pengiriman ingin mengantarkan paket ke 10 lokasi di Jakarta.
Tools:
- Data OSM Jakarta.
- GraphHopper + Java/Python.
- Algoritma VRP sederhana.
Langkah:
- Ambil koordinat depot dan 10 titik tujuan.
- Buat matriks jarak dari setiap titik ke titik lain.
- Jalankan algoritma VRP untuk menghasilkan rute optimal.
- Visualisasikan hasil dengan Leaflet atau OpenLayers.
⚙️ 5. Software & Library Pendukung
| Tool/Library | Keterangan |
|---|---|
| OSRM | Routing cepat berbasis OSM |
| GraphHopper | Fleksibel, berbasis Java |
| pgRouting | Routing berbasis database PostGIS |
| OpenRouteService (ORS) | Routing berbasis API, mendukung VRP |
| ORTools (Google) | Menyediakan solver VRP yang kuat |
| Python NetworkX | Analisis graf (non-spasial) |
| Leaflet / Folium | Visualisasi peta dan rute |
🧩 6. Tantangan dan Solusi
| Tantangan | Solusi |
|---|---|
| Data jalan tidak lengkap di OSM | Kontribusi ke OSM, validasi manual |
| Keterbatasan algoritma klasik untuk VRP kompleks | Gunakan algoritma heuristik/metaheuristik |
| Waktu proses lambat untuk ribuan titik | Gunakan pre-processing (seperti contraction hierarchies di OSRM) |
📈 7. Aplikasi Nyata
- Pengiriman logistik (GrabExpress, dll.)
- Distribusi makanan (GrabFood, dll.)
- Rute armada sampah, ambulans, transportasi sekolah
- Rute navigasi dinamis berdasarkan kondisi lalu lintas (real-time)
Kita akan buat skrip teknis dasar untuk Vehicle Routing Problem (VRP) menggunakan data dari OpenStreetMap dan memanfaatkan Google OR-Tools untuk solusi algoritmiknya. Untuk tahap awal, kita buat:
---
🎯 Studi Kasus Sederhana
Misalnya:
1 depot (gudang pusat)
5 lokasi pengantaran
2 kendaraan
Tujuan: Minimalkan jarak tempuh total
---
🧰 Teknologi & Tools
Tools Fungsi
OSM (via OpenRouteService API) Mendapatkan matriks jarak antar titik
Google OR-Tools Menyelesaikan masalah VRP
Python Bahasa pemrograman utama
Folium Visualisasi rute di peta interaktif
---
🧾 Step-by-Step: Code Python
1. Install library yang dibutuhkan
pip install openrouteservice ortools folium
---
2. Python Script: VRP dengan 2 Kendaraan
import openrouteservice
from ortools.constraint_solver import routing_enums_pb2
from ortools.constraint_solver import pywrapcp
import folium
# === 1. Lokasi (depot + titik pengantaran) ===
coords = [
[106.827153, -6.175110], # Monas (Depot)
[106.827201, -6.180020], # Lokasi 1
[106.829820, -6.176780], # Lokasi 2
[106.825020, -6.172510], # Lokasi 3
[106.830580, -6.170310], # Lokasi 4
[106.832110, -6.174720], # Lokasi 5
]
# === 2. Ambil matriks jarak dari OpenRouteService ===
api_key = "MASUKKAN_API_KEY_ORS_KAMU_DI_SINI"
client = openrouteservice.Client(key=api_key)
matrix = client.distance_matrix(locations=coords, profile='driving-car', metrics=['distance'])
distance_matrix = matrix['distances']
# === 3. Setup Data untuk OR-Tools ===
def create_data_model():
data = {
'distance_matrix': distance_matrix,
'num_vehicles': 2,
'depot': 0,
}
return data
# === 4. OR-Tools Solver ===
def solve_vrp(data):
manager = pywrapcp.RoutingIndexManager(len(data['distance_matrix']),
data['num_vehicles'], data['depot'])
routing = pywrapcp.RoutingModel(manager)
def distance_callback(from_index, to_index):
return data['distance_matrix'][manager.IndexToNode(from_index)][manager.IndexToNode(to_index)]
transit_callback_index = routing.RegisterTransitCallback(distance_callback)
routing.SetArcCostEvaluatorOfAllVehicles(transit_callback_index)
search_parameters = pywrapcp.DefaultRoutingSearchParameters()
search_parameters.first_solution_strategy = (
routing_enums_pb2.FirstSolutionStrategy.PATH_CHEAPEST_ARC)
solution = routing.SolveWithParameters(search_parameters)
routes = []
if solution:
for vehicle_id in range(data['num_vehicles']):
index = routing.Start(vehicle_id)
route = []
while not routing.IsEnd(index):
route.append(manager.IndexToNode(index))
index = solution.Value(routing.NextVar(index))
route.append(manager.IndexToNode(index))
routes.append(route)
return routes
# === 5. Visualisasi dengan Folium ===
def visualize_routes(coords, routes):
m = folium.Map(location=[-6.175, 106.827], zoom_start=15)
color_list = ['blue', 'green', 'red', 'purple']
for i, route in enumerate(routes):
path = [coords[idx][::-1] for idx in route] # [lat, lon]
folium.PolyLine(path, color=color_list[i % len(color_list)], weight=5).add_to(m)
for j, idx in enumerate(route):
folium.Marker(location=coords[idx][::-1],
popup=f"Stop {j} - Node {idx}",
icon=folium.Icon(color=color_list[i % len(color_list)])).add_to(m)
return m
# === 6. Jalankan semua ===
data = create_data_model()
routes = solve_vrp(data)
m = visualize_routes(coords, routes)
m.save("vrp_result.html")
print("Rute selesai dihitung dan disimpan ke vrp_result.html")
---
🔑 Keterangan
Ganti MASUKKAN_API_KEY_ORS_KAMU_DI_SINI dengan API Key dari https://openrouteservice.org/sign-up/
Output berupa file HTML vrp_result.html yang menampilkan rute pada peta interaktif.
---
📚 Studi Literatur Terkait
Berikut referensi akademik dan teknis terkait:
📘 Paper Ilmiah
1. Golden, B. L., et al. (2008)
The Vehicle Routing Problem: Latest Advances and New Challenges
→ Menjelaskan klasifikasi VRP dan pendekatan algoritma modern.
2. Geisberger, R. et al. (2012)
Routing with Contraction Hierarchies
→ Dasar algoritma cepat seperti yang digunakan di OSRM.
3. Luxen, D., & Vetter, C. (2011)
Real-time routing with OpenStreetMap data
→ Implementasi routing real-time dengan OSM.
📗 Dokumentasi Teknis
OR-Tools VRP Guide
OpenRouteService Matrix API
📚 LITERATUR TAMBAHAN
Judul Sumber
OpenStreetMap Data Extraction https://geoffboeing.com/2016/11/osmnx-python-street-networks/
Google OR-Tools Routing Guide https://developers.google.com/optimization/routing
pgRouting Docs https://pgrouting.org/docs/
Journal: Real-time Vehicle Routing with Open Data Transportation Research Part C
Monday, June 9, 2025
Materi Latihan Bahasa Inggris Level A1 (Beginner): Minggu 2
Monday, June 2, 2025
Materi Latihan Bahasa Inggris Level A1 (Beginner): Minggu 1
Level A1 (Beginner): Membangun Pondasi
Roadmap Belajar Bahasa Inggris Dari Nol Hingga Mahir
Thursday, May 1, 2025
Install Linux Ubuntu Di Android Tanpa Root Dengan Termux Dan Termux:X11
Referensi
1. https://github.com/LinuxDroidMaster/Termux-Desktops
2. https://ivonblog.com/en-us/posts/termux-proot-distro-ubuntu/
3. https://github.com/LinuxDroidMaster/Termux-Desktops/blob/main/Documentation/proot/ubuntu_proot.md
Tutorial On going progress
Thursday, January 30, 2025
Mi Music x JOOX Buatan Xiaomi Dikabarkan Akan Mengganti Layanannya
Mi Music x JOOX Buatan Xiaomi dikabarkan akan Mengganti layanannya ke mitra musik online baru, Wansheng, hal itu tertuang dalam pemberitahuan resmi di aplikasi Mi Music mengenai penggantian layanan, hal itu bertujuan untuk memperikan pengalaman mendengarkan yang lebih baik.
Pemberitahuan penggantian layanan Mi Musik
Hai!
Dikarenakan adanya penggantian layanan, layanan musik online yang disediakan oleh JOOX akan dialihkan ke Wansheng mulai Januari 2025.
Sejak tanggal 6 Januari, konten musik online JOOX secara bertahap dikurangi, dan hanya konten yang hak ciptanya dimiliki JOOX yang kini ditampilkan secara online.
Selama masa penggantian layanan, dikarenakan perubahan hak cipta, Anda tidak akan dapat memutar lagu JOOX dari bagian Favorit Anda, dan fitur pencarian juga dapat terpengaruh. Kami akan menyimpan catatan riwayat mendengarkan musik dan Favorit Anda, dan akan menyediakan fitur di versi mendatang untuk membantu Anda memulihkan koleksi musik Anda. Fitur pemutaran lokal (offline) Mi Musik tidak akan terpengaruh.
Bagi pengguna yang sudah menjadi anggota JOOX, Wansheng akan menyediakan semua layanan keanggotaan setelah penggantian layanan. Keuntungan dari keanggotaan Anda akan terus berlanjut tanpa gangguan hingga akhir periode keanggotaan Anda.
Jika Anda memiliki pertanyaan, hubungi kami di support@joox.com atau musicsea@xiaomi.com.
Kami menghargai masukan dan saran Anda. Mi Musik berkomitmen untuk memberikan pengguna pengalaman mendengarkan musik dan konten yang luar biasa.
Demikian pemberitahuan resmi dari aplikasi Mi Music bagi para penggunanya.
Mario Teguh's Quotes



