|
|
UNIVERSITAS BUMIGORA
|
RPS-18-IKKK310002 |
| RENCANA PEMBELAJARAN SEMESTER | ||||||
| MATA KULIAH (MK) | KODE | Rumpun MK | BOBOT (sks) | SEMESTER | Tanggal Penyusunan | |
| Algorithm and Complexity | IKKK310002 | Algorithmic Foundations (AL) | T= 3 | 1 | 03 Feb 2026 | |
| Pengesahan | Dosen Pengembang RPS | Koordinator RMK | Ka PRODI |
|
Dr. Diah Susilowati, M.Kom/Dr. Neny Sulistianingsih, M.Kom |
- |
Dr. Neny Sulistianingsih, M.Kom |
| Capaian Pembelajaran | CPL-PRODI yang dibebankan pada MK | |
| CPL01 | Mampu menguasai dan mengembangkan konsep serta teori lanjutan di bidang sistem cerdas dan rekayasa perangkat lunak dan data secara mendalam dan sistematis | |
| CPL02 | Mampu merancang dan mengimplementasikan solusi teknologi berbasis AI dan data engineering untuk menyelesaikan permasalahan kompleks di berbagai sektor | |
| Capaian Pembelajaran Mata Kuliah (CPMK) | ||
| CPMK012 | Mampu mengevaluasi dan menganalisis kompleksitas algoritma secara mendalam | |
| CPMK022 | Mampu merancang algoritma efisien untuk solusi berbasis komputasi kompleks | |
| Kemampuan akhir tiap tahapan belajar (Sub-CPMK) | ||
| sub.cpmk.IKKK310002.CPMK012 .1 | Mampu menjelaskan notasi kompleksitas waktu dan ruang (Big-O, Omega, Theta) untuk berbagai jenis algoritma | |
| sub.cpmk.IKKK310002.CPMK012 .2 | Mampu membandingkan efisiensi berbagai algoritma klasik (sorting, searching, graph) melalui analisis teoritis | |
| sub.cpmk.IKKK310002.CPMK012 .3 | Mampu mengevaluasi trade-off antara kompleksitas waktu dan memori dalam pemilihan algoritma | |
| sub.cpmk.IKKK310002.CPMK012 .4 | Mampu menganalisis kompleksitas algoritma rekursif dan divide-and-conquer menggunakan master theorem | |
| sub.cpmk.IKKK310002.CPMK022 .1 | Mampu merancang algoritma berbasis greedy, dynamic programming, dan backtracking untuk permasalahan optimisasi | |
| sub.cpmk.IKKK310002.CPMK022 .2 | Mampu mengimplementasikan algoritma efisien dalam bahasa pemrograman tingkat tinggi dan mengukur performanya | |
| sub.cpmk.IKKK310002.CPMK022 .3 | Mampu menerapkan strategi algoritmik untuk permasalahan real-world (eg penjadwalan, alokasi sumber daya) | |
| sub.cpmk.IKKK310002.CPMK022 .4 | Mampu mengintegrasikan algoritma heuristik dan metaheuristik untuk permasalahan komputasi tak terpolinomial (NP) | |
| Korelasi CPMK terhadap Sub-CPMK | ||
| CPMK012 |
sub.cpmk.IKKK310002.CPMK012 .1 sub.cpmk.IKKK310002.CPMK012 .2 sub.cpmk.IKKK310002.CPMK012 .3 sub.cpmk.IKKK310002.CPMK012 .4 |
|
| CPMK022 |
sub.cpmk.IKKK310002.CPMK022 .1 sub.cpmk.IKKK310002.CPMK022 .2 sub.cpmk.IKKK310002.CPMK022 .3 sub.cpmk.IKKK310002.CPMK022 .4 |
|
| Deskripsi Singkat MK | Mata kuliah Algorithm and Complexity ditujukan bagi mahasiswa Magister Ilmu Komputer (Audience) agar mampu menganalisis notasi kompleksitas waktu dan ruang, mengevaluasi efisiensi berbagai algoritma klasik, serta merancang algoritma optimisasi lanjutan berbasis greedy, dynamic programming, backtracking, heuristik, dan metaheuristik (Behavior) dengan menggunakan konsep teori kompleksitas, studi kasus nyata, serta implementasi berbasis bahasa pemrograman tingkat tinggi dan eksperimen komputasi (Condition) sehingga menghasilkan solusi algoritmik yang efisien, dapat diukur kinerjanya, serta mampu diterapkan pada permasalahan nyata termasuk yang bersifat NP (Degree). | |
| Bahan Kajian : Materi Pembelajaran | 1. Notasi kompleksitas (Big-O, Ω, Θ) & aturan aljabar. 2. Analisis algoritma klasik: sorting, searching, struktur & algoritma graf. 3. Trade-off waktu vs memori; batas bawah & argumen optimalitas. 4. Rekursi, divide-and-conquer, Master Theorem & teknik akunting. 5. Perancangan algoritma: Greedy, Dynamic Programming, Backtracking. 6. Implementasi & benchmarking (profiling waktu/ruang, analisis asimtotik vs empiris). 7. Studi kasus optimisasi (penjadwalan, knapsack, assignment, path planning). 8. Heuristik & Metaheuristik (Hill-Climbing, Simulated Annealing, GA, ACO). 9. Kompleksitas komputasi (P/NP, reduksi, aproksimasi). 10. Etika, reprodusibilitas eksperimen, dan pelaporan ilmiah | |
| Pustaka | Utama | |
|
||
| Pendukung | ||
|
|
||
| Dosen Pengampu | Dr. Dyah Susilowati, S.Kom, M.Kom, Dr. Neny Sulistianingsih, M.Kom | |
| Mata Kuliah Syarat | - | |
| Pertemuan Ke | Kemampuan akhir tiap tahapan belajar (Sub-CPMK) | Penilaian | Bentuk Pembelajaran; Metode Pembelajaran; Penugasan Mahasiswa; | Materi Pembelajaran | Bobot Penilaian | ||
|---|---|---|---|---|---|---|---|
| Indikator | Kriteria & Teknik | Luring | Daring | ||||
| 1 | sub.cpmk.IKKK310002.CPMK012 .1-Mampu menjelaskan notasi kompleksitas waktu dan ruang (Big-O, Omega, Theta) untuk berbagai jenis algoritma | Ketepatan penalaran dan jawaban |
Kriteria Partisipasi aktif dalam diskusi Teknik Partisipasi & Kuis |
Diskusi,Ceramah Langsung,[C=100 Menit] |
Pemahaman materi mandiri,Kegiatan Mandiri,[PM=50 Menit] |
Topik Introduction to Algorithm and Complexity Sub Topik Big-O Big Ω Big Θ aturan aljabar |
2 |
| 2 | sub.cpmk.IKKK310002.CPMK012 .2-Mampu membandingkan efisiensi berbagai algoritma klasik (sorting, searching, graph) melalui analisis teoritis | Menganalisis kompleksitas beberapa algoritma dengan tepat |
Kriteria Ketepatan jawaban sesuai perintah soal Teknik Kuis & Tugas singkat |
Pembimbingan,Proses Belajar,[PB=50 Menit] |
Diskusi,Kegiatan Mandiri,[PM=100 Menit] |
Topik Sorting/searching; best/avg/worst Sub Topik |
3 |
| 3 | sub.cpmk.IKKK310002.CPMK012 .3-Mampu mengevaluasi trade-off antara kompleksitas waktu dan memori dalam pemilihan algoritma | Argumen & justifikasi kuat |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas analitik |
Diskusi,Case Based Learning,[CBL=50 Menit] |
Penugasan,Case Based Learning,[CBL=100 Menit] |
Topik Waktu vs memori; cache & locality Sub Topik |
3 |
| 4 | sub.cpmk.IKKK310002.CPMK012 .4-Mampu menganalisis kompleksitas algoritma rekursif dan divide-and-conquer menggunakan master theorem | Derivasi tepat |
Kriteria Ketepatan jawaban ujian sesuai perintah soal Teknik Kuis struktur |
Ujian terjadwal,Kuis Langsung,[KL=150 Menit] |
Topik Recurrence; Master Theorem Sub Topik |
2 | |
| 5 | sub.cpmk.IKKK310002.CPMK012 .2-Mampu membandingkan efisiensi berbagai algoritma klasik (sorting, searching, graph) melalui analisis teoritis | Ketepatan & efisiensi |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas Individu |
Pembimbingan,Praktikum Online,[PR=50 Menit] |
Penugasan,Problem based Learning,[PBL=100 Menit] |
Topik Divide-and-Conquer (FFT, QuickSort) Sub Topik |
5 |
| 6 | sub.cpmk.IKKK310002.CPMK012 .1-Mampu menjelaskan notasi kompleksitas waktu dan ruang (Big-O, Omega, Theta) untuk berbagai jenis algoritma sub.cpmk.IKKK310002.CPMK012 .2-Mampu membandingkan efisiensi berbagai algoritma klasik (sorting, searching, graph) melalui analisis teoritis sub.cpmk.IKKK310002.CPMK012 .3-Mampu mengevaluasi trade-off antara kompleksitas waktu dan memori dalam pemilihan algoritma sub.cpmk.IKKK310002.CPMK012 .4-Mampu menganalisis kompleksitas algoritma rekursif dan divide-and-conquer menggunakan master theorem | Struktur & ketajaman analisis |
Kriteria Kemampuan mahasiswa dalam menerapkan konsep/teori untuk menganalisis kasus nyata atau simulasi profesional. Teknik Presentasi perbandingan algoritma |
Diskusi,Problem based Learning,[PBL=150 Menit] |
Topik Studi literatur Sub Topik |
5 | |
| 7 | |||||||
| 8 | sub.cpmk.IKKK310002.CPMK012 .1-Mampu menjelaskan notasi kompleksitas waktu dan ruang (Big-O, Omega, Theta) untuk berbagai jenis algoritma sub.cpmk.IKKK310002.CPMK012 .2-Mampu membandingkan efisiensi berbagai algoritma klasik (sorting, searching, graph) melalui analisis teoritis sub.cpmk.IKKK310002.CPMK012 .3-Mampu mengevaluasi trade-off antara kompleksitas waktu dan memori dalam pemilihan algoritma sub.cpmk.IKKK310002.CPMK012 .4-Mampu menganalisis kompleksitas algoritma rekursif dan divide-and-conquer menggunakan master theorem | Ketepatan & kedalaman jawaban |
Kriteria Ketepatan jawaban ujian sesuai perintah soal Teknik Ujian tertulis |
Ujian terjadwal,Kuis Langsung,[KL=100 Menit] |
Topik Ujian Tengah Semester Sub Topik |
15 | |
| 9 | sub.cpmk.IKKK310002.CPMK022 .1-Mampu merancang algoritma berbasis greedy, dynamic programming, dan backtracking untuk permasalahan optimisasi | Ketepatan formulasi |
Kriteria Partisipasi aktif dalam diskusi Teknik Ketepatan formulasi |
Pembimbingan,Proses Belajar,[PB=100 Menit] |
Diskusi,Praktikum Online,[PR=50 Menit] |
Topik Greedy, DP, Backtracking Sub Topik |
4 |
| 10 | sub.cpmk.IKKK310002.CPMK022 .2-Mampu mengimplementasikan algoritma efisien dalam bahasa pemrograman tingkat tinggi dan mengukur performanya | Program benar & efisien |
Kriteria Ketepatan jawaban dan kesesuaian sintaks dan output yang diminta Teknik Implementasi & observasi |
Pembimbingan,Proses Belajar,[PB=50 Menit] |
Pembimbingan,Praktikum Online,[PR=100 Menit] |
Topik Coding (Python/CPP), profiling Sub Topik |
6 |
| 11 | sub.cpmk.IKKK310002.CPMK022 .3-Mampu menerapkan strategi algoritmik untuk permasalahan real-world (eg penjadwalan, alokasi sumber daya) | Akurasi & waktu menjalankan program |
Kriteria Ketepatan jawaban dan kesesuaian sintaks dan output yang diminta Teknik Tugas kasus |
Pembimbingan,Case Based Learning,[CBL=50 Menit] |
Pemahaman materi mandiri,Case Based Learning,[CBL=100 Menit] |
Topik Penjadwalan/knapsack/flow Sub Topik |
6 |
| 12 | sub.cpmk.IKKK310002.CPMK022 .4-Mampu mengintegrasikan algoritma heuristik dan metaheuristik untuk permasalahan komputasi tak terpolinomial (NP) | Desain & hasil eksperimen |
Kriteria Partisipasi aktif dalam diskusi Teknik Observasi |
Diskusi,Proses Belajar,[PB=100 Menit] |
Pemahaman materi mandiri,Praktikum Online,[PR=50 Menit] |
Topik SA, GA, ACO; parameterisasi Sub Topik |
6 |
| 13 | sub.cpmk.IKKK310002.CPMK012 .2-Mampu membandingkan efisiensi berbagai algoritma klasik (sorting, searching, graph) melalui analisis teoritis | Mahasiswa dapat: 1. Menganalisis konsepalgoritma divide& conquer 2. Merancang algortima divide& conquer 3. Menghitung kompleksitas algoritma divide & conquer 4. Menerapkan algoritma divide & conquer ke dalam program untuk penyelesaian kasus |
Kriteria Kemampuan mahasiswa dalam menerapkan konsep/teori untuk menganalisis kasus nyata atau simulasi profesional. Teknik - |
Kuliah,Ceramah Langsung,[C=149 Menit] |
Topik Strategi Algoritma 3 (Divide & Conquer) 1. Searching: • Binary Search 2. Sorting : • Merge Sort • Insertion Sort • Quick Sort • Selection Sort Sub Topik - |
2 | |
| 14 | |||||||
| 15 | sub.cpmk.IKKK310002.CPMK022 .3-Mampu menerapkan strategi algoritmik untuk permasalahan real-world (eg penjadwalan, alokasi sumber daya) | Mahasiswa dapat menyelesaikan proyek sesuai dengan ketentuan yang diberikan dengan baik dan benar. |
Kriteria Kemampuan mahasiswa dalam merancang, mengembangkan, dan menyajikan solusi atau produk nyata melalui proyek terstruktur Teknik - |
Penugasan,Project based Learning,[PjBL=50 Menit] |
Topik Proyek Akhir: 1. Merancang sebuah aplikasi dengan tema bebas. 2. Kriteria aplikasi : menerapkan minimal dua strategi algoritma Sub Topik - |
3 | |
| 16 | sub.cpmk.IKKK310002.CPMK022 .1-Mampu merancang algoritma berbasis greedy, dynamic programming, dan backtracking untuk permasalahan optimisasi sub.cpmk.IKKK310002.CPMK022 .2-Mampu mengimplementasikan algoritma efisien dalam bahasa pemrograman tingkat tinggi dan mengukur performanya sub.cpmk.IKKK310002.CPMK022 .3-Mampu menerapkan strategi algoritmik untuk permasalahan real-world (eg penjadwalan, alokasi sumber daya) sub.cpmk.IKKK310002.CPMK022 .4-Mampu mengintegrasikan algoritma heuristik dan metaheuristik untuk permasalahan komputasi tak terpolinomial (NP) | UJIAN AKHIR SEMESTER (UAS) |
Kriteria Ketepatan jawaban ujian sesuai perintah soal Teknik - |
Penugasan,Project based Learning,[PjBL=50 Menit] |
Topik UJIAN AKHIR SEMESTER (UAS) Sub Topik - |
38 | |
| CPL | MK | CPMK | Kuis | Tugas teori (individu) | Unjuk Kerja (Presentasi) | Tes Tulis (UTS) | Tes Tulis (UAS) | Tugas Teori (Kelompok) | Tugas Praktikum | Partisipasi |
|---|---|---|---|---|---|---|---|---|---|---|
| CPL01 | Algorithm and Complexity | CPMK012 | Y | Y | Y | Y | Y | Y | ||
| CPL02 | Algorithm and Complexity | CPMK022 | Y | Y | Y | Y | Y |
| CPL | CPMK | Sub-CPMK | Detail Penugasan (Teknik Penilaian) | Bobot % | Kriteria Penilaian |
|---|---|---|---|---|---|
| CPL01 | CPMK012 | sub.cpmk.IKKK310002.CPMK012 .1 | Partisipasi & Kuis | 2 | Partisipasi aktif dalam diskusi |
| CPL01 | CPMK012 | sub.cpmk.IKKK310002.CPMK012 .2 | Kuis & Tugas singkat | 3 | Ketepatan jawaban sesuai perintah soal |
| CPL01 | CPMK012 | sub.cpmk.IKKK310002.CPMK012 .3 | Tugas analitik | 3 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL01 | CPMK012 | sub.cpmk.IKKK310002.CPMK012 .4 | Kuis struktur | 2 | Ketepatan jawaban ujian sesuai perintah soal |
| CPL01 | CPMK012 | sub.cpmk.IKKK310002.CPMK012 .2 | Tugas Individu | 5 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL01 | CPMK012 | sub.cpmk.IKKK310002.CPMK012 .1, sub.cpmk.IKKK310002.CPMK012 .2, sub.cpmk.IKKK310002.CPMK012 .3, sub.cpmk.IKKK310002.CPMK012 .4 | Presentasi perbandingan algoritma | 5 | Kemampuan mahasiswa dalam menerapkan konsep/teori untuk menganalisis kasus nyata atau simulasi profesional. |
| CPL01 | CPMK012 | sub.cpmk.IKKK310002.CPMK012 .1, sub.cpmk.IKKK310002.CPMK012 .2, sub.cpmk.IKKK310002.CPMK012 .3, sub.cpmk.IKKK310002.CPMK012 .4 | Ujian tertulis | 15 | Ketepatan jawaban ujian sesuai perintah soal |
| CPL02 | CPMK022 | sub.cpmk.IKKK310002.CPMK022 .1 | Ketepatan formulasi | 4 | Partisipasi aktif dalam diskusi |
| CPL02 | CPMK022 | sub.cpmk.IKKK310002.CPMK022 .2 | Implementasi & observasi | 6 | Ketepatan jawaban dan kesesuaian sintaks dan output yang diminta |
| CPL02 | CPMK022 | sub.cpmk.IKKK310002.CPMK022 .3 | Tugas kasus | 6 | Ketepatan jawaban dan kesesuaian sintaks dan output yang diminta |
| CPL02 | CPMK022 | sub.cpmk.IKKK310002.CPMK022 .4 | Observasi | 6 | Partisipasi aktif dalam diskusi |
| CPL01 | CPMK012 | sub.cpmk.IKKK310002.CPMK012 .2 | - | 2 | Kemampuan mahasiswa dalam menerapkan konsep/teori untuk menganalisis kasus nyata atau simulasi profesional. |
| CPL02 | CPMK022 | sub.cpmk.IKKK310002.CPMK022 .3 | - | 3 | Kemampuan mahasiswa dalam merancang, mengembangkan, dan menyajikan solusi atau produk nyata melalui proyek terstruktur |
| CPL02 | CPMK022 | sub.cpmk.IKKK310002.CPMK022 .1, sub.cpmk.IKKK310002.CPMK022 .2, sub.cpmk.IKKK310002.CPMK022 .3, sub.cpmk.IKKK310002.CPMK022 .4 | - | 38 | Ketepatan jawaban ujian sesuai perintah soal |
| Total | 100 | ||||
| CPL | MK | CPMK | Kuis | Tugas teori (individu) | Unjuk Kerja (Presentasi) | Tes Tulis (UTS) | Tes Tulis (UAS) | Tugas Teori (Kelompok) | Tugas Praktikum | Partisipasi | Total |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CPL01 | Algorithm and Complexity | CPMK012 | 2% | 5% | 5% | 15% | 0% | 6% | 0% | 4% | 37% |
| CPL02 | Algorithm and Complexity | CPMK022 | 0% | 10% | 0% | 0% | 38% | 6% | 6% | 3% | 63% |
| 100% | |||||||||||