xKyro Labs
KURIKULUM · LAB VISUAL

Lab Visual xKyro

Koleksi visualisasi bergaya xKyro — algoritma, fisika, dan robotika. Setiap video menjelaskan cara kerjanya, contoh penerapan, dan rumus atau kode referensinya.

Matematika8 pelajaran · Pemula–Menengah

Algoritma Euclid (FPB)

MatematikaPemula
Fase C–FE1E5

Algoritma Euclid mencari FPB (Faktor Persekutuan terBesar) dua bilangan lewat sisa pembagian berulang: FPB(a, b) = FPB(b, a mod b). Diulang sampai sisa nol; bilangan terakhir yang bukan nol itulah FPB-nya. Jauh lebih cepat daripada mencoba semua faktor.

Contoh kasus

Menyederhanakan pecahan ke bentuk paling sederhana (mis. 272/153 dibagi FPB 17 menjadi 16/9) — dipakai kalkulator dan pustaka bilangan rasional.

Silabus

Mencari FPB dua bilangan lewat sisa pembagian berulang: FPB(a, b) = FPB(b, a mod b) sampai sisanya nol.

Tujuan Belajar
  • ·Memahami hubungan FPB(a, b) dengan sisa pembagian a mod b
  • ·Menjelaskan mengapa proses berhenti saat sisa nol
  • ·Menerapkan Euclid untuk menyederhanakan pecahan
Cara Kerja
  • ·Ambil dua bilangan a dan b
  • ·Hitung sisa pembagian a dibagi b
  • ·Ganti a dengan b, dan b dengan sisa tadi
  • ·Ulangi sampai sisanya menjadi nol
  • ·Bilangan terakhir yang bukan nol itulah FPB-nya
Prasyarat
  • ·Operasi modulo (sisa bagi)
Contoh Nyata
  • ·Menyederhanakan pecahan, misalnya 272/153 menjadi 16/9
  • ·Membagi rata benda ke beberapa orang tanpa sisa berlebih

Kompleksitas O(log(min(a, b)))

Biner ke Desimal

MatematikaPemula
Fase C–FE1E5

Konversi biner ke desimal menunjukkan cara komputer menyimpan angka hanya dengan 0 dan 1 melalui deretan lampu bit. Tiap posisi bit mewakili nilai kelipatan dua (1, 2, 4, 8, dan seterusnya), dan angka desimal diperoleh dengan menjumlahkan nilai posisi tempat bitnya menyala. Visualisasi menampilkan delapan lampu bit yang menyala atau mati beserta hasil penjumlahan nilainya menjadi angka desimal.

Contoh kasus

Memahami kenapa komputer dan HP menghitung semua angka hanya dengan sakelar on dan off di dalam cipnya.

Silabus

Komputer menghitung dengan deretan bit 0 dan 1, tempat tiap posisi bernilai kelipatan dua.

Tujuan Belajar
  • ·Memahami cara komputer menyimpan angka hanya dengan 0 dan 1
  • ·Menjelaskan nilai tempat tiap bit sebagai kelipatan dua
  • ·Menerapkan konversi antara bilangan biner dan desimal
Cara Kerja
  • ·Susun delapan lampu bit, tiap posisi bernilai 1, 2, 4, 8, dan seterusnya.
  • ·Lampu menyala berarti bit 1, lampu mati berarti bit 0.
  • ·Jumlahkan nilai posisi tempat lampunya menyala untuk mendapat angka desimal.
  • ·Untuk mengubah desimal ke biner, nyalakan bit dari nilai terbesar yang muat lalu sisakan selebihnya.
Prasyarat
  • ·Penjumlahan
  • ·Perpangkatan dua sederhana
Contoh Nyata
  • ·Dasar cara komputer dan HP menyimpan semua angka lewat sakelar on-off.
  • ·Alasan ukuran file dihitung dalam kelipatan seperti kilobyte dan megabyte.
  • ·Kode warna dan sinyal digital yang tersusun dari deretan bit.

Kompleksitas O(jumlah bit)

Collatz (3n+1)

MatematikaPemula
Fase C–FE1E5

Dugaan Collatz adalah aturan sederhana yang menyimpan misteri besar. Ambil angka apa pun: bila genap bagi 2, bila ganjil kalikan 3 lalu tambah 1, dan ulangi. Setiap angka yang pernah dicoba selalu berakhir di 1 — tetapi hingga kini belum ada yang bisa membuktikannya benar untuk semua angka. Visualisasi melacak lintasan hujan es sebuah angka yang melonjak tinggi lalu jatuh ke 1.

Contoh kasus

Contoh bahwa aturan matematika sesederhana apa pun bisa melahirkan masalah yang belum terpecahkan hingga sekarang.

Silabus

Genap dibagi 2, ganjil dikali 3 tambah 1, ulangi; selalu berakhir di 1 walau belum terbukti untuk semua angka.

Tujuan Belajar
  • ·Memahami proses iteratif berbasis aturan
  • ·Menjelaskan mengapa sebuah masalah bisa disebut belum terpecahkan
  • ·Membaca lintasan angka yang naik dan turun
Cara Kerja
  • ·Mulai dari sebuah angka n.
  • ·Bila n genap, bagi 2; bila ganjil, kalikan 3 lalu tambah 1.
  • ·Catat tiap nilai — lintasannya bisa melonjak sangat tinggi sebelum turun.
  • ·Berhenti ketika mencapai 1.
Prasyarat
  • ·Konsep ganjil, genap, dan operasi modulo
  • ·Perulangan while
Contoh Nyata
  • ·Contoh masalah terbuka dalam matematika yang berhadiah riset.
  • ·Bahan uji untuk generator bilangan dan komputasi.
  • ·Pengantar berpikir komputasional di kelas.

Kompleksitas O(panjang lintasan), tanpa batas yang terbukti

Fast Exponentiation

MatematikaPemula
Fase C–FE1E5

Fast Exponentiation menghitung pangkat dengan mengkuadratkan basis dan membagi dua eksponen, memakai bit biner eksponen. Jadi O(log n) perkalian, bukan O(n). Fondasi kriptografi (mis. RSA) yang memakai pangkat bilangan sangat besar.

Contoh kasus

Kriptografi RSA: menghitung pangkat modular bilangan raksasa secara efisien untuk enkripsi.

Silabus

Menghitung pangkat dengan mengkuadratkan basis dan membagi dua eksponen, jadi jauh lebih sedikit perkalian.

Tujuan Belajar
  • ·Memahami cara memecah pangkat memakai bit biner eksponen
  • ·Menjelaskan mengapa jumlah perkalian turun jadi O(log n)
  • ·Menerapkan teknik ini untuk pangkat modular yang besar
Cara Kerja
  • ·Lihat eksponen dalam bentuk biner
  • ·Kuadratkan basis di tiap langkah
  • ·Bagi dua eksponen tiap langkah
  • ·Kalikan hasil hanya saat bit eksponen bernilai 1
  • ·Selesai setelah semua bit eksponen habis diproses
Prasyarat
  • ·Perpangkatan
  • ·Representasi biner
Contoh Nyata
  • ·Kriptografi RSA yang mengamankan chat dan transaksi online
  • ·Menghitung pangkat besar cepat di kalkulator atau game

Kompleksitas O(log n)

Monte Carlo pi

MatematikaPemula
Fase C–FE1E5E6

Metode Monte Carlo menebar titik acak di persegi yang memuat lingkaran. Rasio titik yang jatuh di dalam lingkaran mendekati rasio luas (pi/4), jadi pi ~= 4 x dalam/total. Makin banyak titik, makin akurat. Pengantar probabilitas dan simulasi.

Contoh kasus

Estimasi nilai atau luas rumit lewat simulasi acak ketika rumus eksaknya sulit dihitung.

Silabus

Menebar titik acak di persegi berisi lingkaran; rasio titik di dalam lingkaran menaksir nilai pi.

Tujuan Belajar
  • ·Memahami cara menaksir nilai lewat percobaan acak
  • ·Menjelaskan hubungan rasio titik dengan rasio luas (pi/4)
  • ·Menerapkan simulasi Monte Carlo untuk estimasi pi
Cara Kerja
  • ·Gambar lingkaran di dalam sebuah persegi
  • ·Tebar banyak titik acak di dalam persegi
  • ·Hitung berapa titik yang jatuh di dalam lingkaran
  • ·Bagi jumlah titik dalam lingkaran dengan total titik
  • ·Kalikan rasio itu dengan 4 untuk memperkirakan pi
Prasyarat
  • ·Luas lingkaran dan persegi
  • ·Konsep probabilitas dasar
Contoh Nyata
  • ·Menaksir peluang menang di game lewat ribuan percobaan acak
  • ·Memperkirakan hasil rumit yang susah dihitung dengan rumus pasti

Kompleksitas O(n) untuk n titik

Saringan Bilangan Prima

MatematikaPemula
Fase C–FE1E5

Prime Sieve (Saringan Eratosthenes) mencari semua bilangan prima hingga n dengan menandai kelipatan setiap bilangan prima sebagai bukan prima. Mulai dari p=2, semua kelipatannya dicoret, lalu lanjut ke bilangan berikutnya yang belum tercoret. Visualisasi memperlihatkan angka-angka yang dicoret (tanda X) satu per satu hingga hanya bilangan prima yang tersisa.

Contoh kasus

Menghasilkan tabel bilangan prima untuk pembangkitan kunci awal pada eksperimen kriptografi RSA.

Silabus

Menemukan semua bilangan prima sampai n dengan mencoret kelipatan tiap prima, menyisakan angka yang tak pernah tercoret.

Tujuan Belajar
  • ·Memahami cara menandai kelipatan sebagai bukan prima
  • ·Menjelaskan mengapa angka tersisa pasti bilangan prima
  • ·Menerapkan saringan untuk membangkitkan daftar prima
Cara Kerja
  • ·Tulis semua angka dari 2 sampai n
  • ·Mulai dari 2, coret semua kelipatannya
  • ·Lanjut ke angka berikutnya yang belum tercoret (3, lalu 5, ...)
  • ·Coret semua kelipatan angka prima itu juga
  • ·Angka yang tersisa tanpa coretan adalah bilangan prima
Prasyarat
  • ·Bilangan prima
  • ·Kelipatan
Contoh Nyata
  • ·Menyiapkan bilangan prima besar untuk kunci kriptografi RSA
  • ·Membuat tabel prima untuk soal-soal lomba pemrograman

Kompleksitas O(n log log n)

Segitiga Pascal

MatematikaPemula
Fase C–FE1E5

Segitiga Pascal dibangun dengan aturan sederhana: tiap angka adalah jumlah dua angka tepat di atasnya, dengan tepi selalu 1. Dari aturan sesederhana itu muncul pola yang kaya: tiap baris adalah koefisien binomial C(n,k) — banyaknya cara memilih k benda dari n — dan sekaligus menggambarkan peluang, misalnya hasil lemparan koin. Visualisasi membangun segitiga baris demi baris dan menyorot satu sel = jumlah dua induknya.

Contoh kasus

Menghitung berapa cara memilih anggota tim dari sekelompok orang, atau peluang mendapat sejumlah gambar saat melempar koin beberapa kali.

Silabus

Tiap angka = jumlah dua angka di atasnya (tepi = 1); baris ke-n = koefisien C(n,k) dan pola peluang.

Tujuan Belajar
  • ·Memahami pola rekursif yang sederhana
  • ·Mengaitkan baris dengan kombinasi C(n,k)
  • ·Melihat hubungannya dengan peluang (lempar koin)
Cara Kerja
  • ·Mulai dari puncak: satu angka 1.
  • ·Tiap baris baru: tepi kiri dan kanan selalu 1.
  • ·Tiap angka di dalam = jumlah dua angka tepat di atasnya.
  • ·Baris ke-n memberi koefisien C(n,0), C(n,1), ... = cara memilih k dari n.
Prasyarat
  • ·Penjumlahan
  • ·Konsep baris dan pola
  • ·Ide dasar peluang
Contoh Nyata
  • ·Menghitung banyaknya cara memilih (kombinasi).
  • ·Peluang hasil lemparan koin berulang.
  • ·Muncul di aljabar (binomial) dan pola fraktal Segitiga Sierpinski.

Kompleksitas O(baris kuadrat) untuk membangun

Rotasi Matriks 90°

MatematikaMenengah
Fase D–FE1E5

Rotate Image 90° memutar matriks persegi searah jarum jam dengan dua fase in-place: pertama transpose (tukar elemen m[i][j] dengan m[j][i]), lalu balik (reverse) setiap baris memakai dua pointer. Kombinasi kedua operasi ini setara dengan rotasi 90 derajat tanpa memakai matriks tambahan. Visualisasi menampilkan fase transpose di sepanjang diagonal lalu pembalikan tiap baris hingga matriks selesai diputar.

Contoh kasus

Fitur putar foto 90 derajat pada aplikasi editor gambar yang bekerja langsung pada array piksel.

Silabus

Memutar matriks persegi 90 derajat searah jarum jam lewat dua langkah in-place: transpose lalu balik tiap baris.

Tujuan Belajar
  • ·Memahami dua fase rotasi: transpose dan reverse baris
  • ·Menjelaskan mengapa kombinasi keduanya setara rotasi 90 derajat
  • ·Menerapkan rotasi tanpa memakai matriks tambahan
Cara Kerja
  • ·Ambil matriks persegi sebagai grid piksel atau angka
  • ·Transpose: tukar elemen m[i][j] dengan m[j][i] di sepanjang diagonal
  • ·Setelah transpose, tiap baris siap dibalik
  • ·Balik urutan tiap baris memakai dua pointer kiri-kanan
  • ·Hasil akhirnya matriks yang berputar 90 derajat searah jarum jam
Prasyarat
  • ·Matriks 2D
  • ·Teknik dua pointer
Contoh Nyata
  • ·Fitur putar foto 90 derajat di aplikasi editor gambar HP
  • ·Memutar papan pada game puzzle berbasis grid

Kompleksitas O(n^2)

Pengurutan10 pelajaran · Pemula–Lanjut

Bead Sort (Sortir Gravitasi)

PengurutanPemula
Fase C–FE1E5

Bead Sort (sortir manik / gravitasi) adalah algoritma pengurutan bilangan bulat non-negatif. Tiap angka digambarkan sebagai deretan manik pada satu baris (rata kiri). Saat "gravitasi" diterapkan, manik pada tiap kolom jatuh ke dasar. Setelah semua manik jatuh, tinggi (jumlah manik) tiap baris dari atas ke bawah menjadi terurut menaik. Kompleksitas O(n * maks).

Contoh kasus

Ilustrasi "sorting network" / analog abacus: tiap kolom bekerja mandiri sehingga dapat diparalelkan atau diimplementasi di perangkat keras. Contoh: [4,2,5,1,3] -> gravitasi -> [1,2,3,4,5]. Terbatas untuk bilangan bulat non-negatif yang kecil.

Silabus

Menggambarkan tiap angka sebagai tumpukan manik lalu membiarkan gravitasi menjatuhkannya, sehingga baris otomatis terurut menaik.

Tujuan Belajar
  • ·Memahami cara merepresentasikan bilangan sebagai deretan manik
  • ·Menjelaskan bagaimana 'gravitasi' per kolom menghasilkan urutan
  • ·Menerapkan idenya pada bilangan bulat non-negatif yang kecil
Cara Kerja
  • ·Tiap angka jadi satu baris manik, rata kiri
  • ·Bayangkan gravitasi menarik semua manik ke bawah
  • ·Manik di tiap kolom jatuh mengisi baris paling bawah dulu
  • ·Setelah semua jatuh, hitung manik tiap baris dari atas
  • ·Tinggi baris kini terurut menaik: [4,2,5,1,3] jadi [1,2,3,4,5]
Prasyarat
  • ·Bilangan bulat non-negatif
Contoh Nyata
  • ·Analog sempoa (abacus) yang manik-maniknya turun sendiri
  • ·Ilustrasi tiap kolom bekerja mandiri seperti mesin sederhana

Kompleksitas O(n * maks)

Bubble Sort

PengurutanPemula
Fase C–FE1E5

Bubble Sort mengurutkan array dengan membandingkan pasangan bersebelahan dan menukarnya bila urutannya salah. Tiap sapuan penuh mengapungkan nilai terbesar ke ujung. Bila satu sapuan berlalu tanpa pertukaran, array sudah urut dan proses berhenti lebih awal.

Contoh kasus

Alat ajar dasar pengurutan: paling mudah dipahami untuk memperkenalkan konsep bandingkan-dan-tukar sebelum masuk algoritma yang lebih cepat.

Silabus

Berulang kali membandingkan dua tetangga dan menukarnya bila salah urut, sampai nilai terbesar mengapung ke ujung.

Tujuan Belajar
  • ·Memahami prinsip bandingkan-dan-tukar antar elemen bersebelahan
  • ·Menjelaskan mengapa nilai terbesar 'mengapung' ke belakang tiap sapuan
  • ·Menerapkan penghentian dini saat satu sapuan tanpa pertukaran
Cara Kerja
  • ·Bandingkan elemen ke-i dengan tetangga kanannya
  • ·Tukar keduanya bila urutannya terbalik
  • ·Ulangi sampai ujung array untuk satu sapuan penuh
  • ·Nilai terbesar kini berada di posisi paling kanan
  • ·Berhenti lebih awal bila satu sapuan berlalu tanpa pertukaran
Contoh Nyata
  • ·Menyusun ulang beberapa kartu remi di tangan dengan tukar tetangga
  • ·Merapikan daftar skor pendek yang isinya cuma sedikit

Kompleksitas O(n^2)

Counting Sort

PengurutanPemula
Fase C–FE1E5

Counting Sort mengurutkan tanpa membandingkan elemen: hitung berapa kali tiap nilai muncul ke dalam bucket, lalu keluarkan nilai sesuai hitungannya secara berurutan. Sangat cepat O(n+k) bila rentang nilai kecil.

Contoh kasus

Mengurutkan nilai ujian 0-100 ribuan siswa: cukup hitung frekuensi tiap nilai lalu tuliskan berurutan.

Silabus

Mengurutkan tanpa membandingkan elemen, cukup menghitung frekuensi tiap nilai lalu menuliskannya kembali secara berurutan.

Tujuan Belajar
  • ·Memahami pengurutan berbasis hitungan, bukan perbandingan
  • ·Menjelaskan kapan Counting Sort lebih cepat dari sorting biasa
  • ·Menerapkan bucket frekuensi untuk rentang nilai yang kecil
Cara Kerja
  • ·Siapkan bucket hitungan untuk tiap nilai yang mungkin
  • ·Telusuri data, tambah hitungan pada bucket nilainya
  • ·Baca bucket dari nilai terkecil ke terbesar
  • ·Tuliskan tiap nilai sebanyak hitungannya
  • ·Hasilnya array terurut tanpa satu pun perbandingan
Prasyarat
  • ·Array
  • ·Konsep frekuensi
Contoh Nyata
  • ·Menyusun nilai ujian 0-100 dari ribuan siswa sekelas
  • ·Menghitung dan merapikan umur peserta lomba yang seragam rentangnya

Kompleksitas O(n + k)

Insertion Sort

PengurutanPemula
Fase C–FE1E5

Insertion Sort mengurutkan larik dengan membangun bagian terurut di depan lalu menyisipkan tiap elemen baru ke posisi yang tepat. Elemen kunci diangkat, elemen sebelah kiri yang lebih besar digeser ke kanan, kemudian kunci diletakkan di celah yang terbentuk. Visualisasi batang menyoroti kunci yang sedang diangkat dan digeser sampai seluruh larik terurut naik.

Contoh kasus

Mengurutkan kartu di tangan saat bermain, atau menyisipkan data baru ke dalam daftar kecil yang sudah hampir terurut.

Silabus

Membangun bagian terurut di depan lalu menyisipkan tiap elemen baru ke celah yang tepat, seperti menyusun kartu di tangan.

Tujuan Belajar
  • ·Memahami cara menyisipkan elemen ke bagian yang sudah terurut
  • ·Menjelaskan proses menggeser elemen lebih besar ke kanan
  • ·Menerapkan Insertion Sort pada data kecil atau hampir terurut
Cara Kerja
  • ·Anggap elemen pertama sebagai bagian terurut
  • ·Angkat elemen kunci berikutnya dari bagian belum terurut
  • ·Geser elemen kiri yang lebih besar ke kanan
  • ·Letakkan kunci di celah yang terbentuk
  • ·Ulangi sampai semua elemen tersisip pada posisi benar
Prasyarat
  • ·Array
Contoh Nyata
  • ·Menyusun kartu remi di tangan satu per satu saat main
  • ·Menyelipkan kontak baru ke daftar nama yang sudah rapi

Kompleksitas O(n^2)

Selection Sort

PengurutanPemula
Fase C–FE1E5

Selection Sort mengurutkan array dengan berulang mencari elemen TERKECIL di bagian yang belum urut, lalu menukarnya ke posisi terdepan. Setelah tiap putaran, satu elemen terkunci di tempatnya. Sederhana tapi selalu O(n^2) karena tetap memindai sisa array walau sudah hampir urut.

Contoh kasus

Memilih juara 1, 2, 3 secara berurutan dari daftar skor: cari nilai tertinggi, sisihkan, ulangi untuk sisanya.

Silabus

Berulang mencari elemen terkecil di sisa array lalu menukarnya ke depan, mengunci satu elemen terurut tiap putaran.

Tujuan Belajar
  • ·Memahami cara mencari elemen minimum di bagian belum terurut
  • ·Menjelaskan mengapa kompleksitasnya selalu O(n^2)
  • ·Menerapkan penukaran minimum ke posisi terdepan
Cara Kerja
  • ·Pindai bagian yang belum terurut untuk cari nilai terkecil
  • ·Tukar nilai terkecil itu ke posisi terdepan yang belum terisi
  • ·Elemen di posisi itu kini terkunci sebagai terurut
  • ·Ulangi pada sisa array yang tersisa
  • ·Selalu memindai penuh walau data sudah hampir urut
Prasyarat
  • ·Array
Contoh Nyata
  • ·Memilih juara 1, 2, 3 berurutan dari daftar skor lomba
  • ·Mengambil kartu tertinggi satu per satu sampai tersusun

Kompleksitas O(n^2)

Merge Sort

PengurutanMenengah
Fase D–FE1E5

Merge Sort adalah algoritma pengurutan divide-and-conquer yang membagi array menjadi dua bagian secara rekursif hingga tersisa satu elemen, lalu menggabungkan (merge) kembali bagian-bagian tersebut dalam urutan terurut. Proses penggabungan selalu mengambil elemen terkecil dari kepala kedua bagian. Visualisasi menampilkan batang-batang yang dipecah menjadi setengah lalu digabung kembali hingga seluruh array terurut.

Contoh kasus

Mengurutkan daftar besar transaksi atau file log secara efisien dan stabil di sistem basis data.

Silabus

Membagi array jadi dua terus-menerus sampai satu elemen, lalu menggabungkannya kembali secara terurut (divide and conquer).

Tujuan Belajar
  • ·Memahami strategi divide and conquer pada pengurutan
  • ·Menjelaskan cara menggabungkan dua bagian terurut jadi satu
  • ·Menerapkan Merge Sort untuk data besar yang butuh stabil
Cara Kerja
  • ·Bagi array menjadi dua bagian secara berulang
  • ·Terus bagi hingga tiap bagian tinggal satu elemen
  • ·Gabungkan dua bagian dengan mengambil kepala terkecil dulu
  • ·Salin sisa elemen bagian yang belum habis
  • ·Naik bertahap hingga seluruh array tergabung terurut
Prasyarat
  • ·Array
  • ·Rekursi
Contoh Nyata
  • ·Menggabungkan file log terurut dari beberapa server sekaligus
  • ·Mengurutkan daftar besar transaksi Shopee secara stabil

Kompleksitas O(n log n)

Quick Sort

PengurutanMenengah
Fase D–FE1E5

Quick Sort mengurutkan array dengan strategi divide-and-conquer memakai elemen pivot. Elemen yang lebih kecil dari pivot dipindah ke kiri dan yang lebih besar ke kanan (partisi), lalu tiap sub-bagian diurutkan secara rekursif. Visualisasi batang menampilkan proses partisi, pertukaran elemen, dan rekursi hingga seluruh array terurut.

Contoh kasus

Mengurutkan daftar transaksi berdasarkan nominal di sistem laporan keuangan, karena Quick Sort cepat dan efisien untuk data besar di memori.

Silabus

Memilih pivot, memisahkan elemen lebih kecil ke kiri dan lebih besar ke kanan, lalu mengurutkan tiap sisi secara rekursif.

Tujuan Belajar
  • ·Memahami peran pivot dalam proses partisi
  • ·Menjelaskan bagaimana partisi memisahkan elemen kecil dan besar
  • ·Menerapkan rekursi untuk mengurutkan tiap sub-bagian
Cara Kerja
  • ·Pilih satu elemen sebagai pivot
  • ·Pindahkan elemen lebih kecil dari pivot ke kiri
  • ·Pindahkan elemen lebih besar dari pivot ke kanan
  • ·Pivot kini berada di posisi akhirnya yang benar
  • ·Ulangi partisi secara rekursif pada sisi kiri dan kanan
Prasyarat
  • ·Array
  • ·Rekursi
Contoh Nyata
  • ·Mengurutkan daftar transaksi berdasarkan nominal di aplikasi keuangan
  • ·Menyusun cepat data besar di memori, seperti daftar harga produk

Kompleksitas O(n log n) rata-rata

Radix Sort

PengurutanMenengah
Fase D–FE1E5

Radix Sort mengurutkan angka tanpa membandingkan nilai secara langsung, melainkan dengan mengelompokkan berdasarkan digit dari satuan ke puluhan. Tiap iterasi menaruh setiap angka ke bucket sesuai digit pada posisi tertentu lalu menggabungkannya kembali secara berurutan. Visualisasi menampilkan bucket ONES dan TENS serta pergerakan angka antar bucket sampai seluruh larik terurut.

Contoh kasus

Menyortir jutaan nomor pelanggan atau kode pos secara cepat dalam sistem basis data karena panjang digitnya tetap.

Silabus

Mengurutkan angka digit demi digit dari satuan ke puluhan lewat bucket, tanpa pernah membandingkan nilai secara langsung.

Tujuan Belajar
  • ·Memahami pengurutan bertahap berdasarkan posisi digit
  • ·Menjelaskan peran bucket per digit dalam menyusun urutan
  • ·Menerapkan Radix Sort pada data berdigit tetap seperti kode pos
Cara Kerja
  • ·Mulai dari digit satuan tiap angka
  • ·Masukkan tiap angka ke bucket sesuai digit itu
  • ·Gabungkan kembali angka dari bucket secara berurutan
  • ·Ulangi untuk digit puluhan, ratusan, dan seterusnya
  • ·Setelah digit tertinggi diproses, seluruh larik terurut
Prasyarat
  • ·Counting Sort
  • ·Sistem bilangan desimal
Contoh Nyata
  • ·Menyortir jutaan nomor pelanggan atau kode pos dengan cepat
  • ·Merapikan nomor HP yang panjang digitnya sama

Kompleksitas O(d * (n + k))

Bitonic Sort

PengurutanLanjut
Fase E–FE1E5

Bitonic Sort adalah algoritma pengurutan berbasis jaringan perbandingan (sorting network) dengan urutan operasi compare-swap yang tetap, tidak bergantung pada data. Ia bekerja membentuk barisan bitonik lalu menggabungkannya, dengan pasangan elemen dan arah pembandingan ditentukan melalui operasi bit (i ^ j dan i & k). Struktur tetap ini membuatnya sangat cocok untuk eksekusi paralel. Visualisasi menampilkan jaringan jalur dengan operasi tukar antar elemen hingga terurut.

Contoh kasus

Pengurutan paralel berkinerja tinggi pada GPU atau perangkat keras (FPGA) untuk pemrosesan data masif.

Silabus

Mengurutkan lewat jaringan compare-swap dengan urutan tetap yang tidak bergantung pada isi data, sehingga banyak perbandingan bisa jalan bersamaan.

Tujuan Belajar
  • ·Memahami apa itu sorting network dan mengapa polanya tetap
  • ·Menjelaskan bagaimana operasi bit (i ^ j dan i & k) menentukan pasangan dan arah tukar
  • ·Menerapkan konsep barisan bitonik untuk pengurutan paralel
Cara Kerja
  • ·Data dibentuk menjadi barisan bitonik: naik dulu lalu turun
  • ·Elemen dipasangkan lewat operasi XOR indeks, arah tukar dari bit i & k
  • ·Tiap pasangan dibandingkan dan ditukar bila urutannya salah
  • ·Barisan digabung bertahap sampai seluruh data terurut
  • ·Karena polanya tetap, banyak perbandingan dijalankan serentak
Prasyarat
  • ·Bubble Sort
  • ·Operasi bit dasar
  • ·Konsep paralel
Contoh Nyata
  • ·Mengurutkan data grafis super cepat di GPU saat main game berat
  • ·Pemrosesan data masif di perangkat keras khusus seperti FPGA

Kompleksitas O(n log^2 n)

Heap Sort (dengan Pohon)

PengurutanLanjut
Fase E–FE1E5

Heap Sort mengurutkan array dengan terlebih dulu membangunnya menjadi max heap (akar selalu nilai terbesar), lalu berulang kali menukar akar ke posisi akhir dan memperbaiki heap yang menyusut lewat sift_down. Setiap ekstraksi menempatkan nilai terbesar berikutnya ke bagian terurut, menghasilkan urutan menaik. Visualisasi menampilkan struktur pohon biner beserta array-nya, memperlihatkan proses swap dan sift_down hingga seluruh elemen terurut menaik.

Contoh kasus

Pengurutan data dengan jaminan kompleksitas O(n log n) pada sistem yang butuh performa stabil tanpa memori tambahan besar.

Silabus

Membangun max-heap agar nilai terbesar selalu di akar, lalu berulang menariknya ke belakang sambil memperbaiki heap.

Tujuan Belajar
  • ·Memahami sifat max-heap: akar selalu nilai terbesar
  • ·Menjelaskan proses sift_down/heapify menjaga struktur heap
  • ·Menerapkan ekstraksi berulang untuk menghasilkan urutan menaik
Cara Kerja
  • ·Susun array menjadi max-heap sehingga akar bernilai terbesar
  • ·Tukar akar ke posisi paling akhir yang belum terurut
  • ·Kecilkan ukuran heap satu langkah
  • ·Perbaiki heap lewat sift_down agar akar kembali terbesar
  • ·Ulangi hingga seluruh elemen tersusun menaik
Prasyarat
  • ·Array
  • ·Pohon biner
  • ·Rekursi
Contoh Nyata
  • ·Antrian prioritas penjadwal tugas di HP: proses penting jalan duluan
  • ·Mengurutkan data besar dengan performa stabil tanpa memori tambahan

Kompleksitas O(n log n)

Pencarian2 pelajaran · Pemula

Binary Search

PencarianPemula
Fase C–FE1E5

Binary Search mencari sebuah nilai target di dalam larik yang sudah terurut dengan membagi dua rentang pencarian secara berulang. Setiap langkah memeriksa elemen tengah: jika cocok selesai, jika target lebih besar rentang bawah dinaikkan, jika lebih kecil rentang atas diturunkan. Visualisasi menampilkan penyempitan rentang l..r dan penunjuk MID sampai target 71 ditemukan.

Contoh kasus

Mencari kata dalam kamus digital atau data pelanggan terurut sehingga pencarian jauh lebih cepat daripada memeriksa satu per satu.

Silabus

Mencari nilai di data terurut dengan membelah dua rentang berulang kali, membuang separuh yang pasti salah setiap langkah.

Tujuan Belajar
  • ·Memahami syarat data harus terurut sebelum dicari
  • ·Menjelaskan cara memeriksa elemen tengah untuk mempersempit rentang
  • ·Menerapkan pembelahan rentang l..r hingga target ditemukan
Cara Kerja
  • ·Tentukan batas kiri (l) dan kanan (r) seluruh data
  • ·Periksa elemen di tengah rentang
  • ·Bila cocok, pencarian selesai
  • ·Bila target lebih besar, naikkan batas kiri melewati tengah
  • ·Bila target lebih kecil, turunkan batas kanan sebelum tengah
Prasyarat
  • ·Array terurut
Contoh Nyata
  • ·Mencari kata dalam kamus digital tanpa buka satu-satu
  • ·Menebak angka 1-100 dengan strategi 'lebih besar/lebih kecil'

Kompleksitas O(log n)

Linear Search

PencarianPemula
Fase C–FE1E5

Linear Search memeriksa elemen satu per satu dari kiri ke kanan sampai menemukan target. Tidak butuh data terurut, tapi paling lambat: rata-rata memeriksa separuh data. Pembanding yang menjelaskan kenapa Binary Search jauh lebih cepat pada data terurut.

Contoh kasus

Mencari nama di daftar yang tidak berurutan: baca dari atas ke bawah sampai ketemu.

Silabus

Memeriksa elemen satu per satu dari awal sampai target ketemu; sederhana tapi paling lambat dan tak butuh data terurut.

Tujuan Belajar
  • ·Memahami pencarian berurutan dari kiri ke kanan
  • ·Menjelaskan mengapa rata-rata memeriksa separuh data
  • ·Membandingkan kelambatannya dengan Binary Search pada data terurut
Cara Kerja
  • ·Mulai dari elemen paling depan
  • ·Bandingkan elemen sekarang dengan target
  • ·Bila cocok, hentikan dan laporkan posisinya
  • ·Bila tidak, lanjut ke elemen berikutnya
  • ·Bila sampai ujung tanpa cocok, berarti target tidak ada
Contoh Nyata
  • ·Mencari nama teman di daftar chat yang tidak berurutan
  • ·Menelusuri isi tas satu per satu sampai ketemu barang dicari

Kompleksitas O(n)

Struktur Data11 pelajaran · Pemula–Menengah

Cek Kurung Seimbang

Struktur DataPemula
Fase C–FE1E5

Memeriksa apakah kurung buka dan tutup berpasangan rapi adalah contoh klasik penggunaan Stack. Setiap kurung buka didorong ke stack; setiap kurung tutup harus cocok dengan yang terakhir masuk (paling atas stack). Bila cocok sampai habis dan stack kosong, teks dinyatakan seimbang. Visualisasi mendorong dan mengeluarkan kurung dari stack sampai vonis akhir.

Contoh kasus

Fitur editor kode yang menandai kurung tutup yang hilang saat kamu menulis program bekerja persis dengan cara ini.

Silabus

Dorong kurung buka ke stack; cocokkan tiap kurung tutup dengan yang paling atas — kosong di akhir berarti seimbang.

Tujuan Belajar
  • ·Memahami struktur data Stack (masuk terakhir, keluar pertama)
  • ·Menerapkan stack untuk mencocokkan pasangan
  • ·Menghubungkan konsep ini dengan alat pemrograman nyata
Cara Kerja
  • ·Telusuri teks karakter demi karakter.
  • ·Bila menemukan kurung buka, dorong (push) ke stack.
  • ·Bila menemukan kurung tutup, ambil (pop) atas stack dan cek pasangannya cocok.
  • ·Di akhir, teks seimbang bila stack kosong dan tak ada yang tak cocok.
Prasyarat
  • ·Perulangan pada karakter
  • ·Konsep tumpukan (LIFO)
Contoh Nyata
  • ·Pengecek sintaks di editor kode seperti VS Code.
  • ·Validasi rumus dan ekspresi matematika.
  • ·Penguraian (parsing) berkas HTML dan JSON.

Kompleksitas O(panjang teks)

Linked List

Struktur DataPemula
Fase C–FE1E5

Linked List menyimpan data sebagai rantai node, di mana tiap node menunjuk ke node berikutnya lewat sebuah panah (pointer). Menyisipkan atau menghapus di tengah cukup dengan mengubah beberapa panah — tak perlu menggeser seluruh elemen seperti pada array. Visualisasi menyisipkan node baru hanya dengan mengubah dua panah.

Contoh kasus

Struktur yang cocok saat data sering disisipkan atau dihapus di tengah, seperti daftar putar lagu atau riwayat undo dan redo.

Silabus

Data sebagai rantai node ber-panah; menyisip atau menghapus cukup mengubah beberapa panah, bukan menggeser semua.

Tujuan Belajar
  • ·Memahami node dan pointer (panah next)
  • ·Membandingkan linked list dengan array
  • ·Menerapkan penyisipan dengan mengubah pointer
Cara Kerja
  • ·Tiap node menyimpan sebuah nilai dan panah ke node berikutnya.
  • ·Untuk menyisipkan X setelah B, arahkan panah X ke node yang tadinya setelah B.
  • ·Lalu arahkan panah B ke X.
  • ·Selesai — hanya dua panah berubah, elemen lain tak bergeser.
Prasyarat
  • ·Konsep variabel dan referensi
  • ·Array (sebagai pembanding)
Contoh Nyata
  • ·Riwayat undo dan redo di aplikasi.
  • ·Daftar putar musik dengan tombol next dan prev.
  • ·Pengelolaan memori di sistem operasi.

Kompleksitas O(1) menyisip atau menghapus bila posisinya diketahui

Queue (Antrian FIFO)

Struktur DataPemula
Fase C–FE1E5

Queue adalah struktur data bergaya antrian dengan aturan FIFO, yaitu yang pertama datang menjadi yang pertama dilayani. Elemen baru selalu masuk di ujung belakang (enqueue) dan elemen yang keluar selalu dari ujung depan (dequeue), persis seperti antre di loket. Visualisasi menampilkan elemen yang berbaris dari belakang ke depan dan yang paling depan keluar lebih dulu.

Contoh kasus

Cara antrian di loket tiket atau daftar tunggu ojek online melayani orang sesuai urutan kedatangannya.

Silabus

Simpan data bergaya antrian loket: yang pertama datang adalah yang pertama dilayani.

Tujuan Belajar
  • ·Memahami aturan FIFO pada struktur data antrian
  • ·Menjelaskan operasi enqueue (masuk belakang) dan dequeue (keluar depan)
  • ·Menerapkan queue untuk melayani tugas sesuai urutan datang
Cara Kerja
  • ·Bayangkan orang yang mengantre di depan satu loket.
  • ·Enqueue berarti pendatang baru berdiri di ujung paling belakang.
  • ·Dequeue berarti orang di ujung paling depan dilayani lalu keluar.
  • ·Karena depan yang dilayani, urutan datang sama dengan urutan keluar.
Prasyarat
  • ·Array atau list
Contoh Nyata
  • ·Antrian nomor di loket bank atau kasir minimarket.
  • ·Daftar tunggu pesanan ojek dan makanan online.
  • ·Antrean lagu berikutnya di playlist musik.

Kompleksitas O(1) per operasi

Stack (Tumpukan LIFO)

Struktur DataPemula
Fase C–FE1E5

Stack adalah struktur data bergaya tumpukan dengan aturan LIFO, yaitu barang yang terakhir masuk menjadi yang pertama keluar. Menambah barang (push) selalu meletakkannya di puncak, dan mengambil barang (pop) juga selalu dari puncak, persis seperti tumpukan piring. Visualisasi menampilkan elemen yang ditumpuk ke atas saat push dan diangkat dari puncak saat pop.

Contoh kasus

Cara tombol Undo (Ctrl+Z) dan tombol Back di browser mengembalikanmu ke langkah terakhir lebih dulu.

Silabus

Simpan data bergaya tumpukan piring: yang terakhir masuk adalah yang pertama keluar.

Tujuan Belajar
  • ·Memahami aturan LIFO pada struktur data tumpukan
  • ·Menjelaskan operasi push (menaruh) dan pop (mengambil) di puncak
  • ·Menerapkan stack untuk fitur seperti Undo dan tombol Back
Cara Kerja
  • ·Bayangkan tumpukan piring yang hanya bisa disentuh dari atas.
  • ·Push berarti menaruh satu elemen baru di puncak tumpukan.
  • ·Pop berarti mengangkat satu elemen dari puncak tumpukan.
  • ·Karena hanya puncak yang diakses, elemen terakhir masuk keluar lebih dulu.
Prasyarat
  • ·Array atau list
Contoh Nyata
  • ·Fitur Undo (Ctrl+Z) yang membatalkan aksi terakhirmu lebih dulu.
  • ·Tombol Back di browser yang membuka halaman sebelumnya.
  • ·Riwayat langkah pada game atau aplikasi edit foto.

Kompleksitas O(1) per operasi

Antrian Prioritas

Struktur DataMenengah
Fase D–FE1E5

Priority Queue adalah antrian di mana yang dilayani lebih dulu bukan yang datang paling awal, melainkan yang prioritasnya paling tinggi. Setiap item masuk membawa nilai prioritas dan disisipkan pada posisi yang menjaga urutan; pengambilan selalu dari yang paling penting. Visualisasi menyisipkan tugas berprioritas dan melayani yang tertinggi lebih dulu.

Contoh kasus

Triase IGD melayani pasien gawat lebih dulu, atau proses boarding pesawat yang mendahulukan penumpang prioritas.

Silabus

Yang dilayani lebih dulu adalah prioritas tertinggi, bukan yang datang paling awal.

Tujuan Belajar
  • ·Membedakan queue biasa dari priority queue
  • ·Memahami penyisipan yang menjaga urutan prioritas
  • ·Mengenali kasus nyata penjadwalan berbasis prioritas
Cara Kerja
  • ·Setiap item masuk membawa nilai prioritas.
  • ·Sisipkan item pada posisi yang menjaga prioritas tertinggi tetap di depan.
  • ·Layani (ambil) selalu dari depan, yaitu prioritas tertinggi.
  • ·Ulangi; item mendesak selalu didahulukan meski datang belakangan.
Prasyarat
  • ·Antrian (queue) biasa
  • ·Perbandingan nilai
Contoh Nyata
  • ·Triase pasien di IGD rumah sakit.
  • ·Penjadwal tugas di sistem operasi.
  • ·Dipakai di dalam algoritma Dijkstra dan A*.

Kompleksitas O(log n) per operasi (dengan heap)

Bloom Filter

Struktur DataMenengah
Fase D–FE1E5

Bloom filter memeriksa apakah sebuah item pernah dilihat dengan memori sangat kecil. Tiap item dipetakan oleh beberapa fungsi hash ke beberapa posisi bit yang lalu di-set menjadi 1. Saat mengecek, bila ada satu saja bit yang 0, item PASTI belum pernah ada; bila semua 1, item MUNGKIN ada (bisa keliru alias false positive). Ia menukar sedikit ketidakpastian demi kecepatan dan hemat memori yang luar biasa. Visualisasi menambah item lalu menunjukkan sebuah false positive.

Contoh kasus

Cara aplikasi cek cepat apakah username sudah dipakai, atau apakah sebuah URL masuk daftar berbahaya, tanpa menyimpan seluruh daftarnya.

Silabus

Beberapa hash menyalakan bit; ada bit 0 = PASTI tidak ada, semua bit 1 = MUNGKIN ada (bisa false positive).

Tujuan Belajar
  • ·Memahami struktur data probabilistik
  • ·Menjelaskan mengapa false positive mungkin tapi false negative tidak
  • ·Menilai tukar-untung memori melawan kepastian
Cara Kerja
  • ·Sediakan array bit kosong dan beberapa fungsi hash.
  • ·Menambah item: set bit menjadi 1 di semua posisi hasil hash-nya.
  • ·Mengecek: lihat semua posisi hash item itu.
  • ·Bila ada bit 0 -> pasti tidak ada; bila semua 1 -> mungkin ada (bisa keliru).
Prasyarat
  • ·Fungsi hash
  • ·Array bit
  • ·Operasi bit sederhana
Contoh Nyata
  • ·Cek cepat apakah username sudah dipakai.
  • ·Filter URL berbahaya di peramban (Google Safe Browsing).
  • ·Menghemat query database dan cache berukuran besar.

Kompleksitas O(k) per operasi (k = jumlah fungsi hash)

Deteksi Siklus Floyd (Tortoise and Hare)

Struktur DataMenengah
Fase D–FE1E5

Algoritma Floyd (tortoise and hare) mendeteksi siklus pada linked list menggunakan dua pointer: slow bergerak satu langkah dan fast bergerak dua langkah setiap iterasi. Jika kedua pointer bertemu, berarti terdapat loop; jika fast mencapai akhir list, tidak ada siklus. Visualisasi menampilkan linked list berbentuk lingkaran dengan kedua pointer yang saling mengejar hingga bertemu di titik siklus.

Contoh kasus

Mendeteksi loop tak terhingga pada struktur data terhubung atau siklus dalam graf dependensi.

Silabus

Dua pointer berlari beda kecepatan pada linked list; bila yang cepat menyusul yang lambat, berarti ada siklus.

Tujuan Belajar
  • ·Memahami teknik dua pointer slow dan fast
  • ·Menjelaskan mengapa pertemuan pointer menandakan adanya loop
  • ·Menerapkan deteksi siklus pada struktur data terhubung
Cara Kerja
  • ·Tempatkan pointer slow dan fast di awal list
  • ·Gerakkan slow satu langkah tiap iterasi
  • ·Gerakkan fast dua langkah tiap iterasi
  • ·Bila keduanya bertemu di titik sama, ada siklus
  • ·Bila fast mencapai ujung list, tidak ada siklus
Prasyarat
  • ·Linked list
  • ·Konsep pointer
Contoh Nyata
  • ·Mendeteksi loop tak berujung di rantai data yang saling menunjuk
  • ·Menemukan siklus di graf dependensi agar program tidak macet

Kompleksitas O(n)

Hash Table

Struktur DataMenengah
Fase D–FE1E5

Hash Table memetakan kunci ke indeks bucket lewat fungsi hash sehingga pencarian rata-rata O(1). Bila dua kunci jatuh ke bucket sama (tabrakan), keduanya disambung dalam rantai (chaining). Cara kerja dictionary/map di balik layar.

Contoh kasus

Struktur dictionary di banyak bahasa pemrograman: menyimpan dan mencari nilai berdasarkan kunci secara instan.

Silabus

Fungsi hash memetakan kunci langsung ke lokasi bucket, sehingga menyimpan dan mencari data rata-rata secepat O(1).

Tujuan Belajar
  • ·Memahami peran fungsi hash mengubah kunci jadi indeks bucket
  • ·Menjelaskan cara menangani tabrakan lewat rantai (chaining)
  • ·Menerapkan hash table sebagai dictionary/map
Cara Kerja
  • ·Ubah kunci menjadi indeks bucket lewat fungsi hash
  • ·Simpan nilai pada bucket sesuai indeks tersebut
  • ·Untuk mencari, hitung ulang hash kunci lalu buka bucketnya
  • ·Bila dua kunci jatuh ke bucket sama, sambung dalam rantai
  • ·Telusuri rantai bucket itu untuk temukan kunci yang tepat
Prasyarat
  • ·Array
  • ·Konsep fungsi
Contoh Nyata
  • ·Struktur dictionary/map di balik banyak aplikasi dan bahasa program
  • ·Cache username agar cek ketersediaan akun terasa instan

Kompleksitas O(1) rata-rata

LRU Cache

Struktur DataMenengah
Fase D–FE1E5

LRU Cache adalah penyimpanan cepat berukuran terbatas yang membuang item paling lama tidak dipakai ketika ruangnya penuh. Tiap kali sebuah item diakses, ia ditandai sebagai yang paling baru dipakai, sehingga item yang menganggur paling lama berada di urutan buang berikutnya. Visualisasi menampilkan daftar item yang urutannya berubah tiap akses dan item terlama yang tersingkir saat item baru masuk.

Contoh kasus

Alasan HP dengan RAM kecil menutup sendiri aplikasi yang lama tidak kamu buka saat kamu membuka game berat.

Silabus

Simpan item terbatas di memori cepat, lalu buang yang paling lama tak dipakai saat penuh.

Tujuan Belajar
  • ·Memahami kenapa memori cepat harus dibatasi dan dikelola
  • ·Menjelaskan aturan buang item yang paling lama tidak dipakai (LRU)
  • ·Menerapkan pembaruan urutan pakai setiap kali item diakses
Cara Kerja
  • ·Sediakan tempat penyimpanan cepat dengan kapasitas terbatas.
  • ·Tiap kali sebuah item dipakai, tandai ia sebagai yang paling baru.
  • ·Item yang paling lama tidak disentuh menempati urutan buang berikutnya.
  • ·Saat penuh dan ada item baru, singkirkan item paling lama tak dipakai untuk memberi ruang.
Prasyarat
  • ·List atau antrian
  • ·Konsep memori terbatas
Contoh Nyata
  • ·HP RAM kecil yang menutup aplikasi lama saat membuka game berat.
  • ·Cache browser yang menyimpan halaman sering dibuka agar cepat.
  • ·Riwayat aplikasi terakhir yang tersingkir saat memori menipis.

Kompleksitas O(1) per akses

Quadtree (Pembagian Ruang)

Struktur DataMenengah
Fase D–FE1E5

Quadtree adalah struktur data pohon yang membagi ruang 2D menjadi empat kuadran secara rekursif setiap kali sebuah wilayah memuat lebih dari satu titik. Proses subdivisi berhenti ketika tiap sel hanya berisi paling banyak satu titik. Visualisasi menunjukkan kotak yang terus terbelah menjadi empat bagian lebih kecil seiring titik-titik memaksa wilayah tersebut dipecah, beserta kedalaman (depth) pohon.

Contoh kasus

Deteksi tabrakan (collision detection) pada game 2D dengan mempartisi objek ke wilayah spasial agar pengecekan lebih efisien.

Silabus

Pohon yang membagi ruang 2D jadi empat kuadran berulang kali, memecah wilayah hanya saat memuat lebih dari satu titik.

Tujuan Belajar
  • ·Memahami pembagian ruang 2D menjadi empat kuadran
  • ·Menjelaskan kapan sebuah sel perlu dipecah lagi
  • ·Menerapkan quadtree untuk mempercepat pengecekan spasial
Cara Kerja
  • ·Mulai dari satu kotak besar yang meliputi seluruh ruang
  • ·Bila sebuah wilayah memuat lebih dari satu titik, pecah jadi empat
  • ·Tiap kuadran bisa dipecah lagi secara rekursif
  • ·Subdivisi berhenti saat tiap sel berisi paling banyak satu titik
  • ·Kedalaman pohon menunjukkan seberapa padat titik di area itu
Prasyarat
  • ·Pohon
  • ·Koordinat 2D
  • ·Rekursi
Contoh Nyata
  • ·Deteksi tabrakan di game 2D agar cek antar objek lebih hemat
  • ·Peta digital yang memuat titik lokasi sesuai tingkat zoom

Kompleksitas O(log n) rata-rata per query

Union-Find

Struktur DataMenengah
Fase D–FE1E5

Union-Find (Disjoint Set) melacak pengelompokan yang terus berubah dengan sangat cepat. Operasi UNION menggabungkan dua kelompok menjadi satu; operasi FIND menelusuri induk sebuah anggota sampai ke akar kelompoknya. Dua anggota terhubung bila akarnya sama. Dengan trik union-by-rank dan path-compression, keduanya nyaris seketika. Visualisasi menggabungkan orang menjadi lingkaran pertemanan lalu menjawab apakah dua orang terhubung.

Contoh kasus

Menentukan apakah dua orang berada di lingkaran pertemanan yang sama di media sosial, atau apakah dua titik terhubung dalam satu jaringan.

Silabus

Tiap kelompok punya satu akar; dua anggota terhubung bila akarnya sama. UNION menggabung, FIND menelusuri akar.

Tujuan Belajar
  • ·Memahami struktur himpunan-terpisah (disjoint set)
  • ·Menjelaskan operasi UNION dan FIND
  • ·Mengaitkan dengan konektivitas jaringan dan pertemanan
Cara Kerja
  • ·Awalnya tiap orang adalah kelompoknya sendiri.
  • ·UNION(a, b): sambungkan akar satu kelompok ke akar kelompok lain.
  • ·FIND(x): telusuri induk x sampai ke akar kelompoknya.
  • ·Dua orang terhubung bila FIND(a) == FIND(b).
Prasyarat
  • ·Konsep pointer / induk
  • ·Pohon sederhana
  • ·Perbandingan
Contoh Nyata
  • ·Cek apakah dua orang satu lingkaran pertemanan di media sosial.
  • ·Deteksi komponen terhubung dalam jaringan.
  • ·Dipakai algoritma Kruskal untuk membangun jaringan termurah.

Kompleksitas hampir O(1) per operasi (dengan path-compression)

Pohon3 pelajaran · Menengah

Binary Heap

PohonMenengah
Fase D–FE1E5

Binary heap adalah pohon biner lengkap dengan satu aturan: tiap induk selalu lebih besar (atau lebih kecil) dari anak-anaknya, sehingga nilai ekstrem selalu berada di akar. Menyisip nilai baru berarti menaruhnya di ujung lalu menaikkannya (sift-up) menukar dengan induk selama lebih besar; mengambil nilai teratas berarti mengeluarkan akar, memindahkan node terakhir ke atas, lalu menurunkannya (sift-down). Inilah mesin di balik Antrian Prioritas. Visualisasi membangun heap lalu mengambil nilai maksimum.

Contoh kasus

Struktur yang membuat Antrian Prioritas cepat: triase IGD, penjadwal tugas sistem, dan algoritma Dijkstra semuanya memakai heap di dalamnya.

Silabus

Pohon dengan aturan induk >= anak, jadi nilai maksimum selalu di akar; sisip = naik, ambil = turun, keduanya O(log n).

Tujuan Belajar
  • ·Memahami sifat heap (induk >= anak)
  • ·Menjelaskan sift-up saat menyisip dan sift-down saat mengambil
  • ·Mengaitkan heap dengan Antrian Prioritas
Cara Kerja
  • ·Simpan pohon biner lengkap sebagai array (anak indeks i = 2i+1 dan 2i+2).
  • ·Sisip: taruh di ujung, tukar ke atas (sift-up) selama lebih besar dari induk.
  • ·Ambil-max: keluarkan akar, node terakhir ke akar, turunkan (sift-down) tukar anak terbesar.
  • ·Nilai maksimum selalu siap diambil di akar.
Prasyarat
  • ·Pohon biner
  • ·Array sebagai representasi pohon
  • ·Perbandingan nilai
Contoh Nyata
  • ·Mesin di dalam Antrian Prioritas (triase, penjadwalan).
  • ·Dipakai algoritma Dijkstra dan A*.
  • ·Heap Sort untuk mengurutkan data.

Kompleksitas O(log n) per sisip/ambil

Binary Search Tree (BST)

PohonMenengah
Fase D–FE1E5

Binary Search Tree menyimpan nilai secara terurut: tiap node punya anak kiri yang lebih kecil dan anak kanan yang lebih besar. Menyisip atau mencari cukup menuruni satu jalur — ke kiri bila lebih kecil, ke kanan bila lebih besar — sehingga biayanya O(tinggi pohon). Penelusuran in-order menghasilkan data terurut.

Contoh kasus

Struktur indeks untuk pencarian cepat: kamus atau buku telepon digital yang menjaga data tetap terurut sambil tetap murah menambah entri baru.

Silabus

Pohon yang menyimpan data terurut: anak kiri lebih kecil, anak kanan lebih besar, sehingga cari dan sisip cukup menuruni satu jalur.

Tujuan Belajar
  • ·Memahami aturan kiri-lebih-kecil, kanan-lebih-besar pada BST
  • ·Menjelaskan cara mencari dan menyisip dengan menuruni satu jalur
  • ·Menerapkan penelusuran in-order untuk membaca data terurut
Cara Kerja
  • ·Mulai dari akar pohon
  • ·Bila nilai dicari lebih kecil, turun ke anak kiri
  • ·Bila lebih besar, turun ke anak kanan
  • ·Berhenti saat nilai ketemu atau menemukan tempat kosong untuk sisip
  • ·Penelusuran in-order menghasilkan semua data dalam urutan menaik
Prasyarat
  • ·Pohon biner
  • ·Rekursi
Contoh Nyata
  • ·Indeks buku telepon digital yang tetap terurut saat entri ditambah
  • ·Kamus digital yang cepat dicari sekaligus mudah disisipi kata baru

Kompleksitas O(tinggi pohon)

Trie (Pohon Prefix)

PohonMenengah
Fase D–FE1E5

Trie menyimpan kata huruf-per-huruf sebagai pohon prefix; kata dengan awalan sama berbagi jalur node yang sama. Menelusuri sebuah prefix langsung memberi semua kata yang berawalan itu. Dasar autocomplete dan kamus digital.

Contoh kasus

Saran autocomplete: mengetik AP langsung memunculkan API dan APEL yang berbagi awalan sama.

Silabus

Pohon prefix yang menyimpan kata huruf per huruf, sehingga kata berawalan sama berbagi jalur dan prefix bisa dicari instan.

Tujuan Belajar
  • ·Memahami penyimpanan kata sebagai jalur huruf pada pohon
  • ·Menjelaskan bagaimana awalan sama berbagi node yang sama
  • ·Menerapkan penelusuran prefix untuk fitur autocomplete
Cara Kerja
  • ·Mulai dari node akar kosong
  • ·Tiap huruf kata menjadi satu langkah turun ke node anak
  • ·Kata dengan awalan sama memakai jalur node yang sama
  • ·Tandai node terakhir sebagai akhir sebuah kata
  • ·Telusuri sebuah prefix untuk mendapat semua kata di bawahnya
Prasyarat
  • ·Pohon
  • ·String
Contoh Nyata
  • ·Saran autocomplete: ketik 'AP' langsung muncul 'API' dan 'APEL'
  • ·Prediksi kata di keyboard HP saat mengetik pesan

Kompleksitas O(panjang kata)

Rekursi3 pelajaran · Pemula–Menengah

Pohon Fraktal Rekursif

RekursiPemula
Fase C–FE1E5

Ini adalah demonstrasi rekursi murni yang menggambar fraktal pohon: fungsi menggambar satu cabang lalu memanggil dirinya sendiri dua kali untuk membuat cabang kiri dan kanan yang lebih pendek dan miring. Rekursi berhenti ketika kedalaman (depth) mencapai nol sebagai base case. Visualisasi menampilkan pohon yang tumbuh semakin rimbun seiring bertambahnya level rekursi.

Contoh kasus

Pembuatan grafik fraktal, ornamen prosedural, atau model pertumbuhan tanaman dalam game dan animasi.

Silabus

Rekursi adalah fungsi yang memanggil dirinya sendiri pada bagian yang lebih kecil, dan berhenti saat mencapai base case.

Tujuan Belajar
  • ·Memahami konsep fungsi yang memanggil dirinya sendiri
  • ·Menjelaskan pentingnya base case sebagai syarat berhenti
  • ·Menerapkan rekursi untuk membuat pola bercabang seperti fraktal
Cara Kerja
  • ·Fungsi mengerjakan satu bagian kecil dari masalah
  • ·Lalu memanggil dirinya sendiri untuk bagian yang lebih kecil
  • ·Tiap panggilan membuat versi masalah semakin mengecil
  • ·Base case menghentikan pemanggilan saat masalah cukup sederhana
  • ·Hasil tiap panggilan digabung membentuk solusi utuh (mis. pohon fraktal)
Prasyarat
  • ·Fungsi
  • ·Dasar pemrograman
Contoh Nyata
  • ·Menggambar pola fraktal atau ornamen bercabang di aplikasi seni
  • ·Model pertumbuhan pohon dan tanaman di game
  • ·Efek visual bercabang seperti petir atau akar di animasi

Kompleksitas Tergantung masalah; fraktal pohon O(2^depth) cabang

Fibonacci: Memo vs Naif

RekursiMenengah
Fase D–FE1E5

Fibonacci naif menghitung ulang subpohon yang sama berkali-kali sehingga pohon rekursi meledak. Memoization menyimpan hasil tiap nilai sekali (cache), sehingga panggilan berulang langsung dipakai ulang. Gerbang paling halus dari rekursi menuju Dynamic Programming.

Contoh kasus

Optimasi fungsi rekursif apa pun yang menghitung ulang hal sama: simpan hasil agar tak dihitung dua kali.

Silabus

Memoization menyimpan hasil tiap perhitungan sekali di cache, mengubah Fibonacci naif yang meledak jadi sangat cepat.

Tujuan Belajar
  • ·Memahami kenapa Fibonacci naif menghitung ulang hal yang sama
  • ·Menjelaskan cara cache menyimpan hasil agar dipakai ulang
  • ·Menerapkan memoization sebagai jembatan ke Dynamic Programming
Cara Kerja
  • ·Fibonacci naif memanggil dirinya dua kali sehingga subpohon berulang
  • ·Siapkan cache untuk menyimpan hasil tiap nilai yang sudah dihitung
  • ·Sebelum menghitung, cek dulu apakah hasilnya sudah ada di cache
  • ·Bila ada, langsung pakai; bila belum, hitung lalu simpan ke cache
  • ·Perhitungan berulang jadi hilang sehingga jauh lebih cepat
Prasyarat
  • ·Rekursi
  • ·Array atau map
Contoh Nyata
  • ·Menyimpan hasil perhitungan berat agar tidak diulang di aplikasi
  • ·Cache skor atau data yang sering diminta ulang di game
  • ·Mempercepat fungsi yang dipanggil berkali-kali dengan input sama

Kompleksitas O(n) dengan memo, dibanding O(2^n) versi naif

Tower of Hanoi

RekursiMenengah
Fase D–FE1E5

Tower of Hanoi memindahkan tumpukan enam cakram dari tiang A ke tiang C dengan aturan cakram besar tidak boleh di atas cakram kecil. Algoritma memecah masalah secara rekursif: pindahkan n-1 cakram ke tiang bantu, pindahkan cakram terbesar ke tujuan, lalu pindahkan n-1 cakram ke atasnya. Visualisasi menunjukkan tiga tiang dengan cakram bergerak satu per satu hingga selesai dalam 63 langkah rekursif.

Contoh kasus

Menghitung urutan langkah minimal pada teka-teki pemindahan barang atau backup data berjenjang yang harus dipindah tanpa melewati batas kapasitas.

Silabus

Tower of Hanoi memindahkan tumpukan cakram antar tiang dengan aturan cakram besar tak boleh di atas cakram kecil, diselesaikan secara rekursif.

Tujuan Belajar
  • ·Memahami aturan pemindahan cakram besar dan kecil
  • ·Menjelaskan pemecahan rekursif jadi tiga langkah
  • ·Menerapkan rumus 2^n - 1 untuk menghitung langkah minimum
Cara Kerja
  • ·Untuk memindahkan n cakram, selesaikan dalam tiga tahap
  • ·Pindahkan n-1 cakram teratas ke tiang bantu (rekursif)
  • ·Pindahkan cakram terbesar langsung ke tiang tujuan
  • ·Pindahkan n-1 cakram tadi dari tiang bantu ke tiang tujuan
  • ·Total langkah minimum selalu 2^n - 1
Prasyarat
  • ·Rekursi
Contoh Nyata
  • ·Teka-teki pemindahan barang bertingkat tanpa melewati batas kapasitas
  • ·Strategi rotasi backup data berjenjang di komputer
  • ·Latihan klasik memahami cara berpikir rekursif

Kompleksitas O(2^n) langkah untuk n cakram

Graf13 pelajaran · Pemula–Lanjut

Flood Fill

GrafPemula
Fase C–FE1E5

Flood Fill menyebarkan satu warna baru ke semua sel yang terhubung dan memiliki warna awal yang sama. Algoritma memakai antrian (BFS): ambil sel dari antrian, lewati bila warnanya berbeda dari warna asal, ubah menjadi warna baru, lalu masukkan tetangga valid ke antrian. Visualisasi grid menandai sel painted, queue, dan source sampai seluruh area terhubung terisi.

Contoh kasus

Fitur ember cat (bucket fill) pada aplikasi menggambar seperti Paint yang mewarnai satu area tertutup dengan sekali klik.

Silabus

Flood Fill mengganti warna semua sel yang terhubung dan berwarna sama, persis seperti tombol ember cat.

Tujuan Belajar
  • ·Memahami arti sel terhubung dengan warna yang sama
  • ·Menjelaskan cara antrian menyebarkan warna baru ke area
  • ·Menerapkan Flood Fill untuk mewarnai satu area tertutup
Cara Kerja
  • ·Catat warna asal sel yang diklik sebagai patokan
  • ·Masukkan sel awal ke antrian
  • ·Ambil sel dari antrian; lewati bila warnanya beda dari warna asal
  • ·Ubah sel jadi warna baru, lalu masukkan tetangganya ke antrian
  • ·Ulangi sampai antrian kosong dan seluruh area terhubung terisi
Prasyarat
  • ·Antrian (queue)
  • ·Grid 2D
Contoh Nyata
  • ·Tombol ember cat di Paint mewarnai satu area dengan sekali klik
  • ·Game seperti Minesweeper membuka petak kosong yang bersebelahan
  • ·Fitur pilih area warna serupa di aplikasi edit foto

Kompleksitas O(N) dengan N jumlah sel dalam area

Bellman-Ford

GrafMenengah
Fase D–FE1E5

Bellman-Ford mencari jalur terpendek dari satu sumber dengan merelaksasi SEMUA sisi sebanyak V-1 kali. Berbeda dari Dijkstra, ia menangani bobot negatif dan bisa mendeteksi siklus negatif. Lebih lambat, tapi lebih umum.

Contoh kasus

Rute dengan biaya bisa negatif (mis. subsidi atau diskon di ruas tertentu) yang tak bisa ditangani Dijkstra.

Silabus

Bellman-Ford mencari jalur terpendek dengan me-relaksasi semua sisi berkali-kali, dan sanggup menangani bobot negatif yang tak bisa dipakai Dijkstra.

Tujuan Belajar
  • ·Memahami proses relaksasi semua sisi sebanyak V-1 kali
  • ·Menjelaskan kelebihan Bellman-Ford saat ada bobot negatif
  • ·Menerapkan deteksi siklus negatif pada graf
Cara Kerja
  • ·Awali jarak semua simpul sebagai tak hingga kecuali sumber = 0
  • ·Relaksasi setiap sisi: perbarui jarak tujuan bila lewat sisi itu lebih murah
  • ·Ulangi relaksasi semua sisi sebanyak V-1 kali
  • ·Bila masih ada jarak yang bisa turun pada iterasi ekstra, berarti ada siklus negatif
  • ·Hasil akhir adalah jarak terpendek dari sumber ke semua simpul
Prasyarat
  • ·Graf berbobot
  • ·Dijkstra
Contoh Nyata
  • ·Rute yang punya diskon atau subsidi di ruas tertentu (biaya bisa minus)
  • ·Cari peluang tukar mata uang yang untung berulang di aplikasi trading
  • ·Hitung ongkos jaringan saat sebagian jalur justru menambah saldo

Kompleksitas O(V x E)

DFS Maze

GrafMenengah
Fase D–FE1E5

DFS Maze menelusuri labirin secara mendalam (Depth-First Search) dengan menjelajah satu jalur sejauh mungkin sebelum mundur dari jalan buntu. Setiap sel ditandai lalu rekursi masuk ke tetangga yang masih bebas; jika mencapai tujuan jalur dicatat, jika buntu algoritma backtrack ke persimpangan sebelumnya. Visualisasi menandai sel yang dikunjungi, dead end, dan jalur solusi hingga jalur terkunci dari awal ke tujuan.

Contoh kasus

Menelusuri semua kemungkinan cabang untuk menemukan jalan keluar labirin, atau crawler yang menjelajah tautan situs secara mendalam.

Silabus

DFS menjelajah satu jalur sedalam mungkin dulu, lalu mundur (backtrack) dari jalan buntu untuk mencoba cabang lain.

Tujuan Belajar
  • ·Memahami cara DFS masuk sedalam mungkin sebelum mundur
  • ·Menjelaskan peran backtracking saat menemui jalan buntu
  • ·Menerapkan DFS untuk menelusuri labirin atau cabang
Cara Kerja
  • ·Mulai dari satu simpul, tandai sudah dikunjungi
  • ·Masuk ke salah satu tetangga yang belum dikunjungi secara rekursif
  • ·Terus melaju sejauh mungkin menyusuri satu cabang
  • ·Saat mentok jalan buntu, mundur ke persimpangan sebelumnya
  • ·Coba cabang lain sampai semua simpul terjelajahi atau target ketemu
Prasyarat
  • ·Rekursi
  • ·Graf
Contoh Nyata
  • ·Menelusuri semua cabang labirin untuk menemukan jalan keluar
  • ·Crawler menjelajahi tautan sebuah situs sampai ke halaman terdalam
  • ·Mengecek semua kemungkinan langkah di game teka-teki

Kompleksitas O(V + E)

Dijkstra Shortest Path

GrafMenengah
Fase D–FE1E5

Dijkstra adalah algoritma graf yang mencari rute termurah dari simpul awal ke tujuan pada graf berbobot non-negatif. Ia selalu mengambil simpul dengan jarak sementara terkecil dari antrean prioritas, lalu melakukan relaksasi (memperbarui) jarak ke tetangganya bila ditemukan jalur lebih pendek. Visualisasi menampilkan graf berbobot dengan simpul yang diproses dan jalur optimal yang ditelusuri di akhir.

Contoh kasus

Navigasi Google Maps mencari rute tercepat antar persimpangan pada jaringan jalan.

Silabus

Dijkstra mencari rute termurah pada graf berbobot non-negatif dengan selalu memproses simpul berjarak terkecil dari antrean prioritas.

Tujuan Belajar
  • ·Memahami peran priority queue dalam memilih simpul terdekat
  • ·Menjelaskan proses relaksasi jarak ke tetangga
  • ·Menerapkan Dijkstra untuk menghitung rute tercepat
Cara Kerja
  • ·Set jarak sumber = 0 dan simpul lain = tak hingga
  • ·Ambil simpul dengan jarak sementara terkecil dari priority queue
  • ·Relaksasi tetangga: perbarui jaraknya bila lewat simpul ini lebih pendek
  • ·Tandai simpul sebagai selesai agar tidak diproses ulang
  • ·Ulangi sampai tujuan tercapai atau semua simpul selesai
Prasyarat
  • ·Graf berbobot
  • ·Priority queue (min-heap)
Contoh Nyata
  • ·Google Maps hitung rute tercepat antar persimpangan berdasarkan waktu tempuh
  • ·Aplikasi ojek online cari jalur dengan ongkos jarak paling murah
  • ·Jaringan internet memilih jalur data dengan latency terkecil

Kompleksitas O((V + E) log V) dengan min-heap

Maze BFS (Penelusuran Melebar)

GrafMenengah
Fase D–FE1E5

Breadth-First Search menelusuri labirin lapis demi lapis untuk menemukan jalur terpendek pada grid tanpa bobot. Ia memakai antrian (queue) FIFO dan himpunan sel yang sudah dikunjungi agar setiap sel diproses satu kali. Visualisasi menampilkan gelombang sel yang dikunjungi meluas dari titik awal hingga mencapai target, lalu menyorot jalur terpendek.

Contoh kasus

Fitur pathfinding pada game agar karakter musuh menemukan rute terpendek menuju pemain di peta berbasis petak.

Silabus

BFS menelusuri graf lapis demi lapis pakai antrian, sehingga selalu menemukan jalur terpendek pada peta tanpa bobot.

Tujuan Belajar
  • ·Memahami cara antrian FIFO memproses simpul lapis demi lapis
  • ·Menjelaskan kenapa BFS menjamin jalur terpendek tanpa bobot
  • ·Menerapkan BFS untuk mencari rute pada labirin grid
Cara Kerja
  • ·Masukkan simpul awal ke antrian dan tandai sudah dikunjungi
  • ·Ambil simpul dari depan antrian, lalu proses
  • ·Masukkan semua tetangga yang belum dikunjungi ke belakang antrian
  • ·Ulangi sampai antrian kosong atau target tercapai
  • ·Karena diproses lapis demi lapis, target pertama kali ditemui via jalur terpendek
Prasyarat
  • ·Antrian (queue)
  • ·Graf
Contoh Nyata
  • ·Musuh di game menemukan rute terpendek ke pemain di peta petak
  • ·Simulasi evakuasi menghitung jalan keluar tercepat saat api menyebar
  • ·Cari teman-terdekat sejauh 2 langkah di jejaring sosial

Kompleksitas O(V + E)

PageRank

GrafMenengah
Fase D–FE1E5

PageRank menilai pentingnya sebuah halaman dari siapa saja yang menautnya. Tiap link dihitung sebagai suara, tetapi suara dari halaman penting bernilai lebih besar, dan tiap halaman membagi pengaruhnya rata ke semua yang ia taut. Nilai ini dihitung berulang sampai stabil. Halaman yang ditaut banyak halaman penting mendapat peringkat tertinggi. Visualisasi mengalirkan rank antar halaman sampai satu halaman jelas menang.

Contoh kasus

Mesin pencari Google mengurutkan hasil pencarian, dan algoritma sejenis dipakai untuk menilai akun atau konten mana yang paling berpengaruh di media sosial.

Silabus

Halaman penting = ditaut banyak halaman yang juga penting; hitung berulang sampai peringkat stabil.

Tujuan Belajar
  • ·Memahami analisis link sebagai suara berbobot
  • ·Menjelaskan proses iteratif sampai angka stabil
  • ·Mengaitkan dengan cara mesin pencari & feed menilai konten
Cara Kerja
  • ·Beri semua halaman rank awal yang sama.
  • ·Tiap halaman membagi rank-nya rata ke semua halaman yang ia taut.
  • ·Rank baru tiap halaman = jumlah suara yang masuk (plus faktor peredam).
  • ·Ulangi sampai angka berhenti berubah — itulah peringkat akhir.
Prasyarat
  • ·Graf berarah (node dan panah)
  • ·Pecahan dan persentase
  • ·Perulangan
Contoh Nyata
  • ·Pengurutan hasil pada mesin pencari Google.
  • ·Menilai akun atau konten paling berpengaruh di media sosial.
  • ·Analisis jaringan sitasi ilmiah dan sistem rekomendasi.

Kompleksitas O(jumlah link × iterasi)

Pembangkitan Labirin dengan Prim

GrafMenengah
Fase D–FE1E5

Pembangkitan labirin berbasis algoritma Prim menumbuhkan lorong mulai dari satu sel benih. Dinding di sekitar sel yang telah dikunjungi ditambahkan ke frontier; algoritma memilih dinding secara acak, dan jika sel di seberangnya belum dikunjungi, dinding tersebut dibuka menjadi lorong dan dinding baru ditambahkan ke frontier. Proses berlanjut hingga seluruh sel terhubung. Visualisasi menampilkan grid dengan lorong yang tumbuh sampai labirin lengkap.

Contoh kasus

Pembangkitan peta labirin acak secara prosedural pada game atau level generator.

Silabus

Prim menumbuhkan labirin dari satu sel benih, memperluas lorong dengan membuka dinding acak dari daftar frontier.

Tujuan Belajar
  • ·Memahami konsep frontier sebagai daftar dinding kandidat
  • ·Menjelaskan cara lorong tumbuh dari satu sel awal
  • ·Menerapkan Prim untuk membangkitkan labirin acak
Cara Kerja
  • ·Pilih satu sel benih dan tandai sudah dikunjungi
  • ·Tambahkan dinding di sekitar sel itu ke daftar frontier
  • ·Pilih satu dinding acak dari frontier
  • ·Bila sel di seberangnya belum dikunjungi, buka dinding jadi lorong
  • ·Tambahkan dinding baru ke frontier, ulangi sampai semua sel terhubung
Prasyarat
  • ·Graf
  • ·Grid 2D
Contoh Nyata
  • ·Membangkitkan peta labirin acak secara prosedural di game
  • ·Level generator yang bikin stage baru tiap kali main
  • ·Membuat pola maze unik untuk teka-teki di aplikasi

Kompleksitas O(V log V) atau O(E) tergantung struktur frontier

Topological Sort

GrafMenengah
Fase D–FE1E5

Topological Sort mengurutkan simpul pada graf berarah tanpa siklus (DAG) sehingga setiap prasyarat muncul sebelum yang membutuhkannya. Algoritma Kahn: ambil simpul tanpa prasyarat (in-degree 0), keluarkan, hapus panah keluarnya, ulangi. Hasilnya urutan yang valid.

Contoh kasus

Menyusun urutan mata pelajaran: Matematika Dasar harus sebelum Fisika, Fisika sebelum materi lanjutannya.

Silabus

Topological Sort mengurutkan simpul pada graf berarah tanpa siklus (DAG) sehingga setiap prasyarat selalu muncul sebelum yang membutuhkannya.

Tujuan Belajar
  • ·Memahami arti DAG dan konsep prasyarat antar simpul
  • ·Menjelaskan cara kerja algoritma Kahn lewat in-degree
  • ·Menerapkan urutan topologis untuk menyusun langkah bertahap
Cara Kerja
  • ·Hitung in-degree tiap simpul (berapa panah masuk = jumlah prasyarat)
  • ·Ambil semua simpul dengan in-degree 0 (tanpa prasyarat)
  • ·Keluarkan simpul itu ke hasil urutan, hapus panah keluarnya
  • ·Kurangi in-degree tetangga; yang jadi 0 masuk antrean berikutnya
  • ·Ulangi sampai semua simpul terurut menjadi rangkaian yang valid
Prasyarat
  • ·Graf berarah (directed graph)
  • ·Antrian (queue)
Contoh Nyata
  • ·Menyusun urutan mata pelajaran: Matematika Dasar sebelum Fisika
  • ·Build tool menentukan file mana dikompilasi lebih dulu
  • ·Urutan misi di game yang mengunci quest lanjutan sampai prasyarat selesai

Kompleksitas O(V + E)

Adu Cepat BFS vs A*

GrafLanjut
Fase E–FE1E5

Visualisasi ini membandingkan dua algoritma pencarian jalur secara berdampingan: BFS memperluas simpul secara buta (menyebar merata ke segala arah), sedangkan A* menggunakan heuristik f = g + h untuk mengarahkan pencarian menuju tujuan. Hasilnya A* mencapai target dengan jauh lebih sedikit simpul yang dieksplorasi. Visualisasi menampilkan dua grid yang berlomba dengan penghitung jumlah sel yang dikunjungi masing-masing.

Contoh kasus

Membandingkan strategi pathfinding pada AI game untuk menentukan metode paling efisien menuju target.

Silabus

Dibanding BFS yang menyebar ke segala arah, A* memakai heuristik sehingga mengunjungi jauh lebih sedikit sel untuk sampai tujuan.

Tujuan Belajar
  • ·Memahami perbedaan cara BFS dan A* menjelajahi grid
  • ·Menjelaskan kenapa heuristik membuat A* lebih hemat langkah
  • ·Menerapkan perbandingan untuk memilih algoritma pathfinding yang pas
Cara Kerja
  • ·BFS memperluas semua tetangga merata tanpa tahu arah tujuan
  • ·A* menghitung f = g + h sehingga condong bergerak ke arah goal
  • ·Kedua algoritma dijalankan berdampingan pada grid yang sama
  • ·Penghitung sel yang dikunjungi menunjukkan siapa yang lebih efisien
  • ·A* biasanya menang karena tidak membuang waktu ke arah yang salah
Prasyarat
  • ·Breadth-First Search
  • ·A* Search
Contoh Nyata
  • ·Memilih mesin pathfinding tercepat untuk AI musuh di game
  • ·Menentukan algoritma rute agar aplikasi maps hemat baterai HP
  • ·Membandingkan dua cara cari rute saat ojek online hitung jalur

Kompleksitas BFS O(V+E) melebar; A* O(E) lebih terarah berkat heuristik

Maze Kruskal

GrafLanjut
Fase E–FE1E5

Algoritma ini membangun labirin acak yang tetap terhubung menggunakan Kruskal dengan struktur Union-Find. Dinding diproses dalam urutan acak; sebuah dinding dibuka hanya jika dua sel di kedua sisinya belum berada dalam himpunan yang sama, lalu kedua himpunan digabung. Visualisasi menampilkan jumlah grup yang menyusut dari 22 menjadi 1 sampai seluruh sel menyatu jadi satu graf terhubung.

Contoh kasus

Pembuatan level labirin acak yang selalu bisa diselesaikan pada game maze atau prosedur generasi peta.

Silabus

Kruskal membangun labirin terhubung dengan membuka dinding acak hanya jika kedua sisinya belum tergabung, dicek cepat lewat Union-Find.

Tujuan Belajar
  • ·Memahami cara Union-Find mengecek dua sel sudah tergabung atau belum
  • ·Menjelaskan kenapa dinding dibuka hanya bila menyatukan dua grup berbeda
  • ·Menerapkan Kruskal untuk membuat labirin acak yang selalu bisa dilewati
Cara Kerja
  • ·Anggap tiap sel sebagai grup tersendiri di awal
  • ·Acak urutan semua dinding yang mungkin dibuka
  • ·Untuk tiap dinding, cek apakah dua sel di sisinya sudah satu grup
  • ·Bila beda grup, buka dinding dan gabungkan (union) kedua grup
  • ·Ulangi sampai semua sel menyatu jadi satu graf terhubung
Prasyarat
  • ·Graf
  • ·Union-Find (disjoint set)
Contoh Nyata
  • ·Membuat level labirin acak yang dijamin bisa diselesaikan di game
  • ·Prosedur generasi peta pada game petualangan
  • ·Merancang jaringan kabel termurah yang menghubungkan semua titik

Kompleksitas O(E log E) dengan Union-Find hampir konstan per operasi

Perbandingan Dijkstra vs A* Search

GrafLanjut
Fase E–FE1E5

Video ini membandingkan dua algoritma pencari jalur terpendek pada labirin yang sama: Dijkstra dan A* Search. Dijkstra menjelajah ke segala arah berdasarkan jarak sejauh ini, sedangkan A* memakai heuristik untuk mengarah ke tujuan sehingga umumnya mengunjungi lebih sedikit sel. Visualisasi menampilkan kedua penelusuran berdampingan dengan hitungan cells visited sebagai ukuran efisiensi.

Contoh kasus

Membandingkan mesin routing peta digital untuk memilih algoritma tercepat saat menghitung rute pengantaran ojek online.

Silabus

Membandingkan algoritma pencari jalur berdampingan di labirin yang sama menunjukkan kapan tiap algoritma paling cocok dipakai.

Tujuan Belajar
  • ·Memahami perbedaan cara BFS, Dijkstra, dan A* menjelajahi peta
  • ·Menjelaskan kapan bobot dan heuristik memengaruhi pilihan algoritma
  • ·Menerapkan perbandingan untuk memilih algoritma rute yang tepat
Cara Kerja
  • ·Jalankan dua algoritma pada labirin identik secara bersamaan
  • ·BFS optimal saat semua langkah berbobot sama
  • ·Dijkstra menimbang biaya tiap jalur, cocok untuk graf berbobot
  • ·A* menambah heuristik agar pencarian mengarah ke tujuan
  • ·Bandingkan jumlah sel yang dikunjungi dan total biaya sebagai ukuran efisiensi
Prasyarat
  • ·Breadth-First Search
  • ·Dijkstra
  • ·A* Search
Contoh Nyata
  • ·Memilih BFS atau Dijkstra untuk peta game tergantung biaya tiap petak
  • ·Menentukan mesin rute tercepat untuk pengantaran ojek online
  • ·Menguji algoritma navigasi mana yang paling hemat untuk aplikasi maps

Kompleksitas BFS O(V+E); Dijkstra O((V+E) log V); A* O(E) terarah

RRT (Rapidly-exploring Random Tree)

GrafLanjut
Fase E–FE1E5

RRT (Rapidly-exploring Random Tree) membangun jalur dengan menumbuhkan pohon dari titik start ke arah sampel acak di ruang. Untuk tiap sampel, dicari node terdekat lalu ditarik (steer) satu langkah ke arahnya; jika terhalang rintangan langkah ditolak, jika tidak node baru ditambahkan ke pohon hingga cukup dekat dengan goal. Visualisasi menunjukkan cabang-cabang acak yang tumbuh menghindari balok rintangan sampai rute mencapai target.

Contoh kasus

Perencanaan gerak lengan robot atau drone yang mencari lintasan bebas tabrakan di ruang dengan banyak rintangan.

Silabus

RRT membangun jalur dengan menumbuhkan pohon acak dari titik start, melangkah sedikit demi sedikit ke arah sampel acak sambil menghindari rintangan.

Tujuan Belajar
  • ·Memahami cara pohon tumbuh menuju titik-titik sampel acak
  • ·Menjelaskan langkah steer dan penolakan bila terhalang rintangan
  • ·Menerapkan RRT untuk merencanakan lintasan bebas tabrakan
Cara Kerja
  • ·Mulai pohon hanya dengan node start
  • ·Ambil satu titik sampel acak di ruang
  • ·Cari node pohon terdekat ke sampel itu
  • ·Steer satu langkah kecil dari node terdekat ke arah sampel
  • ·Tolak langkah bila menabrak rintangan, kalau bebas tambahkan node baru sampai dekat goal
Prasyarat
  • ·Pohon (tree)
  • ·Koordinat 2D
Contoh Nyata
  • ·Perencanaan gerak lengan robot agar tidak menabrak benda
  • ·Drone mencari lintasan bebas halangan di ruang penuh rintangan
  • ·Mobil otonom merencanakan manuver di area sempit

Kompleksitas O(n log n) untuk n sampel dengan pencarian tetangga terdekat

Sliding Puzzle dengan A*

GrafLanjut
Fase E–FE1E5

A* mencari solusi 8-puzzle dengan mengevaluasi setiap state memakai f = g + h, di mana g adalah jumlah langkah yang sudah ditempuh dan h adalah heuristik jarak Manhattan tiap ubin ke posisi targetnya. Algoritma selalu mengembangkan state dengan f terkecil dari open set, sehingga menemukan rangkaian geseran ubin paling pendek. Visualisasi menampilkan grid 3x3 yang bergeser tiap langkah beserta nilai g, h, open, dan closed.

Contoh kasus

Fitur auto-solve pada aplikasi puzzle geser (15-puzzle) yang mencari urutan gerakan tersingkat menuju susunan benar.

Silabus

A* mencari jalur terpendek dengan memilih node yang punya f = g + h terkecil, jadi pencariannya terarah ke tujuan.

Tujuan Belajar
  • ·Memahami arti g (biaya nyata dari start) dan h (perkiraan jarak ke tujuan)
  • ·Menjelaskan kenapa rumus f = g + h membuat A* lebih pintar dari BFS biasa
  • ·Menerapkan A* untuk mencari rute pada grid berhalangan
Cara Kerja
  • ·Simpan node yang belum diproses di open set, lalu ambil node dengan f terkecil
  • ·Hitung f = g + h untuk tiap node: g biaya sejauh ini, h tebakan jarak ke goal
  • ·Perbarui tetangga bila ditemukan jalur yang lebih murah, dan catat parent-nya
  • ·Pindahkan node yang sudah selesai ke closed set agar tidak diproses ulang
  • ·Berhenti saat goal tercapai, lalu telusuri parent mundur untuk membentuk jalur
Prasyarat
  • ·Breadth-First Search
  • ·Priority queue
  • ·Graf berbobot
Contoh Nyata
  • ·Google Maps memilih rute tercepat ke sekolah dengan menebak arah tujuan
  • ·NPC musuh di game mengejar pemain sambil menghindari tembok
  • ·Fitur auto-solve pada aplikasi puzzle geser mencari gerakan tersingkat

Kompleksitas O(E) dengan priority queue, tergantung kualitas heuristik h

Pemrograman Dinamis5 pelajaran · Pemula–Lanjut

Coin Change (DP)

Pemrograman DinamisPemula
Fase C–FE1E5

Coin Change mencari jumlah koin MINIMUM untuk suatu nominal. Dynamic Programming mengisi dp dari nilai kecil ke besar: dp[v] = 1 + min(dp[v - tiap koin]). Telusur balik menunjukkan koin mana yang dipakai. Relatable lewat masalah kembalian.

Contoh kasus

Mesin kasir menghitung kembalian dengan jumlah lembar atau keping uang paling sedikit.

Silabus

Coin Change mencari jumlah koin paling sedikit untuk suatu nominal dengan membangun jawaban dari nilai kecil ke besar.

Tujuan Belajar
  • ·Memahami cara memecah nominal besar menjadi sub-nominal kecil
  • ·Menjelaskan rumus dp[v] = 1 + min(dp[v - koin])
  • ·Menerapkan DP untuk menghitung kembalian paling hemat
Cara Kerja
  • ·Buat tabel dp berukuran nominal + 1, isi dp[0] = 0
  • ·Untuk tiap nilai v dari kecil ke besar, coba semua jenis koin
  • ·Ambil dp[v] = 1 + nilai minimum dari dp[v - koin] yang valid
  • ·Simpan koin mana yang dipakai agar bisa ditelusuri balik
  • ·dp pada nominal akhir adalah jumlah koin minimum
Prasyarat
  • ·Array
  • ·Rekursi atau perulangan
Contoh Nyata
  • ·Mesin kasir menghitung kembalian dengan lembar uang paling sedikit
  • ·Fitur split bill membagi tagihan jadi pecahan uang yang praktis
  • ·Menyusun top-up pulsa dari kombinasi voucher termurah

Kompleksitas O(nominal x jumlah jenis koin)

Edit Distance (Levenshtein)

Pemrograman DinamisMenengah
Fase D–FE1E5

Edit Distance menghitung jumlah minimal operasi (sisip, hapus, ganti) untuk mengubah satu kata jadi kata lain. Dynamic Programming mengisi tabel: tiap sel = biaya termurah dari tiga tetangganya. Ini otak di balik autocorrect dan saran ejaan.

Contoh kasus

Autocorrect: mengukur seberapa mirip kata yang salah ketik dengan kandidat perbaikan untuk memilih yang paling dekat.

Silabus

Edit Distance menghitung jumlah minimal operasi sisip, hapus, atau ganti untuk mengubah satu kata menjadi kata lain.

Tujuan Belajar
  • ·Memahami tiga operasi dasar: sisip, hapus, dan ganti huruf
  • ·Menjelaskan cara tabel DP mengambil biaya termurah dari tetangga
  • ·Menerapkan Edit Distance untuk mengukur kemiripan dua kata
Cara Kerja
  • ·Buat tabel di mana baris dan kolom mewakili tiap huruf kedua kata
  • ·Isi baris dan kolom pertama dengan biaya mengubah dari/ke kata kosong
  • ·Bila dua huruf sama, salin nilai diagonal (tanpa biaya tambahan)
  • ·Bila beda, ambil 1 + minimum dari sisip, hapus, atau ganti
  • ·Nilai di pojok kanan bawah adalah jarak edit minimum
Prasyarat
  • ·Tabel 2D (matriks)
  • ·String
Contoh Nyata
  • ·Autocorrect memilih koreksi paling mirip dengan kata yang salah ketik
  • ·Fitur saran ejaan saat mengetik pesan di HP
  • ·Mesin pencari menebak maksud saat kata kunci typo

Kompleksitas O(m x n) untuk panjang kata m dan n

Kadane (Max Subarray)

Pemrograman DinamisMenengah
Fase D–FE1E5

Algoritma Kadane mencari deret bagian (subarray) berurutan dengan jumlah terbesar, hanya dalam satu kali telusur. Idenya sederhana: di tiap langkah, pilih memperpanjang deret sebelumnya atau memulai deret baru dari titik ini — mana yang lebih menguntungkan. Dengan begitu jumlah terbaik ditemukan tanpa mengecek semua kemungkinan. Visualisasi menjalankan dompet berjalan dan menyorot jendela paling untung.

Contoh kasus

Mencari rentang hari beli dan jual yang memberi keuntungan maksimal dari sederet naik-turun harga harian.

Silabus

Di tiap langkah, perpanjang deret atau mulai baru — mana yang lebih untung; lacak nilai terbaik.

Tujuan Belajar
  • ·Memahami ide dasar pemrograman dinamis
  • ·Menjelaskan pilihan lanjut atau mulai ulang di tiap langkah
  • ·Menemukan subarray berjumlah maksimum dalam satu telusur
Cara Kerja
  • ·Jalankan dompet berjalan mulai dari 0.
  • ·Di tiap elemen, dompet menjadi nilai maksimum antara elemen itu sendiri dan dompet ditambah elemen.
  • ·Bila dompet menjadi negatif, buang dan mulai deret baru.
  • ·Catat nilai dompet terbesar yang pernah dicapai sebagai jawaban.
Prasyarat
  • ·Array dan perulangan
  • ·Konsep menyimpan nilai terbaik sementara
Contoh Nyata
  • ·Analisis rentang untung dan rugi harga saham.
  • ·Deteksi segmen sinyal terkuat.
  • ·Pengolahan citra dan analisis genom.

Kompleksitas O(n)

Longest Common Subsequence

Pemrograman DinamisMenengah
Fase D–FE1E5

LCS mencari deret huruf terpanjang yang muncul di dua teks dengan urutan yang sama (boleh diselang-seling). Sebuah tabel dinamis diisi: bila dua huruf cocok, nilainya = diagonal kiri-atas + 1; bila beda, ambil yang terbesar dari atas atau kiri. Menelusuri balik tabel memberi deret bersama itu. Inilah inti dari membandingkan dua versi teks. Visualisasi mengisi tabel dan menyorot sel-sel yang cocok.

Contoh kasus

Fitur git diff yang menandai perbedaan dua versi kode, dan alat pendeteksi plagiat yang mencari bagian yang sama antara dua dokumen.

Silabus

Isi tabel: huruf cocok = diagonal+1, huruf beda = max(atas, kiri); telusuri balik untuk deret bersamanya.

Tujuan Belajar
  • ·Memahami pemrograman dinamis pada dua dimensi
  • ·Menjelaskan aturan sel cocok vs sel beda
  • ·Menelusuri balik solusi dari tabel yang sudah terisi
Cara Kerja
  • ·Buat tabel (panjang X+1) × (panjang Y+1) berisi 0.
  • ·Untuk tiap pasang huruf: bila SAMA, sel = diagonal kiri-atas + 1.
  • ·Bila BEDA, sel = nilai terbesar dari atas atau kiri.
  • ·Telusuri balik dari pojok kanan-bawah — huruf-huruf cocok menyusun LCS.
Prasyarat
  • ·Konsep subsequence (deret bagian berurutan)
  • ·Tabel atau grid dua dimensi
  • ·Rekursi / DP dasar
Contoh Nyata
  • ·git diff membandingkan dua versi kode.
  • ·Deteksi plagiat dan kemiripan dokumen.
  • ·Menyelaraskan urutan DNA di bioinformatika.

Kompleksitas O(panjang X × panjang Y)

Knapsack 0/1 (Dynamic Programming)

Pemrograman DinamisLanjut
Fase E–FE1E5

Knapsack 0/1 memilih subset barang agar nilai total maksimum tanpa melewati batas kapasitas. Dynamic Programming mengisi tabel dp[barang][kapasitas]: tiap sel = max(LEWATI barang ini, AMBIL barang ini + nilai sisa kapasitas). Telusur balik dari pojok tabel menunjukkan barang mana yang terpilih.

Contoh kasus

Alokasi anggaran atau ruang terbatas: memilih kombinasi proyek atau muatan dengan keuntungan terbesar di bawah batas biaya atau berat.

Silabus

Knapsack 0/1 memilih kombinasi barang bernilai maksimum tanpa melewati batas kapasitas, tiap barang diambil utuh atau tidak sama sekali.

Tujuan Belajar
  • ·Memahami pilihan ambil-atau-lewati untuk tiap barang
  • ·Menjelaskan cara tabel dp[barang][kapasitas] dibangun
  • ·Menerapkan telusur balik untuk tahu barang mana yang terpilih
Cara Kerja
  • ·Buat tabel dp berdasarkan barang (baris) dan sisa kapasitas (kolom)
  • ·Untuk tiap sel, hitung nilai bila barang ini DILEWATI
  • ·Hitung juga nilai bila barang ini DIAMBIL plus nilai sisa kapasitas
  • ·Ambil yang lebih besar di antara dua pilihan itu
  • ·Telusuri balik dari pojok tabel untuk menemukan barang yang dipilih
Prasyarat
  • ·Tabel 2D (matriks)
  • ·Coin Change (DP)
Contoh Nyata
  • ·Memilih barang bawaan ke dalam tas dengan berat terbatas saat liburan
  • ·Alokasi uang jajan terbatas untuk kombinasi barang paling berguna
  • ·Menentukan muatan paket kurir agar nilai kiriman maksimal di bawah batas berat

Kompleksitas O(jumlah barang x kapasitas)

Greedy3 pelajaran · Pemula–Menengah

Activity Selection

GreedyPemula
Fase C–FE1E5

Activity Selection adalah masalah greedy klasik: dari sekumpulan kegiatan dengan waktu mulai dan selesai, pilih sebanyak mungkin yang tidak bertabrakan. Kuncinya, urutkan kegiatan berdasarkan waktu SELESAI paling awal, lalu pilih setiap kegiatan yang mulainya tidak menabrak kegiatan terpilih terakhir. Selalu mengambil yang selesai paling dulu menyisakan waktu terbanyak untuk sisanya. Visualisasi menyusun kegiatan di garis waktu dan memilih yang muat.

Contoh kasus

Menyusun jadwal kegiatan OSIS atau ekskul agar satu ruangan bisa dipakai untuk sebanyak mungkin acara dalam sehari.

Silabus

Urutkan berdasarkan waktu selesai; pilih tiap kegiatan yang mulainya tidak menabrak yang terakhir dipilih.

Tujuan Belajar
  • ·Memahami strategi greedy (pilihan terbaik lokal)
  • ·Menjelaskan mengapa memilih yang selesai paling awal itu optimal
  • ·Menerapkan pengecekan tumpang-tindih waktu
Cara Kerja
  • ·Urutkan semua kegiatan berdasarkan waktu selesai paling awal.
  • ·Pilih kegiatan pertama (yang selesai paling dulu).
  • ·Untuk sisanya, pilih bila mulainya >= selesai kegiatan terakhir yang dipilih.
  • ·Lewati yang bertabrakan — hasilnya jumlah kegiatan maksimum.
Prasyarat
  • ·Interval waktu (mulai, selesai)
  • ·Pengurutan
  • ·Perbandingan
Contoh Nyata
  • ·Menjadwalkan pemakaian satu ruangan atau lapangan.
  • ·Mengatur pekerjaan pada satu mesin/prosesor.
  • ·Menyusun agenda acara agar tidak bentrok.

Kompleksitas O(n log n) karena pengurutan

Huffman Coding

GreedyMenengah
Fase D–FE1E5

Huffman Coding membangun kode biner hemat dengan berulang menggabung dua frekuensi terkecil menjadi satu pohon. Simbol yang sering muncul dapat kode pendek, yang jarang dapat kode panjang. Dasar kompresi seperti ZIP dan JPEG.

Contoh kasus

Kompresi teks atau berkas: huruf yang sering muncul (mis. spasi, e) diberi kode terpendek agar ukuran total mengecil.

Silabus

Huffman Coding memberi kode pendek untuk simbol yang sering muncul dan kode panjang untuk yang jarang, agar total ukuran data mengecil.

Tujuan Belajar
  • ·Memahami hubungan frekuensi simbol dengan panjang kodenya
  • ·Menjelaskan cara menggabung dua frekuensi terkecil jadi pohon
  • ·Menerapkan Huffman untuk mengompresi data teks
Cara Kerja
  • ·Hitung frekuensi kemunculan tiap simbol
  • ·Masukkan tiap simbol sebagai simpul ke priority queue
  • ·Gabung dua simpul berfrekuensi terkecil jadi satu simpul induk
  • ·Ulangi penggabungan sampai tersisa satu pohon
  • ·Baca jalur kiri/kanan sebagai bit 0/1 untuk membentuk kode tiap simbol
Prasyarat
  • ·Pohon biner
  • ·Priority queue
Contoh Nyata
  • ·Kompresi file ZIP agar ukuran unduhan lebih kecil
  • ·Format gambar JPEG memampatkan data foto
  • ·Streaming musik menghemat kuota dengan memampatkan audio

Kompleksitas O(n log n) untuk n simbol

TSP Nearest-Neighbor

GreedyMenengah
Fase D–FE1E5

Traveling Salesman versi heuristik serakah: dari kota sekarang selalu lompat ke kota terdekat yang belum dikunjungi, lalu kembali ke awal. Cepat dan mudah, walau tak selalu optimal. Contoh klasik trade-off antara kecepatan dan kualitas solusi.

Contoh kasus

Menyusun rute pengantaran cepat: dari titik sekarang menuju pelanggan terdekat berikutnya.

Silabus

TSP Nearest-Neighbor menyusun rute keliling dengan selalu melompat ke kota terdekat yang belum dikunjungi, cepat tapi belum tentu paling optimal.

Tujuan Belajar
  • ·Memahami strategi serakah memilih kota terdekat berikutnya
  • ·Menjelaskan trade-off antara kecepatan dan kualitas solusi
  • ·Menerapkan heuristik nearest-neighbor untuk menyusun rute
Cara Kerja
  • ·Mulai dari satu kota sebagai titik awal
  • ·Dari kota sekarang, pilih kota terdekat yang belum dikunjungi
  • ·Pindah ke kota itu dan tandai sudah dikunjungi
  • ·Ulangi sampai semua kota terlewati
  • ·Kembali ke kota awal untuk menutup rute keliling
Prasyarat
  • ·Graf berbobot
  • ·Algoritma greedy
Contoh Nyata
  • ·Kurir menyusun urutan antar paket ke pelanggan terdekat berikutnya
  • ·Driver Gojek mengambil orderan terdekat agar cepat sampai
  • ·Merencanakan urutan kunjungan tempat wisata paling dekat saat liburan

Kompleksitas O(n^2) untuk n kota

Backtracking6 pelajaran · Menengah–Lanjut

Pewarnaan Graf (Graph Coloring)

BacktrackingMenengah
Fase D–FE1E5

Graph Coloring memberi warna pada setiap simpul graf sehingga tidak ada dua simpul bertetangga yang berwarna sama, menggunakan pendekatan backtracking. Untuk tiap node dicoba warna dari palet; jika aman (tidak bentrok dengan tetangga) lanjut ke node berikutnya, jika buntu warna dibatalkan dan mundur untuk mencoba pilihan lain. Visualisasi menampilkan simpul yang diwarnai bergantian, konflik yang ditandai, hingga solusi valid terkunci.

Contoh kasus

Penjadwalan ujian agar mata kuliah dengan mahasiswa yang sama tidak dijadwalkan pada slot waktu bersamaan.

Silabus

Graph Coloring memberi warna tiap simpul agar tak ada tetangga berwarna sama, memakai backtracking saat menemui jalan buntu.

Tujuan Belajar
  • ·Memahami aturan dua simpul bertetangga tak boleh sewarna
  • ·Menjelaskan cara backtracking membatalkan warna yang gagal
  • ·Menerapkan pewarnaan graf untuk masalah penjadwalan
Cara Kerja
  • ·Ambil satu simpul yang belum diwarnai
  • ·Coba beri warna dari palet yang tersedia
  • ·Cek aman: warna itu tidak sama dengan tetangga manapun
  • ·Bila aman lanjut ke simpul berikutnya secara rekursif
  • ·Bila buntu, batalkan warna (backtrack) dan coba pilihan lain sampai valid
Prasyarat
  • ·Graf
  • ·Backtracking
Contoh Nyata
  • ·Penjadwalan ujian agar mata kuliah dengan siswa sama tak bentrok slot
  • ·Mengalokasikan frekuensi pemancar agar stasiun berdekatan tak saling ganggu
  • ·Mewarnai peta wilayah agar daerah bersebelahan beda warna

Kompleksitas O(warna^V) pada kasus terburuk

Tikus dalam Labirin (Rat in a Maze)

BacktrackingMenengah
Fase D–FE1E5

Rat Maze menyelesaikan labirin dengan backtracking: tikus maju sel demi sel menandai jalur, dan bila menemui jalan buntu atau sel terhalang, ia mundur (menghapus sel dari path) lalu mencoba arah lain. Proses maju-mundur-coba lagi berlanjut sampai sel keluar (exit) tercapai. Visualisasi menampilkan jalur yang dijelajahi, sel yang ditolak/di-backtrack, hingga jalur solusi akhir terkunci.

Contoh kasus

Penyelesaian labirin otomatis atau robot penelusur maze yang mencoba tiap cabang dan mundur saat menemui jalan buntu.

Silabus

Rat in a Maze menyelesaikan labirin dengan backtracking: tikus maju menandai jalur dan mundur mencoba arah lain saat mentok.

Tujuan Belajar
  • ·Memahami cara menandai dan membatalkan jalur saat menjelajah
  • ·Menjelaskan pola maju-mundur-coba lagi pada backtracking
  • ·Menerapkan backtracking untuk menemukan jalur keluar labirin
Cara Kerja
  • ·Tikus maju satu sel dan menandainya sebagai bagian jalur
  • ·Coba arah berikutnya yang bebas dan belum dilewati
  • ·Bila menemui jalan buntu atau sel terhalang, mundur
  • ·Hapus sel dari jalur saat mundur lalu coba arah lain
  • ·Ulangi sampai sel keluar (exit) tercapai dan jalur solusi terbentuk
Prasyarat
  • ·Backtracking
  • ·Grid 2D
Contoh Nyata
  • ·Robot penelusur maze mencoba tiap cabang dan mundur saat buntu
  • ·Penyelesaian labirin otomatis di game teka-teki
  • ·Mencari jalan keluar pada peta bercabang secara sistematis

Kompleksitas O(4^(m x n)) pada kasus terburuk

Knight's Tour

BacktrackingLanjut
Fase E–FE1E5

Knight's Tour mencari jalur di mana seekor kuda catur mengunjungi setiap kotak papan tepat satu kali. Algoritma memakai backtracking dengan heuristik Warnsdorff: langkah legal diurutkan berdasarkan jumlah lanjutan tersedia sehingga kotak paling terkurung dikunjungi lebih dulu, lalu mundur bila menemui jalan buntu. Visualisasi menomori kotak sesuai urutan kunjungan sampai seluruh 25 kotak terlewati.

Contoh kasus

Merancang rute inspeksi mesin di lantai pabrik agar satu petugas melewati semua titik pemeriksaan tepat sekali tanpa mengulang.

Silabus

Knight's Tour mencari jalur agar kuda catur mengunjungi setiap kotak tepat sekali, memakai backtracking sambil mundur dari jalan buntu.

Tujuan Belajar
  • ·Memahami pola langkah L kuda catur pada papan
  • ·Menjelaskan cara backtracking membatalkan langkah yang gagal
  • ·Menerapkan heuristik Warnsdorff untuk mempercepat pencarian
Cara Kerja
  • ·Kuda mencoba semua langkah L yang legal dari posisi sekarang
  • ·Tambahkan kotak baru ke jalur bila masih kosong, lalu melangkah rekursif
  • ·Heuristik Warnsdorff mendahulukan kotak dengan paling sedikit lanjutan
  • ·Bila menemui jalan buntu, batalkan langkah terakhir (pop) dan coba opsi lain
  • ·Berhenti saat seluruh kotak papan berhasil dikunjungi tepat sekali
Prasyarat
  • ·Backtracking
  • ·Grid 2D
Contoh Nyata
  • ·Merancang rute inspeksi mesin agar tiap titik dicek tepat sekali
  • ·Perencanaan rute petugas yang harus singgahi semua lokasi tanpa mengulang
  • ·Menyelesaikan teka-teki papan pada game strategi

Kompleksitas Eksponensial tanpa heuristik; hampir linear dengan Warnsdorff

N-Queens dengan Backtracking (Heatmap)

BacktrackingLanjut
Fase E–FE1E5

Masalah N-Queens diselesaikan dengan backtracking: pada setiap baris, algoritma mencoba menempatkan ratu di kolom yang aman (tidak diserang ratu lain), lalu melangkah rekursif ke baris berikutnya. Jika tidak ada posisi aman, penempatan terakhir dibatalkan dan kolom lain dicoba, hingga semua ratu terpasang tanpa saling menyerang. Visualisasi heatmap menampilkan papan dengan sel-sel yang terancam serangan dan konflik yang terdeteksi.

Contoh kasus

Penyelesai masalah penempatan dengan batasan, seperti alokasi sumber daya yang tidak boleh saling bertabrakan.

Silabus

N-Queens menempatkan N ratu di papan catur agar tak ada yang saling menyerang, memakai backtracking baris demi baris.

Tujuan Belajar
  • ·Memahami arah serangan ratu: baris, kolom, dan diagonal
  • ·Menjelaskan cara backtracking mencoba dan membatalkan penempatan
  • ·Menerapkan N-Queens untuk masalah penempatan tanpa bentrok
Cara Kerja
  • ·Tempatkan satu ratu per baris, mulai dari baris pertama
  • ·Untuk tiap kolom, cek apakah posisi aman dari ratu lain
  • ·Bila aman, pasang ratu lalu lanjut ke baris berikutnya secara rekursif
  • ·Bila tak ada kolom aman, batalkan penempatan terakhir (backtrack)
  • ·Coba kolom lain sampai semua N ratu terpasang tanpa saling menyerang
Prasyarat
  • ·Backtracking
  • ·Grid 2D
Contoh Nyata
  • ·Alokasi frekuensi pemancar radio agar stasiun tak saling mengganggu
  • ·Menempatkan sumber daya yang tak boleh saling bertabrakan
  • ·Penjadwalan agar beberapa kegiatan tak berada di slot atau ruang sama

Kompleksitas O(N!) pada kasus terburuk

Sudoku Backtracking

BacktrackingLanjut
Fase E–FE1E5

Algoritma ini menyelesaikan Sudoku dengan mengisi sel kosong satu per satu menggunakan backtracking. Untuk tiap sel, ia mencoba angka kandidat yang valid (tidak melanggar aturan baris, kolom, dan kotak), lalu lanjut ke sel berikutnya; bila buntu, angka dihapus dan dicoba nilai lain. Visualisasi menampilkan penempatan valid dan proses menghapus angka saat backtrack hingga seluruh grid terisi benar.

Contoh kasus

Mesin penyelesai teka-teki Sudoku otomatis pada aplikasi ponsel yang memvalidasi dan mengisi papan pengguna.

Silabus

Sudoku Backtracking mengisi sel kosong satu per satu dengan angka valid, dan menghapusnya untuk mencoba nilai lain saat menemui jalan buntu.

Tujuan Belajar
  • ·Memahami aturan validitas angka pada baris, kolom, dan kotak
  • ·Menjelaskan cara backtracking mundur saat tidak ada angka valid
  • ·Menerapkan backtracking untuk menyelesaikan papan Sudoku
Cara Kerja
  • ·Cari sel kosong pertama pada papan
  • ·Coba isi dengan angka kandidat yang tidak melanggar aturan
  • ·Bila valid, lanjut mengisi sel kosong berikutnya secara rekursif
  • ·Bila buntu (tak ada angka valid), hapus angka dan coba nilai lain
  • ·Ulangi maju-mundur sampai seluruh grid terisi dengan benar
Prasyarat
  • ·Backtracking
  • ·Grid 2D
Contoh Nyata
  • ·Fitur auto-solve pada aplikasi Sudoku di ponsel
  • ·Memvalidasi dan mengisi papan Sudoku buatan pengguna
  • ·Generator teka-teki yang memastikan puzzle punya solusi

Kompleksitas Eksponensial pada kasus terburuk, dipangkas oleh aturan validitas

Sudoku dengan Constraint Propagation

BacktrackingLanjut
Fase E–FE1E5

Constraint propagation adalah teknik penyelesaian masalah batasan (CSP) yang mempersempit kandidat nilai tiap sel dengan menghapus digit yang bertentangan dengan sel tetangga (baris, kolom, dan kotak). Ketika sebuah sel hanya menyisakan satu kandidat, nilai tersebut dikunci, yang kemudian memicu eliminasi berikutnya. Visualisasi menampilkan grid Sudoku dengan konflik yang ditandai dan sel yang terkunci hingga papan terselesaikan.

Contoh kasus

Mesin penyelesai teka-teki Sudoku atau penjadwalan otomatis yang harus memenuhi banyak batasan sekaligus.

Silabus

Constraint Propagation menyelesaikan Sudoku dengan mempersempit kandidat tiap sel, dan ketika hanya tersisa satu kandidat nilainya dikunci.

Tujuan Belajar
  • ·Memahami arti kandidat nilai dan batasan (constraint) tiap sel
  • ·Menjelaskan efek berantai saat satu sel terkunci
  • ·Menerapkan propagasi batasan untuk mempersempit ruang jawaban
Cara Kerja
  • ·Tiap sel kosong punya daftar kandidat angka yang mungkin
  • ·Hapus kandidat yang bentrok dengan angka di baris, kolom, dan kotak
  • ·Bila sebuah sel hanya menyisakan satu kandidat, kunci nilainya
  • ·Penguncian itu memicu eliminasi kandidat pada sel tetangga
  • ·Ulangi sampai papan terselesaikan atau tak ada lagi yang bisa dipersempit
Prasyarat
  • ·Grid 2D
  • ·Logika himpunan
Contoh Nyata
  • ·Mesin penyelesai Sudoku otomatis di aplikasi ponsel
  • ·Penjadwalan otomatis yang harus memenuhi banyak batasan sekaligus
  • ·Menyusun jadwal piket kelas agar tak ada bentrok

Kompleksitas Cepat untuk kasus mudah; sulit bisa perlu backtracking tambahan

String3 pelajaran · Pemula–Menengah

Naive String Match

StringPemula
Fase C–FE1E5

Naive String Matching menggeser pola sepanjang teks dan membandingkan huruf per posisi di tiap offset. Bila cocok semua, pola ditemukan; bila ada yang beda, geser satu langkah dan ulang. Versi paling sederhana dari fitur Ctrl+F.

Contoh kasus

Fitur Cari (Ctrl+F) paling dasar: menggeser kata yang dicari sepanjang dokumen sampai cocok.

Silabus

Cari pola di dalam teks dengan menggesernya satu per satu lalu mencocokkan huruf per huruf.

Tujuan Belajar
  • ·Memahami cara kerja pencarian teks paling dasar seperti Ctrl+F
  • ·Menjelaskan proses geser-dan-bandingkan di tiap posisi teks
  • ·Menerapkan pencocokan huruf per huruf untuk menemukan sebuah kata
Cara Kerja
  • ·Tempelkan pola di awal teks, lalu bandingkan huruf demi huruf.
  • ·Kalau semua huruf cocok, berarti pola ditemukan di posisi itu.
  • ·Kalau ada satu huruf yang beda, langsung geser pola satu langkah ke kanan.
  • ·Ulangi terus sampai pola ditemukan atau teks sudah habis.
Prasyarat
  • ·Array atau string
  • ·Perulangan (loop)
Contoh Nyata
  • ·Fitur Cari (Ctrl+F) saat kamu mencari satu kata di catatan atau PDF tugas.
  • ·Kolom search di aplikasi chat untuk menemukan pesan lama.
  • ·Filter nama produk saat kamu ketik di kotak pencarian Shopee.

Kompleksitas O(n*m)

Run-Length Encoding

StringPemula
Fase C–FE1E5

Run-Length Encoding (RLE) memampatkan data dengan mengganti rentetan nilai yang sama dengan pasangan (jumlah, nilai). Deret AAAAA cukup ditulis 5A. Semakin panjang rentetan berulang, semakin besar penghematannya. Metode ini sederhana, cepat, dan tanpa kehilangan data, cocok untuk gambar atau data dengan banyak area seragam. Visualisasi memindai sebaris piksel dan meruntuhkan tiap rentetan menjadi satu token.

Contoh kasus

Mengompres gambar atau stiker dengan area warna solid, dan format ikon/faks lama yang menyimpan garis piksel berulang secara ringkas.

Silabus

Ganti rentetan nilai identik dengan pasangan (jumlah, nilai) — makin panjang rentetan, makin hemat.

Tujuan Belajar
  • ·Memahami konsep kompresi tanpa kehilangan (lossless)
  • ·Menerapkan penghitungan rentetan berturut
  • ·Menilai kapan RLE efektif dan kapan tidak
Cara Kerja
  • ·Pindai data dari kiri ke kanan.
  • ·Hitung berapa kali nilai yang sama berulang beruntun.
  • ·Tulis satu token (jumlah, nilai), lalu lanjut ke nilai berikutnya.
  • ·Hasilnya jauh lebih pendek bila banyak rentetan panjang.
Prasyarat
  • ·Perulangan pada deret
  • ·Membandingkan elemen bertetangga
Contoh Nyata
  • ·Kompres gambar dan stiker dengan area warna solid.
  • ·Format ikon dan faks lama.
  • ·Bagian dari format berkas seperti BMP dan PCX.

Kompleksitas O(panjang data)

KMP Search

StringMenengah
Fase D–FE1E5

KMP mencari pola di dalam teks tanpa pernah mengecek ulang huruf yang sudah cocok. Rahasianya adalah tabel LPS (awalan yang sekaligus akhiran) yang dihitung dari pola: saat terjadi ketidakcocokan, pola digeser jauh sesuai LPS, bukan hanya satu langkah seperti cara naif. Alhasil pencarian jauh lebih cepat pada teks panjang. Visualisasi menggeser pola dan menunjukkan lompatan yang dilewati.

Contoh kasus

Fitur Ctrl+F di editor kode dan peramban, serta mesin pencari yang menemukan kata di dalam dokumen panjang secara instan.

Silabus

Saat tak cocok, geser pola sesuai tabel LPS (bukan +1) — huruf yang sudah cocok tak pernah dicek ulang.

Tujuan Belajar
  • ·Memahami kelemahan pencarian naif (banyak cek ulang)
  • ·Menjelaskan tabel LPS (awalan = akhiran)
  • ·Melihat bagaimana KMP melompat saat mismatch
Cara Kerja
  • ·Hitung dulu tabel LPS dari pola (panjang awalan yang juga menjadi akhiran).
  • ·Cocokkan pola dengan teks huruf demi huruf.
  • ·Bila cocok, kedua penunjuk maju bersama.
  • ·Bila TAK cocok, geser pola sesuai LPS — penunjuk teks tetap, tak ada cek ulang.
Prasyarat
  • ·String dan indeks
  • ·Konsep awalan (prefix) dan akhiran (suffix)
Contoh Nyata
  • ·Ctrl+F di editor kode dan peramban.
  • ·Pencarian kata di dokumen panjang.
  • ·Penyaringan teks dan deteksi pola di lalu lintas jaringan.

Kompleksitas O(panjang teks + panjang pola)

Machine Learning13 pelajaran · Pemula–Lanjut

K-Nearest Neighbors (k-NN)

Machine LearningPemula
Fase D–FE4E6

k-NN mengklasifikasikan titik baru dari k tetangga terdekatnya. Hitung jarak ke semua titik latih, ambil k yang paling dekat, lalu voting mayoritas kelas mereka menentukan label titik baru. Tidak ada tahap latih terpisah — semua kerja terjadi saat prediksi.

Contoh kasus

Rekomendasi sederhana: menandai sebuah film sebagai disukai atau tidak berdasarkan mayoritas dari beberapa film paling mirip yang sudah dinilai pengguna.

Silabus

Tentukan kelas sebuah data baru dengan voting mayoritas dari k tetangga terdekatnya.

Tujuan Belajar
  • ·Memahami cara memberi label lewat kemiripan dengan data terdekat
  • ·Menjelaskan peran jumlah tetangga k dalam pengambilan keputusan
  • ·Menerapkan voting mayoritas untuk mengklasifikasi data baru
Cara Kerja
  • ·Hitung jarak data baru ke semua data yang sudah punya label.
  • ·Ambil k data yang jaraknya paling dekat.
  • ·Lihat kelas mayoritas di antara k tetangga itu.
  • ·Kelas terbanyak jadi label untuk data baru; tidak ada tahap latih terpisah.
Prasyarat
  • ·Koordinat dan jarak antar titik
Contoh Nyata
  • ·Rekomendasi film Netflix berdasarkan judul mirip yang sudah kamu suka.
  • ·AI menandai satu lagu cocok atau tidak dari lagu-lagu termirip di riwayatmu.
  • ·Filter foto yang menebak jenis objek dari gambar yang paling serupa.

Kompleksitas O(n * d)

Collaborative Filtering

Machine LearningMenengah
Fase D–FE4E6

Collaborative Filtering adalah mesin rekomendasi yang menebak kesukaanmu dari orang lain yang seleranya mirip. Algoritma mencari pengguna dengan pola suka yang paling dekat denganmu, lalu menyarankan hal yang mereka sukai tetapi belum kamu lihat. Visualisasi menampilkan tabel pengguna dan barang, pencocokan selera antar pengguna, hingga munculnya daftar rekomendasi.

Contoh kasus

Cara FYP TikTok dan baris kamu mungkin suka di Shopee memilih video atau barang berikutnya untukmu.

Silabus

Rekomendasikan sesuatu dengan mencari pengguna lain yang seleranya paling mirip denganmu.

Tujuan Belajar
  • ·Memahami cara AI merekomendasikan konten dari selera pengguna mirip
  • ·Menjelaskan cara mengukur kemiripan antar pengguna dari pola suka
  • ·Menerapkan penyaringan barang untuk menghasilkan rekomendasi baru
Cara Kerja
  • ·Catat barang atau video yang disukai tiap pengguna dalam sebuah tabel.
  • ·Untukmu, cari pengguna lain yang pola sukanya paling mirip.
  • ·Lihat hal yang mereka sukai tetapi belum pernah kamu buka.
  • ·Sarankan hal itu kepadamu sebagai rekomendasi.
  • ·Makin banyak yang kamu suka, makin akurat tebakan berikutnya.
Prasyarat
  • ·Tabel atau matriks sederhana
  • ·Konsep kemiripan atau kedekatan
Contoh Nyata
  • ·FYP TikTok yang menyajikan video mirip selera penonton serupa.
  • ·Baris kamu mungkin suka di Shopee dan Tokopedia.
  • ·Rekomendasi lagu Spotify dari pendengar yang seleranya mirip.

Kompleksitas O(jumlah pengguna * jumlah barang)

Convolution (Deteksi Tepi)

Machine LearningMenengah
Fase D–FE4E6

Convolution adalah operasi inti computer vision yang menyapukan jendela kecil 3x3 (kernel) ke seluruh piksel gambar. Di tiap posisi, nilai piksel dikalikan dengan angka pada kernel lalu dijumlahkan sehingga perubahan warna yang tajam menonjol sebagai tepi objek. Visualisasi menampilkan jendela yang bergeser sel demi sel dan peta tepi yang perlahan terbentuk dari gambar asli.

Contoh kasus

Cara filter kamera TikTok dan fitur face-unlock HP menemukan garis wajah sebelum mengenali siapa pemiliknya.

Silabus

Sapukan jendela kecil ke seluruh piksel untuk menonjolkan tepi dan pola pada gambar.

Tujuan Belajar
  • ·Memahami cara AI melihat gambar melalui jendela piksel kecil
  • ·Menjelaskan proses kalikan-lalu-jumlahkan antara kernel dan piksel
  • ·Menerapkan deteksi tepi sebagai langkah awal pengenalan objek
Cara Kerja
  • ·Tempatkan jendela 3x3 (kernel) di atas sekelompok piksel.
  • ·Kalikan tiap piksel dengan angka pada kernel, lalu jumlahkan semuanya.
  • ·Hasil penjumlahan menjadi nilai piksel baru di peta keluaran.
  • ·Geser jendela satu piksel dan ulangi sampai seluruh gambar tersapu.
  • ·Tepi objek muncul terang karena di sanalah warna berubah paling tajam.
Prasyarat
  • ·Grid dua dimensi
  • ·Perkalian dan penjumlahan dasar
Contoh Nyata
  • ·Filter dan efek wajah di TikTok atau Instagram yang perlu menemukan wajah dulu.
  • ·Face-unlock HP yang mengenali garis wajah sebelum membuka kunci.
  • ·Fitur pertajam dan kaburkan foto pada aplikasi editor gambar.

Kompleksitas O(baris * kolom)

Decision Tree

Machine LearningMenengah
Fase D–FE4E6

Decision Tree adalah model machine learning yang mengklasifikasi data dengan menyusun serangkaian pertanyaan ya/tidak menjadi sebuah pohon. Di tiap simpul, algoritma memilih pertanyaan yang paling memisahkan data ke kelompok yang lebih murni, lalu bercabang sampai mencapai daun yang berisi jawaban akhir. Visualisasi menampilkan pohon pertanyaan yang tumbuh dan jalur keputusan yang diikuti hingga sebuah data diberi label.

Contoh kasus

Aplikasi AI yang menebak jenis hewan peliharaan dari beberapa pertanyaan seperti berbulu atau tidak dan bisa terbang atau tidak.

Silabus

Klasifikasikan data dengan menyusun pertanyaan ya/tidak menjadi pohon yang bercabang ke jawaban.

Tujuan Belajar
  • ·Memahami cara AI mengambil keputusan lewat rangkaian pertanyaan sederhana
  • ·Menjelaskan cara pohon memilih pertanyaan yang paling memisahkan data
  • ·Menerapkan penelusuran cabang untuk memberi label pada data baru
Cara Kerja
  • ·Mulai dari satu pertanyaan di akar yang paling memisahkan data.
  • ·Setiap jawaban ya atau tidak membawa data ke cabang yang berbeda.
  • ·Di tiap cabang, ajukan pertanyaan lanjutan yang mempersempit kemungkinan.
  • ·Berhenti di daun ketika data sudah cukup seragam, lalu berikan label jawaban.
Prasyarat
  • ·Percabangan (if-else)
  • ·Konsep pohon (tree) sederhana
Contoh Nyata
  • ·AI galeri HP yang menebak isi foto dari beberapa ciri sederhana.
  • ·Sistem penyaring pengajuan yang memutuskan lolos atau tidak lewat cek bertahap.
  • ·Kuis online yang menebak karakter favoritmu dari jawaban ya atau tidak.

Kompleksitas O(kedalaman pohon)

Gradient Descent

Machine LearningMenengah
Fase D–FE4E6

Gradient Descent mencari titik minimum sebuah fungsi dengan bergerak melawan arah kemiringan (turunan). Tiap langkah: hitung kemiringan di posisi sekarang, lalu geser x sebesar laju-belajar dikali kemiringan. Makin dekat dasar, kemiringan mengecil sehingga langkah makin kecil sampai berhenti.

Contoh kasus

Inti pelatihan model AI: menyetel bobot jaringan saraf agar galat prediksi (loss) sekecil mungkin, satu langkah turun sedikit demi sedikit.

Silabus

Cari titik terendah sebuah fungsi dengan terus melangkah turun melawan arah kemiringan.

Tujuan Belajar
  • ·Memahami cara AI menyetel dirinya agar prediksi makin akurat
  • ·Menjelaskan hubungan kemiringan (turunan) dengan arah langkah
  • ·Menerapkan langkah kecil berulang untuk menurunkan galat (loss)
Cara Kerja
  • ·Bayangkan bola di lereng bukit yang ingin turun ke dasar lembah.
  • ·Di posisi sekarang, hitung ke arah mana lereng menurun.
  • ·Geser sedikit ke arah turun sebesar laju-belajar dikali kemiringan.
  • ·Makin dekat dasar, kemiringan makin landai sehingga langkah mengecil.
  • ·Berhenti saat sudah sampai titik paling rendah.
Prasyarat
  • ·Fungsi dan grafik
  • ·Konsep kemiringan atau turunan
Contoh Nyata
  • ·Inti latihan model AI seperti ChatGPT: menyetel bobot agar makin pintar.
  • ·Cara FYP TikTok belajar dari kesalahan tebakan supaya rekomendasi makin pas.
  • ·Sistem filter foto yang pelan-pelan mengecilkan error sampai hasilnya rapi.

Kompleksitas O(iterasi * n)

Jaringan Saraf

Machine LearningMenengah
Fase D–FE4E6

Jaringan saraf tiruan meniru cara neuron di otak bekerja. Angka masukan mengalir lewat lapisan-lapisan node; tiap node menjumlahkan sinyal berbobot yang masuk, melewatkannya lewat fungsi aktivasi, lalu meneruskannya ke lapisan berikutnya. Di ujung, node dengan nilai tertinggi menyala sebagai jawaban. Visualisasi mengalirkan sinyal dari input sampai output yang menyala.

Contoh kasus

Otak tiruan di balik ChatGPT serta fitur yang mengenali wajah atau tulisan tangan bekerja dengan aliran sinyal berbobot seperti ini.

Silabus

Sinyal masukan mengalir lewat lapisan node berbobot; node ujung dengan nilai tertinggi menjadi jawaban.

Tujuan Belajar
  • ·Memahami struktur lapisan input, hidden, dan output
  • ·Menjelaskan cara sebuah node menjumlahkan sinyal berbobot
  • ·Mengaitkan forward pass dengan cara AI modern menebak jawaban
Cara Kerja
  • ·Kalikan tiap masukan dengan bobotnya lalu jumlahkan pada tiap node.
  • ·Lewatkan hasilnya lewat fungsi aktivasi (misalnya ReLU) menjadi sinyal untuk lapisan berikut.
  • ·Ulangi lapis demi lapis sampai lapisan output.
  • ·Node output dengan nilai tertinggi dipilih sebagai jawaban.
Prasyarat
  • ·Perkalian dan penjumlahan (jumlah berbobot)
  • ·Konsep fungsi
Contoh Nyata
  • ·Model bahasa seperti ChatGPT.
  • ·Pengenal wajah dan objek pada kamera ponsel.
  • ·Filter spam dan sistem rekomendasi konten.

Kompleksitas O(jumlah koneksi antar-node)

K-Means Clustering

Machine LearningMenengah
Fase D–FE4E6

K-Means mengelompokkan data ke dalam K klaster tanpa label. Tiap iterasi berjalan dua fase: ASSIGN — setiap titik ikut centroid terdekat (jarak Euclidean); MOVE — tiap centroid pindah ke rata-rata anggotanya. Kedua fase diulang sampai penempatan tak berubah lagi (konvergen).

Contoh kasus

Segmentasi pelanggan toko online: mengelompokkan pembeli berdasarkan frekuensi dan nilai belanja menjadi beberapa segmen untuk penargetan promo per segmen.

Silabus

Kelompokkan data tanpa label ke dalam K klaster berdasarkan kedekatannya ke pusat kelompok.

Tujuan Belajar
  • ·Memahami cara AI mengelompokkan data mirip tanpa contoh jawaban
  • ·Menjelaskan dua fase berulang: ASSIGN (ikut pusat terdekat) dan MOVE (geser pusat)
  • ·Menerapkan konsep jarak untuk membentuk segmen atau kelompok
Cara Kerja
  • ·Tentukan K titik pusat (centroid) secara acak sebagai awal.
  • ·ASSIGN: tiap data ikut centroid yang paling dekat dengannya.
  • ·MOVE: tiap centroid pindah ke posisi rata-rata anggotanya.
  • ·Ulangi ASSIGN dan MOVE sampai pengelompokan tidak berubah lagi (konvergen).
Prasyarat
  • ·Koordinat dan jarak antar titik
Contoh Nyata
  • ·Shopee mengelompokkan pembeli jadi segmen untuk kirim promo yang pas.
  • ·Spotify atau TikTok mengelompokkan lagu bergaya mirip jadi satu playlist.
  • ·AI galeri HP yang otomatis mengumpulkan foto orang yang sama.

Kompleksitas O(iterasi * n * K)

Logistic Regression

Machine LearningMenengah
Fase D–FE4E6

Logistic Regression memprediksi peluang, bukan sekadar jawaban ya atau tidak. Ia menghitung skor linear dari fitur lalu menekannya ke rentang 0 sampai 1 lewat fungsi sigmoid berbentuk S. Hasilnya adalah peluang sebuah data masuk ke satu kelas; sebuah ambang (biasanya 0,5) yang memutuskan labelnya. Visualisasi menggambar kurva S dan menempatkan sebuah data pada peluangnya.

Contoh kasus

Menaksir peluang sebuah email adalah spam, atau peluang seorang siswa lulus berdasarkan nilai-nilai latihannya.

Silabus

Ubah skor linear menjadi peluang 0 sampai 1 lewat kurva sigmoid berbentuk S.

Tujuan Belajar
  • ·Membedakan prediksi peluang dari klasifikasi yang kaku
  • ·Memahami peran fungsi sigmoid
  • ·Menjelaskan cara ambang keputusan bekerja
Cara Kerja
  • ·Hitung skor linear z = w kali x tambah b dari fitur.
  • ·Lewatkan z lewat sigmoid menjadi peluang p antara 0 dan 1.
  • ·Bandingkan p dengan ambang (misalnya 0,5).
  • ·Beri label kelas 1 bila p di atas ambang, kelas 0 bila di bawahnya.
Prasyarat
  • ·Fungsi linear (garis)
  • ·Konsep peluang antara 0 dan 1
Contoh Nyata
  • ·Deteksi spam pada email.
  • ·Prediksi risiko penyakit dari gejala.
  • ·Skor kelayakan kredit.

Kompleksitas O(jumlah fitur)

Naive Bayes (Penyaring Spam)

Machine LearningMenengah
Fase D–FE4E6

Naive Bayes adalah model machine learning yang mengklasifikasi teks dengan menjumlahkan bukti dari tiap kata secara terpisah. Kata pemicu seperti gratis atau menang menambah skor ke arah SPAM, sedangkan kata biasa menariknya ke arah AMAN, lalu kelas dengan skor tertinggi dipilih. Visualisasi menampilkan sebuah pesan yang dipindai kata demi kata beserta skor yang naik hingga diberi label SPAM atau AMAN.

Contoh kasus

Cara email Gmail dan filter chat otomatis memisahkan pesan promo atau penipuan dari pesan penting temanmu.

Silabus

Klasifikasikan pesan dengan menjumlahkan skor tiap kata menuju kelas SPAM atau AMAN.

Tujuan Belajar
  • ·Memahami cara AI menyaring spam dari kata-kata pemicunya
  • ·Menjelaskan cara tiap kata menambah atau mengurangi skor sebuah kelas
  • ·Menerapkan pemilihan kelas berdasarkan skor bukti tertinggi
Cara Kerja
  • ·Pelajari kata mana yang sering muncul di pesan spam dan mana di pesan aman.
  • ·Untuk pesan baru, mulai dari skor awal untuk tiap kelas.
  • ·Tiap kata pemicu menambah skor ke kelas yang cocok dengannya.
  • ·Anggap tiap kata berdiri sendiri agar penjumlahan skor jadi sederhana.
  • ·Pilih kelas dengan skor akhir tertinggi sebagai keputusan SPAM atau AMAN.
Prasyarat
  • ·Penjumlahan skor
  • ·Konsep peluang sederhana
Contoh Nyata
  • ·Filter spam di Gmail yang memindahkan email promo ke folder terpisah.
  • ·Deteksi pesan penipuan berhadiah palsu di aplikasi chat.
  • ·Penyaring komentar berisi tautan judi di kolom komentar media sosial.

Kompleksitas O(jumlah kata)

Perceptron

Machine LearningMenengah
Fase D–FE4E6

Perceptron mencari GARIS pemisah dua kelas titik. Untuk tiap titik yang salah klasifikasi, bobot digeser sedikit ke arah yang benar sehingga garis berputar. Bila data terpisah linear, dijamin konvergen. Cikal-bakal neuron pada jaringan saraf.

Contoh kasus

Klasifikasi biner sederhana: memisahkan email spam vs bukan-spam dengan satu garis keputusan yang terus diperbaiki.

Silabus

Cari satu garis pemisah dua kelas dengan menggeser bobot tiap kali ada titik yang salah tebak.

Tujuan Belajar
  • ·Memahami unit dasar penyusun jaringan saraf (neuron buatan)
  • ·Menjelaskan cara garis keputusan diperbaiki dari kesalahan
  • ·Menerapkan klasifikasi biner dengan satu garis pemisah
Cara Kerja
  • ·Mulai dengan sebuah garis pemisah tebakan awal.
  • ·Cek tiap titik: sudah berada di sisi yang benar atau belum.
  • ·Untuk titik yang salah klasifikasi, geser bobot sedikit ke arah yang benar.
  • ·Garis ikut berputar; ulangi sampai semua titik terpisah rapi (konvergen bila data terpisah linear).
Prasyarat
  • ·Koordinat dan garis pada bidang
  • ·Konsep bobot atau penjumlahan berbobot
Contoh Nyata
  • ·Memisahkan email spam vs bukan-spam dengan satu garis keputusan.
  • ·Cikal-bakal neuron di balik AI generatif dan filter wajah masa kini.
  • ·Deteksi komentar toxic vs aman di kolom komentar media sosial.

Kompleksitas O(iterasi * n)

Regresi Linear

Machine LearningMenengah
Fase D–FE4E6

Regresi linear mencari satu garis lurus yang paling pas melewati sekumpulan titik data, lalu memakainya untuk memprediksi. Paling pas berarti jarak vertikal (error) dari tiap titik ke garis, dijumlahkan dan dikuadratkan, sekecil mungkin — metode kuadrat terkecil. Setelah garis ketemu, kita bisa menaksir nilai untuk masukan baru. Visualisasi memiringkan garis sampai total error terkecil lalu memprediksi sebuah nilai.

Contoh kasus

Menaksir nilai ujian dari jam belajar, atau memperkirakan harga rumah dari luasnya, berdasarkan pola data yang sudah ada.

Silabus

Cari garis lurus dengan total jarak-kuadrat ke semua titik terkecil, lalu pakai untuk memprediksi.

Tujuan Belajar
  • ·Memahami ide garis best-fit
  • ·Menjelaskan error sebagai jarak titik ke garis
  • ·Memakai garis untuk memprediksi nilai baru
Cara Kerja
  • ·Sebar titik data pada bidang (misal jam belajar vs nilai).
  • ·Ukur error = jarak vertikal tiap titik ke garis.
  • ·Miringkan garis sampai total error-kuadrat paling kecil (kuadrat terkecil).
  • ·Pakai garis final untuk memprediksi nilai dari masukan baru.
Prasyarat
  • ·Persamaan garis y = mx + b
  • ·Koordinat dan titik
  • ·Konsep kuadrat dan jumlah
Contoh Nyata
  • ·Menaksir nilai ujian dari jam belajar.
  • ·Perkiraan harga rumah dari luas dan lokasi.
  • ·Prediksi tren penjualan dan cuaca.

Kompleksitas O(n) untuk rumus tertutup

Genetic Algorithm

Machine LearningLanjut
Fase E–FE4E6

Genetic Algorithm meniru evolusi alam untuk menemukan solusi bagus tanpa mencoba semua kemungkinan. Sekumpulan kandidat solusi (populasi) dinilai dengan fungsi fitness; yang terbaik digabung menghasilkan solusi baru dengan sedikit mutasi acak, generasi demi generasi. Perlahan populasi bergerak menuju solusi yang makin baik. Visualisasi mengevolusikan rute pengantaran sampai jaraknya jauh lebih pendek.

Contoh kasus

Mencari urutan rute pengantaran Gojek yang mendekati paling pendek, ketika mencoba semua kombinasi butuh waktu terlalu lama.

Silabus

Nilai sekumpulan solusi, gabungkan yang terbaik, mutasi sedikit, ulangi — evolusi menuju solusi bagus.

Tujuan Belajar
  • ·Memahami metode pencarian yang terinspirasi evolusi
  • ·Menjelaskan peran fitness, crossover, dan mutasi
  • ·Mengetahui kapan solusi cukup baik lebih realistis daripada sempurna
Cara Kerja
  • ·Mulai dari populasi solusi acak.
  • ·Nilai tiap solusi dengan fungsi fitness (misalnya 1 dibagi panjang rute).
  • ·Pilih solusi terbaik sebagai induk.
  • ·Gabungkan induk (crossover) dan beri mutasi kecil untuk membentuk generasi baru, lalu ulangi.
Prasyarat
  • ·Konsep fungsi penilaian (fitness)
  • ·Bilangan acak dan array/daftar
Contoh Nyata
  • ·Optimasi rute dan jadwal pengantaran.
  • ·Desain antena dan sirkuit (dipakai NASA).
  • ·Menyetel strategi dan level dalam pengembangan game.

Kompleksitas O(generasi x ukuran populasi)

Q-Learning

Machine LearningLanjut
Fase E–FE4E6

Q-Learning membuat agen belajar NILAI tiap keadaan dari reward: V(s) = diskon x nilai tetangga terbaik. Nilai menyebar keluar dari goal (backup Bellman) sampai stabil, lalu policy = selalu bergerak ke tetangga bernilai tertinggi. Inti reinforcement learning.

Contoh kasus

Robot belajar rute optimal ke tujuan lewat coba-coba, memperbarui nilai tiap sel dari hadiah yang diterima.

Silabus

Agen belajar nilai tiap keadaan dari reward, lalu selalu bergerak ke tetangga bernilai tertinggi.

Tujuan Belajar
  • ·Memahami dasar reinforcement learning: belajar dari hadiah lewat coba-coba
  • ·Menjelaskan cara nilai menyebar keluar dari tujuan (goal)
  • ·Menerapkan aturan pilih tetangga bernilai tertinggi sebagai strategi (policy)
Cara Kerja
  • ·Beri reward besar pada keadaan tujuan (goal).
  • ·Nilai tiap sel = faktor diskon dikali nilai tetangga terbaiknya.
  • ·Nilai merambat keluar dari goal lewat coba-coba sampai stabil.
  • ·Strategi akhir: dari mana pun, selalu melangkah ke tetangga bernilai paling tinggi.
Prasyarat
  • ·Grid dan tetangga sel
  • ·Konsep reward atau nilai
Contoh Nyata
  • ·AI game seperti bot Mobile Legends yang belajar rute dan aksi terbaik.
  • ·Robot yang belajar jalan ke tujuan lewat coba-coba dan hadiah.
  • ·Sistem yang mengatur langkah agar skor akhir semaksimal mungkin.

Kompleksitas O(iterasi * jumlah_state)

Literasi & Etika AI9 pelajaran · Pemula–Menengah

AI untuk Kebaikan

Literasi & Etika AIPemula
Fase C–FE3E1

Prinsip dasar KA: dibangun untuk menyejahterakan manusia, bukan merugikan. Perancang yang beretika menjaga manfaatnya jauh lebih besar dari bahayanya.

Contoh kasus

AI bantu tunanetra 'melihat' jalan (baik) vs AI yang menipu atau mengucilkan orang (buruk).

Silabus

AI dibuat untuk membantu manusia. Timbang manfaat vs bahaya; rancang agar tak merugikan.

Tujuan Belajar
  • ·Memahami prinsip AI untuk kesejahteraan manusia
  • ·Menimbang manfaat dan bahaya sebuah penggunaan AI
  • ·Sikap empati & tidak merugikan orang lain
Cara Kerja
  • ·Tiap AI punya sisi manfaat dan sisi bahaya
  • ·Rancangan beretika memperbesar manfaat, memperkecil bahaya
  • ·Yang merugikan/menipu melanggar prinsip
  • ·Manusia (dan perancang) bertanggung jawab menjaganya
Contoh Nyata
  • ·AI bantu disabilitas & kesehatan
  • ·AI deteksi bencana dini
  • ·vs penipuan/manipulasi berbasis AI

Pesan kunci AI harus membantu, bukan merugikan. Timbang manfaat vs bahaya.

Bagaimana AI Belajar

Literasi & Etika AIPemula
Fase C–FE3E4

AI mengenali pola dari banyak contoh — bukan sihir. Ia bisa terdengar sangat percaya diri, tapi tetap bisa keliru. Yakin bukan berarti benar.

Contoh kasus

AI yakin 98% sebuah foto adalah anjing, padahal jelas-jelas kucing.

Silabus

AI menebak dari contoh yang pernah dilihat. Angka keyakinan tinggi tidak menjamin jawaban benar.

Tujuan Belajar
  • ·Memahami AI sebagai pencocok pola dari data, bukan sihir
  • ·Menyadari AI bisa 'halusinasi' / pede tapi salah
  • ·Terbiasa mengecek ulang jawaban AI
Cara Kerja
  • ·AI belajar memisahkan contoh berlabel
  • ·Contoh baru ditebak seperti contoh terdekat
  • ·Untuk kasus ambigu, tebakan bisa salah walau keyakinannya tinggi
Prasyarat
  • ·Mesin Cerdas vs Mesin Biasa
Contoh Nyata
  • ·Teachable Machine di kelas
  • ·Google Lens / pengenalan gambar
  • ·Jawaban chatbot AI

Pesan kunci AI = pola dari contoh. Pede ≠ benar; selalu cek ulang.

Mesin Cerdas vs Mesin Biasa

Literasi & Etika AIPemula
Fase C–FE3E1

Mesin biasa hanya mengikuti aturan tetap. Mesin cerdas (AI) mengenali pola dari contoh, dan 'mengindra' dunia lewat kamera & mikrofon — cara yang berbeda dari indra manusia.

Contoh kasus

Kalkulator selalu ikut aturan yang sama; asisten AI mengenali suara & wajah yang belum pernah persis ia lihat.

Silabus

Mesin biasa mengikuti aturan tetap; mesin cerdas mengenali pola dari contoh.

Tujuan Belajar
  • ·Membedakan mesin cerdas dan mesin non-cerdas
  • ·Memahami cara komputer 'mengindra' (kamera, mikrofon) vs indra manusia
  • ·Mengenali AI di sekitar sehari-hari
Cara Kerja
  • ·Manusia mengindra lewat mata & telinga; komputer lewat kamera (piksel) & mikrofon (gelombang)
  • ·Mesin biasa: input sama → output sama, selalu
  • ·Mesin cerdas: mengenali pola sehingga bisa menghadapi contoh baru
Contoh Nyata
  • ·Buka kunci HP dengan wajah
  • ·Asisten suara
  • ·Kalkulator vs asisten AI

Pesan kunci Mesin biasa = aturan tetap. Mesin cerdas = pola dari contoh.

Bias AI

Literasi & Etika AIMenengah
Fase D–FE3E4

AI belajar dari data. Kalau datanya berat sebelah, keputusannya jadi tidak adil bagi kelompok yang jarang muncul di data — bias bisa merugikan orang sungguhan.

Contoh kasus

Filter wajah yang sulit mengenali kulit gelap karena dilatih dari wajah yang kurang beragam.

Silabus

Data timpang di dalam, keputusan tak adil di luar. Kualitas data = kualitas keadilan.

Tujuan Belajar
  • ·Memahami hubungan kualitas data dengan bias AI
  • ·Mengenali bias sebagai persoalan etika, bukan cuma teknis
  • ·Tahu bahwa memperbaiki data memperbaiki keadilan
Cara Kerja
  • ·AI menarik garis keputusan dari data latih
  • ·Data berat sebelah menarik garis ke kelompok mayoritas
  • ·Kelompok minoritas jadi lebih sering salah dinilai
  • ·Menyeimbangkan data meluruskan garisnya
Prasyarat
  • ·Bagaimana AI Belajar
Contoh Nyata
  • ·Face-unlock & filter wajah
  • ·Seleksi lamaran kerja otomatis
  • ·Skoring pinjol

Pesan kunci AI seadil datanya. Data timpang menghasilkan keputusan bias.

Deepfake: Asli vs AI

Literasi & Etika AIMenengah
Fase D–FE3E2

Media palsu buatan AI makin mirip aslinya. Tapi sering ada kejanggalan kecil yang membongkarnya — kalau kita berhenti sejenak dan memeriksa sebelum percaya.

Contoh kasus

Video atau voice-note palsu artis/guru; face-swap teman sekelas; iklan 'endorse' AI yang menipu.

Silabus

Deepfake makin meyakinkan; jeda, cari kejanggalan, dan telusuri sumber aslinya sebelum percaya.

Tujuan Belajar
  • ·Memahami bahwa media (foto/suara/video) bisa dibuat AI
  • ·Mengenali tanda-tanda kejanggalan deepfake
  • ·Terbiasa memverifikasi sebelum percaya & membagikan
Cara Kerja
  • ·AI menyusun wajah/suara palsu dari banyak contoh
  • ·Detailnya sering tak konsisten: jari, tepi, kedip, bayangan
  • ·Menyapu dan mencocokkan detail membongkar yang palsu
  • ·Ragu? Cari sumber aslinya
Prasyarat
  • ·Bagaimana AI Belajar
Contoh Nyata
  • ·Video palsu tokoh publik
  • ·Penipuan suara 'orang tua minta transfer'
  • ·Face-swap tanpa izin

Pesan kunci Yang mirip belum tentu asli. Jeda, periksa kejanggalan, cek sumber.

FYP yang Menyempit

Literasi & Etika AIMenengah
Fase D–FE3E2

Algoritma rekomendasi belajar dari apa yang kamu tonton, lalu menampilkan lebih banyak hal serupa — perlahan mempersempit ragam konten yang kamu lihat. Inilah filter bubble atau echo chamber.

Contoh kasus

Tonton beberapa video game yang sama, dan dalam sehari seluruh FYP-mu jadi game itu saja — kamu berhenti melihat hal lain.

Silabus

Feed-mu bukan cermin dunia; ia cermin kebiasaanmu — dan makin lama makin sempit.

Tujuan Belajar
  • ·Memahami cara algoritma rekomendasi belajar dari perilakumu
  • ·Menyadari efek filter bubble pada cara pandang
  • ·Terbiasa sengaja mencari sudut pandang berbeda
Cara Kerja
  • ·Tiap tontonan menaikkan bobot topik itu
  • ·Konten serupa muncul lebih sering, yang lain memudar
  • ·Lama-lama ragam konten menyempit ke satu tema
Prasyarat
  • ·Terbiasa memakai media sosial / aplikasi video
Contoh Nyata
  • ·FYP TikTok/Reels
  • ·Rekomendasi YouTube & toko online
  • ·Timeline berita

Pesan kunci Rekomendasi mempersempit; sengaja jelajahi hal baru untuk melawannya.

Hoaks Menyebar

Literasi & Etika AIMenengah
Fase D–FE3E2

Kabar bohong menyebar seperti virus lewat jaringan pertemanan — makin banyak yang membagikan, makin cepat menular. Satu orang yang mengecek fakta bisa memutus rantainya.

Contoh kasus

Hoaks 'besok libur sekolah' diteruskan di grup WA kelas, sampai satu orang mengeceknya dan berhenti membagikan.

Silabus

Hoaks menular lewat 'bagikan'. Berhenti sejenak untuk cek = memutus rantai penularan.

Tujuan Belajar
  • ·Memahami penyebaran misinformasi sebagai penularan di jaringan
  • ·Menyadari peran tiap orang dalam meneruskan/menghentikan
  • ·Terbiasa jeda dan verifikasi sebelum membagikan
Cara Kerja
  • ·Satu sumber hoaks membagikan ke tetangganya
  • ·Tiap penerima yang ikut membagikan menulari lagi (eksponensial)
  • ·Orang yang cek-fakta tidak meneruskan → tetangganya aman
  • ·Beberapa pengecek memutus rantai lebih awal
Prasyarat
  • ·Terbiasa memakai grup pesan / media sosial
Contoh Nyata
  • ·Broadcast WhatsApp keluarga & kelas
  • ·Giveaway & undian palsu
  • ·Kabar bencana yang belum tentu benar

Pesan kunci Misinformasi menular lewat share. Jeda + cek fakta memutus rantai.

Jejak Digital

Literasi & Etika AIMenengah
Fase C–FE3E2

Tiap tap, like, dan lokasi jadi satu titik data. Dikumpulkan, semuanya merakit profil dirimu — yang bisa dijual ke pengiklan tanpa kamu sadari.

Contoh kasus

Aplikasi/game gratis minta izin kontak & lokasi; iklan tiba-tiba 'membaca pikiran' setelah kamu membicarakannya.

Silabus

Data kecil yang kamu tinggalkan dikumpulkan jadi profil bernilai. Jaga jejakmu.

Tujuan Belajar
  • ·Memahami bahwa perilaku online meninggalkan data
  • ·Menyadari data dirakit jadi profil & bisa diperjualbelikan
  • ·Lebih hati-hati memberi izin & membagikan data
Cara Kerja
  • ·Tiap aksi (tap, like, lokasi) = satu titik data
  • ·Titik-titik dikumpulkan lintas aplikasi
  • ·Pola dirakit jadi profil (usia, minat, domisili, daya beli)
  • ·Profil dipakai/dijual untuk menargetkan iklan
Contoh Nyata
  • ·Izin aplikasi gratis (kontak, lokasi, mikrofon)
  • ·Iklan yang terasa 'menguping'
  • ·Kuis/filter yang minta data pribadi

Pesan kunci Data kecilmu dirakit jadi profil yang dijual. Beri izin dengan sadar.

Manusia Pegang Kendali

Literasi & Etika AIMenengah
Fase E–FE3

AI boleh mengusulkan, tapi keputusan penting tak boleh sepenuhnya diserahkan padanya. Manusia yang memikul tanggung jawab etika dan hukum.

Contoh kasus

Diagnosis medis, kemudi mobil, atau nilai rapor yang harus tetap disetujui manusia — bukan diputus AI sendiri.

Silabus

Untuk keputusan berisiko, AI mengusulkan tetapi manusia yang memutuskan & bertanggung jawab.

Tujuan Belajar
  • ·Memahami batas mendelegasikan keputusan ke AI
  • ·Mengenali tanggung jawab etika & hukum ada pada manusia
  • ·Merancang alur 'AI usul → manusia setujui' untuk aksi penting
Cara Kerja
  • ·AI memberi usulan/prediksi
  • ·Untuk aksi berisiko/tak bisa dibatalkan, gerbang persetujuan manusia menahannya
  • ·Manusia memeriksa, lalu setujui atau tolak
  • ·Tanggung jawab tetap di manusia
Prasyarat
  • ·Bias AI
  • ·Bagaimana AI Belajar
Contoh Nyata
  • ·Rekomendasi diagnosis dokter
  • ·Mobil swakemudi
  • ·Penilaian/seleksi otomatis

Pesan kunci AI usul, manusia putuskan. Keputusan penting butuh persetujuan manusia.

Kripto & Keamanan5 pelajaran · Pemula–Lanjut

Caesar Cipher (Sandi Geser)

Kripto & KeamananPemula
Fase D–FE1E2

Caesar Cipher adalah teknik enkripsi klasik yang menyembunyikan pesan dengan menggeser tiap huruf sejauh angka tertentu di dalam alfabet, misalnya geser tiga sehingga A menjadi D. Penerima yang tahu angka gesernya bisa mengembalikan huruf ke posisi semula untuk membaca pesan asli. Visualisasi menampilkan tiap huruf yang bergeser di sepanjang alfabet dari teks asli menjadi teks tersandi.

Contoh kasus

Menulis pesan rahasia ke teman sebangku agar isinya tidak langsung terbaca kalau kertasnya jatuh ke tangan orang lain.

Silabus

Sembunyikan pesan dengan menggeser tiap huruf sejauh angka rahasia di dalam alfabet.

Tujuan Belajar
  • ·Memahami ide dasar enkripsi: mengubah pesan agar tidak terbaca langsung
  • ·Menjelaskan cara pergeseran huruf menyandi dan membuka pesan
  • ·Menerapkan penyandian dan pembacaan pesan dengan kunci geser
Cara Kerja
  • ·Sepakati satu angka geser sebagai kunci rahasia, misalnya tiga.
  • ·Geser tiap huruf pesan maju sejauh angka itu di alfabet.
  • ·Huruf di ujung alfabet berputar kembali ke awal (Z kembali ke A).
  • ·Untuk membaca, penerima menggeser tiap huruf mundur sejauh angka yang sama.
Prasyarat
  • ·Urutan huruf alfabet
  • ·Penjumlahan dan sisa bagi (modulo) sederhana
Contoh Nyata
  • ·Menyandikan pesan rahasia antarteman agar tidak langsung terbaca.
  • ·Contoh awal untuk memahami kenapa chat modern perlu enkripsi.
  • ·Teka-teki sandi geser pada permainan atau kegiatan pramuka.

Kompleksitas O(n)

Luhn Checksum

Kripto & KeamananPemula
Fase D–FE1E2

Algoritma Luhn adalah rumus sederhana yang memeriksa apakah sebuah nomor kartu masuk akal sebelum diproses. Digit ditelusuri dari kanan secara selang-seling (digit di posisi tertentu digandakan), lalu semuanya dijumlahkan; bila total habis dibagi 10, nomor lolos pemeriksaan. Cara ini menangkap salah ketik satu digit secara instan. Visualisasi menandai digit yang digandakan dan menjumlahkan sampai lolos bagi 10.

Contoh kasus

Saat kamu salah mengetik satu angka nomor kartu di aplikasi OVO atau GoPay, sistem langsung menolaknya tanpa perlu menghubungi bank.

Silabus

Gandakan digit selang-seling dari kanan lalu jumlahkan; nomor valid bila totalnya habis dibagi 10.

Tujuan Belajar
  • ·Memahami konsep checksum untuk mendeteksi kesalahan
  • ·Menerapkan langkah-langkah Luhn pada sederet digit
  • ·Menjelaskan mengapa validasi lokal menghemat waktu dan biaya
Cara Kerja
  • ·Telusuri digit dari paling kanan ke kiri.
  • ·Gandakan tiap digit di posisi selang-seling (bila hasilnya lebih dari 9, kurangi 9).
  • ·Jumlahkan semua digit hasilnya.
  • ·Bila total mod 10 sama dengan 0, nomor dinyatakan valid.
Prasyarat
  • ·Operasi modulo (sisa bagi)
  • ·Perulangan pada digit angka
Contoh Nyata
  • ·Validasi nomor kartu kredit dan debit di situs belanja.
  • ·Pengecekan nomor IMEI pada ponsel.
  • ·Validasi nomor identitas di banyak negara.

Kompleksitas O(jumlah digit)

Hash Avalanche

Kripto & KeamananMenengah
Fase D–FE1E2

Fungsi hash mengubah teks apa pun menjadi sidik jari angka berukuran tetap. Efek avalanche membuat perubahan satu huruf saja mengubah sekitar setengah bit hasilnya — tak ada pola yang bocor dari input ke output. Inilah alasan hash tak bisa dibalik menjadi teks aslinya. Visualisasi membandingkan dua teks yang nyaris sama dan menyalakan bit-bit yang berubah.

Contoh kasus

Password kamu disimpan sebagai hash, bukan teks asli. Situs hanya mencocokkan hash-nya, sehingga bocornya database tidak langsung membocorkan password.

Silabus

Ubah satu huruf, setengah bit hasil hash berubah total — sidik jari tetap yang mustahil dibalik.

Tujuan Belajar
  • ·Memahami apa itu fungsi hash dan sifat satu-arahnya
  • ·Menjelaskan efek avalanche dan mengapa penting untuk keamanan
  • ·Mengaitkan hash dengan cara password disimpan dengan aman
Cara Kerja
  • ·Ambil teks masukan huruf demi huruf.
  • ·Aduk tiap huruf ke sebuah angka besar 64-bit lewat operasi campur.
  • ·Perubahan satu huruf menyebar ke seluruh bit (efek avalanche).
  • ·Hasil akhir adalah sidik jari tetap yang tampak acak dan tak bisa dikembalikan ke teks asli.
Prasyarat
  • ·Sistem bilangan biner (bit)
  • ·Konsep fungsi (input menghasilkan output)
Contoh Nyata
  • ·Menyimpan password di server tanpa mengetahui teks aslinya.
  • ·Memastikan file unduhan tidak diubah lewat pencocokan sidik jari.
  • ·Alamat dompet kripto dan penanda commit di Git.

Kompleksitas O(panjang teks)

XOR One-Time Pad

Kripto & KeamananMenengah
Fase D–FE1E2

One-Time Pad mengenkripsi pesan dengan meng-XOR tiap karakter memakai kunci acak sekali pakai. XOR punya sifat khusus: meng-XOR dua kali dengan kunci yang sama akan mengembalikan pesan asli. Selama kunci benar-benar acak, sepanjang pesan, dan hanya dipakai sekali, sandi ini secara teori mustahil dipecahkan. Visualisasi menyandikan lalu membuka kembali pesan dengan kunci yang sama.

Contoh kasus

Dua orang yang sudah bertukar buku kunci acak identik bisa berkirim pesan rahasia yang secara teori tak bisa dibongkar pihak ketiga.

Silabus

XOR pesan dengan kunci acak; XOR lagi dengan kunci yang sama membuka pesannya — sempurna bila kunci sekali pakai.

Tujuan Belajar
  • ·Memahami operasi XOR dan sifat reversibelnya
  • ·Menjelaskan syarat One-Time Pad yang tak terpecahkan
  • ·Membedakan enkripsi (bisa dibalik) dari hashing (satu arah)
Cara Kerja
  • ·Ubah tiap karakter pesan menjadi angka atau bit.
  • ·XOR-kan dengan karakter kunci di posisi yang sama untuk menghasilkan sandi.
  • ·Kirim sandi; penerima meng-XOR lagi dengan kunci yang sama.
  • ·Karena a XOR k XOR k sama dengan a, pesan asli muncul kembali.
Prasyarat
  • ·Operasi bit (AND, OR, XOR)
  • ·Representasi karakter sebagai angka (ASCII)
Contoh Nyata
  • ·Dasar konsep di balik enkripsi modern (AES memakai XOR di dalamnya).
  • ·Saluran komunikasi rahasia era Perang Dingin.
  • ·Menyembunyikan data dengan kunci di banyak game dan aplikasi.

Kompleksitas O(panjang pesan)

Diffie-Hellman (Tukar Kunci)

Kripto & KeamananLanjut
Fase E–FE1E2

Diffie-Hellman adalah protokol pertukaran kunci yang memungkinkan dua orang menyepakati satu kunci rahasia bersama meski semua percakapan mereka bisa disadap. Tiap pihak mencampur warna publik bersama dengan warna rahasianya sendiri, bertukar hasil campuran, lalu mencampurnya sekali lagi sehingga keduanya sampai pada warna akhir yang sama tanpa pernah mengirim warna rahasianya. Visualisasi menggunakan metafora campur cat untuk memperlihatkan kunci bersama terbentuk di kedua sisi kanal terbuka.

Contoh kasus

Cara aplikasi seperti WhatsApp menyepakati kunci rahasia bersama lewat internet terbuka agar chatmu terenkripsi ujung ke ujung.

Silabus

Dua orang menyepakati kunci rahasia bersama lewat kanal terbuka tanpa pernah mengirim rahasianya.

Tujuan Belajar
  • ·Memahami cara membuat rahasia bersama tanpa membocorkannya
  • ·Menjelaskan metafora campur cat untuk pertukaran kunci
  • ·Menerapkan konsep operasi satu arah yang sulit dibalik penyadap
Cara Kerja
  • ·Kedua pihak sepakati satu warna publik yang boleh diketahui siapa saja.
  • ·Masing-masing memilih warna rahasia sendiri yang tidak dibagikan.
  • ·Tiap pihak mencampur warna publik dengan warna rahasianya, lalu saling bertukar hasilnya.
  • ·Tiap pihak mencampur campuran yang diterima dengan warna rahasianya sendiri.
  • ·Keduanya kini punya warna akhir yang sama sebagai kunci bersama, sementara penyadap tak bisa menirunya.
Prasyarat
  • ·Perkalian dan pangkat
  • ·Sisa bagi (modulo)
  • ·Ide dasar kunci rahasia
Contoh Nyata
  • ·Pembentukan kunci enkripsi ujung ke ujung pada WhatsApp dan Signal.
  • ·Gembok HTTPS di browser saat kamu membuka situs yang aman.
  • ·Sambungan aman aplikasi mobile banking lewat internet publik.

Kompleksitas O(log n) per pangkat modulo

Fisika13 pelajaran · Pemula–Menengah

Archimedes

FisikaPemula
Fase C–FE1

Hukum Archimedes menyatakan bahwa benda dalam air mendapat gaya apung ke atas sebesar berat air yang dipindahkannya (F_apung = ρ_air × V_tercelup × g). Sebuah benda terapung bila gaya apung ini mampu mengimbangi beratnya. Itulah paradoks kapal baja: baja pejal tenggelam karena volumenya kecil, tetapi kapal dibuat berongga sehingga memindahkan banyak air — gaya apungnya jadi cukup besar untuk menahan seluruh berat kapal. Visualisasi membandingkan balok baja pejal yang tenggelam dengan kapal berongga yang terapung.

Contoh kasus

Kapal baja raksasa yang terapung, dan sebaliknya sebuah paku besi kecil yang langsung tenggelam.

Silabus

Gaya apung = berat air yang dipindahkan; terapung bila gaya apung ≥ berat benda.

Tujuan Belajar
  • ·Memahami gaya apung dan air yang dipindahkan
  • ·Menjelaskan mengapa bentuk berongga bisa terapung
  • ·Membandingkan benda pejal dengan benda berongga
Cara Kerja
  • ·Benda dalam air mendapat gaya apung ke atas.
  • ·Besarnya = berat air yang dipindahkan (F = ρ_air × V_tercelup × g).
  • ·Baja pejal: volume kecil → air dipindahkan sedikit → gaya apung < berat → tenggelam.
  • ·Kapal berongga: memindahkan banyak air → gaya apung = berat → terapung.
Prasyarat
  • ·Konsep berat dan gaya
  • ·Volume
Contoh Nyata
  • ·Kapal dan tongkang baja.
  • ·Kapal selam yang mengatur daya apung.
  • ·Pelampung dan jaket keselamatan.

Rumus kunci F_apung = ρ_air × V_tercelup × g ; terapung bila F_apung ≥ berat

Bandul

FisikaPemula
Fase C–FE1

Bandul adalah beban yang tergantung pada tali dan berayun bolak-balik. Yang mengejutkan, waktu satu ayunan penuh (periode) hanya bergantung pada panjang tali dan gravitasi — bukan pada massa beban atau seberapa jauh diayun (untuk sudut kecil). Tali yang lebih panjang berayun lebih lambat. Karena keteraturan inilah bandul dipakai pada jam. Visualisasi membandingkan bandul tali pendek dan panjang serta menghitung periodenya.

Contoh kasus

Jam bandul kuno, ayunan di taman bermain, dan metronom yang menjaga tempo musik.

Silabus

Periode T = 2π√(L/g); hanya bergantung panjang tali dan gravitasi, bukan massa atau amplitudo.

Tujuan Belajar
  • ·Memahami periode dan ayunan bandul
  • ·Menjelaskan mengapa massa tak memengaruhi periode
  • ·Mengaitkan panjang tali dengan kecepatan ayunan
Cara Kerja
  • ·Beban tergantung pada tali berayun bolak-balik.
  • ·Periode (waktu satu ayunan) = 2π√(L/g).
  • ·Massa beban dan amplitudo (untuk sudut kecil) tidak mengubah periode.
  • ·Tali lebih panjang → periode lebih besar → ayunan lebih lambat.
Prasyarat
  • ·Konsep waktu dan periode
  • ·Akar kuadrat (dasar)
Contoh Nyata
  • ·Jam bandul.
  • ·Ayunan di taman bermain.
  • ·Metronom penjaga tempo musik.

Rumus kunci T = 2π√(L/g)

Hukum II Newton

FisikaPemula
Fase C–FE1

Hukum II Newton menghubungkan gaya, massa, dan percepatan: percepatan sebuah benda sama dengan gaya yang mendorongnya dibagi massanya (a = F/m), atau ditulis F = m·a. Artinya gaya yang sama menghasilkan percepatan lebih kecil pada benda yang lebih berat. Itulah sebabnya mobil atau truk berat lebih susah direm dan butuh mesin lebih kuat untuk melaju secepat kendaraan ringan. Visualisasi mendorong benda ringan dan berat dengan gaya sama lalu membandingkan percepatannya.

Contoh kasus

Kenapa truk bermuatan penuh butuh jarak lebih jauh untuk berhenti dibanding motor, dan kenapa mobil balap dibuat seringan mungkin.

Silabus

a = F/m (atau F = m·a); gaya sama pada massa lebih besar menghasilkan percepatan lebih kecil.

Tujuan Belajar
  • ·Memahami hubungan gaya, massa, dan percepatan
  • ·Menjelaskan mengapa benda berat lebih lambat dipercepat
  • ·Menerapkan rumus F = m·a
Cara Kerja
  • ·Gaya mendorong benda bermassa m.
  • ·Percepatan a = F/m: makin besar gaya, makin besar percepatan.
  • ·Massa lebih besar melawan percepatan → a lebih kecil untuk gaya yang sama.
  • ·Ditulis ulang menjadi F = m × a.
Prasyarat
  • ·Konsep gaya
  • ·Pembagian dan perkalian
Contoh Nyata
  • ·Truk berat butuh jarak pengereman lebih jauh.
  • ·Mobil balap dibuat ringan agar cepat dipercepat.
  • ·Roket butuh dorongan besar untuk massa besar.

Rumus kunci a = F / m ; F = m × a

Hukum Ohm

FisikaPemula
Fase C–FE1

Hukum Ohm menghubungkan tegangan (V), arus (I), dan hambatan (R): I = V/R. Makin besar hambatan, makin kecil arus yang mengalir pada tegangan yang sama. Inilah alasan sebuah LED selalu dipasang seri dengan resistor: tanpa resistor, hambatan nyaris nol membuat arus melonjak dan LED terbakar; resistor yang tepat menahan arus ke tingkat aman. Visualisasi mengalirkan arus pada rangkaian dan membandingkan tanpa-resistor dengan resistor yang benar.

Contoh kasus

Menghitung nilai resistor untuk menyalakan LED dengan aman dari pin 5V Arduino tanpa merusaknya.

Silabus

I = V/R; hambatan lebih besar → arus lebih kecil. Resistor membatasi arus agar komponen aman.

Tujuan Belajar
  • ·Memahami hubungan tegangan, arus, dan hambatan
  • ·Menjelaskan mengapa LED butuh resistor
  • ·Menghitung arus dari tegangan dan hambatan
Cara Kerja
  • ·Tegangan mendorong arus mengalir dalam rangkaian.
  • ·Arus I = V / R.
  • ·Tanpa resistor (R mendekati 0), arus melonjak → LED terbakar.
  • ·Resistor yang tepat menahan arus ke tingkat aman.
Prasyarat
  • ·Konsep arus dan tegangan listrik
  • ·Pembagian
Contoh Nyata
  • ·Menyalakan LED dengan aman dari pin Arduino.
  • ·Memilih resistor pembatas arus.
  • ·Dasar semua rangkaian elektronik.

Rumus kunci I = V / R (mis. 5V / 250Ω = 20 mA)

Pesawat Sederhana

FisikaPemula
Fase C–FE1

Pesawat sederhana memudahkan kerja dengan menukar jarak dengan gaya. Pada tuas, gaya kecil di lengan panjang bisa mengangkat beban besar di lengan pendek, seimbang saat gaya dikali lengan di kedua sisi sama. Katrol membagi gaya lewat beberapa tali, dan bidang miring menukar jarak tempuh dengan gaya angkat. Keuntungan mekanis mengukur seberapa besar gaya dilipatgandakan — tetapi usaha totalnya tetap sama. Visualisasi menyeimbangkan tuas lalu menunjukkan katrol dan bidang miring.

Contoh kasus

Gerobak dorong, katrol pada sumur atau tiang bendera, dan pembuka tutup botol.

Silabus

Tukar jarak dengan gaya; tuas seimbang saat gaya × lengan sama di kedua sisi; usaha total tetap.

Tujuan Belajar
  • ·Memahami tuas, katrol, dan bidang miring
  • ·Menjelaskan keuntungan mekanis
  • ·Menyadari usaha total tidak berubah
Cara Kerja
  • ·Tuas: gaya kecil di lengan panjang mengangkat beban besar di lengan pendek.
  • ·Seimbang saat gaya_kuasa × lengan_kuasa = gaya_beban × lengan_beban.
  • ·Katrol membagi gaya lewat beberapa tali; bidang miring menukar jarak dengan gaya.
  • ·Keuntungan mekanis = seberapa besar gaya dilipatgandakan.
Prasyarat
  • ·Konsep gaya
  • ·Perkalian dan perbandingan
Contoh Nyata
  • ·Gerobak dorong dan tuas pembuka botol.
  • ·Katrol sumur dan tiang bendera.
  • ·Bidang miring untuk menaikkan barang berat.

Rumus kunci F_kuasa × lengan_kuasa = F_beban × lengan_beban ; KM = lengan_kuasa/lengan_beban

Seri vs Paralel

FisikaPemula
Fase C–FE1

Ada dua cara merangkai komponen listrik. Pada rangkaian SERI, semua berbagi satu jalur: hambatan dijumlahkan sehingga arus lebih kecil, dan bila satu lampu putus seluruhnya padam. Pada rangkaian PARALEL, tiap komponen punya cabang sendiri: hambatan total justru mengecil, arus lebih besar, dan bila satu putus yang lain tetap menyala. Itu sebabnya colokan rumah dipasang paralel. Visualisasi membandingkan kedua rangkaian saat satu lampu putus.

Contoh kasus

Lampu hias natal murah yang mati semua bila satu putus (seri) versus colokan rumah yang mandiri (paralel).

Silabus

Seri = satu jalur, R dijumlah, satu putus mati semua; paralel = bercabang, R mengecil, mandiri.

Tujuan Belajar
  • ·Membedakan rangkaian seri dan paralel
  • ·Menghitung hambatan total tiap susunan
  • ·Menjelaskan mengapa colokan rumah dipasang paralel
Cara Kerja
  • ·Seri: komponen dalam satu jalur; R_total = R1 + R2 (arus kecil).
  • ·Bila satu putus di seri, rangkaian terputus → semua padam.
  • ·Paralel: tiap komponen punya cabang; R_total lebih kecil dari tiap R (arus besar).
  • ·Bila satu putus di paralel, cabang lain tetap menyala.
Prasyarat
  • ·Konsep arus dan hambatan
  • ·Hukum Ohm dasar
Contoh Nyata
  • ·Lampu hias natal (seri) vs colokan rumah (paralel).
  • ·Baterai disusun seri untuk tegangan lebih besar.
  • ·Rangkaian listrik rumah dan gedung.

Rumus kunci R_seri = R1 + R2 ; R_paralel = (R1·R2)/(R1+R2)

Torsi

FisikaPemula
Fase C–FE1

Torsi adalah gaya putar: besarnya sama dengan gaya dikali panjang lengan (jarak dari titik putar). Karena itu mendorong gagang pintu jauh dari engsel jauh lebih mudah, dan kunci pas yang panjang memutar baut lebih kuat. Sebuah jungkat-jungkit seimbang ketika torsi di kedua sisi sama — anak berat dekat poros bisa mengimbangi anak ringan yang jauh. Visualisasi menyeimbangkan jungkat-jungkit lalu menjelaskan lengan gaya.

Contoh kasus

Jungkat-jungkit, gagang pintu yang dipasang jauh dari engsel, dan kunci pas panjang untuk baut keras.

Silabus

Torsi = gaya × lengan; makin panjang lengan makin besar torsi; seimbang saat torsi kedua sisi sama.

Tujuan Belajar
  • ·Memahami torsi sebagai gaya putar
  • ·Menjelaskan peran panjang lengan
  • ·Menerapkan syarat kesetimbangan
Cara Kerja
  • ·Torsi = gaya × panjang lengan dari titik putar.
  • ·Lengan lebih panjang menghasilkan torsi lebih besar untuk gaya yang sama.
  • ·Jungkat-jungkit seimbang saat torsi kiri = torsi kanan.
  • ·Anak berat dekat poros mengimbangi anak ringan yang jauh.
Prasyarat
  • ·Konsep gaya
  • ·Jarak dan perkalian
Contoh Nyata
  • ·Jungkat-jungkit dan gagang pintu.
  • ·Kunci pas dan tuas panjang.
  • ·Torsi motor dan roda gigi.

Rumus kunci τ = gaya × lengan ; seimbang saat τ_kiri = τ_kanan

Elektromagnet

FisikaMenengah
Fase D–FE1

Elektromagnet dibuat dengan mengalirkan arus listrik lewat kawat yang digulung (kumparan) mengelilingi inti besi. Arus itu menghasilkan medan magnet dengan kutub Utara dan Selatan, persis seperti magnet biasa — tetapi dengan dua kelebihan: bisa dinyalakan dan dimatikan lewat saklar, dan kekuatannya bisa diatur dengan menambah jumlah lilitan atau memperbesar arus. Inilah prinsip di balik bel listrik, speaker, motor, dan crane pengangkat besi. Visualisasi menyalakan arus lalu menarik besi, dan menunjukkan magnet hilang saat arus dimatikan.

Contoh kasus

Crane raksasa di tempat rongsokan yang mengangkat mobil dengan magnet lalu menjatuhkannya cukup dengan mematikan arus.

Silabus

Arus lewat kumparan menghasilkan medan magnet (kutub U & S); bisa dinyala-matikan dan diatur lewat lilitan × arus.

Tujuan Belajar
  • ·Memahami listrik dapat menghasilkan magnet
  • ·Menjelaskan keunggulan bisa dinyala-matikan dan diatur
  • ·Mengaitkan dengan motor, speaker, dan crane
Cara Kerja
  • ·Kawat digulung (kumparan) mengelilingi inti besi.
  • ·Alirkan arus → muncul medan magnet dengan kutub U dan S.
  • ·Matikan arus → medan magnet hilang seketika.
  • ·Perbanyak lilitan atau perbesar arus → medan makin kuat.
Prasyarat
  • ·Konsep arus listrik
  • ·Konsep magnet dan kutub
Contoh Nyata
  • ·Crane pengangkat besi di tempat rongsokan.
  • ·Bel listrik, speaker, dan mikrofon.
  • ·Motor listrik dan relay.

Rumus kunci arus × kumparan → medan magnet; kekuatan ~ lilitan × arus

Gelombang

FisikaMenengah
Fase D–FE1

Gelombang adalah rambatan energi tanpa memindahkan materi secara keseluruhan — yang bergerak adalah polanya. Panjang gelombang (λ) adalah jarak antara dua puncak, frekuensi (f) adalah banyaknya gelombang per detik, dan cepat rambatnya v = f × λ. Jadi pada tali yang sama, memperbesar frekuensi memendekkan panjang gelombang. Visualisasi menjalankan gelombang sinus pada tali dan melacak satu puncak yang bergerak.

Contoh kasus

Ombak laut, getaran pada senar gitar, dan gelombang suara yang merambat di udara.

Silabus

Gelombang merambatkan energi; cepat rambat v = frekuensi × panjang gelombang (v = f·λ).

Tujuan Belajar
  • ·Memahami panjang gelombang, frekuensi, dan amplitudo
  • ·Menjelaskan cepat rambat v = f·λ
  • ·Menyadari yang merambat adalah pola/energi, bukan materi
Cara Kerja
  • ·Pola gelombang bergerak sepanjang medium (misal tali).
  • ·Panjang gelombang λ = jarak antara dua puncak.
  • ·Frekuensi f = jumlah gelombang per detik.
  • ·Cepat rambat v = f × λ.
Prasyarat
  • ·Konsep frekuensi (per detik)
  • ·Jarak dan kecepatan
Contoh Nyata
  • ·Ombak laut dan riak air.
  • ·Getaran senar gitar dan alat musik.
  • ·Gelombang suara dan radio.

Rumus kunci v = f × λ (cepat rambat = frekuensi × panjang gelombang)

Gerak Parabola

FisikaMenengah
Fase D–FE1

Gerak parabola adalah lintasan melengkung sebuah benda yang dilempar: gerak mendatar (kecepatan tetap) dan gerak vertikal (dipercepat gravitasi) terjadi bersamaan. Kecepatan horizontal vx tetap sepanjang lintasan, sedangkan kecepatan vertikal vy berkurang saat naik, nol di puncak, lalu bertambah saat turun. Karena itu lintasannya berbentuk parabola simetris. Visualisasi melempar bola pada sudut 45 derajat dan menandai puncak serta jangkauannya.

Contoh kasus

Menghitung sudut tembak di game seperti Angry Birds, atau lengkung lemparan bola basket agar masuk ring.

Silabus

Gerak mendatar (tetap) dan gerak vertikal (dipercepat gravitasi) terjadi bersamaan → lintasan parabola simetris.

Tujuan Belajar
  • ·Memisahkan gerak menjadi komponen horizontal dan vertikal
  • ·Memahami vy = 0 di puncak lintasan
  • ·Menghitung jangkauan dan tinggi maksimum
Cara Kerja
  • ·Pisahkan kecepatan awal menjadi vx (mendatar) dan vy (vertikal).
  • ·vx tetap; vy berkurang oleh gravitasi, nol di puncak, lalu bertambah saat turun.
  • ·Lintasan naik-turun membentuk parabola simetris.
  • ·Jangkauan maksimum tercapai pada sudut 45 derajat.
Prasyarat
  • ·Kecepatan dan percepatan
  • ·Sudut dan komponen (sin/cos dasar)
Contoh Nyata
  • ·Sudut tembak di game (Angry Birds).
  • ·Lemparan bola basket dan lempar lembing.
  • ·Lintasan air mancur dan roket sederhana.

Rumus kunci R = v0²·sin(2θ)/g ; H = (v0·sinθ)²/(2g)

Momentum & Tumbukan

FisikaMenengah
Fase D–FE1

Momentum adalah hasil kali massa dan kecepatan (p = m·v), dan dalam setiap tumbukan momentum TOTAL selalu kekal: jumlah sebelum sama dengan jumlah sesudah. Untuk dua benda bermassa sama yang bertumbukan lenting sempurna, keduanya justru bertukar kecepatan — yang menabrak berhenti, yang diam melaju. Inilah yang terlihat pada Newton's cradle dan bola biliar. Visualisasi menabrakkan dua bola dan melacak momentum sebelum serta sesudahnya.

Contoh kasus

Bola biliar yang berhenti saat menabrak bola lain yang lalu melaju, dan ayunan Newton's cradle.

Silabus

p = massa × kecepatan; momentum total sebelum = total sesudah (kekal).

Tujuan Belajar
  • ·Memahami momentum sebagai massa kali kecepatan
  • ·Menjelaskan kekekalan momentum dalam tumbukan
  • ·Melihat pertukaran kecepatan pada tumbukan lenting
Cara Kerja
  • ·Hitung momentum tiap benda: p = massa × kecepatan.
  • ·Jumlahkan momentum total sebelum tumbukan.
  • ·Saat bertumbukan, momentum berpindah antar benda.
  • ·Total momentum sesudah tetap sama dengan sebelum (kekal).
Prasyarat
  • ·Massa dan kecepatan
  • ·Perkalian
Contoh Nyata
  • ·Bola biliar dan ayunan Newton's cradle.
  • ·Uji tabrak (crash test) kendaraan.
  • ·Dorong-menolak roket di luar angkasa.

Rumus kunci p = m·v ; total sebelum = total sesudah

Motor DC

FisikaMenengah
Fase D–FE1

Motor DC mengubah listrik menjadi gerak putar. Kawat berarus di dalam medan magnet mengalami gaya (F = B·I·L, arahnya lewat aturan tangan kiri). Pada kumparan, kedua sisi mendapat gaya berlawanan sehingga menghasilkan torsi yang memutarnya. Saat kumparan tegak dan torsi menghilang, komutator membalik arah arus agar putaran terus berlanjut satu arah. Visualisasi menjalankan kumparan berputar di antara kutub magnet.

Contoh kasus

Motor yang sama menggerakkan roda mBot, kipas angin, drone, dan mobil listrik.

Silabus

Arus dalam medan magnet menghasilkan gaya; dua sisi kumparan → torsi → putar; komutator menjaga putaran kontinu.

Tujuan Belajar
  • ·Memahami gaya pada kawat berarus (F = B·I·L)
  • ·Menjelaskan bagaimana gaya menjadi torsi
  • ·Mengetahui peran komutator
Cara Kerja
  • ·Alirkan arus ke kumparan di antara kutub magnet.
  • ·Tiap sisi kumparan mendapat gaya F = B·I·L (aturan tangan kiri).
  • ·Dua gaya berlawanan menghasilkan torsi, kumparan berputar.
  • ·Komutator membalik arus tiap setengah putaran agar torsi tetap searah.
Prasyarat
  • ·Konsep arus listrik dan medan magnet
  • ·Gaya dan torsi
Contoh Nyata
  • ·Roda penggerak mBot dan robot.
  • ·Kipas angin dan pompa.
  • ·Drone dan mobil listrik.

Rumus kunci F = B · I · L (gaya pada kawat berarus)

Usaha & Energi

FisikaMenengah
Fase D–FE1

Energi tidak hilang, hanya berubah bentuk. Di puncak lintasan, sebuah benda menyimpan energi potensial (EP = m·g·h); saat meluncur turun, EP berubah menjadi energi kinetik (EK = ½·m·v²), sementara totalnya tetap. Itulah sebabnya benda yang jatuh makin cepat: energi potensialnya berpindah menjadi gerak. Di dasar, seluruh energi menjadi kinetik dan kecepatannya maksimum. Visualisasi menjalankan kereta roller-coaster sambil menampilkan tukar-menukar EP dan EK.

Contoh kasus

Roller coaster yang melaju paling cepat di titik terendah, dan pembangkit listrik tenaga air (PLTA).

Silabus

EP + EK tetap; energi potensial berubah jadi kinetik saat turun — itu sebabnya jatuh makin cepat.

Tujuan Belajar
  • ·Memahami energi potensial dan kinetik
  • ·Menjelaskan kekekalan energi
  • ·Mengaitkan tinggi, kecepatan, dan energi
Cara Kerja
  • ·Di puncak, energi tersimpan sebagai potensial EP = m·g·h.
  • ·Saat turun, EP berubah menjadi kinetik EK = ½·m·v².
  • ·Total EP + EK tetap sepanjang lintasan.
  • ·Di dasar, semua menjadi kinetik → kecepatan maksimum.
Prasyarat
  • ·Konsep energi
  • ·Massa, tinggi, dan kecepatan
Contoh Nyata
  • ·Roller coaster dan perosotan.
  • ·Pembangkit listrik tenaga air (PLTA).
  • ·Bandul dan lompat galah.

Rumus kunci EP = m·g·h ; EK = ½·m·v² ; EP + EK = tetap

Robotika14 pelajaran · Pemula–Lanjut

Rasio Gigi

RobotikaPemula
Fase C–FE1E5

Rasio gigi adalah perbandingan jumlah gigi antara dua roda gigi yang bersinggungan. Karena gigi yang lewat titik singgung harus sama banyak di kedua roda, roda yang lebih besar berputar lebih lambat — tetapi dengan torsi (gaya putar) yang lebih besar. Menukar kecepatan menjadi torsi, atau sebaliknya, inilah dasar setiap transmisi: sepeda, mobil, dan lengan robot. Visualisasi memutar sepasang gigi 3:1 dan menunjukkan pertukaran torsi dan kecepatan.

Contoh kasus

Gigi ringan pada sepeda membuat kita kuat menanjak (torsi besar, pelan), sementara gigi berat memberi laju cepat di jalan datar.

Silabus

Roda besar berputar lebih lambat tapi torsinya lebih besar; rasio = gigi besar / gigi kecil.

Tujuan Belajar
  • ·Memahami perbandingan gigi (rasio)
  • ·Menjelaskan pertukaran torsi melawan kecepatan
  • ·Mengaitkan dengan gigi sepeda dan transmisi robot
Cara Kerja
  • ·Dua roda gigi bersinggungan; gigi yang lewat titik singgung sama banyak.
  • ·Roda besar (lebih banyak gigi) berputar lebih lambat sebanyak rasio.
  • ·Sebagai gantinya, torsinya naik sebanyak rasio.
  • ·Pilih rasio besar untuk tenaga (menanjak), rasio kecil untuk kecepatan.
Prasyarat
  • ·Konsep putaran dan kecepatan
  • ·Perbandingan / pecahan
Contoh Nyata
  • ·Gigi sepeda (ringan vs berat).
  • ·Transmisi mobil dan motor.
  • ·Gearbox pada lengan dan roda robot.

Rumus kunci rasio = gigi_besar / gigi_kecil; kecepatan ÷ rasio, torsi × rasio

Rotary Encoder

RobotikaPemula
Fase C–FE1E5

Encoder membuat robot tahu seberapa jauh rodanya berputar. Sebuah cakram bercelah (atau bergaris) berputar melewati sensor; setiap celah yang lewat menghasilkan satu pulsa (tick). Dengan menghitung tick dan mengetahui berapa tick per putaran, robot bisa menghitung jumlah putaran, lalu mengalikannya dengan keliling roda untuk mendapat jarak tempuh. Visualisasi memutar cakram, mencacah pulsa, dan menghitung jaraknya.

Contoh kasus

Cara robot beroda (dan mBot) mengukur seberapa jauh ia telah melaju, serta penggulung kertas printer.

Silabus

Tiap celah cakram yang lewat sensor = satu tick; putaran = tick / tick-per-putaran; jarak = putaran × keliling.

Tujuan Belajar
  • ·Memahami cara encoder menghasilkan pulsa
  • ·Menghitung putaran dari jumlah tick
  • ·Mengubah putaran menjadi jarak tempuh
Cara Kerja
  • ·Cakram bercelah berputar melewati sebuah sensor.
  • ·Tiap celah lewat menghasilkan satu pulsa (tick).
  • ·Jumlah putaran = jumlah tick / tick per putaran.
  • ·Jarak tempuh = jumlah putaran × keliling roda.
Prasyarat
  • ·Konsep putaran dan keliling
  • ·Pembagian dan perkalian
Contoh Nyata
  • ·Odometri robot beroda dan mBot.
  • ·Penggulung kertas printer.
  • ·Kenop volume dan roda mouse.

Rumus kunci putaran = tick / (tick per putaran) ; jarak = putaran × keliling

Sabuk & Puli

RobotikaPemula
Fase C–FE1E5

Sabuk yang melilit dua puli meneruskan putaran dari satu poros ke poros lain yang berjauhan — tanpa gigi yang beradu. Perbandingan kecepatannya ditentukan oleh diameter puli: puli kecil yang memutar puli besar membuatnya berputar lebih lambat tetapi dengan tenaga lebih besar, mirip roda gigi tetapi bisa melintasi jarak. Visualisasi memutar dua puli berbeda diameter dan menghitung rasionya.

Contoh kasus

Penggerak pada conveyor pabrik, mesin cuci, dan sabuk pada mesin sepeda motor.

Silabus

Sabuk meneruskan putaran antar puli; rasio kecepatan = diameter penggerak / diameter digerakkan.

Tujuan Belajar
  • ·Memahami transmisi sabuk-puli
  • ·Menghitung rasio dari diameter puli
  • ·Membandingkan dengan roda gigi
Cara Kerja
  • ·Sabuk melilit dua puli pada poros yang berbeda.
  • ·Putaran diteruskan tanpa gigi beradu, bisa melintasi jarak.
  • ·Rasio kecepatan = D_penggerak / D_digerakkan.
  • ·Puli kecil memutar puli besar: lebih lambat tetapi lebih bertenaga.
Prasyarat
  • ·Konsep putaran dan diameter
  • ·Perbandingan
Contoh Nyata
  • ·Conveyor pabrik dan mesin cuci.
  • ·Sabuk penggerak mesin motor.
  • ·Alternator dan pompa di mesin mobil.

Rumus kunci rasio = D_penggerak / D_digerakkan

Sensor Garis

RobotikaPemula
Fase C–FE1E5

Robot pengikut garis memakai sensor inframerah di bawah bodinya untuk membedakan garis hitam dari lantai terang. Saat garis bergeser ke bawah salah satu sensor, robot membelok ke arah itu untuk menariknya kembali ke tengah. Koreksi kecil yang terus-menerus membuatnya tetap mengikuti garis — dan versi yang lebih halus memakai kontrol PID. Visualisasi menjalankan robot lurus, lalu membelok saat garis bergeser.

Contoh kasus

Cara mBot mengikuti garis di lantai pada lomba robot line-follower.

Silabus

Sensor baca hitam/putih; garis bergeser ke satu sensor → belok ke arah itu untuk kembali ke tengah.

Tujuan Belajar
  • ·Memahami sensor inframerah membaca kontras warna
  • ·Menjelaskan koreksi setir dari bacaan sensor
  • ·Mengaitkan dengan kontrol umpan balik (PID)
Cara Kerja
  • ·Dua sensor inframerah di bawah robot membaca hitam (garis) atau putih (lantai).
  • ·Bila kedua sensor di putih, robot melaju lurus.
  • ·Bila garis di bawah sensor kiri, robot belok kiri.
  • ·Koreksi kecil terus-menerus menjaga robot tetap di garis.
Prasyarat
  • ·Konsep sensor dan kontras warna
  • ·Ide belok kiri dan kanan
Contoh Nyata
  • ·Robot line-follower mBot dan lomba robotik.
  • ·AGV (kendaraan pemandu otomatis) di pabrik.
  • ·Dasar dari kontrol PID.

Rumus kunci sensor di garis → belok ke arah itu → kembali ke tengah

Sensor Ultrasonik

RobotikaPemula
Fase C–FE1E5

Sensor ultrasonik mengukur jarak dengan gema, persis seperti kelelawar dan sonar. Ia menembakkan pulsa suara yang merambat, memantul dari objek, lalu kembali; sebuah pewaktu mengukur waktu pulang-pergi. Jarak dihitung dari kecepatan suara dikali waktu, lalu dibagi dua karena pulsa menempuh jarak itu dua kali (pergi dan pulang). Visualisasi menembakkan pulsa ke dinding dan menghitung jaraknya.

Contoh kasus

Cara mBot dan robot penghindar tabrakan mengukur jarak ke dinding, dan sensor parkir mobil.

Silabus

Jarak = (kecepatan suara × waktu) ÷ 2; dibagi dua karena gema menempuh lintasan bolak-balik.

Tujuan Belajar
  • ·Memahami pengukuran jarak dengan gema
  • ·Menjelaskan mengapa waktu dibagi dua
  • ·Mengaitkan dengan sonar dan ekolokasi kelelawar
Cara Kerja
  • ·Sensor menembakkan pulsa suara ultrasonik.
  • ·Pulsa merambat, memantul dari objek, lalu kembali.
  • ·Pewaktu mengukur waktu pulang-pergi.
  • ·Jarak = (kecepatan suara × waktu) ÷ 2 (dibagi dua karena bolak-balik).
Prasyarat
  • ·Kecepatan, jarak, dan waktu
  • ·Pembagian
Contoh Nyata
  • ·Sensor jarak mBot dan robot penghindar tabrakan.
  • ·Sensor parkir mobil.
  • ·Sonar kapal dan ekolokasi kelelawar.

Rumus kunci jarak = (340 m/s × waktu) ÷ 2

Umpan Balik

RobotikaPemula
Fase C–FE1E5

Umpan balik adalah kontrol paling sederhana: ukur, bandingkan dengan target, lalu nyalakan atau matikan. Sebuah termostat menyalakan pemanas saat suhu di bawah target dan mematikannya saat di atas — sehingga suhu bergoyang naik-turun kecil di sekitar target dalam pola gigi-gergaji. Goyangannya selalu terkendali dan tak pernah lari jauh; sederhana dan murah. Versi yang lebih halus tanpa goyangan memakai kontrol PID. Visualisasi menjalankan suhu yang berosilasi di sekitar garis target.

Contoh kasus

Termostat AC dan kulkas, setrika, dan pemanas air yang menyala-mati untuk menjaga suhu.

Silabus

Ukur → bandingkan target → ON/OFF; di bawah target nyala, di atas mati; suhu bergoyang kecil di sekitar target.

Tujuan Belajar
  • ·Memahami kontrol umpan balik paling sederhana (on-off)
  • ·Menjelaskan pola gigi-gergaji di sekitar target
  • ·Membandingkan dengan kontrol PID yang lebih halus
Cara Kerja
  • ·Ukur besaran (misalnya suhu ruang).
  • ·Bila di bawah target → nyalakan pemanas.
  • ·Bila di atas target → matikan pemanas.
  • ·Suhu naik-turun kecil (gigi-gergaji) di sekitar target.
Prasyarat
  • ·Konsep target dan pengukuran
  • ·Perbandingan
Contoh Nyata
  • ·Termostat AC, kulkas, dan setrika.
  • ·Pengisi daya baterai.
  • ·Pengontrol level air tangki.

Rumus kunci suhu < target → ON ; suhu > target → OFF

Differential Drive

RobotikaMenengah
Fase D–FE1E5

Differential drive adalah cara robot beroda dua berbelok tanpa setir: cukup dengan mengatur kecepatan roda kiri dan kanan secara berbeda. Bila kedua roda sama cepat, robot melaju lurus; bila salah satu lebih lambat, robot melengkung ke sisi yang lebih lambat; bila keduanya berlawanan arah, robot berputar di tempat. Arah dan radius belok lahir sepenuhnya dari selisih kecepatan roda. Visualisasi menjalankan robot lurus, belok, dan berputar sesuai kecepatan rodanya.

Contoh kasus

Cara mBot dan robot-robot beroda (juga tank) berbelok — semuanya hanya dari perbedaan kecepatan dua roda penggeraknya.

Silabus

Beda kecepatan roda kiri dan kanan menentukan arah dan radius belok; tak perlu setir.

Tujuan Belajar
  • ·Memahami kinematika robot dua roda
  • ·Menjelaskan lurus, belok, dan putar dari kecepatan roda
  • ·Menghitung laju maju dan laju putar
Cara Kerja
  • ·Tiap roda punya motor sendiri (kiri dan kanan).
  • ·Laju maju v = (vL + vR)/2; laju putar ω = (vR − vL)/L.
  • ·vL = vR → lurus; vL < vR → belok kiri.
  • ·vL = −vR → berputar di tempat (radius 0).
Prasyarat
  • ·Kecepatan
  • ·Konsep radius dan putaran
Contoh Nyata
  • ·Cara mBot dan robot beroda berbelok.
  • ·Kemudi tank dan ekskavator (tanpa setir).
  • ·Kursi roda listrik dan robot vacuum.

Rumus kunci v = (vL+vR)/2 ; ω = (vR−vL)/L ; R = v/ω

IMU

RobotikaMenengah
Fase D–FE1E5

IMU (Inertial Measurement Unit) memberi tahu robot bagaimana orientasinya. Akselerometer mengukur arah gravitasi sehingga bisa menghitung sudut kemiringan, sedangkan giroskop mengukur laju putaran. Digabungkan, keduanya memberi orientasi yang akurat dan stabil. Inilah sensor yang membuat HP tahu kapan dimiringkan dan drone menjaga dirinya tetap datar. Visualisasi memiringkan sebuah papan dan menampilkan sudut yang terukur.

Contoh kasus

Cara HP tahu harus memutar layar saat dimiringkan, dan cara drone menjaga keseimbangan.

Silabus

Akselerometer beri arah gravitasi (sudut miring), giroskop beri laju putar; gabungan = orientasi.

Tujuan Belajar
  • ·Memahami peran akselerometer dan giroskop
  • ·Menjelaskan cara arah gravitasi memberi sudut miring
  • ·Mengaitkan dengan kestabilan drone dan auto-rotate HP
Cara Kerja
  • ·Akselerometer mengukur komponen gravitasi pada tiap sumbu.
  • ·Dari komponen itu dihitung sudut kemiringan (arah gravitasi).
  • ·Giroskop mengukur laju putaran.
  • ·Keduanya digabung menjadi orientasi yang stabil dan akurat.
Prasyarat
  • ·Konsep sudut dan arah
  • ·Ide gravitasi
Contoh Nyata
  • ·Auto-rotate layar HP.
  • ·Drone dan quadcopter menjaga tetap datar.
  • ·Robot penyeimbang dan pelacak gerak (VR).

Rumus kunci sudut = atan2(gravitasi_x, gravitasi_z); gabung giroskop + akselerometer

Kinematika Maju

RobotikaMenengah
Fase D–FE1E5

Kinematika maju menghitung posisi ujung lengan robot (gripper) dari sudut tiap sendinya. Untuk lengan dua sendi, posisi ujung didapat dengan menjumlahkan panjang tiap segmen ke arah sudutnya: x = L1·cos(θ1) + L2·cos(θ1+θ2) dan y = L1·sin(θ1) + L2·sin(θ1+θ2). Jadi begitu sudut sendi diketahui, trigonometri langsung memberi titik yang dicapai. Kebalikannya — mencari sudut agar ujung sampai ke target tertentu — disebut kinematika balik. Visualisasi memutar dua sendi lalu menghitung posisi grippernya.

Contoh kasus

Cara lengan robot industri (misalnya lengan las di pabrik) mengetahui di mana ujungnya berada dari pembacaan sudut motor tiap sendi.

Silabus

Dari sudut tiap sendi, trigonometri memberi posisi ujung lengan: jumlahkan tiap segmen ke arah sudutnya.

Tujuan Belajar
  • ·Memahami hubungan sudut sendi dan posisi ujung
  • ·Menerapkan trigonometri pada lengan dua sendi
  • ·Membedakan kinematika maju dan kinematika balik
Cara Kerja
  • ·Lengan punya beberapa sendi, masing-masing bersudut.
  • ·Ujung link 1 berada di arah θ1 sejauh L1.
  • ·Ujung link 2 (gripper) = tambah arah (θ1+θ2) sejauh L2.
  • ·x = L1·cos θ1 + L2·cos(θ1+θ2) ; y = L1·sin θ1 + L2·sin(θ1+θ2).
Prasyarat
  • ·Sudut dan koordinat (x, y)
  • ·Sinus dan kosinus dasar
Contoh Nyata
  • ·Lengan robot industri dan lengan las.
  • ·Lengan bedah robotik.
  • ·Animasi karakter dan rig 3D.

Rumus kunci x = L1·cos θ1 + L2·cos(θ1+θ2) ; y = L1·sin θ1 + L2·sin(θ1+θ2)

Motor Stepper

RobotikaMenengah
Fase D–FE1E5

Berbeda dari motor biasa yang berputar bebas, motor stepper bergerak dalam langkah-langkah sudut yang tepat. Dengan menyalakan kumparan secara bergiliran (A, B, C, D), rotor tertarik maju satu langkah tetap setiap pulsa. Menghitung jumlah pulsa berarti mengontrol sudut putaran dengan presisi tinggi tanpa perlu sensor posisi. Inilah alasan printer 3D dan mesin CNC memakainya. Visualisasi menyalakan kumparan bergiliran dan menggerakkan rotor selangkah demi selangkah.

Contoh kasus

Printer 3D dan mesin CNC yang menggerakkan kepala cetak ke posisi sangat presisi, serta penggerak lensa kamera.

Silabus

Nyalakan kumparan bergiliran → rotor maju satu sudut tetap per pulsa; jumlah pulsa = sudut presisi.

Tujuan Belajar
  • ·Membedakan motor stepper dari motor biasa
  • ·Memahami langkah sudut tetap per pulsa
  • ·Mengaitkan dengan presisi tanpa sensor
Cara Kerja
  • ·Ada beberapa kumparan mengelilingi rotor.
  • ·Nyalakan kumparan secara bergiliran (A → B → C → D).
  • ·Tiap pulsa menarik rotor maju satu langkah sudut tetap.
  • ·Jumlah pulsa × sudut per langkah = total putaran (presisi, tanpa sensor).
Prasyarat
  • ·Konsep motor dan kumparan
  • ·Sudut dan penjumlahan
Contoh Nyata
  • ·Printer 3D dan mesin CNC.
  • ·Penggerak lensa dan kamera.
  • ·Jam dan alat ukur presisi.

Rumus kunci total sudut = jumlah pulsa × sudut per langkah

PWM (Lebar Pulsa)

RobotikaMenengah
Fase D–FE1E5

PWM (Pulse-Width Modulation) mengatur daya dengan menyalakan dan mematikan sinyal digital sangat cepat, lalu mengubah proporsi waktu ON-nya (duty cycle). Tegangan puncak tidak pernah berubah — hanya lebar pulsanya. Karena LED dan motor merasakan nilai rata-rata, duty cycle 60% memberi daya seperti 60% tegangan penuh. Inilah cara pin digital yang cuma bisa ON/OFF mengatur kecerahan dan kecepatan secara halus. Visualisasi menaikkan duty cycle dan menunjukkan respons LED serta motor.

Contoh kasus

Perintah analogWrite() di Arduino atau mBot yang mengatur kecerahan LED dan kecepatan motor tanpa mengubah tegangan sumber.

Silabus

Nyala-mati cepat; daya rata-rata sebanding duty cycle (lebar pulsa ON), tegangan puncak tetap.

Tujuan Belajar
  • ·Memahami duty cycle dan daya rata-rata
  • ·Menjelaskan mengapa pin ON/OFF bisa mengatur kecerahan
  • ·Mengaitkan dengan analogWrite() di Arduino
Cara Kerja
  • ·Pin digital hanya bisa ON (5V) atau OFF (0V).
  • ·Nyalakan-matikan sangat cepat berulang.
  • ·duty cycle = waktu ON / (ON + OFF).
  • ·Daya rata-rata ≈ duty × tegangan puncak — LED & motor merasakan rata-rata ini.
Prasyarat
  • ·Sinyal digital (ON/OFF)
  • ·Konsep rata-rata dan persentase
Contoh Nyata
  • ·Mengatur kecerahan LED (analogWrite).
  • ·Mengatur kecepatan motor mBot dan kipas.
  • ·Pengatur tegangan (buck converter) dan pengisi daya.

Rumus kunci duty = t_ON/(t_ON+t_OFF); daya_rata2 ≈ duty × V_puncak

Servo

RobotikaMenengah
Fase D–FE1E5

Servo bukan motor biasa: ia diberi sudut PERINTAH lalu memakai umpan balik posisi untuk mencapai dan MENAHAN sudut itu. Di dalamnya, sebuah potensiometer membaca posisi horn saat ini; servo menghitung error = target dikurangi posisi, memutar motor untuk mengecilkan error, lalu berhenti dan menahan ketika error nol. Bila didorong keluar, ia langsung mengoreksi kembali. Visualisasi memerintah servo ke 90 derajat lalu menunjukkan koreksi saat diganggu.

Contoh kasus

Sendi lengan robot, kemudi mobil RC, dan penggerak kepala atau ekor robot yang harus berhenti tepat di sudut tertentu.

Silabus

error = target dikurangi posisi; putar motor sampai error nol lalu tahan; koreksi lagi bila diganggu.

Tujuan Belajar
  • ·Membedakan servo dari motor biasa
  • ·Memahami umpan balik posisi
  • ·Menjelaskan cara servo menahan sudut
Cara Kerja
  • ·Servo diberi sudut perintah (target).
  • ·Potensiometer internal membaca posisi horn sekarang.
  • ·error = target dikurangi posisi; motor berputar mengecilkan error.
  • ·Saat error nol, motor berhenti dan menahan; bila didorong, mengoreksi lagi.
Prasyarat
  • ·Konsep sudut
  • ·Ide error dan umpan balik
Contoh Nyata
  • ·Sendi lengan robot.
  • ·Kemudi mobil dan pesawat RC.
  • ·Penggerak kamera dan kepala robot.

Rumus kunci error = target − posisi; putar sampai error = 0, lalu tahan

Kontrol PID

RobotikaLanjut
Fase E–FE1E5

PID adalah cara sistem mengoreksi diri agar mencapai target dengan mulus. Dari selisih target dan posisi (error), kontroler menghitung koreksi dari tiga suku: P (proporsional) mendorong sebanding error, I (integral) menghapus sisa selisih kecil, dan D (turunan) mengerem berdasarkan laju perubahan untuk meredam lonjakan. Tanpa D, dorongan P sendiri sering kebablasan dan berosilasi. Visualisasi membandingkan respons P-saja yang berosilasi dengan PID yang mulus menetap di target.

Contoh kasus

Kontrol PID membuat drone melayang stabil, segway tetap tegak, dan robot pengikut garis melaju mulus tanpa zigzag.

Silabus

Koreksi = P (dorong) + I (hapus sisa) + D (rem); gabungannya mulus dan stabil tanpa overshoot.

Tujuan Belajar
  • ·Memahami umpan balik (feedback) berbasis error
  • ·Menjelaskan peran suku P, I, dan D
  • ·Melihat mengapa P-saja berosilasi
Cara Kerja
  • ·Hitung error = target − posisi.
  • ·P: koreksi sebanding error (dorong menuju target).
  • ·D: mengerem berdasarkan laju perubahan → meredam overshoot.
  • ·I: menjumlahkan error masa lalu → menghapus sisa selisih; jumlahkan P + I + D.
Prasyarat
  • ·Konsep error (target − posisi)
  • ·Ide laju perubahan dan penjumlahan
Contoh Nyata
  • ·Drone melayang dan menjaga ketinggian.
  • ·Segway dan robot penyeimbang.
  • ·Robot pengikut garis yang mulus; kontrol suhu dan cruise control.

Rumus kunci u = Kp·e + Ki·Σe + Kd·Δe

Pendulum Terbalik

RobotikaLanjut
Fase E–FE1E5

Pendulum terbalik adalah tiang dengan beban di ATAS titik tumpu — posisi yang secara alami tidak stabil dan selalu ingin jatuh. Rahasia menjaganya tegak: begitu tiang mulai condong, gerakkan roda di bawahnya KE ARAH condong agar titik tumpu kembali berada di bawah pusat massa. Koreksi kecil ini diulang ratusan kali per detik memakai sensor IMU dan kontrol PID. Inilah cara segway dan robot penyeimbang bisa berdiri. Visualisasi menjatuhkan tiang lalu memulihkannya dengan gerak roda.

Contoh kasus

Cara segway, hoverboard, dan robot beroda-dua penyeimbang tetap berdiri tegak tanpa jatuh.

Silabus

Begitu tiang condong, gerakkan roda ke arah condong supaya titik tumpu balik di bawah pusat massa; ulang cepat.

Tujuan Belajar
  • ·Memahami mengapa beban di atas tumpu tidak stabil
  • ·Menjelaskan koreksi gerak ke arah jatuh
  • ·Mengaitkan dengan sensor IMU dan kontrol PID
Cara Kerja
  • ·Tiang dengan beban di atas titik tumpu bersifat tidak stabil.
  • ·Sensor IMU membaca sudut kemiringan tiang.
  • ·Bila condong ke kanan, roda digerakkan ke kanan (arah jatuh).
  • ·Titik tumpu kembali di bawah pusat massa → tiang tegak; diulang ratusan kali per detik.
Prasyarat
  • ·Konsep keseimbangan dan pusat massa
  • ·Ide umpan balik (feedback)
Contoh Nyata
  • ·Segway dan hoverboard.
  • ·Robot beroda-dua penyeimbang.
  • ·Roket yang menjaga tegak saat meluncur.

Rumus kunci condong → gerak roda ke arah condong → tegak (IMU + PID)

Lainnya15 pelajaran · Pemula–Lanjut

Logika Snake

LainnyaPemula
Fase C–FE1E5

Ini mendemonstrasikan logika inti permainan Snake: ular bergerak satu sel per langkah dengan menyisipkan kepala baru dan membuang ekor. Bila sel berikutnya adalah makanan, ekor tidak dibuang sehingga ular bertambah panjang, sedangkan jika sel terhalang permainan kalah. Visualisasi menampilkan grid dengan ular yang bergerak, memakan makanan, dan tumbuh dari panjang 4 hingga 7.

Contoh kasus

Implementasi mekanik gerak dan pertumbuhan pada game Snake klasik di ponsel atau konsol arcade.

Silabus

Ular bergerak dengan menambah kepala baru dan membuang ekor, tapi memanjang saat memakan makanan.

Tujuan Belajar
  • ·Memahami mekanik gerak dan pertumbuhan pada game Snake
  • ·Menjelaskan trik sisip-kepala dan buang-ekor untuk menggerakkan ular
  • ·Menerapkan aturan tumbuh saat makan dan kalah saat menabrak
Cara Kerja
  • ·Tubuh ular disimpan sebagai deretan sel; kepala di depan, ekor di belakang.
  • ·Tiap langkah, sisipkan kepala baru di arah gerak lalu buang sel ekor.
  • ·Bila kepala mengenai makanan, ekor TIDAK dibuang sehingga ular memanjang.
  • ·Bila kepala menabrak dinding atau tubuh sendiri, permainan kalah.
Prasyarat
  • ·Array atau list
  • ·Grid dua dimensi
Contoh Nyata
  • ·Game Snake klasik yang dulu ada di HP Nokia dan kini banyak di aplikasi.
  • ·Mekanik dasar game arcade yang sering jadi proyek koding pertama.
  • ·Logika ekor-mengikuti pada berbagai game bertema ular atau kereta.

Kompleksitas O(1) per langkah

Pengisian Matriks Spiral

LainnyaPemula
Fase C–FE1E5

Algoritma traversal matriks spiral mengisi grid n x n dengan berjalan searah jarum jam: baris atas, kolom kanan, baris bawah, lalu kolom kiri, sambil menyusutkan batas atas/bawah/kiri/kanan setiap putaran. Proses berlanjut ke dalam hingga seluruh sel terisi. Visualisasi menampilkan angka yang ditulis mengikuti pola spiral menuju pusat grid.

Contoh kasus

Pemrosesan data citra atau tata letak antarmuka yang mengakses sel matriks dalam pola melingkar.

Silabus

Isi grid dengan berjalan searah jarum jam sambil menyusutkan batas tiap putaran hingga sampai pusat.

Tujuan Belajar
  • ·Memahami cara menelusuri matriks dalam pola spiral
  • ·Menjelaskan penyusutan batas atas, bawah, kiri, dan kanan tiap putaran
  • ·Menerapkan pengisian grid mengikuti pola melingkar ke dalam
Cara Kerja
  • ·Jalan di baris atas dari kiri ke kanan, lalu turunkan batas atas.
  • ·Jalan di kolom kanan dari atas ke bawah, lalu kecilkan batas kanan.
  • ·Jalan di baris bawah dari kanan ke kiri, lalu naikkan batas bawah.
  • ·Jalan di kolom kiri dari bawah ke atas, lalu geser batas kiri.
  • ·Ulangi memutar ke dalam sampai seluruh sel terisi di pusat.
Prasyarat
  • ·Grid dua dimensi
  • ·Perulangan bersarang
Contoh Nyata
  • ·Pemrosesan piksel citra dalam pola melingkar pada aplikasi kamera.
  • ·Tata letak antarmuka yang mengisi kotak secara memutar.
  • ·Efek animasi angka atau ubin yang muncul berpola spiral di game.

Kompleksitas O(baris * kolom)

Simulasi Adu Penalti

LainnyaPemula
Fase C–FE1

Algoritma ini adalah simulasi berbasis aturan (rule-based simulation) yang memproses urutan tendangan penalti satu per satu. Untuk setiap tendangan, ia menentukan apakah gol terjadi dengan membandingkan arah tendangan terhadap arah dive kiper dan area gawang, lalu memperbarui skor kedua tim. Visualisasi menampilkan animasi penendang, kiper, arah bola, papan skor, dan pemenang akhir.

Contoh kasus

Simulasi hasil adu penalti pertandingan sepak bola untuk game atau prediksi statistik olahraga.

Silabus

Simulasi berbasis aturan yang memproses tiap tendangan penalti untuk menentukan gol dan pemenang.

Tujuan Belajar
  • ·Memahami konsep simulasi berbasis aturan (rule-based)
  • ·Menjelaskan cara membandingkan arah tendangan dengan arah dive kiper
  • ·Menerapkan pembaruan skor bertahap sampai pemenang ditentukan
Cara Kerja
  • ·Proses tendangan penalti satu per satu secara bergiliran.
  • ·Tentukan arah tendangan dan arah kiper melompat (dive).
  • ·Gol terjadi bila bola masuk area gawang dan tidak searah dengan dive kiper.
  • ·Perbarui skor kedua tim tiap tendangan, lalu tentukan pemenang di akhir.
Prasyarat
  • ·Percabangan (if-else)
Contoh Nyata
  • ·Fitur adu penalti di game bola seperti eFootball atau FIFA Mobile.
  • ·Prediksi statistik hasil adu penalti pertandingan sepak bola.
  • ·Mini-game shootout sederhana yang bisa dibuat sendiri untuk latihan koding.

Kompleksitas O(n)

Game of Life (Conway)

LainnyaMenengah
Fase D–FE1

Game of Life adalah automata seluler: nasib tiap sel ditentukan jumlah tetangga hidupnya. Aturannya — sel hidup dengan 2 sampai 3 tetangga bertahan, sel mati dengan tepat 3 tetangga lahir, selain itu mati. Dari aturan sederhana ini muncul pola bergerak (glider) dan berdenyut (blinker).

Contoh kasus

Simulasi pola pada grid untuk mengajarkan emergent behavior: aturan lokal yang sederhana menghasilkan pola global yang kompleks.

Silabus

Pola global yang kompleks lahir dari aturan lokal sederhana berdasarkan jumlah tetangga hidup tiap sel.

Tujuan Belajar
  • ·Memahami konsep automata seluler (cellular automata)
  • ·Menjelaskan aturan hidup, mati, dan lahir berdasarkan tetangga
  • ·Menerapkan simulasi grid untuk menghasilkan pola bergerak dan berdenyut
Cara Kerja
  • ·Tiap sel berstatus hidup atau mati di atas grid.
  • ·Sel hidup dengan 2 atau 3 tetangga hidup akan bertahan.
  • ·Sel mati dengan tepat 3 tetangga hidup akan lahir.
  • ·Selain itu sel mati (kesepian atau terlalu padat).
  • ·Semua sel diperbarui bersamaan tiap langkah, memunculkan pola seperti glider dan blinker.
Prasyarat
  • ·Grid dua dimensi
  • ·Konsep tetangga sel
Contoh Nyata
  • ·Contoh klasik emergent behavior: aturan simpel jadi pola rumit.
  • ·Inspirasi efek partikel dan pola prosedural di game.
  • ·Simulasi penyebaran pola sederhana untuk belajar sistem kompleks.

Kompleksitas O(baris * kolom)

Kebakaran Hutan

LainnyaMenengah
Fase D–FE1E6

Model kebakaran hutan menunjukkan bagaimana sesuatu menyebar hanya lewat sentuhan langsung. Api mulai di satu sisi dan tiap ronde menjalar ke pohon tetangga yang bersentuhan; pohon yang terbakar menjadi abu. Bila ada celah kosong, api terputus dan berhenti. Apakah api menembus dari atas ke bawah bergantung pada seberapa rapat pohon terhubung — inilah konsep perkolasi. Visualisasi menjalarkan api ronde demi ronde sampai padam.

Contoh kasus

Pola yang sama menjelaskan penyebaran virus lewat kontak, kebakaran nyata yang berhenti di sekat bakar, dan gosip yang viral lewat pertemanan.

Silabus

Api menjalar hanya ke tetangga bersentuhan; celah kosong memutus rambatan — tembus atau tidak = perkolasi.

Tujuan Belajar
  • ·Memahami simulasi penyebaran berbasis grid
  • ·Menjelaskan peran celah (sekat bakar) dalam memutus rambatan
  • ·Mengenali konsep perkolasi (tembus atau tidak)
Cara Kerja
  • ·Isi hutan dengan pohon dan sebagian celah kosong.
  • ·Api mulai dari satu sisi (baris atas).
  • ·Tiap ronde, api menjalar ke pohon tetangga yang bersentuhan; pohon terbakar jadi abu.
  • ·Celah kosong memutus api sampai rambatan berhenti.
Prasyarat
  • ·Grid dua dimensi
  • ·Konsep tetangga (4 arah)
  • ·Perulangan ronde
Contoh Nyata
  • ·Penyebaran virus atau penyakit lewat kontak.
  • ·Kebakaran nyata yang berhenti di sekat bakar.
  • ·Penyebaran gosip atau tren viral lewat jaringan.

Kompleksitas O(jumlah sel)

Model SIR (Penyebaran Wabah)

LainnyaMenengah
Fase D–FE1E6

Model SIR adalah simulasi penyebaran penyakit yang membagi populasi menjadi tiga keadaan: Susceptible (rentan), Infected (terinfeksi), dan Recovered (sembuh). Tiap langkah, orang terinfeksi bisa menulari tetangga yang rentan lalu akhirnya sembuh dan kebal, sehingga jumlah kasus naik dulu kemudian turun membentuk kurva. Visualisasi menampilkan grid warna yang berubah seiring wabah menyebar beserta kurva jumlah kasus dari waktu ke waktu.

Contoh kasus

Cara memodelkan naik-turunnya kasus COVID-19 di satu lingkungan untuk memperkirakan kapan puncak wabah terjadi.

Silabus

Modelkan wabah dengan membagi orang jadi rentan, terinfeksi, dan sembuh, lalu lihat kurvanya naik-turun.

Tujuan Belajar
  • ·Memahami cara wabah dimodelkan lewat tiga keadaan penduduk
  • ·Menjelaskan perpindahan dari rentan ke terinfeksi lalu sembuh
  • ·Menerapkan simulasi grid untuk melihat kurva kasus naik lalu turun
Cara Kerja
  • ·Tandai tiap orang di grid sebagai rentan, terinfeksi, atau sembuh.
  • ·Tiap langkah, orang terinfeksi berpeluang menulari tetangga yang rentan.
  • ·Setelah beberapa waktu, orang terinfeksi berpindah menjadi sembuh dan kebal.
  • ·Jumlah kasus naik saat penularan cepat, lalu turun saat banyak yang sembuh.
  • ·Kurva keseluruhan membentuk gundukan naik kemudian melandai.
Prasyarat
  • ·Grid dua dimensi
  • ·Konsep peluang sederhana
Contoh Nyata
  • ·Perkiraan naik-turunnya kasus COVID-19 di sebuah wilayah.
  • ·Alasan menjaga jarak dan vaksin bisa menekan puncak wabah.
  • ·Model penyebaran informasi atau tren viral yang mirip pola wabah.

Kompleksitas O(langkah * baris * kolom)

Rusa vs Serigala

LainnyaMenengah
Fase D–FE1E6

Model Lotka-Volterra menjelaskan naik-turunnya populasi predator dan mangsa yang saling bergantung. Ketika rusa (mangsa) banyak, serigala (predator) punya banyak makanan sehingga jumlahnya naik; tetapi terlalu banyak serigala membuat rusa berkurang, lalu serigala pun ikut turun karena kelaparan, dan rusa kembali naik. Hasilnya dua gelombang yang berulang, dengan puncak serigala selalu tertinggal di belakang puncak rusa. Visualisasi menggambar kedua siklus populasi yang saling mengejar.

Contoh kasus

Menjelaskan mengapa populasi hewan di alam naik-turun secara berkala, seperti kelinci dan rubah, atau hama pertanian dan pemangsanya.

Silabus

Mangsa banyak -> predator naik -> mangsa turun -> predator turun -> mangsa naik; siklus berulang, puncak predator tertinggal.

Tujuan Belajar
  • ·Memahami sistem dinamis yang saling bergantung
  • ·Menjelaskan jeda fase (predator mengikuti mangsa)
  • ·Melihat keseimbangan siklus di alam
Cara Kerja
  • ·Mulai dari sejumlah rusa dan serigala.
  • ·Banyak rusa membuat serigala berkembang (makanan melimpah).
  • ·Banyak serigala menekan jumlah rusa.
  • ·Rusa sedikit membuat serigala kelaparan dan menurun, lalu rusa naik lagi — siklus berulang.
Prasyarat
  • ·Grafik terhadap waktu
  • ·Konsep laju naik dan turun
  • ·Perkalian sederhana
Contoh Nyata
  • ·Naik-turun populasi hewan di alam (kelinci dan rubah).
  • ·Hama pertanian dan musuh alaminya.
  • ·Model dinamika di ekonomi dan epidemi.

Kompleksitas O(langkah waktu)

Segregasi Schelling

LainnyaMenengah
Fase D–FE1E6

Model Schelling menunjukkan bagaimana preferensi individu yang ringan bisa menghasilkan pemisahan kelompok yang tajam. Tiap agen pada grid merasa tak nyaman bila terlalu sedikit tetangganya yang sekelompok, lalu pindah ke sel kosong. Walau tak seorang pun menginginkan segregasi ekstrem, pola akhirnya sangat terpisah. Visualisasi menjalankan ronde perpindahan sampai grid membeku dalam keadaan tersegregasi.

Contoh kasus

Menjelaskan bagaimana geng pertemanan di sekolah atau bubble FYP media sosial terbentuk dari pilihan-pilihan kecil.

Silabus

Preferensi kecil untuk sedikit tetangga sekelompok bisa menghasilkan segregasi besar yang tak diinginkan siapa pun.

Tujuan Belajar
  • ·Memahami simulasi berbasis agen (agent-based)
  • ·Menjelaskan bagaimana pola global muncul dari aturan lokal
  • ·Mengaitkan model dengan fenomena sosial nyata
Cara Kerja
  • ·Isi grid dengan dua kelompok dan sebagian sel dibiarkan kosong.
  • ·Seorang agen merasa tak nyaman bila tetangga sekelompoknya di bawah ambang tertentu.
  • ·Agen yang tak nyaman pindah ke sel kosong secara acak.
  • ·Ulangi tiap ronde sampai tak ada yang pindah — grid membeku dalam keadaan tersegregasi.
Prasyarat
  • ·Grid dua dimensi
  • ·Konsep tetangga dan perulangan
Contoh Nyata
  • ·Pola pemukiman dan segregasi di kota.
  • ·Terbentuknya echo chamber dan bubble di media sosial.
  • ·Pemodelan dinamika sosial dan opini.

Kompleksitas O(ronde x jumlah sel)

Semut Langton (Langton's Ant)

LainnyaMenengah
Fase D–FE1

Langton's Ant adalah automata seluler dengan aturan sangat sederhana: pada sel hitam semut berbelok kanan, pada sel putih berbelok kiri, lalu membalik warna sel saat ini dan bergerak maju. Meski aturannya minimal, pola kompleks dan jejak teratur (emergent behavior) muncul setelah ribuan langkah. Visualisasi menampilkan grid dengan semut yang bergerak dan pola sel yang perlahan terbentuk.

Contoh kasus

Studi emergent behavior dan sistem kompleks, atau pembangkitan pola prosedural pada seni generatif.

Silabus

Semut dengan dua aturan warna sederhana perlahan membentuk pola teratur yang mengejutkan.

Tujuan Belajar
  • ·Memahami emergent behavior dari aturan sangat minimal
  • ·Menjelaskan aturan belok dan pembalikan warna sel
  • ·Menerapkan automata seluler untuk membangkitkan pola
Cara Kerja
  • ·Semut berada di sebuah sel dan menghadap satu arah.
  • ·Di sel hitam semut belok kanan; di sel putih semut belok kiri.
  • ·Setelah belok, warna sel saat ini dibalik (hitam jadi putih atau sebaliknya).
  • ·Semut maju satu sel, lalu aturan diulang; setelah ribuan langkah muncul jejak teratur.
Prasyarat
  • ·Grid dua dimensi
  • ·Konsep arah hadap dan gerak
Contoh Nyata
  • ·Contoh sistem kompleks: aturan super simpel menghasilkan pola rumit.
  • ·Pembangkitan pola prosedural pada seni generatif dan wallpaper digital.
  • ·Studi bagaimana perilaku teratur bisa muncul dari langkah acak sederhana.

Kompleksitas O(langkah)

Simulasi Kemacetan (Nagel-Schreckenberg)

LainnyaMenengah
Fase D–FE1E6

Model Nagel-Schreckenberg adalah simulasi lalu lintas yang menggerakkan banyak mobil di sepanjang jalan menurut aturan sederhana: percepat bila ada ruang, rem bila terlalu dekat mobil depan, dan sesekali melambat secara acak. Satu pengereman kecil di jalan padat bisa menjalar mundur menjadi kemacetan hantu yang muncul tanpa kecelakaan atau halangan apa pun. Visualisasi menampilkan barisan mobil yang bergerak dan gelombang macet yang merambat mundur di jalan yang padat.

Contoh kasus

Alasan macet tiba-tiba muncul di jalan protokol Medan yang padat meski tidak ada kecelakaan, cukup satu mobil mengerem.

Silabus

Kemacetan hantu bisa muncul dari jalan yang padat plus satu pengereman kecil, tanpa halangan apa pun.

Tujuan Belajar
  • ·Memahami cara lalu lintas dimodelkan dengan aturan mobil sederhana
  • ·Menjelaskan bagaimana kepadatan dan satu rem memicu macet hantu
  • ·Menerapkan simulasi untuk melihat gelombang macet merambat mundur
Cara Kerja
  • ·Taruh banyak mobil di sepanjang jalur satu lajur.
  • ·Tiap langkah, mobil mempercepat bila ada ruang kosong di depannya.
  • ·Mobil mengerem bila jaraknya terlalu dekat dengan mobil depan.
  • ·Sesekali mobil melambat sedikit secara acak seperti pengemudi sungguhan.
  • ·Di jalan padat, satu rem menjalar mundur jadi kemacetan hantu.
Prasyarat
  • ·Konsep kecepatan dan jarak
  • ·Peluang atau keacakan sederhana
Contoh Nyata
  • ·Macet tiba-tiba di jalan Medan yang padat tanpa ada kecelakaan.
  • ·Kemacetan beruntun di jalan tol saat kendaraan terlalu rapat.
  • ·Dasar pemodelan lalu lintas untuk merancang jalan dan lampu.

Kompleksitas O(langkah * jumlah mobil)

Tetris Line Clear (Pembersihan Baris)

LainnyaMenengah
Fase D–FE1E5

Tetris Clear mensimulasikan mekanik inti Tetris: sebuah piece jatuh selama masih bisa turun (can_fall), lalu dikunci (lock) ke papan. Setelah terkunci, baris yang penuh terdeteksi dan dibersihkan sehingga baris di atasnya turun (gravity). Visualisasi menampilkan tumpukan blok yang bertambah, baris penuh yang hilang, dan sisa tumpukan yang jatuh mengisi ruang kosong.

Contoh kasus

Logika inti game Tetris yang mendeteksi dan menghapus baris penuh lalu menjatuhkan sisa tumpukan.

Silabus

Blok jatuh dan terkunci di papan, lalu baris penuh dibersihkan sehingga tumpukan di atasnya turun.

Tujuan Belajar
  • ·Memahami mekanik inti game Tetris
  • ·Menjelaskan proses jatuh, kunci, deteksi baris penuh, dan gravity
  • ·Menerapkan pembersihan baris dan penurunan tumpukan sisa
Cara Kerja
  • ·Sebuah piece terus jatuh selama sel di bawahnya masih kosong.
  • ·Saat tidak bisa turun lagi, piece dikunci menjadi bagian papan.
  • ·Cek tiap baris: bila terisi penuh, baris itu dihapus.
  • ·Baris di atas baris yang terhapus turun mengisi ruang kosong (gravity).
Prasyarat
  • ·Grid dua dimensi
  • ·Percabangan (if-else)
Contoh Nyata
  • ·Logika inti game Tetris yang populer di HP dan konsol.
  • ·Mekanik puzzle 'susun dan bersihkan baris' di banyak game sejenis.
  • ·Contoh proyek koding untuk belajar manipulasi grid dan skor.

Kompleksitas O(baris * kolom)

Boids (Flocking)

LainnyaLanjut
Fase E–FE1

Boids mensimulasikan kawanan: tiap agen hanya ikut 3 aturan lokal terhadap tetangganya -- PISAH (hindari tabrakan), SEJAJAR (samakan arah), KUMPUL (menuju pusat). Tanpa pemimpin, kawanan yang bergerak selaras muncul secara emergen. Dipakai di animasi dan robotika swarm.

Contoh kasus

Animasi kawanan burung atau ikan di film, dan koordinasi robot swarm tanpa kontrol terpusat.

Silabus

Kawanan yang bergerak selaras muncul dari tiga aturan lokal sederhana tanpa ada pemimpin.

Tujuan Belajar
  • ·Memahami perilaku emergen dari aturan lokal sederhana
  • ·Menjelaskan tiga aturan Boids: PISAH, SEJAJAR, dan KUMPUL
  • ·Menerapkan simulasi kawanan tanpa kontrol terpusat
Cara Kerja
  • ·Tiap agen (boid) hanya memperhatikan tetangga di sekitarnya.
  • ·PISAH: menjauh sedikit agar tidak bertabrakan.
  • ·SEJAJAR: menyamakan arah dengan tetangga.
  • ·KUMPUL: bergerak menuju pusat kelompok tetangga.
  • ·Gabungan tiga aturan ini memunculkan kawanan rapi tanpa pemimpin.
Prasyarat
  • ·Koordinat dan arah gerak (vektor)
  • ·Konsep tetangga terdekat
Contoh Nyata
  • ·Animasi kawanan burung atau ikan di film dan game.
  • ·Koordinasi drone swarm saat pertunjukan lampu di langit.
  • ·Efek gerombolan karakter NPC yang bergerak natural di game.

Kompleksitas O(n^2)

Convex Hull dengan Jarvis March

LainnyaLanjut
Fase E–FE1E5

Jarvis March (gift wrapping) adalah algoritma geometri komputasi yang membentuk convex hull, yaitu poligon terkecil yang membungkus semua titik. Dimulai dari titik paling kiri, algoritma berulang kali memilih titik berikutnya yang membuat semua titik lain berada di sisi kiri garis (uji orientasi/left turn) hingga kembali ke titik awal. Visualisasi menampilkan sebaran titik dan garis hull yang terbentuk satu per satu.

Contoh kasus

Deteksi batas terluar objek dalam pengolahan citra atau menghitung area cakupan sinyal dari sekumpulan menara.

Silabus

Bungkus semua titik dengan poligon terkecil dengan berulang kali memilih titik terluar berikutnya.

Tujuan Belajar
  • ·Memahami konsep convex hull (pembungkus terluar sekumpulan titik)
  • ·Menjelaskan cara memilih titik hull lewat uji orientasi (belok kiri)
  • ·Menerapkan pembentukan batas terluar dari sebaran titik
Cara Kerja
  • ·Mulai dari titik paling kiri yang pasti bagian dari batas terluar.
  • ·Dari titik sekarang, pilih titik berikutnya yang membuat semua titik lain ada di sisi kiri garis.
  • ·Tarik garis ke titik terpilih sebagai bagian dari hull.
  • ·Lanjutkan berputar sampai kembali ke titik awal, membentuk poligon pembungkus.
Prasyarat
  • ·Koordinat titik pada bidang
  • ·Konsep kiri/kanan garis (orientasi)
Contoh Nyata
  • ·Deteksi batas terluar objek dalam pengolahan citra atau AI kamera.
  • ·Menghitung area cakupan sinyal dari sekumpulan menara BTS.
  • ·Menggambar area terluar yang mencakup semua pemain di peta game.

Kompleksitas O(n*h)

Perang Wilayah Grid

LainnyaLanjut
Fase E–FE1E5

Simulasi ini menjalankan empat agen yang bergerak di papan grid dan mengklaim sel kosong sampai seluruh papan terisi. Setiap iterasi menggerakkan kepala tiap pemain, mengklaim sel bebas, mengalihkan kepala yang terjebak, mengisi area tertutup, lalu menghitung pangsa wilayah untuk menentukan pemimpin. Visualisasi menampilkan persentase klaim tiap pemain hingga papan 100% terisi dan pemenang ditentukan.

Contoh kasus

Simulasi pembagian zona layanan antar armada pengiriman yang saling berebut area pelanggan pada peta grid kota.

Silabus

Empat agen berebut mengklaim sel kosong di papan grid sampai penuh, lalu pemilik wilayah terbesar menang.

Tujuan Belajar
  • ·Memahami simulasi banyak agen yang saling berebut wilayah
  • ·Menjelaskan langkah klaim sel, pengalihan agen terjebak, dan pengisian area tertutup
  • ·Menerapkan penghitungan pangsa wilayah untuk menentukan pemenang
Cara Kerja
  • ·Tiap pemain punya kepala yang bergerak di papan grid.
  • ·Tiap langkah, kepala pindah dan mengklaim sel kosong yang dilewati.
  • ·Kepala yang terjebak dialihkan agar tetap bergerak.
  • ·Area yang tertutup penuh diisi otomatis untuk pemilik wilayahnya.
  • ·Hitung persentase klaim tiap pemain sampai papan 100% terisi, lalu tentukan pemenang.
Prasyarat
  • ·Grid dua dimensi
  • ·Konsep gerak agen pada grid
Contoh Nyata
  • ·Game rebutan wilayah seperti Paper.io yang sering dimainkan di HP.
  • ·Pembagian zona antar armada pengiriman yang berebut area pelanggan.
  • ·Pembagian area cakupan antar tim di peta permainan strategi.

Kompleksitas O(baris * kolom)

Tic-Tac-Toe Minimax

LainnyaLanjut
Fase E–FE1E5

Minimax membuat komputer memilih langkah optimal pada Tic-Tac-Toe dengan menelusuri semua kemungkinan langkah lawan ke depan. Fungsi rekursif memberi skor pada posisi akhir, lalu tiap giliran memilih nilai maksimum untuk diri sendiri dan mengasumsikan lawan memilih nilai minimum. Visualisasi menampilkan papan beserta cabang langkah yang diperiksa (BEST vs checked) hingga X memilih jalur menang atau seri.

Contoh kasus

Mesin AI lawan pada game papan seperti catur atau Connect Four yang menghitung langkah terbaik melawan pemain manusia.

Silabus

Komputer memilih langkah optimal dengan menelusuri semua kemungkinan lawan dan mengasumsikan lawan main terbaik.

Tujuan Belajar
  • ·Memahami cara AI game memilih langkah terbaik lewat penelusuran ke depan
  • ·Menjelaskan logika maksimum untuk diri dan minimum untuk lawan
  • ·Menerapkan pemberian skor pada posisi untuk memilih langkah menang
Cara Kerja
  • ·Telusuri semua langkah yang mungkin sampai permainan berakhir.
  • ·Beri skor pada tiap posisi akhir: menang, kalah, atau seri.
  • ·Saat giliran sendiri, pilih langkah dengan skor maksimum.
  • ·Asumsikan lawan selalu memilih langkah yang membuat skor kita minimum.
  • ·Pilih langkah awal yang menjamin hasil terbaik meski lawan main sempurna.
Prasyarat
  • ·Rekursi
  • ·Pohon kemungkinan (game tree)
Contoh Nyata
  • ·Mesin AI lawan di game papan seperti catur atau Connect Four.
  • ·Bot Tic-Tac-Toe di HP yang mustahil dikalahkan.
  • ·Logika keputusan musuh cerdas pada game strategi giliran.

Kompleksitas O(b^d)