;

Miftahush Shirothul Haq

Saudaraku seiman, bukan besar kecilnya tugas yang menjadikan tinggi rendahnya diri kita, melainkan manfaat dari apa yang kita kerjakan buat sekitar kita. Maka senantiasalah bersemangat dalam hal nan penuh kebermanfaatan ini.

Nabi Muhammad SAW

"Jika seseorang bepergian dengan tujuan mencari ilmu, maka Allah akan menjadikan perjalanannya seperti perjalanan menuju surga"

Senin, 09 September 2013

Sistem Inferen Fuzzy dengan Menggunakan Metode Tsukamoto



Diketahui :
                Input    : SUHU UDARA RANGE 200 – 400                      
                                JUMLAH MAHASISWA 0 – 40                           
                Output : DAYA 500 – 1000 Watt
                Rule       :
                [1] If (Suhu_Udara is Dingin) and (Jumlah_Mahasiswa is Sedikit) then (Daya is Kecil)
     [2] If (Suhu_Udara is Dingin) and (Jumlah_Mahasiswa is Banyak) then (Daya is Besar)
     [3] If (Suhu_Udara is Panas) and (Jumlah_Mahasiswa is Sedikit) then (Daya is Besar)
     [4] If (Suhu_Udara is Panas) and (Jumlah_Mahasiswa is Banyak) then (Daya is Besar)


Pertanyaan : Berapa daya yang dibutuhkan jika Suhu Udara Yang digunakan 250 dan Jumlah Mahasiswa yang ada dalam ruangan 16 Orang ?
Penyelesaian :
                  Ada 3 variabel fuzzy yang akan dimodelkan, yaitu:
    

     Kita bisa mencari nilai keanggotaan:

     ÂµSuhuDingin|25| = (40 – 25) / 20 = 0.75
     ÂµSuhuPanas|25|= (25 - 20)/20 = 0.25



Kita bisa mencari nilai keanggotaan:
µMhsSedikit|16| = (40 – 16) / 40 = 0.6
µMhsBanyak|16|= 16 / 40 = 0.4


        Sekarang kita cari nilai z untuk setiap aturan dengan menggunakan fungsi MIN
pada aplikasi fungsi implikasinya:
  

[1] If (Suhu_Udara is Dingin) and (Jumlah_Mahasiswa is Sedikit) then (Daya is Kecil)
α-predikat1        = µSuhuDingin ∩ µMhsSedikit
                                   = min (µSuhuDingin[25] ∩ µMhsSedikit[16])
                                   = min (0.75 , 0.6)

Lihat himpunan Daya Kecil,
(1000-z) / 500 = 0,6                    ---> z1 = 700

[2] If (Suhu_Udara is Dingin) and (Jumlah_Mahasiswa is Banyak) then (Daya is Besar)
α-predikat2        = µSuhuDingin ∩ µMhsBanyak
                                   = min (µSuhuDingin[25] ∩ µMhsBanyak[16])
                                   = min (0.75 , 0.4)

Lihat himpunan Daya Besar,
(z-500) / 500 = 0,4                      ---> z2 = 700

[3] If (Suhu_Udara is Panas) and (Jumlah_Mahasiswa is Sedikit) then (Daya is Besar)
α-predikat3        = µSuhuPanas ∩ µMhsSedikit
                                   = min (µSuhuPanas[25] ∩ µMhsSedikit[16])
                                   = min (0.25 , 0.6)

Lihat himpunan Daya Besar,
(z-500) / 500 = 0,25                    ---> z3 = 625

[4] If (Suhu_Udara is Panas) and (Jumlah_Mahasiswa is Banyak) then (Daya is Besar)
α-predikat4        = µSuhuPanas ∩ µMhsBanyak
                                   = min (µSuhuPanas[25] ∩ µMhsBanyak[16])
                                   = min (0.25 , 0.4)

Lihat himpunan Daya Besar,
(z-500) / 500 = 0,25                    ---> z4 = 625









Kamis, 05 September 2013

Penyelesaian Masalah dengan Menggunakan Algoritma Naive Bayes

Masalah :
Tentukanlah Kategori dari Dokumen 5 dengan menggunakan Algoritma Naive Bayes ?


Penyelesaian Masalah :
Langkah Pertama yakni menghitung keseluruhan kata pada kategori 1 dan 2 p(Ci)



P (China)          = 3/4  dan,
P (Bukan China) = 1/4

Hasil :

Langkah Kedua yaitu menentukan nilai kemunculan kata Wkj pada kategori Ci


Hasil : 

Langkah Ketiga Penentuan Kategori untuk dokumen 5 (D5)


p(china) = p(china)* p(chinese|china)^3*p(tokyo|china)*p(Japan|china) = 0,00036
p(b.china) = p(china)* p(chinese|b.china)^3*p(tokyo|b.china)*p(Japan|b.china) = 0,000135

Untuk mendapatkan kategori dari dokumen 5 maka anda harus memilih hasil terbesar...maka dari itu Dokumen 5 dikategorikan pada kategori china


Senin, 02 September 2013

Model Pengembangan Sistem (Software Engineering)

Waterfall model
Nama model ini sebenarnya adalah “Linear Sequential Model”. Model ini sering disebut dengan “classic life cycle” atau model waterfall. Model ini adalah model yang muncul pertama kali yaitu sekitar tahun 1970 sehingga sering dianggap kuno, tetapi merupakan model yang paling banyak dipakai didalam Software Engineering (SE). Model ini melakukan pendekatan secara sistematis dan urut mulai dari level kebutuhan sistem lalu menuju ke tahap analisis, desain, coding, testing / verification, dan maintenance. Disebut dengan waterfall karena tahap demi tahap yang dilalui harus menunggu selesainya tahap sebelumnya dan berjalan berurutan. Sebagai contoh tahap desain harus menunggu selesainya tahap sebelumnya yaitu tahap requirement.

Kelebihan waterfall model :
  1. Menghasilkan mature process pada setiap tahapannya.
  2. Mudah untuk diaplikasikan pada sebuah proyek.
  3. Cocok untuk system software berskala besar.
  4. Cocok untuk system software yang bersifat generic.
  5. Menghasilkan sistem yang terstuktur dengan baik.
  6. Memiliki tingkat visibilitas yang tinggi (setiap tahap mempunyai dokumen yang jelas).

Kelemahan waterfall model:
  1. Ketidakfleksibelan antar tahapan.
  2. Sulit untuk mengadaptasi jika terjadi perubahan spesifikasi pada suatu tahapan pengembangan.
  3. Persyaratan system harus digambarkan dengan jelas.
  4. Susah dalam merespon kebutuhan customer.
  5. Rincian proses harus benar-benar jelas dan tidak boleh berubah-ubah.
  6. Model ini hanya cocok jika :
a. Kebutuhan customer sudah sangat jelas.
b. Perubahan kebutuhan dibatasi.

V Model
Bisa dikatakan model ini merupakan perluasan dari model waterfall. Disebut sebagai perluasan karena tahap-tahapnya mirip dengan yang terdapat dalam model waterfall. Jika dalam model waterfall proses dijalankan secara linear, maka dalam model V proses dilakukan bercabang.

Kelebihan v model :
1.    V Model sangat fleksibel. V Model mendukung project tailoring dan penambahan dan pengurangan method dantool secara dinamik. Akibatnya sangat mudah untuk melakukan tailoring pada V Model agar sesuai dengan suatu proyek tertentu dan sangat mudah untuk menambahkan method dan tool baru atau menghilangkanmethod dan tool yang dianggap sudah obsolete.
2.    V Model dikembangkan dan di-maintain oleh publik. Userdari V Model berpartisipasi dalam change control boardyang memproses semua change request terhadap V Model.

Kelemahan v model :
1.    V Model adalah model yang project oriented sehingga hanya bisa digunakan sekali dalam suatu proyek.
2.    V Model terlalu fleksibel dalam arti ada beberapa activitydalam V Model yang digambarkan terlalu abstrak sehingga tidak bisa diketahui dengan jelas apa yang termasuk dalamactivity tersebut dan apa yang tidak.

Incremental process model / Iterasi
Model incremental (Incremental waterfall model) merupakan perbaikan dari  model waterfall dan sebagai standar pendekatan top-down. Ide dasar dari model ini adalah membangun software secara meningkat (increment) berdasarkan kemampuan fungsional. Model incremental ini diaplikasikan pada sistem pakar dengan penambahan rules yang mengakibatkan bertambahnya kemampuan fungsional sistem.

Kelebihan Incremental Model:
  1. Personil bekerja optimal.
  2. Dapat mengakomodasi jika terjadi perubahan pada tahapan pengembangan yang telah dilaksanakan.
  3. Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai dibangun. COntohnya pemasukan data karyawan.
  4. Mengurangi trauma karena perubahan sistem.  Klien dibiasakan perlahan-lahan menggunakan produknya bagian per bagian.
  5. Dapat disesuaikan agar system bisa dipakai selama hidup software computer.
  6. Memaksimalkan pengembalian modal investasi konsumen.
  7. Cocok untuk pengembangan sistem dan perangkat lunak skala besar.

Kelemahan Incremental Model:
  1. kemungkinan tiap bagian tidak dapat diintegrasikan.
  2. Hanya berlaku untuk Short-Lifetime system.
  3. Dapat menjadi build and Fix Model, karena kemampuannya untuk selalu mendapat perubahan selama proses rekayasa berlangsung
  4. Memerlukan alat ukur kemajuan secara regular.
  5. Memerlukan tenaga ahli dengan kemampuan tinggi.

Prototyping
Prototype merupakan metodologi pengembangan software yang menitik-beratkan pada pendekatan aspek desain, fungsi dan user-interface.  Developer dan user fokus pada user-interface dan bersama-sama mendefinisikanspesifikasi,fungsi,desain,dan,bagaimana software bekerja. Developer dan user bertemu dan melakukan komunikasi  dan menentukan tujuan umum, kebutuhan yang diketahui dan gambaran bagian-bagian yang akan dibutuhkan. Developer mengumpulkan detail dari kebutuhan dan memberikan suatu gambaran dengan cetak biru (prototype).

Kelebihan prototyping adalah: 
1.    Adanya komunikasi yang baik antara pengembang dan pelanggan.
2.    Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan.
3.    Pelanggan berperan aktif dalam pengembangan sistem.
4.    Lebih menghemat waktu dalam pengembangan sistem.
5.    Penerapan menjadi lebih mudah karena pemakai mengetahui apa yang diharapkannya. 

Kelemahan prototyping adalah : 
  1. Pelanggan kadang tidak melihat atau menyadari bahwa perangkat lunak yang ada belum mencantumkan kualitas perangkat lunak secara keseluruhan dan juga belum memikirkan kemampuan pemeliharaan untuk jangja waktu lama. 
  2. Pengembang biasanya ingin cepat menyelesaikan proyek. Sehingga menggunakan algoritma dan bahasa pemrograman yang sederhana untuk membuat prototyping lebih cepat selesai tanpa memikirkan lebih lanjut bahwa program tersebut hanya merupakan cetak biru sistem. 
  3. Hubungan pelanggan dengan komputer yang disediakan mungkin tidak mencerminkan teknik perancangan yang baik.
  4. Protitype yang dihasilkan tidak selamanya mudah dirubah.
  5. kurang fleksible dalam mengahdapi perubahan.

Spiral model
Model spiral adalah model proses perangkat lunak yang evolusioner yang merangkai sifat iteratif dari prototipe dengan cara kontrol dan aspek sistematis dari model sekuensial linier. Model itu berpotensi untuk pengambangan versi pertambahan perangkat lunak secara cepat.

Kelebihan model Spiral :
1.    Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak komputer.
2.    Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar.
3.    Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi  terhadap resiko  setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses.
4.    Menggunakan prototipe sebagai mekanisme pengurangan resiko dan pada setiap keadaan di dalam evolusi produk.
5.    Tetap mengikuti langkah-langkah dalam siklus kehidupan klasik dan memasukkannya ke dalam kerangka kerja iteratif.
6.    Membutuhkan pertimbangan langsung terhadp resiko teknis sehingga mengurangi resiko sebelum menjadi permaslahan yang serius.

Kelemahan model Spiral:
1.    Sulit untuk menyakinkan pelanggan bahwa pendekatan evolusioner ini bisa dikontrol.
2.    Memerlukan  penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika  resiko mayor tidak ditemukan dan diatur.
3.    Butuh  waktu lama untuk menerapkan paradigma ini  menuju kepastian yang absolut.

Hierarchical Aglomerative Clustering (Cara Penyelesaian)

Single Linkage (Jarak Terkecil)

 Rumus Single Linkage

 1. Langkah Pertama yang anda harus lakukan yaitu mencari nilai terkecil dari data yang sudah ditentukan dari pembobotan TFIDF selain nilai 0

2. Langkah Kedua Mengisi Kolom DF dan Baris DF dengan cara membandingkan nilai yang terkecil dari tiap-tiap baris, setelah terisi pilih nilai terkecil dari matrik selain 0
3. Langkah ketiga dan empat sama dengan langkah kedua yaitu menggabungkan kolom dan baris dari nilai yang terkecil 
4. Gambar Cluster yang terbentuk dari matriks .

Complete Linkage (Jarak Terbesar)


  Rumus Complete Linkage

1. Untuk Menyelesaikan Complete linkage sama halnya dengan single linkage namun hasil nilai yang dibandingkan adalah nilai yang terbesar .

2. untuk gambar clusternya sama saja dengan single lingkage, namun di matriks ke tiga ada perbedaan data.

catatan : Materi ini saya buat belum diuji kebenarannya, ini hanya digunakan untuk pembelajaran




Pengertian Artificial Intelegence dari Para Ahli

- Menurut Jhon McCathy [1956]
Kecerdasan buatan (Artificial Intelegence ) adalah suatu sistem komputer yang terbentuk untuk mengetahui dan memodelkan proses-proses berpikir manusia dan mendesain mesin agar dapat menirukan manusia

- Menurut Rolston [1985]
Kecerdasan Buatan (Artificial Intelegence ) merupakan solusi berbasis komputer terhadap masalah yang ada, yang menggunakan aplikasi yang mirip dengan proses berpikir manusia

- Menurut H. A Simon [1987]
Kecerdasan buatan (Artificial Intelegence ) merupakan kawasan penelitian, aplikasi dan instruksi yang terkait dengan pemrograman komputer untuk melakukan suatu hal yang didalam pandangan manusia adalah cerdas

- Menurut Rich and Knight [1991]
Kecerdasan Buatan (Artificial Intelegence ) merupakan suatu studi tentang bagaimana membuat komputer melakukan hal-hal yang pada saat ini dapat dilakukan lebih baik oleh manusia.

- Menurut Setiawan [1993]
Kecerdasan buatan (Artificial Intelegence ) dapat didefinisikan sebagai cabang ilmu komputer yang mempelajari otomisasi tingkah laku cerdas 

- Menurut Andi [2003]
Kecerdasan buatan (Artificial Intelegence ) adalah suatu studi khusus dimana tujuannya adalah membuat komputer berpikir dan bertindak seperti manusia 

- Menurut Sri Kusumadewi [2003]
Kecerdasan Buatan (Artificial Intelegence ) merupakan salah satu bagian dari ilmu komputer yang membuat agar mesin komputer dapat melakukan pekerjaan seperti dan sebaik yang dilakukan oleh manusia

- Menurut Andri Kristanto [2004]
Kecerdasan Buatan (Artificial Intelegence ) merupakan bagian dari ilmu pengetahuan komputer yang khusus ditujukan dalam perancangan otomatisasi tingkah laku cerdas

- Menurut Alan Turin
Jika Komputer tidak dapat dibedakan dengan Manusia saat berbincang melalui terminal komputer maka bisa dikatakan komputer itu cerdas

- Encyclopedia Britanicca
Kecerdasan Buatan (Artificial Intelegence ) merupakan cabang dari ilmu komputer yang dalam mempresentasikan pengetahuan lebih banyak menggunakan bentuk simbol-simbol daripada bilangan dan memproses informasi berdasarkan metode heuristic atau berdasarkan sejumlah aturan.

preprocessing (tokenization, stopword removal, stemming) Pembobotan TFIDF

Tugas :

D1 Human machine interface for computer applications
D2 A survey of user opinion of computer system response time
D3 The EPS user interface management system
D4 System and human system engineering testing of EPS
D5 The generation of random, binary and ordered trees
D6 The intersection graph of paths in trees
D7 Graph minors: A survey

1. Lakukan preprocessing (tokenization, stopword removal, stemming) untuk kumpulan dokumen diatas.
Gunakan http://smile-stemmer.appspot.com/ untuk melakukan proses stemmming.
2. Hitung TFIDF matrix dari kumpulan dokumen tersebut.
3. Lakukan percobaan algoritma K-Means dengan D2 dan D4 sebagai centroid awal. (untuk 1 iterasi saja)

Penyelesaian :
Langkah Pertama buka http://smile-stemmer.appspot.com/ , setelah terbuka proses Dokumen1(D1) s/d (D7)
Langkah Selanjutnya Hitung TF (Kata Disetiap Dokumen), Jumlah df dan frekuency idf
 Selanjutnya menentukan TFIDF


Jawaban Soal Ketiga Silahkan dianalisis sendiri

Contoh Soal diatas tidak dijamin kebenarannya, untuk referensi silahkan kunjungi http://temukembaliinformasi.wordpress.com/2009/08/26/pembobotan-tf-idf/