Mata Kuliah: Kecerdasan Artifisial (AI401) | 3 SKS
Persiapan Ujian Tengah Semester (UTS)
🎯 Fokus: Integrasi konsep dan latihan soal komprehensif
Gambar 1: Hubungan antar topik dalam materi UTS
| Human-like | Ideal/Rational | |
|---|---|---|
| Thinking | Cognitive Science | Logic & Mathematics |
| Acting | Turing Test | Rational Agent ⭐ |
Acting Rationally adalah pendekatan dominan dalam AI modern - fokus pada tindakan optimal, bukan meniru manusia.
| Jenis Agen | State | Goal | Utility | Learn |
|---|---|---|---|---|
| Simple Reflex | ❌ | ❌ | ❌ | ❌ |
| Model-Based Reflex | ✅ | ❌ | ❌ | ❌ |
| Goal-Based | ✅ | ✅ | ❌ | ❌ |
| Utility-Based | ✅ | ✅ | ✅ | ❌ |
| Learning | ✅ | ✅ | ✅ | ✅ |
→ Kompleksitas meningkat dari atas ke bawah →
Performance - Bagaimana mengukur kesuksesan?
Environment - Apa saja di lingkungan?
Actuators - Apa yang dapat dilakukan?
Sensors - Apa yang dapat dipersepsi?
| Dimensi | Spektrum | Contoh |
|---|---|---|
| Observable | Fully ↔ Partially | Catur vs Poker |
| Deterministic | Deterministic ↔ Stochastic | Catur vs Backgammon |
| Episodic | Episodic ↔ Sequential | Klasifikasi vs Game |
| Static | Static ↔ Dynamic | Puzzle vs Real-time |
| Discrete | Discrete ↔ Continuous | Board game vs Navigasi |
| Agents | Single ↔ Multi | Sudoku vs Sepak bola |
Pertanyaan: Robot vacuum yang mengingat posisi furniture dan area yang sudah dibersihkan memerlukan jenis agen minimal?
💡 Memerlukan internal state untuk "mengingat", tapi tidak perlu goal eksplisit.
Contoh 8-Puzzle: State = konfigurasi tile, Action = geser tile, Goal = konfigurasi target
| Kriteria | BFS | DFS | UCS |
|---|---|---|---|
| Complete? | Ya | Tidak* | Ya |
| Optimal? | Ya (unit) | Tidak | Ya |
| Time | O(bd) | O(bm) | O(b1+⌊C*/ε⌋) |
| Space | O(bd) | O(bm) | O(b1+⌊C*/ε⌋) |
| Struktur Data | Queue | Stack | Priority Q |
b = branching factor, d = depth solusi, m = max depth
BFS: Level-by-level (Queue) | DFS: Depth-first (Stack)
Graph:
S --2-- A --3-- G
| |
4 1
| |
B --2-- C
Ekspansi UCS:
Jalur optimal: S → A → G dengan cost 5
h(n) ≤ h*(n)
Tidak pernah overestimate
→ A* optimal
h(n) ≤ c(n,a,n') + h(n')
Triangle inequality
→ A* lebih efisien
f(n) = g(n) + h(n)
g(n) = biaya aktual dari start ke n
h(n) = estimasi biaya dari n ke goal
| Algoritma | Evaluasi | Optimal? |
|---|---|---|
| Greedy Best-First | f(n) = h(n) | Tidak |
| UCS | f(n) = g(n) | Ya |
| A* | f(n) = g(n) + h(n) | Ya* |
*Jika h admissible
Jumlah tile yang salah posisi
Admissible: ✅
Setiap tile minimal 1 move
Σ |xi-xgoal| + |yi-ygoal|
Admissible: ✅
Lebih informatif (h₂ ≥ h₁)
💡 Heuristik yang lebih informatif → A* eksplorasi lebih sedikit node
Pertanyaan: Jika h(n) = 2 × Manhattan distance, apakah A* dijamin menemukan solusi optimal?
⚠️ h = 2 × Manhattan TIDAK admissible! Dapat overestimate actual cost.
Probabilitas terima move buruk:
P = eΔE/T
ΔE = f(next) - f(current) (negatif jika lebih buruk)
T = temperature (tinggi → eksplorasi, rendah → eksploitasi)
function MINIMAX(node, isMaxPlayer):
if terminal(node): return utility(node)
if isMaxPlayer:
return MAX(MINIMAX(child) for child in children)
else:
return MIN(MINIMAX(child) for child in children)
Kompleksitas: O(bm) - sangat mahal!
MAX(?)
/ \
MIN(?) MIN(?)
/ \ / \
3 5 2 9
Evaluasi bottom-up:
Nilai minimax = 3, MAX pilih cabang kiri
Nilai terbaik MAX
di sepanjang path
Nilai terbaik MIN
di sepanjang path
Efisiensi: O(bm) → O(bm/2) dengan perfect ordering
Node dengan X tidak perlu dievaluasi (pruned)
Pertanyaan: Alpha-beta pruning dengan perfect ordering pada game tree b=10, d=4. Berapa evaluasi yang dihemat?
Tanpa pruning: 104 = 10,000 evaluations
Dengan pruning: ≈ 2 × 102 = 200 evaluations
Penghematan: ~98%! (9,800 evaluations)
function AC-3(csp):
queue = all arcs in csp
while queue not empty:
(Xi, Xj) = queue.pop()
if REVISE(Xi, Xj):
if Di empty: return false
add (Xk, Xi) to queue for all k ≠ j
return true
AC-3 mereduksi domain sebelum atau selama search
| Teknik | Strategi | Manfaat |
|---|---|---|
| MRV | Pilih variabel dengan domain terkecil | Fail-fast detection |
| LCV | Pilih nilai yang least constraining | Maximize flexibility |
| Forward Checking | Hapus nilai inkonsisten setelah assign | Early pruning |
CSP:
AC-3:
Domain X berkurang dari {1,2,3} menjadi {2,3}
Pertanyaan: Dalam backtracking dengan MRV, variabel mana yang dipilih pertama?
D(A) = {1, 2, 3, 4}
D(B) = {1, 2}
D(C) = {1, 2, 3}
D(D) = {5}
MRV = Minimum Remaining Values → pilih domain terkecil
| Karakteristik Masalah | Algoritma |
|---|---|
| Adversarial, zero-sum game | Minimax, Alpha-Beta |
| Constraint satisfaction | CSP + Backtracking |
| Optimisasi (path tidak penting) | Hill Climbing, SA, GA |
| Path finding + heuristik | A* |
| Path finding, perlu optimal | UCS |
| Memori terbatas | DFS, IDDFS |
| Algoritma | Time | Space | Complete | Optimal |
|---|---|---|---|---|
| BFS | O(bd) | O(bd) | ✅ | ✅* |
| DFS | O(bm) | O(bm) | ❌ | ❌ |
| UCS | O(b1+⌊C*/ε⌋) | O(b1+⌊C*/ε⌋) | ✅ | ✅ |
| A* | O(bd) | O(bd) | ✅ | ✅** |
| Minimax | O(bm) | O(bm) | ✅ | ✅ |
| Alpha-Beta | O(bm/2) | O(bm) | ✅ | ✅ |
*unit cost, **h admissible
| Topik | Perkiraan Bobot | Tipe Soal |
|---|---|---|
| Agen & PEAS (P1) | 15-20% | Analisis, identifikasi |
| Uninformed Search (P2) | 15-20% | Tracing algoritma |
| Informed Search (P3) | 20-25% | A*, desain heuristik |
| Local Search (P4) | 10-15% | Konseptual, iterasi |
| Game Playing (P5) | 15-20% | Minimax, alpha-beta |
| CSP (P6) | 15-20% | Formulasi, AC-3 |
Soal: Gunakan A* dari S ke G dengan h yang ditunjukkan
S --1-- A --2-- G
| |
3 1
| |
B --1-- C
h(S)=4, h(A)=2, h(B)=3, h(C)=1, h(G)=0
| Node | g | h | f |
|---|---|---|---|
| S | 0 | 4 | 4 |
| A | 1 | 2 | 3 ✓ |
| C | 2 | 1 | 3 ✓ |
| G | 3 | 0 | 3 ✓ |
Path: S→A→C→G atau S→A→G (cost 3)
MAX
/ \
MIN MIN
/ | \ / | \
5 3 8 2 7 4
Solusi:
Nilai minimax = 3, MAX pilih cabang kiri
Soal: Formulasikan Sudoku 4×4 sebagai CSP!
Variables: 16 cell (Xij untuk baris i, kolom j)
Domains: {1, 2, 3, 4}
Constraints:
Skenario: Robot penjinak bom harus menavigasi maze untuk mencapai bom sebelum meledak (time limit). Algoritma mana yang paling sesuai?
A* optimal dan efisien untuk path finding dengan heuristik. Time-critical memerlukan solusi cepat dan optimal.
| Konsep | Formula |
|---|---|
| A* Evaluation | f(n) = g(n) + h(n) |
| SA Acceptance | P = eΔE/T |
| Manhattan Distance | h = Σ|xi-xg| + |yi-yg| |
| Admissible | h(n) ≤ h*(n) |
| Alpha-Beta Prune | α ≥ β |
| BFS/DFS Complexity | O(bd) |
| Pertemuan | Topik | Konsep Kunci |
|---|---|---|
| P1 | Agen Cerdas | PEAS, 5 jenis agen, 6 karakteristik |
| P2 | Uninformed Search | BFS, DFS, UCS |
| P3 | Informed Search | Heuristik, A*, admissibility |
| P4 | Local Search | Hill Climbing, SA, local optima |
| P5 | Game Playing | Minimax, Alpha-Beta Pruning |
| P6 | CSP | AC-3, Backtracking, MRV |
Cakupan: Pertemuan 1-6
Pertemuan 07: Review dan Latihan Komprehensif - Persiapan UTS
Selamat belajar dan sukses UTS!