Using Open ModelSphere for Business Process Modeling

Hari/Tgl/M.Kul/Dosen: Sabtu/30-10-2010/Rahmadya Trias

Software berjenis Computer Aided Software Engineering (CASE) yang beredar di pasaran dimaksudkan untuk mempermudah pengguna dalam membuat suatu perangkat lunak. Beberapa di antaranya harus membeli lisensi (silverrun, powersim, rational rose dan sebagainya) sedangkan beberapa berlisensi open source yang gratis. Salah satunya adalah Open ModelSphare yang akan kita bahas berikut ini. Kita telah mengetahui bahwa jenis CASE ada yang high dan ada yang low. High hanya dimaksudkan untuk modeling sedangkan low bisa membantu programmer membuat coding, walaupun ada beberapa CASE yang sanggup mengkonversi dari modeling menjadi coding.

Setelah didonlot dari situsnya, cobalah untuk menginstalnya. Mari kita bareng-bareng menginstall software Open ModelSphare. Dobel klik pada installer software tersebut. Klik bahasa Inggris, lalu tekan OK hingga menampilkan “Welcome to Open ModelSphere Setup Wizard”. Klik dan sebaiknya baca GNU General Public License versi 3 berikut ini.


Klik “I accept the agreement” lalu tekan next beberapa kali. Setelah memilih letak lokasi instalasi maka akan terjadi proses penginstalan. Setelah FINIS akan muncul program yang telah kita instal berikut ini.


Kita akan diminta CASE jenis apa yang akan kita gunakan. Ada tiga pilihan antara lain Data Model, Business Process Model (BPM) dan UML.


Di sini akan kita coba Busines Process Model dengan model yang sudah lama dikenal antara lain Data Flow Diagram (DFD). Pilih jenis yang sesuai dengan kampus dimana Anda menyelesaikan skripsi. Untuk BSI/Nusa Mandiri biasanya menggunakan Ward-Mellor Notation.


In the link below I try to show you how to use Open ModelSphere in Modeling Business Process. I only show how to add context diagram, nol diagram and detail diagram in brief manner with Gane – Sarson Notation.


 

 

 

 

 


Kontroller PID untuk Pengaturan

Hari/Tgl/M.Kul/Dosen: Rabu/27-10-2010/Sis. Kendali Digital/Rahmadya Trias, ST, MKom.

Berikut ini adalah contoh sistem pengaturan untuk menjaga sistem tetap berada di setpoint. Buka Matlab, klik file – model , lalu gambar sistem di bawah ini:

Diumpamakan Plant memiliki fungsi alih 1/(s+1), jika diranning diharapkan sistem tetap bertahan di setpoint, seperti pada gambar di bawah ini:

Selamat Mencoba !!!

Pemrograman RAB dengan Microsoft Visual Basic 6

Hari/Tgl/M.Kul/Dosen: Rabu/27-10-2010/Pemr. VB/Rahmadya Trias H., ST., MKom.

Pemasangan Dinding 1 m2 butuh:

  • 70 bata (300rb/buah)
  • 0,093 m3 pasir (ditambah waste 2 %) – 0,13 Kijang (1 kijang: 180 rb).
  • 1 m3 adukan butuh 4-6 sak semen (tergantung perbandingan adukannya) – 5 sak (65rb/sak)
  • 1 tukang dan 1 kenek mampu memasang 8 m2 dinding perhari. – (100rb/hari)

Rancanglah program dengan Microsoft Visual Basic untuk menghitung biaya serta bahan-bahan yang diperlukan untuk membuat dinding bangunan.

Inputan:

  • Luas Dinding :

Keluaran:

  • Jumlah Bata:
  • Jumlah Pasir (kijang):
  • Semen (sak):
  • Ongkos Tukang:
  • Biaya Total:

Rancang Form sebagai berikut:

 

Membuat Fuzzy dgn Toolbox Matlab

Hari/Tgl/Mt Kuliah/Dosen/Kampus: Sabtu/16-10-2010/Metode Riset/Dr. Prabowo – Rahmadya, M.Kom./S2 STMIK Nusa Mandiri

 

Studi Kasus:

Buatlah rancangan Fuzzy Inference System untuk kasus penentuan bonus pegawai restoran berdasarkan pelayanan dan masakan yang disajikan. Gunakan rule Mamdani dengan logika yang tepat.

 

Penyelesaian:

  1. Langkah pertama adalah buka Matlab Anda. Arahkan Current Directory pada posisi folder yang tepat.

 


 

  1. Pada Command Window ketik “fuzzy”, maka akan muncul jendela berikut ini.

     


 

  1. Secara default Matlab menyediakan satu masukan, satu kelauaran dan satu rule bertipe Mamdani. Karena kita diminta untuk membuat dua masukan yaitu pelayanan dan masakan, klik: edit – Add Variable – Klik “input”. Tambahkan pelayanan dan masakan sebagai variabel masukan. Beri nama yang sesuai untuk output, misalnya “bonus”.

 


 

  1. Langkah berikutnya adalah kita membuat fungsi keanggotaan (membership function) untuk input. Misal pelayanan terlebih dahulu, dobel klik pada masukan pelayanan, maka akan muncul jendela baru untuk mengatur fungsi keanggotaan. Yang perlu kita atur adalah nama fungsi keanggotaan, range dan tipe-nya. Nama fungsi keanggotaan pada FIS berupa ciri verbal seperti baik, rata-rata atau buruk. Range menyatakan jangkauan angka misalnya lima menyatakan paling baik, nol menyatakan paling buruk, berarti antara dua dan tiga adalah rata-rata. Coba sendiri membuat fungsi keanggotaan seperti pada gambar di bawah ini. Agar lebih cepat, coba gunakan tipe z, gauss dan s untuk berturut-turut pada fungsi buruk, rata-rata dan baik.

 


 

  1. Dengan cara yang sama dengan langkah keempat, buat untuk masukan masakan. Untuk mudahnya gunakan nama fungsi masakan tidak enak, rata-rata dan enak. Range gunakan jangkauan yang sama untuk pelayanan.

 


 

  1. Berikutnya kita merancang fungsi keanggotaan pada variabel keluaran yaitu bonus. Misalnya kita akan mengkategorikan bonus menjadi banyak, rata-rata dan sedikit. Untuk memudahkan, gunakan range penjumlahan dua masukan yaitu sepuluh. Gunakan fungsi sederhana yaitu fungsi segitiga. Atur nama fungsi serta tipenya sehingga menghasilkan gambar sebagai berikut.

 


 

  1. Jika telah selesai, maka terakhir kita akan membuat logika pada rule. Close terlebih dahulu Membership Function Editor. Dobel klik pada bagian tengah FIS editor. Isikan logika yang sesuai, coba skenario terbaik, terburuk dan rata-rata.

 


 

  1. Untuk melihat apakah sesuai dengan yang diharapkan, klik: view – surface, perhatikan apakah sudah sesuai dengan keinginan.

 


 

  1. Untuk mengatur kecenderungan kita apakah memberi bonus baik atau tidak, dapat kita lakukan dengan mengklik: view – rules. Untuk mengatur kecenderungannya dapat kita lakukan dengan menggeser garis tengah berwarna merah untuk tiap fungsi keanggotaan.

 


 

  1. Selamat, Anda telah berhasil membuat satu engine FIS. Untuk menyimpan dapat kita lakukan dengan mengklik: file – export. Ada dua pilihan yang tersedia, yaitu to Workspace dan to File. Bila kita pilih to workspace maka hanya akan muncul pada Matlab saat aktif sekarang saja. Bila di-shutdown, data akan hilang. Sebaiknya kita pilih to file agar lebih permanen. Setelah diklik to file, beri nama misalnya bonis. File fuzzy akan tersimpan dengan ekstensi “fis”.
  2. Berikutnya kita akan menguji fuzzy yang telah kita buat. Kembali ke command window, ketik: fis=readfis(‘bonus’) lalu enter maka Matlab akan meload engine FIS yang kita miliki yaitu bonus.fis. Berarti variabelnya diberi nama “fis”.

    >> fis=readfis(‘bonus’)

 

  1. Berikutnya kita uji misalnya pelayanan buruk, yaitu 1 sedangkan masakannya pun tidak enak. Instruksi yang diperlukan adalah evalfis.

    >> out = evalfis([1 1],fis)

     

    out =

     

    3.2863

     

    Hasil defuzzifikasi, dengan variabel out, adalah 3,2863 yang jika dibandingkan dengan skala 10 masih dibilang buruk.

    >> out = evalfis([5 5],fis)

     

    out =

     

    7.3379

     

    Selamat Mencoba.

 

 

 

 

 

 


 

Perbandingan Kinerja ANFIS dan ANN

Artificial Neural Network (ANN) banyak dikembangkan untuk sistem pencocokan pola. Sedangkan Adaptive Neuro-Fuzzy Inference System merupakan gabungan antara fuzzy dengan neural untuk menghasilkan sistem yang melakukan adaptasi lewat pembelajaran (learning) biasanya dipakai pada sistem kendali, clustering ataupun pencocokan pola seperti pada syaraf tiruan. Sayangnya ANFIS kalah dibanding dengan ANN berdasarkan hasil riset berikut ini.

Di bawah ini program GUI dengan Matlab untuk menguji hasil pembelajaran.


Sedangkan script-nya adalah berikut ini (hanya untuk syaraf tiruan-nya):


input=reshape(handles.y7,[1,19200]);
target=input;
net=newff(input,target,50);
net.trainParam.epochs=3;
net.trainParam.shows=1;
net=train(net,input,target);
a=sim(net,input);
axes(handles.axes1);
a=reshape(a,[120,160]);
imshow(a),title('Hasil Learning');

Untuk ANFIS digunakan form yang sama, script sedikit berbeda:



input_data=reshape(handles.y7,19200,1);
target=input_data;
trnData=[input_data target];
numMFs = 50;
mfType = 'gbellmf';
epoch_n=3;
in_fis=genfis1(trnData,numMFs,mfType);
out_fis=anfis(trnData,in_fis,3);
output=evalfis(input_data,out_fis);
a=reshape(output,120,160)
axes(handles.axes1);
imshow(a),title('Hasil Learning');

Dibutuhkan script untuk pengolah citranya agar dihasilkan tanda tangan yang berupa matrix dan siap diolah oleh sistem. Untuk network ANFIS adalah sebagai berikut:


Sedangkan bagan untuk ANN dapat dilihat saat proses learning berlangsung:


Untuk adil dalam perbandingan, masing-masing teknik memiliki parameter sebagai berikut:

  1. Number of Neuron = 50
  2. Number of Epoch = 3
  3. Number of Layer = 1
  4. Learning Methods : Backpropagation

Hasilnya dimenangkan oleh ANN baik dalam akurasi maupun kecepatan akan diseminarkan di Seminar Internasional ISIT Universitas BSI Bandung, insya Allah 23 Oktober mendatang.

Link berikut merupakan hasil keluaran verifikasi tanda tangan dengan ANN:

NOTE: Terima kasih atas pinjaman sampel tanda tangannya untuk Kajur TK UNISMA Bekasi, Bpk Dadan Irwan, ST., M.Kom.