Posted by : Unknown Jumat, 12 Desember 2014

LAPORAN PRAKTIKUM
Praktikum Kecerdasan Buatan(AI)

MODUL2

NAMA           : DEDE ISKANDAR

NIM               : 3411121140
KELAS          : SIE [B]



INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS JENDERAL ACHMAD YANI
2014
BAB I
HASIL PRAKTIKUM
Langkah Kerja:
1.      Tambahkan code di bawah ini pada kelas “SinglePerceptron”.
private doublelrn;
private doublethr;
private interr,acOutput,tarOutput;
private double[] w;
private inti,j,k,it;
private booleanOK;
2.      Tambahkan dua method dibawah ini pada kelas “SinglePerceptron”.
public booleaninputCheck() {
if(lrn > 1) {
solution.append("Koefisien harus di bawah 1 \n");
OK = false;
     }
if(thr <= 0) {
solution.append("Bobot harus positif \n");
OK = false;
}
return OK;
}





3.      Tambahkan kode berikut ini pada saat user memilih item pada JComboBox.
funcName = (String)cb.getSelectedItem();
4.      Tambahkan kode berikut ini pada saat user menekan tombol “START”.
startButton = new JButton("Link Start !");
    startButton.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
          // pertemuan 2 tambahan
          try{
               w = new double[3];
               w[0] = 0.1;
               w[1] = 0.2;
               w[2] = 0.3;
               lrn = Double.parseDouble(learning.getText());
               thr = Double.parseDouble(threshold.getText());
               OK = true;
               solution.setText("");
              if(inputCheck()) {
              while(OK) {
                 it = 1;
                 solution.append("Iterasi" + "\t" + "x1" + "\t"+ "x2" +
                 "\t"+ "output" + "\t"+ "target" + "\t"+ "error" + "\t" + "w1" + "\t"+
                 "w2" + "\t" + "w3 \n");
                 solution.append(" \n");
              for(i=0;i<2;i++) {
                   for(j=0;j<2;j++) {
                   err = 1;
                   if(funcName == "AND") {
                    if(i==0 && j==0) {tarOutput = 0;}
                    if(i==0 && j==1) {tarOutput = 0;}
                    if(i==1 && j==0) {tarOutput = 0;}
                    if(i==1 && j==1) {tarOutput = 1;}
                   }
                   if(funcName == "OR") {
                    if(i==0 && j==0) {tarOutput = 0;}
                    if(i==0 && j==1) {tarOutput = 1;}
                    if(i==1 && j==0) {tarOutput = 1;}
                    if(i==1 && j==1) {tarOutput = 1;}
                   }
                   while(err != 0) {
                    if(i*w[0] + j*w[1] + w[2] >= thr){
                         acOutput = 1;
                    }
                    else{
                         acOutput = 0;
                    }
                    err = Math.abs(tarOutput -
                    acOutput);
                       if(err > 0) {
                         for(k=0;k<3;k++) {
                             if(tarOutput==0 && acOutput==1){
                                  w[k] = w[k] - lrn*err;
                             }
                             if(tarOutput==1 && acOutput == 0){
                                  w[k] = w[k] + lrn*err;
                             }
                         }
                       }
                    solution.append(it + "\t" + i +
                    "\t" + j + "\t" + acOutput + "\t" + tarOutput + "\t" + err + "\t" +
                    fmt.format(w[0]) + "\t" + fmt.format(w[1]) + "\t" +fmt.format(w[2]) +
                    "\n");                       
                    it++;
                   }
                  }
                 }
                 OK = false;
                }
               }
              }
              catch(NumberFormatException numberformatexception) {
               solution.append("Error");
              }
          // JOptionPane.showMessageDialog(null,"Sedang Pelatihan..\n Menggunakan Operator " +funcList.getSelectedItem());
    }
    });

Hasil Program
            Menggunakan Fungsi AND.
Menggunakan Fungsi OR

Tugas:
  1. Perhitungan kesalahan yang digunakan
for(i=0;i<2;i++) {
                   for(j=0;j<2;j++) {
                   err = 1;
                   if(funcName == "AND") {
                    if(i==0 && j==0) {tarOutput = 0;}
                    if(i==0 && j==1) {tarOutput = 0;}
                    if(i==1 && j==0) {tarOutput = 0;}
                    if(i==1 && j==1) {tarOutput = 1;}
                   }
                   if(funcName == "OR") {
                    if(i==0 && j==0) {tarOutput = 0;}
                    if(i==0 && j==1) {tarOutput = 1;}
                    if(i==1 && j==0) {tarOutput = 1;}
                    if(i==1 && j==1) {tarOutput = 1;}
                   }
                   while(err != 0) {
                    if(i*w[0] + j*w[1] + w[2] >= thr){
                         acOutput = 1;
                    }
                    else{
                         acOutput = 0;
                    }
                    err = Math.abs(tarOutput -
                    acOutput);
                       if(err > 0) {
                         for(k=0;k<3;k++) {
                             if(tarOutput==0 && acOutput==1){
                                  w[k] = w[k] - lrn*err;
                             }
                             if(tarOutput==1 && acOutput == 0){
                                  w[k] = w[k] + lrn*err;
                             }
                         }
                       }
                    solution.append(it + "\t" + i +
                    "\t" + j + "\t" + acOutput + "\t" + tarOutput + "\t" + err + "\t" +
                    fmt.format(w[0]) + "\t" + fmt.format(w[1]) + "\t" +fmt.format(w[2]) +
                    "\n");
                    
                    it++;
                   }
                  }
                 }
  1. Fungsi NumberFormatException
            Berfungsi sebagai indikasi bahwa aplikasi telah berusaha untuk mengkonversi String ke salah satu jenis numerik, tetapi bahwa string tidak memiliki format yang sesuai.
BAB II
KESIMPULAN
Kecerdasan Buatan adalah salah satu cabang Ilmu pengetahuan berhubungan dengan pemanfaatan mesin untuk memecahkan persoalan yang rumit dengan cara yang lebih manusiawi. Hal Ini biasanya dilakukan dengan mengikuti/mencontoh karakteristik dan analogi berpikir dari kecerdasan/Inteligensia manusia, dan menerapkannya sebagai algoritma yang dikenal oleh komputer. Dengan suatu pendekatan yang kurang lebih fleksibel dan efisien dapat diambil tergantung dari keperluan, yang mempengaruhi bagaimana wujud dari perilaku kecerdasan buatan. AI biasanya dihubungkan dengan Ilmu Komputer, akan tetapi juga terkait erat dengan bidang lain seperti Matematika, Psikologi, Pengamatan, Biologi, Filosofi, dan yang lainnya. Kemampuan untuk mengkombinasikan pengetahuan dari semua  bidang ini pada akhirnya akan bermanfaat bagi kemajuan dalam upaya menciptakan suatu kecerdasan buatan.
            NumberFormatException Berfungsi sebagai indikasi bahwa aplikasi telah berusaha untuk mengkonversi String ke salah satu jenis numerik, tetapi bahwa string tidak memiliki format yang sesuai.




Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © datakuliah - Skyblue - Powered by Blogger - Designed by Johanes Djogan -