Analisis dan Perancangan Algoritma

Slides:



Advertisements
Presentasi serupa
PENDAHULUAN KONSEP ALGORITMA DAN DIAGRAM ALIR (FLOWCHART)
Advertisements

Bab 1 PENDAHULUAN.
Kompleksitas Algoritma
PERTEMUAN 4 TAHAP PEMROGRAMAN.
Pengantar Strategi Algoritma
Introduction to Algorithm and Programming
Bahasa Pemrograman dan Flow Chart
Algoritma Divide and Conquer
Algoritma Branch and Bound
Kompleksitas Algoritma
Algoritma (Komputer) EL 2001 – Dasar Pemrograman Budi Rahardjo Teknik Elektro ITB
Algoritma Runut-balik (Backtracking)
Design and Analysis of Algorithm Back Track Algorithm
ALGORITMA & LOGIKA PEMROGRAMAN
Kompleksitas Algoritma
Pengantar Strategi Algoritmik
Algoritma (Komputer).
Algoritma Divide and Conquer
PERTEMUAN 4 TAHAP PEMROGRAMAN.
PART 6 Algoritma DOSEN : AHMAD APANDI, ST.
Algoritma Divide and Conquer (Bagian 1) Wahyul Wahidah Maulida, ST., M.Eng.
12-CRS-0106 REVISED 8 FEB 2013 CSG523/ Desain dan Analisis Algoritma Divide and Conquer Intelligence, Computing, Multimedia (ICM)
P31035 Algorithms and Complexity 3 SKS
PERTEMUAN I PENGANTAR ALGORITMA
ALGORITMA DAN PEMROGRAMAN
MATERI PERKULIAHAN ANALISIS ALGORITMA
Kompleksitas Algoritma
Dasar Algoritma & Pemrogramn KUG1C3
Flowchart (Diagram Alur)
Algoritma dan Pemrograman 1
Pendahuluan TEE 2103 Algoritma dan Pemrograman Dosen: Abdillah, MIT
Bahan Kuliah IF2211 Strategi Algoritma
Pendahuluan TEE 2103 Algoritma dan Pemrograman Dosen: Abdillah, MIT
MATERI PERKULIAHAN ANALISIS ALGORITMA
Pertemuan 25 MERANCANG ALGORITMA DENGAN KOMPLEKSITAS TERTENTU
ALGORITMA DAN PEMROGRAMAN Pengantar
MODUL 3 PSEUDOCODE.
ALGORITMA & LOGIKA PEMROGRAMAN
MATERI PERKULIAHAN ANALISIS ALGORITMA
Analisa Algoritma (IF1282)
Algoritma Greedy (lanjutan)
MATERI PERKULIAHAN ANALISIS ALGORITMA
Kuliah ke 6 Strategi Algoritma
MATERI PERKULIAHAN ANALISIS ALGORITMA
Pertemuan 26 PRAKTEK ANALISIS ALGORITMA
MATERI PERKULIAHAN ANALISIS ALGORITMA
LATIHAN 26 Buatlah sebuah algoritma untuk menampilkan jumlah faktor pembagi bilangan X, dengan X adalah 1 hingga N ! Misal Jumlah faktor dari 1 adalah.
Kompleksitas Algoritma
PEDOMAN PENYUSUNAN ALGORITMA
Analisa Algoritma Konsep Algoritma.
ALGORITMA DAN PEMROGRAMAN Pengantar
Analisa Algoritma : Pendahuluan
Algoritma dan Pemrograman I Dosen : Utami Dewi Widianti
Introduction to Algorithm and Programming
Bahasa Pemrograman dan Flow Chart
Introduction to Algorithm and Programming
ALGORITMA GREEDY : MINIMUM SPANNING TREE
Strategi Algoritma E. Haodudin Nurkifli Teknik Informatika
EL 2001 – Dasar Pemrograman Budi Rahardjo Teknik Elektro ITB
Algoritma dan Pemrograman I
Logika dan Algorithma 2 SKS
Algoritma Divide and Conquer
Algoritma Divide and Conquer
Introduction to Algorithm and Programming
Algoritma Divide and Conquer
Algoritma Divide and Conquer
Dr. Mufid Nilmada, SSi., MMSI
Pengantar Strategi Algoritma
YULI ASTUTI, S.KOM.  Algoritma yaitu urutan langkah-langkah logis untuk menyelesaikan sebuah masalah yang disusun dengan sistematis.  Program yaitu.
Konsep Algoritma Pemrograman
Transcript presentasi:

Analisis dan Perancangan Algoritma E. Haodudin Nurkifli Teknik Informatika Universitas Ahmad Dahlan Kuliah 0 : Administrative dan Introduction 27 Februari 2010 8-Aug-18

Perkenalan Nama : E. Haodudin Nurkifli Alamat Asal: Karawang Jawa barat Alamat yogya : Jl mondoliko 836 UH II Yogyakarta E-mail : it_freshndin@yahoo.com

RENCANA HARI INI Admistrivia Kuliah Tugas Individu dan Tugas Kelompok (presentasi) Praktikum Ujian Pengantar Masalah, apa itu algoritma, perancangan, analisis algoritma

ADMINISTRIVIA

Buku Pegangan Fundamental Of Algorithmics (Gilles Brassard and Paul Bratley Perancangan & Analisis Algoritma (Eko Budi Purwanto) Algoritma dan Pemrogramman (Rinaldi Munir) Modul Analisis dan Perancangan Algoritma (......)

Slide dan Tugas Slide Akan saya berikan dalam bentuk file Slide, tugas dan lain lain http://informatikauad.wordpress.com/ Dalam format ppt Membuat millis ?.. Sebagai forum sering dan kumpul tugas.

Tugas Tugas Individu (latihan) Latihan 2 kali sebelum mid dan 2 kali setelah mid soal latihan dapat di download di blog dan dikumpul berupa hardcopy. Tugas Kelompok (Presentasi) Tugas berupa makalah dan dipresentasikan (setiap orang wajib presentasi). Quiz Dilaksanakan 2 kali, 1 kali sebelum mid dan 1 kali setelah mid ( pelaksanaan quiz tergantung saya dan tidak diberitahukan).

Ujian MidTerm ??? Ujian Akhir ??? Nilai Akhir Numerik Nilai Akhir Huruf

Persentase Tugas Individu dan Tugas kelompok 20 % Quiz 15 % Praktikum 15 % Midterm 20 % Ujian Akhir (UAS) 30 %

Nilai Akhir dan Numerik Nilai Akhir Numerik ( 20 x Tgs Individu dan Kelompok + 15 x Quiz + 15 x Praktikum + 20 x Midterm + 30 x UAS) / 100 Nilai Akhir Huruf 100-85 : A 84-70 : B 69- 50 : C 49- 30 : D < 29 : E

Materi Introduction Iteratif and rekursif Complexcity Devide and conquare (bagi dan gabung) Greedy back tracking (Runtut balik) Pembatasan dan pencabangan

Goal Mampu mengklasifikasikan algoritma berdasarkan gagasan yang mendasarinya Mampu membuat algoritma yang baik dan benar Mengimplementasikan

Peraturan Tambahan Kehadiran diusahakan 100 % tetapi diperbolehkan minimum 75 %. < 75 % tidak diperbolehkan mengikuti UAS. Pakaian Rapi dan pakai sepatu 15 Menit dosen tidak datang berarti kosong dan diganti pada hari lain 15 menit mahasiswa belum masuk dianggap tidak hadir NB : Nilai kurang, ada subjektifitas dosen dilihat dari presensi / kehadiran mahasiswa.

Tulis yang anda ingikan dari saya dengan 3 kalimat.

KULIAH SERIUS

Masalah (Problem) Masalah atau Probelm : pertanyaan atau tugas yang kita cari jawabanya. Contoh-contoh masalah : 1. [ Masalah Pengurutan] : diberikan senarai (list) S yang tediri dari n buah data bilangan bulat. Bagaimana mengurutkan n buah data tersebut sehingga terurut secara menaik ?. Jawaban dari masalah ini: barisan nilai di dalam senarai yang terurut menaik.

2 [Masalah pencarian] Tentukan apakah suatu bilangan x terdapat di dalam sebuah senarai S yang beriri n buah bilangan bulat! Jawaban dari masalah ini: “ya” jika x ditemukan di dalam senarai, atau “tidak” jika x tidak terdapat di dalam senarai.

Instansiasi masalah: parameter nilai yang diasosiasikan pada masalah. Jawaban terhadap instansiasi masalah disebut solusi Contoh: Selesaikan masalah pengurutan untuk S = [15, 4, 8, 11, 2, 10, 19] n = 7 Solusi: S = [2, 4, 8, 10, 11, 15, 19].

Algoritma Untuk masalah dengan instansiasi yang besar, solusinya menjadi lebih sulit. Perlu sebuah prosedur umum yang berisi langkahlangkah penyelesaian masalah -> algoritma Algoritma:urutan langkah-langkah untuk memecahkan suatu masalah

Definisi lain dari algortima : Algoritma adalah deretan langkah-langkah komputasi yang mentransformasi data masukan menjadi data keluaran [COR92] Algoritma adalah deretan instruksi yang jelaskan untuk memecahkan masalah, yaitu untuk memperoleh keluaran yang diinginkan dari suatu masukan dalam jumlah waktu yang terbata[LEV03]. Algoritma adalah prosedur komputasi yang terdefinisi dengan baik yang menggunakan beberapa nilai sebagai masukan. Jadi, algoritma adalah deretan langkah komputesi yang mentranformasikan masukan menjadi keluaran [COR89].

Algoritmaik : Studi mengenai Algoritma Notasi apapun dapat digunakan untuk menuliskan algoritma asalkan mudah dibaca dan dipahami. Algoritma dapat ditulis dengan notasi : Kalimat-kalimat deskriftif (bahasa natural) Bagan alir (flow chart) Pseudo-code (gabungan antara bahasa alami dengan bahasa pemrograman)

Contoh : Buatlah algoritma terbesar dari 3 buah bilangan : Dengan kalimat deskriftif / bahasa Natural Ambilah bilangan pertama dan set maks sama dengan bilangan pertama Ambil bilangan kedua dan bandingkan dengan maks Apabila bilangan kedua lebih besar dari mask, set maks sama dengan bilangan kedua Ambil bilangan ketiga dan bandingkan dengan maks Apabila bilangan ketiga lebih besar dari maks, set maks sama dengan bilangan ketiga Variabel maks berisi bilangan terbesar. Tampilkan

flowchart

Dengan Pseudo-code Maks ←bilangan pertama if (maks < bilangan kedua) maks←bilangan kedua if (maks < bilangan ketiga) maks ← bilangan ketiga

Analis Algoritma Sebuah algoritma tidak hanya harus benar, tetap juga harus mangkus (efficient). Ukuran kemangkusan algoritma : waktu dan ruang memori (space) Algoritma yang mangkus : algoritma yang meminimumkan kebutuhan waktu dan ruang.

Alat ukur kemangkusan algoritma : Kompleksitas waktu, T(n) Kompleksitas ruang, S(n). n= ukuran masukan yang diproses oleh algoritma T(n) : jumlah operasi yang dilakukan untuk menjalankan sebuah algoritma sebagai fungsi dari ukuran masukan n. S(n): ruang memori yang dibutuhkan algotima sebagai fungsi dari ukutan masukan n.

Operasi yang dihitung hanyalah operasi dasar (basic operation) saja Operasi dasar : operasi khas yang mendasari suatu algoritma. Misalnya : Operasi perbandingan elemen pada algoritma pengurutan / pencarian Operasi penjumlahan dan perkalian pada algortima perkalian matriks

Kompleksitas waktu asimtotik : Perkiraan kasar kebutuhan waktu algoritma dengan meningkatkan nilai n Menyatakan laju pertumbuhan waktu, bukan menyatakan jumlah operasi dasar. Tiga cara menyatakan waktu asimtotik : O(f(n)) : untuk batas atas laju kebutuhan waktu Ω (g(n)) : untuk batas bawah laju kebutuhan waktu Ѳ(h(n)) : jika f(n)=g(n) (Ѳ=theta)

Perancangan Algoritma Diluar negeri dikenal dengan (algorthm Design Techniques) Perancangan algoritmik : pendekatan umum untuk memecahkan masalah secara algoritmis yang dapat diterapkan pada beraneka ragam masalah guna mencapai tujuan. Perancangan algoritmik bertujuan mencari algoritma yang mangkus untuk memecahkan masalah Ukuran kemangkusan algoritma dinyatakan dengan notasi O, Ω, Ѳ

2 alasan mempelajari Memberikan panduan untuk merancang algoritma bagi masalah baru. Menklasifikasikan algoritma berdasarkan gagasan perancangan yang mendasarinya.

Klasifikasi Perancangan Algoritmik Perancangan Solusi Langsung (direct solution strategies) Algoritma Brute Force Algoritma Greedy Perancangan berbasis pencarian pada ruang status (state-space base strategies) Algoritma Backtracking Algoritma Branch and Bound

Perancangan solusi atas-bawah (top-down solution strategies ) - Algoritma Devide and Conquer Perancangan solusi bawah atas (bottom up solutiion strategies). - Dynamic Ptogramming Catatan : klasifikasi ini tidak kaku, bisa berbeda bergantung pendekatan yang di gunakan.

Beberapa Masalah Klasik Travelling salesperson Problem (TSP) Knapsack (1/0) Persoalan N-Ratu Graf coloring