Desain Perangkat Lunak Genetic Local Search (GLS) untuk Penyelesaian Traveling Salesman Problem (TSP)

Referensi? OK. PLAGIAT? JANGAN!
Proses desain dalam UML diorganisasikan ke dalam dua buah aktivitas desain utama, yakni desain sistem dan desain objek, yang akan dibahas lebih lanjut.

1. Desain Sistem

1.1 Pembagian dan Alokasi Subsistem
Pada penelitian ini sistem dibagi menjadi 3 buah layer, yakni user services (subsistem yang berhubungan dengan antarmuka pemakai), business services (sub sistem yang melakukan pemrosesan yang berhubungan dengan aplikasi) dan data services (sub sistem yang berhuungan dengan manajemen data). Sedangkan alokasi untuk klas-klas (atau subsistem-subsistem) yang bersifat konkuren (bekerja pada event-event yang asynchronous dan pada waktu yang bersamaan) pada prosesor komputer sepenuhnya diberikan pada Borland Delphi dan sistem operasi Windows. Contoh dari task konkuren ini adalah pada saat proses pencarian solusi dengan menggunakan GLS. Pada saat proses tersebut sedang dilaksanakan, ada tiga buah task yang berjalan secara konkuren, yakni sementara aplikasi (melalui objek MainForm) menunggu perintah penghentian eksekusi GLS dari user, proses regenerasi (single population) untuk dua buah sub populasi tetap dikerjakan (masing-masing sub populasi memiliki sebuah task tersendiri).

1.2 User Interface
Berdasarkan actor dan skenario pemakaiannya (use-cases) yang telah didefinisikan sebelumnya, dapat didentifikasikan suatu hirarki perintah (command hierarchy). Hirarki perintah tersebut mendefinisikan kategori-kategori menu sistem utama dan semua subfungsi-subfungsi yang ada dalam konteks dari kategori menu sistem utama. Berikut adalah desain menu dan antarmuka pemakai yang dipergunakan oleh sistem.

 

 

a) Menu
Berikut keterangan dari struktur menu yang digunakan. Masing-masing menu dan sub menu tersebut adalah sebagai berikut:

1) File
Berkaitan dengan file data untuk masalah TSP.
• Baru : mempersiapkan untuk pembuatan problem yang baru
• Buka : membaca / meload data dari file yang telah disimpan sebelumnya.
• Simpan : Menyimpan data ke dalam file
• Simpan sebagai : menyimpan data & solusi yang ada ke dalam file dengan nama file akan diberikan oleh operator.
• Cetak : Mencetak data dan solusi yang sedang ditampilkan.
• Keluar : Keluar Program

2) Data
Berkaitan dengan manipulasi data.
• Tambah : Merubah status pengeditan pada peta menjadi proses penambahan data kota.
• Hapus : Merubah status pengeditan pada peta menjadi proses penghapusan data kota. Untuk status, hanya salah satu yang dapat aktif (penambahan atau penghapusan saja), atau tidak satupun yang aktif.
• Tabel : Memanipulasi data kota dalam bentuk tabel edge dan vertex.

3) GLS
Berkaitan dengan proses pencarian solusi oleh GLS.
• Parameter : Melihat atau merubah parameter untuk GLS.
• Mulai : Memulai proses GLS.
• Berhenti : Menghentikan proses GLS

4) Solusi
Berkaitan dengan solusi yang didapat dari hasil eksekusi GLS ataupun hasil pengeditan manual oleh operator.
• Sebelumnya : Melihat solusi sebelumnya.
• Berikutnya : Melihat solusi berikutnya.
• Terbaik : Menampilkan solusi terbaik yang ada di dalam list solusi.
• Edit / Tambah : Mengedit atau menambah sebuah solusi secara manual.
• Hapus : Menghapus solusi yang sedang ditampilkan.

5) Bantuan
Berkaitan dengan cara pemakaian program dan programmer.
• Cara Memakai : Meminta pertolongan cara pemakaian program ataupun penyelesaian masalah yang terjadi pada saat penggunaan program
• Programmer : Menampilkan informasi pembuat program.

b) Form Utama
Form utama merupakan pengendali atas jalannya sistem secara keseluruhan. Klas untuk Form utama ini adalah TMainForm. Rancangan tampilan untuk form utama dapat dilihat pada lampiran.

c) Form Data
Form data merupakan form yang digunakan untuk mendapatkan data TSP dari operator. Klas untuk form data adalah TDataForm. desain tampilan untuk form data dapat dilihat pada lampiran.

d) Form Penalti
Form penalti digunakan untuk manipulasi data penalti dari sebuah edge. Klas untuk form penalti adalah TPenaltyForm. Berikut desain untuk form penalti (lampiran).

e) Form Pembatas
Form pembatas digunakan untuk manipulasi data pembatas (constraint) dari sebuah data penalti. Klas untuk form Pembatas adalah TConstraintForm. rancangan tampilan untuk form pembatas dapat dilihat di lampiran.

f) Form Solusi
Form solusi digunakan untuk manipulasi (baik berupa pengeditan / penambahan) solusi secara manual oleh operator. Klas untuk form solusi adalah TSolutionForm. Rancangan Tampilan Form Solusidapat dilihat di lampiran.

g) Form Parameter
Form parameter digunakan untuk manipulasi data parameter untuk eksekusi GLS. Klas untuk form parameter adalah TParameterForm. desain tampilan untuk form Parameter dapat dilihat sebagai berikut.

rancangan form parameter

1.3 Manajemen Data
Proses penyimpanan dan pembacaan data dan solusi TSP mempergunakan sebuah object-server class yang akan mengatur objek-objek (yang berhubungan dengan data & solusi TSP) untuk menyimpan dan mengambil informasi dari masing-masing objek tersebut. Penyimpanan dan pembacaan informasi secara fisik (dari/ke dalam file) dari setiap objek tersebut mempergunakan instan dari klas TFileStream. Untuk proses yang lebih detail dari peyimpanan dan pembacaan file dapat dilihat pada operasi SaveToFile dan LoadFromFile dari klas TGraphProblem.

 

 

2. Desain Objek

Desain objek merupakan desain secara detail dari objek-objek dan interaksi-interaksi yang terjadi antara objek-objek tersebut.

2.1 Deskripsi objek

Langkah pertama dari desain objek adalah membuat deskripsi objek. Deskripsi dari sebuah objek dapat dilakukan dengan menggunakan protocol description atau implementation description. Protocol description merupakan interface dari objek yang mendefinisikan setiap message yang dapat diterima oleh objek dan operasi yang dilakukan oleh objek ketika menerima message tersebut. Sedangkan implementation description memberikan rincian internal (yang disembunyikan oleh objek) yang dibutuhkan untuk implementasi. Walaupun implementation description memberikan informasi yang lebih rinci dari sebuah objek, orang lain yang akan menggunakan objek tersebut (designer ataupun implementer), hanya membutuhkan protocol description dari objek.

2.2 Desain Algoritma dan Struktur Data

Algoritma dibuat untuk mengimplementasikan spesifikasi untuk setiap operasi. Dalam banyak kasus, algoritma yang dipakai merupakan sebuah komputasional atau urutan prosedural sederhana yang dapat diimplementasikan sebagai modul perangkat lunak yang dikandung oleh objek. Bila spesifikasi dari operasi bersifat kompleks atau rumit, perlu dilakukan modularisasi terhadap operasi tersebut. Bersamaan dengan desain algoritma, dilakukan pula desain struktur data. Hal ini dilakukan untuk memperoleh desain algoritma yang tepat / cocok untuk operasi-operasi yang berhubungan dengan atribut-atribut tersebut.
Dengan mempertimbangkan kemudahan dalam pemakaian array, maka setiap elemen (dalam hal ini atribut) dari klas yang berbentuk list menggunakan struktur data berbentuk array dinamis (pointer). Dengan penggunaan array dinamis (yang didukung pula oleh fasilitas yang ada dalam Borland Delphi), pada saat run-time ukuran array dapat diubah-ubah sesuai kebutuhan.

Hasil dari desain objek ini selengkapnya dapat dilihat pada lampiran.

 
daftar pustaka penelitian tsp & gls

 
.

Pencarian terkait:

desain struktur data - algoritma berhubungan dengan tsp - elemen - elemen gls - perangkat lunak desain - objectdock - mengolah file dengan TfileStream pada delphi - mengganti attribut html saat runtime - konkurensi alokasi subsistem yaitu - desain menu utama di delphi - contoh program 4 gls -

Advertisements 

 

 

 

 Tags :   desain interface, desain perangkat lunak, desain sistem, implementasi GLS TSP, Penerapan Algoritma Genetik, penggunaan Genetic Local Search Algorithm, Penyelesaian Traveling Salesman Problem, pseudo-code, rancangan tampilan, skripsi, Solusi TSP, tugas akhir

Artikel yang berkaitan :

Tinggalkan Balasan

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>