1. D-IV Rekayasa Perangkat Lunak - Teknik Informatika
TEKNIK DASAR AI:
PLANNING
Elvi Rahmi, S.T., M.Kom.
elvizasri@gmail.com
“A computer would deserve to be called intelligent if it
could deceive a human into believing that it was
human.”
- Alan Turing-
2. Referensi
Russell, S.J and Peter Norvig, P. 2010.Artificial
Intelligence: A Modern Approach. Third Edition. New
Jersey: Pearson Education.
Presentation 2023
D-IV Rekayasa Perangkat Lunak - Teknik Informatika
Suyanto. 2014. Artificial Intelligence: Searching-
Reasoning-Planning-Learning. Bandung: Informatika.
Peirce, C. S. (1955). Abduction and induction. The Journal
of Philosophy, 52(7), 157-163.
Kolodner, J. L. (1993). Case-based reasoning. Morgan
Kaufmann.
Mitchell, T. M. (1997). Machine Learning. McGraw Hill.
9. PLANNING
Teknik Dasar AI: Planning Presentation 2023
Definisi yang mengacu pada istilah plan (Oxford Advanced Learner's):
1. Ide atau metode yang telah dipikirkan secara detail sebelum menyelesaikan
suatu pekerjaan.
2. Diagram atau peta detail tentang bagian-bagian penting suatu kota, gedung,
mesin, dan sebagainya.
3. Cara penyusunan suatu benda.
4. Penyusunan keuangan sehingga seseorang bisa mendapatkan keuntungan.
10. PLANNING
Suatu metode penyelesaian masalah dengan cara
memecah masalah ke dalam sub-sub masalah yang
lebih kecil, menyelesaikan masalah satu demi satu,
kemudian menggabungkan solusi-solusi dari sub-sub
masalah tersebut menjadi sebuah solusi lengkap
dengan tetap mengingat dan menangani interaksi
yang terdapat pada sub-sub masalah tersebut.
11. DEKOMPOSISI
Teknik Dasar AI: Planning Presentation 2023
Proses memecah tugas perencanaan yang kompleks menjadi tugas yang lebih kecil dan
lebih mudah dikelola. Dalam dekomposisi, tugas perencanaan kompleks dibagi menjadi
tugas yang lebih kecil dan lebih terkelola yang dapat diselesaikan secara terpisah.
01 03
02
Decomposition into Subtasks Decomposition into Methods Decomposition into Goals
Memecah tugas perencanaan menjadi
beberapa tugas sub-perencanaan yang
lebih kecil dan mudah dikelola.
Memecah tugas perencanaan menjadi
serangkaian metode yang dapat
diterapkan untuk mencapai tujuan
tertentu.
Memecah tugas perencanaan
menjadi serangkaian tujuan yang
harus dicapai dalam rangka mencapai
tujuan akhir.
12. SYARAT MELAKUKAN DEKOMPOSISI
Teknik Dasar AI: Planning Presentation 2023
Menghindari penghitungan ulang dari seluruh state ketika terjadi
perubahan dari suatu state ke state lainnya.
Membagi masalah ke dalam beberapa sub masalah yang relatif lebih
mudah untuk diselesaikan.
13. KARAKTERISTIK PEMECAHAN MASALAH DENGAN PLANNING
Teknik Dasar AI: Planning Presentation 2023
Sistem planning pada umumnya perlu untuk memiliki kemampuan:
Memilih operator
Memilih kondisi pembeda goal-state dan current-state, mengidentifikasi
operator yang dapat mengurangi perbedaan tersebut.
Mengaplikasikan operator
Mendeteksi ketika solusi telah tercapai
Menguji rangkaian operator yang telah dihasilkan.
Mendeteksi jalan-jalan buntu
Mendeteksi ketika solusi yang hampir benar telah dicapai dan melakukan
teknik khusus untuk membuat solusi tersebut menjadi benar.
14. DAFTAR PAD
Teknik Dasar AI: Planning Presentation 2023
Tiga daftar predikat untuk mendeskripsikan perubahan kondisi
Preconditiion
Predikat-predikat yang harus bernilai benar sebelum pengaplikasian operator.
Add
Predikat-predikat yang bernilai benar setelah pengaplikasian suatu operator.
Delete
Predikat-predikat yang bernilai salah setelah pengaplikasian suatu operator.
15. TEKNIK DASAR AI: PLANNING
DUNIA BALOK
Pengujian keberhasilan suatu metode
planning dapat dilakukan pada suatu
domain yang dinamakan Dunia Balok
(Blocks-World)
Kompleksitas permasalahan
yang mungkin timbul di
dalamnya.
16. TEKNIK DASAR AI: PLANNING
DUNIA BALOK
Initial-state
Goal-state
Set operator
Rencana penyelesaian
17. TEKNIK DASAR AI: PLANNING
DUNIA BALOK
Memiliki sebuah permukaan
datar tempat menyimpan
balok, umumnya disebut meja
Memiliki sejumlah balok kotak
berukuran sama
Memiliki sebuah lengan robot
yang dapat memanipulasi
balok
19. TEKNIK DASAR AI: PLANNING
PENDEFINISIAN KONDISI BALOK
ON(A,B): Balok A menempel di atas balok B.
ONTABLE(A): Balok A berada di permukaan meja.
CLEAR(A): Tidak ada balok yang sedang menempel di atas balok A.
HOLDING(A): Lengan robot sedang memegang balok A.
ARMEMPTY: Lengan robot tidak sedang memegang balok.
21. TEKNIK DASAR AI: PLANNING
DAFTAR OPERATOR UNTUK LENGAN ROBOT
DAFTAR PAD
22. TEKNIK DASAR AI: PLANNING
DAFTAR OPERATOR UNTUK LENGAN ROBOT
STACK(A,B) bisa diaplikasikan jika kedua kondisi CLEAR(B) dan
HOLDING(A) adalah benar. Precondition (P)
Setelah suatu operator diaplikasikan, maka keadaan akan berubah.
Keadaan yang benar setelah operasi diaplikasikan disebut Add (A)
Keadaan yang salah setelah operasi diaplikasikan disebut Delete (D)
23. TEKNIK DASAR AI: PLANNING
DAFTAR PAD UNTUK OPERATOR DALAM DUNIA BALOK
STACK(A,B)
P
A
D
: HOLDING(A) ^ CLEAR(B)
: ON(A,B) ^ ARMEMPTY
: HOLDING(A) ^ CLEAR(B)
UNSTACK(A,B)
PICKUP(A)
PUTDOWN(A)
24. TEKNIK DASAR AI: PLANNING
DAFTAR PAD UNTUK OPERATOR DALAM DUNIA BALOK
STACK(A,B)
P
A
D
: HOLDING(A) ^ CLEAR(B)
: ON(A,B) ^ ARMEMPTY
: HOLDING(A) ^ CLEAR(B)
UNSTACK(A,B)
PICKUP(A)
PUTDOWN(A)
P
A
D
: ON(A,B) ^ CLEAR(A) ^ ARMEMPTY
: HOLDING(A) ^ CLEAR(B)
: ON(A,B) ^ ARMEMPTY
25. TEKNIK DASAR AI: PLANNING
DAFTAR PAD UNTUK OPERATOR DALAM DUNIA BALOK
STACK(A,B)
P
A
D
: HOLDING(A) ^ CLEAR(B)
: ON(A,B) ^ ARMEMPTY
: HOLDING(A) ^ CLEAR(B)
UNSTACK(A,B)
PICKUP(A)
PUTDOWN(A)
P
A
D
: ON(A,B) ^ CLEAR(A) ^ ARMEMPTY
: HOLDING(A) ^ CLEAR(B)
: ON(A,B) ^ ARMEMPTY
P
A
D
: ONTABLE(A) ^ CLEAR(A)^ ARMEMPTY
: HOLDING(A)
: ONTABLE(A) ^ ARMEMPTY
26. TEKNIK DASAR AI: PLANNING
DAFTAR PAD UNTUK OPERATOR DALAM DUNIA BALOK
STACK(A,B)
P
A
D
: HOLDING(A) ^ CLEAR(B)
: ON(A,B) ^ ARMEMPTY
: HOLDING(A) ^ CLEAR(B)
UNSTACK(A,B)
PICKUP(A)
PUTDOWN(A)
P
A
D
: ON(A,B) ^ CLEAR(A) ^ ARMEMPTY
: HOLDING(A) ^ CLEAR(B)
: ON(A,B) ^ ARMEMPTY
P
A
D
: ONTABLE(A) ^ CLEAR(A)^ ARMEMPTY
: HOLDING(A)
: ONTABLE(A) ^ ARMEMPTY
P
A
D
: HOLDING(A)
: ONTABLE(A) ^ ARMEMPTY
: HOLDING(A)
27. TEKNIK DASAR AI: PLANNING
DAFTAR PAD UNTUK OPERATOR DALAM DUNIA BALOK
STACK(A,B)
P
A
D
: HOLDING(A) ^ CLEAR(B)
: ON(A,B) ^ ARMEMPTY
: HOLDING(A) ^ CLEAR(B)
UNSTACK(A,B)
PICKUP(A)
PUTDOWN(A)
P
A
D
: ON(A,B) ^ CLEAR(A) ^ ARMEMPTY
: HOLDING(A) ^ CLEAR(B)
: ON(A,B) ^ ARMEMPTY
P
A
D
: ONTABLE(A) ^ CLEAR(A)^ ARMEMPTY
: HOLDING(A)
: ONTABLE(A) ^ ARMEMPTY
P
A
D
: HOLDING(A)
: ONTABLE(A) ^ ARMEMPTY
: HOLDING(A)
28. METODE PLANNING
Teknik Dasar AI: Planning Presentation 2023
Metode Planning
Goal-Stack-Planning Constraint-Posting
Keunggulan:
Kemudahan
implementasi dan biaya
komputasi
Keunggulan:
Efisiensi Rencana Penyelesaian yang
dihasilkan
29. GOAL-STACK-PLANNING
Teknik Dasar AI: Planning Presentation 2023
Teknik dasar dalam AI Planning, yang digunakan untuk merencanakan
serangkaian tindakan atau operasi untuk mencapai tujuan tertentu.
GSP didasarkan pada konsep bahwa perencanaan dimulai dari tujuan
akhir dan kemudian dilakukan secara terbalik untuk menentukan
urutan tindakan yang diperlukan untuk mencapai tujuan tersebut.
32. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
1. Masukkan kondisi-kondisi yang merupakan goal-state ke dalam
stack.
STACK = ?
33. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
1. Masukkan kondisi-kondisi yang merupakan goal-state ke dalam
stack.
STACK = ON(C,A) ^ ON(B,D) ^ ONTABLE(A) ^ ONTABLE(D)
34. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
1. Masukkan kondisi-kondisi yang merupakan goal-state ke dalam
stack.
36. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
2. Mengacu pada current-state, kondisi-kondisi goal state yang belum
tercapai dimasukkan ke dalam stack, masing-masing menempati
sebuah slot.
ON(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
ON(B,D)
ON(C,A)
ON(C,A) ^ ON(B,D) ^ OTAD
1 2
37. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
ON(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
ON(B,D)
ON(C,A)
ON(C,A) ^ ON(B,D) ^ OTAD
1 2
38. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
ON(C,A) = STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
1 STACK(C,A) dapat dikerjakan jika P = True
39. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
40. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
CLEAR (A)
HOLDING (C)
HOLDING (C) ^ CLEAR (A)
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
41. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
CLEAR (A)
HOLDING (C)
HOLDING (C) ^ CLEAR (A)
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
42. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
UNSTACK (B,A)
HOLDING (C)
HOLDING (C) ^ CLEAR (A)
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
43. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
ON(B,A)
CLEAR(B)
ARMEMPTY
ON(B,A) ^ CLEAR(B) ^ ARMEMPTY
UNSTACK(B,A)
HOLDING (C)
HOLDING (C) ^ CLEAR (A)
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
44. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
ON(B,A)
CLEAR(B)
ARMEMPTY
ON(B,A) ^ CLEAR(B) ^ ARMEMPTY
UNSTACK(B,A)
HOLDING (C)
HOLDING (C) ^ CLEAR (A)
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
45. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
ON(B,A)
CLEAR(B)
ARMEMPTY
ON(B,A) ^ CLEAR(B) ^ ARMEMPTY
UNSTACK(B,A)
HOLDING (C)
HOLDING (C) ^ CLEAR (A)
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
Tambahkan UNSTACK(B,A) ke dalam
antrian.
QUEUE = UNSTACK(B,A)
46. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
HOLDING (C)
HOLDING (C) ^ CLEAR (A)
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
DIKERJAKAN
47. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
PICKUP(C)
HOLDING (C) ^ CLEAR (A)
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
48. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
ONTABLE(C)
CLEAR(C)
ARMEMPTY
ONTABLE(C) ^ CLEAR (C) ^ ARMEMPTY
PICKUP(C)
HOLDING (C) ^ CLEAR (A)
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
49. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
ONTABLE(C)
CLEAR(C)
ARMEMPTY
ONTABLE(C) ^ CLEAR (C) ^ ARMEMPTY
PICKUP(C)
HOLDING (C) ^ CLEAR (A)
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
50. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
STACK(B,D)
ONTABLE(C) ^ CLEAR (C) ^ ARMEMPTY
PICKUP(C)
HOLDING (C) ^ CLEAR (A)
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD
51. GSP: LANGKAH PENYELESAIAN
Teknik Dasar AI: Planning Presentation 2023
3. Slot yang berada paling atas pada stack akan diperiksa.
Hal-hal yang akan dilakukan tergantung pada kondisi slot tersebut.
HOLDING(B)
CLEAR (D)
HOLDING(B) ^ CLEAR (D)
STACK(B,D)
ONTABLE(C) ^ CLEAR (C) ^ ARMEMPTY
PICKUP(C)
HOLDING (C) ^ CLEAR (A)
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ OTAD