PENDAHULUAN Algoritma pembangkit permutasi banyak dipakai dalam analisa graf seperti model optimasi berbasis graf, computer vision, berbagai masalah j

dokumen-dokumen yang mirip
Algoritma Pembangkitan Lengkap Permutasi dengan Siklus Tetap dan Banyaknya Elemen Sebagai Peubah

PEMBANGKITAN LENGKAP OBJEK CATALAN

BAB III ANALISIS DAN PERANCANGAN SISTEM

Aplikasi Teorema Polya Pada Enumerasi Graf Sederhana

Pengantar Matematika Diskrit

Rasa ingin tahu adalah ibu dari semua ilmu pengetahuan. Tak kenal maka tak sayang, tak sayang maka tak cinta

Pengantar Matematika. Diskrit. Bahan Kuliah IF2091 Struktur Diksrit RINALDI MUNIR INSTITUT TEKNOLOGI BANDUNG

Penggunaan Senarai Sirkuler dan Permutasi Inversi untuk Pengurutan pada Josephus Problem

BAB III ANALISA MASALAH DAN RANCANGAN PROGRAM

Kode Gray dan Algoritma Pembangkit untuk Fungsi Tumbuh Terrestriksi Berbatas

TEOREMA CAYLEY DAN PEMBUKTIANNYA

BAB II MODEL KOMPUTASI FINITE STATE MACHINE. Pada Bab II akan dibahas teori dasar matematika yang digunakan

PENGEMBANGAN SHORTEST PATH ALGORITHM (SPA) DALAM RANGKA PENCARIAN LINTASAN TERPENDEK PADA GRAF BERSAMBUNG BERARAH BERUNTAI

BAB IV ANALISA DAN PERANCANGAN SISTEM Analisis Sistem yang Sedang Berjalan. Untuk merancang sebuah aplikasi mobile pelajaran Kimia dasar untuk

PERANCANGAN SISTEM. Gambar 4-1 algoritma First in First Out 4-1.

Matematika Diskrit. Rudi Susanto

IMPLEMENTASI HIERARCHICAL CLUSTERING DAN BRANCH AND BOUND PADA SIMULASI PENDISTRIBUSIAN PAKET POS

PERANCANGAN MEDIA BANTU PEMBELAJARAN MANDIRI MATEMATIKA DISKRET MATERI KOMBINATORIK

Algoritma Vertex Cover dan Aplikasinya

BAB III ANALISA DAN PERANCANGAN SISTEM

Pengantar Teknik Informatika

DAFTAR ISI. KATA PENGANTAR... vi DAFTAR ISI... vii DAFTAR GAMBAR... ix DAFTAR TABEL... xi INTISARI... xii ABSTRACT... xiii

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

BAB I PENDAHULUAN. Teori graf merupakan salah satu cabang matematika yang sangat penting

PENGANTAR MATEMATIKA DISKRIT

BAB I PENDAHULUAN. Pemetaan lokasi cabang cabang toko baju Mode Fashion berbasis web

Sequen Diagram Latihan Soal Sequen Diagram Evaluasi Evaluasi Collaboration Diagram

BAB III METODE PENELITIAN

Bilangan Stirling Jenis Kedua ( Stirling Number of the Second Kind ) Definisi 1. Bilangan Stirling jenis kedua, dinotasikan dengan

SISTEM INFORMASI PARKIR DI SMAN 1 GROGOL KABUPATEN KEDIRI PARKING INFORMATION SYSTEM IN SMAN 1 GROGOL DISTRICT KEDIRI

BAB 2 LANDASAN TEORI

Gambar 4.1 Flowchart

BAB III ANALISA DAN PERANCANGAN

Sistem Informasi Manajemen Beasiswa Studi Kasus Pada Fakultas Teknik Universitas Muria Kudus

PENGEMBANGAN LONGEST PATH ALGORITHM (LPA) DALAM RANGKA PENCARIAN LINTASAN TERPANJANG PADA GRAF BERSAMBUNG BERARAH BERUNTAI

BAB 2 LANDASAN TEORI

BAB II LANDASAN TEORI

BAB III ANALISIS DAN PERANCANGAN SISTEM

Gambar 4-1. Use Case Diagram

Pengantar Matematika. Diskrit. Bahan Kuliah IF2120 Matematika Diksrit RINALDI MUNIR INSTITUT TEKNOLOGI BANDUNG

BAB I PENDAHULUAN. bagaimana membuat mesin (komputer) dapat melakukan pekerjaan seperti dan

BAB III ANALISIS DAN DESAIN SISTEM

IMPLEMENTASI ALGORITMA RUNUT BALIK DALAM PENYELESAIAN PERMAINAN KAKURO TUGAS AKHIR

31

BAB IV ANALISIS DAN PERANCANGAN SISTEM. sistem sedang berjalan dan diperlukan untuk berbagai perubahan yang dirasa

Penerapan Algoritma Backtracking pada Pewarnaan Graf

Dimensi Metrik dan Dimensi Partisi dari Famili Graf Tangga

Algoritma dan Struktur Data

BAB 1 PENDAHULUAN. menggunakan sistem komputerisasi. Salah satu bentuk perusahaan yang sangat

RANCANG BANGUN SISTEM INFORMASI PENGELOLAAN DATA RUJUKAN PASIEN UNTUK PUSKESMAS PEMBANGUNAN GARUT

BAB III ANALISIS DAN DESAIN SISTEM

Perancangan Multimedia Pembelajaran Fisika Pada Materi Besaran Dan Satuan


APLIKASI PREDIKSI PENJUALAN JERUK DENGAN MENGGUNAKAN METODE REGRESI LINIER SEDERHANA DAN MOVING AVERAGE

BAB III ANALISA DAN PERANCANGAN

Bab 3 Metode Perancangan

DAFTAR ISI HALAMAN JUDUL HALAMAN PERSETUJUAN HALAMAN PENGESAHAN HALAMAN MOTTO DAN PERSEMBAHAN RINGKASAN KATA PENGANTAR

Pengembangan Aplikasi Encoding dan Decoding Tree Menggunakan Kode Dandelion

SATUAN ACARA PERKULIAHAN MATA KULIAH GRAPH & ANALISIS ALGORITMA (SI / S1) KODE / SKS : KK / 3 SKS

DAFTAR ISI. LAPORAN TUGAS AKHIR... ii. HALAMAN PENGESAHAN... iii. PERNYATAAN... iv. DAFTAR ISI... vii. DAFTAR GAMBAR...xii. DAFTAR TABEL...

BAB III ANALISA MASALAH DAN RANCANGAN PROGRAM

Penerapan Teori Kombinatorial dan Peluang Dalam Permainan Poker

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Bab 3. Metode dan Perancangan Sistem

BAB III ANALISIS DAN DESAIN SISTEM

DAFTAR ISI. HALAMAN JUDUL... i. HALAMAN PERSETUJUAN... ii. HALAMAN PENGESAHAN...iii. MOTTO... iv. HALAMAN PERSEMBAHAN... v. INTISARI...

BAB III ANALISIS DAN PERANCANGAN SISTEM. permasalahan-permasalahan dan kebutuhan-kebutuhan yang diharapkan sehingga dapat

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III METODOLOGI PENELITIAN

PELABELAN HARMONIS GANJIL PADA GRAF KINCIR ANGIN DOUBLE QUADRILATERAL

BAB III ANALISIS DAN DESAIN SISTEM

Kode MK/ Nama MK. Cakupan 8/29/2014. Himpunan. Relasi dan fungsi Kombinatorial. Teori graf. Pohon (Tree) dan pewarnaan graf. Matematika Diskrit

Desain Class Dan Analisis Operator Pada Class Integer Tak Terbatas

Pengantar Matematika. Diskrit. Bahan Kuliah IF2120 Matematika Diksrit RINALDI MUNIR INSTITUT TEKNOLOGI BANDUNG

Pelabelan Harmonis Ganjil pada Graf Kincir Angin Double Quadrilateral

BAB II LANDASAN TEORI

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

PENYELESAIAN TRAVELLING SALESMAN PROBLEM DENGAN ALGORITMA BRANCH AND BOUND

KOMPRESI FILE.TXT DENGAN ALGORITMA HUFFMAN PADA FILE DENGAN MENGGUNAKAN PENGKODEAN BASE-64 SKRIPSI. Oleh : LINGGA ADI FIRMANTO ( )

Sekolah Tinggi Teknologi Garut Jl. Mayor Syamsu No. 1, Garut Indonesia

ANALISIS ALGORITMA BABY-STEP GIANT-STEP DAN POHLIG-HELLMAN UNTUK MENYELESAIKAN MASALAH LOGARITMA DISKRIT SKRIPSI ETTY WINITA ROISKA SIMBOLON

Penerapan Teori Graf Pada Algoritma Routing

BAB IV ANALISIS DAN PERENCANAAN SISTEM. yang terdapat pada sistem tersebut untuk kemudian dijadikan landasan usulan

UKDW BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

DAFTAR ISI. viii. LEMBAR PENGESAHAN... i. PERNYATAAN ORISINALITAS LAPORAN PENELITIAN... ii. PERNYATAAN PUBLIKASI LAPORAN PENELITIAN...

BAB III ANALISA DAN DESAIN SISTEM

PENENTUAN ALUR TERPENDEK PENGIRIMAN BARANG PT.KENCANA LINK NUSANTARA MEDAN DENGAN ALGORITMA DJIKSTRA

Combinatorial Game Theory, Game Tree, dan Intelegensia Buatan

LAMPIRAN NOTASI. Notasi UML. 1) Class Diagram. Nama Class dengan atribut dan operasi.

Rancang Bangun Aplikasi Latihan Ujian Nasional pada Sekolah SMP Ambia

2.5.1 Pengembangan Perangkat Lunak Berorientasi Objek Menggunakan UML(Unified Modelling Language)... II-28 BAB III ANALISIS SISTEM 3.

Oleh Lukman Hariadi

ENUMERASI GRAF SEDERHANA DENGAN ENAM SIMPUL MENGGUNAKAN TEOREMA POLYA

BAB III METODOLOGI PENELITIAN

BAB III ANALISA DAN PERANCANGAN

7.2 Saran DAFTAR PUSTAKA LAMPIRAN

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

Spektrum Graf Hyperoctahedral Melalui Matriks Sirkulan Dengan Visual Basic 6.0

BAB III ANALISIS KEBUTUHAN DAN PERANCANGAN

Transkripsi:

PERBANDINGAN ENUMERASI PERMUTASI N DENGAN 2 SIKLUS BERDASARKAN RUMUSAN BILANGAN STIRLING DENGAN RUMUSAN SULISTYO Meta Meysawati e-mail : yagami_26mey@hotmail.com Jurusan Teknik Informatika Universitas Gunadarma Jl Margonda 100 ABSTRAK Enumerasi adalah menghitung banyak objek pada suatu objek kombinatorik. Kombinatorik merupakan ilmu yang mempelajari sifat-sifat matematika dari struktur diskrit. Algoritma pembangkit permutasi banyak dipakai dalam analisa graf. Komputer graf biasa diawali dengan proses penginputan edge-edge yang menentukan proses dalam komputasi graf, terutama dari sisi running time program komputer yang terkait. Banyak masalah graf yang akan lebih efisien jika graf dinyatakan sebagai permutasi siklus. Secara umum, banyaknya n permutasi dengan m siklus dapat dihitung berdasarkan metode berdasarkan rumus bilangan Striling tanpa tanda jenis pertama (Unsignless Stirling Number of The First Kind). Selain itu, menghitung enumerasi permutasi n dengan m siklus juga ditawarkan oleh Sulistyo. Dalam penelitian ini, mengenumerasikan permutasi n dengan 2 siklus dilakukan dengan cara membandingkan kedua rumusan tersebut ke dalam bentuk bahasa pemograman, yaitu Java dan melakukan uji coba dengan membandingkan dalam hal running time. Kata Kunci : Enumerasi permutasi n dengan 2 siklus, Bilangan Stirling, Rumusan Sulistyo

PENDAHULUAN Algoritma pembangkit permutasi banyak dipakai dalam analisa graf seperti model optimasi berbasis graf, computer vision, berbagai masalah jaringan termasuk komputer dan bahkan jaringan sosial (social networks). Komputasi graf biasanya diawali dengan proses penginputan edge-edge ini sangat menentukan proses komputasi graf, terutama dari sisi running time program komputasi terkait. Dengan demikian menyatakan graf sebagai permutasi dan mengembangkan algoritma yang baik untuk membangkitkan permutasi tersebut adalah sebuah topik penelitian penting (lihat misalnya [6] dan [7]). Banyak masalah graf yang akan lebih efisien jika graf dinyatakan sebagai permutasi siklus; salah satu masalah yang dimaksud adalah masalah jaringan. Selain jaringan, masalah lain yang menggunakan pernyataan permutasi siklus adalah enumerasi graf untuk menghasilkan jumlah isomer senyawa kimia [2]. Secara umum, untuk n tertentu dan bilangan m yang menyatakan banyaknya siklus, cacahan permutasi [n] tertentu dengan m siklus, sering dinotasikan sebagai C n,m, dan dinyatakan dengan formula rekursif berikut: C n,m = C n-1,m-1 + (n-1) C n-1,m, yang menurunkan bilangan Stirling tanpa tanda jenis pertama (unsignless Stirling number of the first kind) [3]. Rumus Sulistyo merupakan enumerasi permutasi n dengan m siklus yang menawarkan metode baru yang dinyatakan dengan formula iteratif [5]. Hal tersebut melatarbelakangi penulis untuk melakukan perbandingan dalam mengenumerasikan permutasi n dengan 2 siklus. Penelitian ini membandingkan rumus bilangan Stiling tanpa tanda jenis pertama dan rumus Sulistyo dalam hal running time. Kedua rumusan akan diimplementasikan kedalam bentuk bahasa pemograman, yaitu Java. LANDASAN TEORI ISTILAH KOMBINATORIK Kombinatorik adalah ilmu yang mempelajari sifat-sifat matematika dari struktur diskrit dimana dalam kombinatorik struktur diskrit disebut objek kombinatorial atau objek saja. Sedangkan untuk himpunan objek kombinatorial disebut kelas kombinatorial atau kelas saja. Kombinatorik mempunyai 4 cabang utama ilmu yaitu, pencacahan (counting) atau enumerasi, pembangkitan atau generasi (generation), pendaftaran atau listing dan optimasi. Pada enumerasi melakukan analisa matematika untuk mendapatkan rumus cacahan struktur yang mungkin sebagai fungsi dari n atau banyaknya objek kombinatorial dalam S sedangkan pembangkitan membangun algoritma untuk membangkitkan semua struktur yang mungkin.

DEFINISI PERMUTASI Permutasi adalah pemetaan dari suatu himpunan ke dirinya sendiri. Atau secara formal: Definisi 1: Permutasi dari himpunan S = [n] = {1,2,...,n} adalah bijeksi π: S S. Permutasi dengan π(i) = i disebut permutasi identitas. Salah representasi dari permutasi adalah dengan perkalian siklusnya. Siklus dari permutasi adalah himpunan bagian dari suatu himpunan yang elemen-elemennya masuk dalam satu orbit atau siklus dengan panjang k dari suatu permutasi adalah urutan a 1, a 2,...a l sedemikian sehingga a i = π(a i-l ) untuk i = 2,3,..., l dan a l = π(a k ) atau π k (a i )= a i ([3] dan [2]). Contoh, permutasi π: 1 2 3 4 5 6 7 8 1 4 2 8 5 7 6 3 Dapat diwakili oleh diagram berikut: 1 2 3 4 5 6 7 8 dinyatakan sebagai π = (1) (2483) (4) (67). Karena siklus (8324) menyatakan dengan siklus yang sama dengan (2483), maka sering digunakan cara yang unik untuk menyatakan permutasi menggunakan notasi siklus, yang disebut sebagai Notasi Siklus Kanonikal. Cara ini adalah menulis elemen terbesar pada setiap siklus terlebih dahulu, kemudian mengurutkan setiap siklus dari kecil ke besar berdasarkan elemen-elemen petama pada siklus. Dengan demikian π = (1) (2483) (5) (67) dalam notasi siklus kanonikal π = (1) (5) (7 6) (8 3 2 4). MENGENUMERASIKAN PERMUTASI N DENGAN M SIKLUS Untuk mengenumerasi permutasi dengan m siklus tertentu umumnya digunakan rumus bilangan Stirling tanpa tanda jenis pertama (Unsignless Stirling Number of The First Kind). Selanjutnya pada penelitian ini untuk bilangan Stirling tanpa tanda jenis pertama akan disebut rumus bilangan Stirling. Enumerasi permutasi dengan siklus tertentu juga ditawarkan oleh Sulistyo [5]. Sub bab berikut akan menjelaskan mengenai kedua rumusan tersebut. Permutasi tersebut mempunyai 4 siklus (1), (2 4 8 3), (5) dan (6 7). (2 4 8 3) adalah silkus dengan panjang l = 4, karena π 4 (2) = 2. Dengan perkalian siklus, π dapat BERDASARKAN RUMUS BILANGAN STIRLING Bilangan Stirling tanpa tanda jenis pertama, dinotasikan dengan C(n,m) adalah sssbanyaknya susunan dari n objek ke dalam

m permutasi siklus yang tidak kosong. Dimana: C(n,0) = 0, n 1 C(n,n) = 1, n 0 C(n,1) = (n-1)!, n 0 C(n,m) = (n-1). c(n-1,m)+c(n-1.m-1), 1 < m < n Mengacu kepada teori yang ada bahwa banyaknya permutasi [n] dengan m siklus adalah bilangan Stirling tanpa tanda jenis pertama c(n,m) ([3], [2]). Rumus bilangan Stirling digunakan untuk menunjukkan kebenaran algoritma yang dibangun. BERDASARKAN RUMUSAN OLEH SULISTYO Rumus Sulistyo dalam [5] menghasilkan rumusan enumerasi permutasi dengan siklus tertentu C n,m yang dinotasikan dengan f l, untuk l = n m, f l = Rumus diatas merupakan turunan dari hasil pembangkit permutasi n dengan m siklus menggunakan pohon pembangkit sebagaimana pada gambar 2.1, level dari pohon tersebut dinyatakan dengan l. Banyaknya objek permutasi n = [m + l] dengan m siklus pada level l merupakan rumus iteratif yang tidak rekursif. Banyaknya simpul untuk level l pada pohon pembangkit permutasi [n] dengan m siklus tertentu pada Gambar 1 adalah f l. Gambar 1 Pohon pembangkit permutasi [n] dengan m siklus Pohon pembangkit permutasi [n] dengan m siklus, yang diwakili sistem ECO (2.1) adalah pohon yang banyak simpulnya pada level l = n m sama dengan banyaknya permutasi [n] dengan m siklus, atau sama dengan kardinalitas S n,m [5]. Khusus untuk m = 2, penempatan n pada anggota-anggota S n,2, ditempatkan dengan cara pengembangan Johnson- Trotter. Pembagkit permutasi dengan dua siklus C n,2 setiap anggota (2.3) S n-1,2 akan menghasilkan n-1. Untuk semua anggota S n- 1,2 akan menghasilkan anggota S n,2 sebanyak (n-1) S n-1,2. Banyaknya level dihitung dengan menjumlahkan semua jalan dari simpul akar ke simpul di level l. Fungsi pembangkit pohon permutasi [n] dengan 2 siklus F Ω (x) = f l x 1 = (l +1)! (1 +1/2 +.. +1/ (l + 1))x 1

Gambar 2 Pohon Pembangkit Permutasi [4] dengan 2 Siklus Untuk menyederhanakan pohon pembangkit permutasi 4 dengan 2 siklus S 4,2 (gambar 2) dalam mengenumerasikan semua simpul pada level tertentu, maka pada Sulistyo [5] objek permutasi [n] dengan 2 siklus dibagi dalam dua kelompok, yaitu kelompok dimana siklus terdiri dari n saja, n yaitu: (s 2 ) = (n), ditulis sebagai π B, dan kelompok yang selain itu, ditulis sebagai π Tn. Penamaan kelompok ini mengikuti penamaan east-west [8]. Pohon pembangkit permutasi dengan 2 siklus yang diringkas dengan simpul menyatakan banyaknya simpul pada tiap level dengan grup tertentu. Gambar 3 adalah contoh ringkasan pohon pembangkit permutasi 6 dengan 2 siklus. (1) (1) (2) (2) (3) (3) (3) (4) (4) (4) (4) (5) (5) (5) Akar pada pohon dinyatakan level 0, simpul pada level 1 pada gambar 3 tertulis (1)(2) yang menunjukan banyaknya permutasi 3 dengan 2 siklus. Selanjutnya pada level 2 banyaknya simpul yang sejenis (B) tertulis (2)(3), sedangkan simpul yang mempunyai (2) simpul yang sejenis (T) mempunyai (3) anak simpul yang menunjukan banyaknya permutasi 4 dengan 2. Simpul pada level 3 yang sejenis (B) tertulis (3)(4), sedangkan simpul yang mempunyai dua jenis label (T) mempunyai masing-masing anak sebanyak (4) yang menunjukan banyaknya permutasi 5 dengan 2 siklus. Dan pada level 4 tertulis banyaknya simpul adalah (4)(5), sedangkan simpul yang mempunyai tiga simpul sejenis mempunyai (5) anak simpul. METODE PENELITIAN RANCANGAN APLIKASI Perancangan program merupakan tahap pertama dari pembangunan suatu program. Tahap ini terdiri dari perancangan berdasarkan (Unified Modelling Language) UML program dan rancangan interface. Rancangan aplikasi permutasi dimodelkan ke dalam 3 bentuk model UML, yaitu Use Case Diagram, Class Diagram dan Activity Diagram. Gambar 3 Ringkasan Pohon pembangkit permutasi [6] dengan 2 siklus

Sebelum program jadi pada gambar 4 menerangkan awal proses pembuatan aplikasi. PENDEFINISIAN KEBUTUHAN PERANCANGAN ANTARMUKA PENGKODEA UJI COBA BUG PROGRAM JADI Gambar 4 Diagram Umum Proses Perancangan Aplikasi USE CASE DIAGRAM Terdapat 4 case yaitu metode bilangan Stirling, rumus Sulistyo, input banyaknya permutasi n dan m siklus dan pertolongan. Actor pada aplikasi permutasi, yaitu pemakai (user) untuk use case yang digunakan adalah memilih perhitungan dan memproses perhitungan berdasarkan rumus bilangan Stirling dan rumus Sulistyo. Pada rumus bilangan Stirling masukkan banyaknya n permutasi dan m siklus sedangkan rumus Sulistyo hanya memasukkan banyaknya permutasi n yang kemudian akan mengenumerasikan permutasi n dengan m siklus. Gambar 5 Diagram Use Case Aplikasi CLASS DIAGRAM utama, Permutasi Class terdiri dari 4, yaitu menu formstirlingnumber, formsulistyonumber dan pertolongan. Pada class formstirlingnumber dan formsulistyonumber menunjukan hubungan sub class yang mewarisi bagian dari class utama. Menu Utama -Stirling: boolean -Sulistyo: boolean -Tentang :boolean -Dispose() formstirlingnumber -permutasi : double int -siklus : double int -jumsiklus() -fak() Pertolongan +tentang: boolean +Dispose() formsulistyonumber -permutasi : double int -level: double int -total: int -fac: int -hitungpermutasi() -fak() Gambar 6 Diagram Class Aplikasi Permutasi

ACTIVITY DIAGRAM Aktifitas dimulai pada state halaman menu utama, kemudian terjadi aktifitas pilih menu. Pada katifitas pilih menu terjadi percabangan aktifitas yaitu aktifitas pilih metode dan pertolongan. Aktifitas pilih metode terjadi percabangan yaitu metode bilangan Stirling dan metode oleh Sulistyo. Pada aktifitas metode bilangan Stirling akan menampilkan halaman bilangan Stirling. Sedangkan aktifitas rumus Sulistyo akan menampilkan halaman rumus Sulistyo. Hamlaman metode bilangan Stirling kemudian dilanjutkan dengan memasukkan permutasi n dan m siklus yang kemudian akan dihitung berdasarkan rumus metode bilangan Stirling tanpa tanda jenis pertama. Halaman rumus Sulistyo terjadi aktifitas memasukkan permutasi n. Sedangkan jika tidak pemakai (user) dapat kemabali ke halaman menu utama. Pada aktifitas pertolongan akan menampilkan halaman petunjuk pengguna aplikasi dan pemakai (user) dapat kembali ke halaman menu utama. Dan aktifitas keluar akan mengarah ke final state yang merupakan akhir dari alur aktifitas pada aplikasi. Gambar 7 Diagram Activity Aplikasi Permutasi PSEUDOCODE Pseudocode adalah kode atau tanda yang menyerupai (pseudo) atau merupakan penjelasan cara menyelesaikan suatu masalah. ALGORITMA PSEUDOCODE PADA RUMUS BILANGAN STIRLING 1. Masukkan banyaknya n permutasi dan m siklus 2. Tentukan nilai Awal (n m) 3. Tentukan nilai kedua (m 1) 4. n, m jumsiklus 5. Jika n = m 1, menuju kelangkah 11 6. m = 1 fak (n-1), menuju kelangkah 8 7. Hasil (n-1) * jumsiklus (n-1,m) + jumsiklus(n-1, m-1) 8. Tentukan bilangan Faktorial (fak) 9. Jika n 1 n 0 ; Cetak hasilnya 1

10. Hasil n*fak(n-1) 11. Selesai ALGORITMA PSEUDOCODE BERDASARKAN RUMUS SULISTYO 1. Masukkan banyaknya n permutasi dan m siklus 2. l n m 3. Untuk batas perkalian kebawah ( n-1 ) 4. Hitung faktorial (n-1)! 5. Total = faktor 6. Untuk i = 1, 2,..., l 7. Faktor (Faktor/ (i 1 + 1)) * i 8. Total = total + faktor ANALISA PROGRAM Perbandingan dilakukan dengan membandingkan running time pada masingmasing main dengan menggunakan Profiling Point. Data perbandingan yang digunakan adalah permutasi C 2,2, C 3,2, C 4,2, C 5,2, C 6,2, C 7,2, C 8,2, C 9,2, C 10,2. Running time dimulai ketika munculnya form metode yang dipilih. Hasil perbandingkan akan dihasilkan dengan running time dan kapasitas alokasi memori. Tabel 1 Perbandingam Running Time Berdasarkan Bilangan Stirling dengan Rumus Sulistyo Permutasi Running Time Bilangan Striling C 2,2 C 3,2 C 4,2 C 5,2 C 6,2 C 7,2 C 8,2 C 9,2 C 10,2 Berdasarkan tabel 1 data running time dihasilkan ketika main dieksekusi. Dengan Profiling waktu yang dihasilkan dalam bentuk tabel. Pada masing-masing rumus antara bilangan Stirling tanpa tanda jenis pertama dengan rumus Sulistyo menunjukan perbedaan waktu. Pada bilangan Stirling membutuhkan waktu lebih lama dalam mengeksekusi dibandingkan dengan rumus Sulistyo. Ini dikarena pada perbedaan kedua proses memiliki algoritma yang berbeda, pada bilangan Stirling menggunakan algoritma rekursif sedangkan rumus Sulistyo menggunakan algoritma iteratif. KESIMPULAN DAN SARAN KESIMPULAN Running Time Rumus Sulistyo 15,3 milisecond 14,6 milisecond 15,6 milisecond 14,0 milisecond 15,8 milisecond 14,3 milisecond 16,4 milisecond 14,7 milisecond 16,9 milisecond 15,0 milisecond 17,4 milisecond 15,3 milisecond 17,8 mili Second 14,8 milisecond 18,0 milisecond 15,6 milisecond 18,3 milisecond 15,4 milisecond Hasil running time dengan menggunakan Profiling Point menunjukan bahwa rumus bilangan Stirling yang diformulasikan dalam bentuk algoritma rekursif mencatat waktu lebih lama dibanding rumus Sulistyo secara iteratif. Hal ini dikarenakan pada rekursif membutuhkan proses pemanggilan dalam

menghasilkan output. Sedangkan pada iteratif hanya membutuhkan satu proses dengan melakukan perulangan terus menerus higga batas yang ditentukan terpenuhi. Namun bilangan Stirling memiliki kapasitas yang lebih kecil yaitu 888 Byte sedangkan rumus Sulistyo yaitu 1024 Byte. SARAN Terbatasnya aplikasi ini diharapkan agar mengenumerasikan permutasi dapat berlaku pula rumus umum berdasarkan rumusan Sulisto yaitu, C n,m kedalam bentuk bahasa pemograman. Permutasi Siklus Tertentu dengan Banyaknya Elemen Sebagai Peubah. [6] Sedgewick R., 2007. Permutation Generation Methods, Dagstuhl Workshop on Data Stuctures,Wadem, Germany. http://www.cs.princeton.edu/~rs/talk s/perms.pdf, 18 Juli 2008 [7] Sedgewick R., 2007. Finding Paths In Graphs, Adobe System India. http://www.cs.princeton.edu/~rs/talk s/pathsingraphs07.pdf, 3 September 2007 [8] Wilf H. S., 1999. East Side, West side... an introduction to combinatorial families-with Maple programming. http://www.math.upenn.edu/~wilf/ea stwest.pdf, 5 juli 2008 DAFTAR PUSTAKA [1] Bernini A, E. Grazinni, E. Pergola, R. Pinzani, 2007. A General Exhaustive Generation Algorithm for Gray Structures, Journal Acta Informatica, Vol. 44, no. 5, pp. 361-376 [2] Babic D, D.J. Klein, J. Von Knop, N. Trinajstic, 2004. Combinatorial Enumeration in Chemistry, Chemical modelling : Applications and Theory, Royal Society of Chemistry, vol. 3, pp. 126-159 [3] Bona M., 2002. A walk through Combinatorics. An Introduction to Enumeration and Graph Theory. New Jersey, World Scientific Publishing [4] Ruskey F., 2003. Combinatorial Generation. http://www.1stworks.com/ref/ruske ycombgen.pdf, 19 Agustus 2007 [5] Sulistyo Puspitodjati., 2010. Algoritma Pembangkit Lengkap