Minggu, 24 November 2019

UTS Kecerdasan Buatan


Nama             : Salmaa Felia Mentari
Nim                 : 1730511097
Prodi               : Teknik Informatika
Mata Kuliah : Kecerdasan Buatan

                                                                     Jawaban soal UTS

1.    Penjelasan dari teknik-teknik pemecahan masalah beserta contohnya adalah sebagai berikut :
·         Searching merupakan teknik pencarian dengan penyelesaian masalah yang mempresentasikan masalah ke dalam ruang keadaan (state) dan secara sistematis melakukan pembangkitan dan pengujian state-state dari initial state sampai ditemukan suatu goal state. Searching ini digunakan dalam pencarian rute optimum bagi para pengguna. Contoh penerapan teknik ini, misalnya pada aplikasi gojek online yang telah dilengkapi GPS.
·         Reasoning merupakan teknik penalaran yang penyelesaian masalahnya kedalam logic (mathematics tools yang digunakan untuk mempresentasikan dan memanipulasi fakta dan aturan). Contoh penerapan teknik ini ialah pada software permainan catur HITECH.
·         Planning merupakan suatu metode penyelesaian masalah dengan cara memecah masalah dalam sub-sub masalah lebih kecil, menyelesaikan sub-sub masalah satu demi satu, kemudian menggabungkan solusi-solusi dari sub-sub masalah tersebut menjadi sebuah solusi lengkap dengan tetap mengingat dan menangani interaksi yang terdapat pada sub-sub masalah tersebut. Contohnya yaitu pada software optimum-AIV yang digunakan oleh European Space Agency untuk perakitan pesawat terbang.
·         Learning yaitu teknik pemecahan masalah yang secara otomatis menemukan acuan yang diharapkan bisa berlaku umum untuk data-data yang belum pernah kita ketahui. Contoh penerapan teknik learning ini adalah pada software ALVINN yang digunakan pada sebuah mobil kendali/mobil yang bisa dikemudikan tanpa manusia dengan menggunakan JST yang dilatih dengan berbagai gambar kondisi jalan ray yang ditangkap kamera dan dasbor.

2.    (Nomer 3) Permainan catur dengan menggunakan proporsional login.
Ø  Berdasarkan hasil kajian-kajian yang telah ada, untuk kasus yang lebih kompleks seperti permainan catur, proporsional logic akan sulit digunakan. Karena pada permainan catur terdapat sangat banyak aturan sedangkan proporsional logic adalah logic yang paling sederhana, dimana tidak bisa digunakan secara praktis karena harus membangun banyak sekali fakta untuk mempresentasikan keadaan dalam simbol-simbol sederhana.
3.    (Nomer 4) Untuk masalah seperti apa yang seperti apa kita sebaiknya menggunakan fuzzy logic  ?
Ø  Fuzzy logic sebaiknya digunakan untuk manajemen dan pengambilan keputusan, seperti manajemen basis data yang didasarkan pada logika fuzzy, tata letak pabrik yang didasarkan pada logika fuzzy, system pembuatan keputusan yang didasarkan pada fuzzy (contohnya pada pada robotika, hal itu berguna untuk untuk robot memutuskan apa yang harus dilakukan dengan input sensorik), dan lain-lain. Hal itu dikarenakan fuzzy logic ini merupakan suatu logika yang memiliki nilai kekaburan atau kesamaran (fuzziness) antara benar atau salah dan memiliki derajat keanggotaan dalam rentang 0 sampai 1. Logika fuzzy adalah suatu cara yang tepat untuk memetakan suatu ruang input kedalam suatu ruang output, mempunyai nilai kontinyu. Fuzzy logic digunakan digunakan untuk menerjemahkan suatu besaran yang diekspresikan menggunakan Bahasa (linguistic). Oleh sebab itu, sesuatu dapat dikatakan sebagian dan sebagian salah pada waktu yang sama (Kusumadewi. 2004).
4.    (Nomer 2) Rumus metode A* : f(n) = g(n) + h’(n)
·         Diketahui : 8 simpul = posisi-posisi kordinat persimpangan jalan (x, y). setiap busur memiliki 2 atribut, angka pertama (panjang jalan dalam satuan kilo meter) dan angka kedua (kecepatan maksimun dalam satuan km/jam).
·         Ditanyakan : rute jalan tercepat dari S ke G dengan menggunakan metode A*.
·         Jawab :
Ø  
                  
                  
                   Karena open hanya terdapat 1 simpul, maka S merupakan bestnode. Bestnode berikutnya ialah f(c) = 65.
                  
                  
                   C dengan biaya terkecil yaitu 65, terpilih sebagai bestnode dan dipindahkan ke closed, semua suksesor C dibuka yaitu B dan F, maka opened list (A,B,C,F) dan closed list (C,S). Tentu itu menjadi titik awal karena merupakan bestnode dari opened list dengan nilai f(f) = 67. Suksesor dari F yaitu simpul E dan G, karena G belum pernah ada di open/close list, maka langsung di hitung nilai F(G).
                  
                   Dengan demikian rute jalan dengan total waktu tercepat yang bisa digunakan oleh mobil pemadam kebakaran ialah S-C-F-G.
5.    Diketahui : gambar 3-14 : Fungsi keanggotaan trapezium untuk suhu udara
Ditanyakan : derajat keanggotaan pada fuzzy logic untuk suhu = 10, 14, 25, 45
Jawab :
Ø  
Ø  
Ø  
Ø  
Referensi
Nasution, Helfi. 2012. Implementasi Logika Fuzzy pada Sistem Kecerdasan Buatan. Universitas Tanjungpura Pontianak: Jurnal ELKHA Vol.4.
Diakses pada tanggal 18 November 2019 di https://taufanhartanto.files.wordpress.com
Untuk yang sebagiannya lupa karena tidak dicatat atau disimpan halaman web dan jurnalnya.

Berikut lampiran gambar untuk rumus perhitungan matematika yang tidak tampil karena menggunakan equation :





Kamis, 17 Oktober 2019

Tugas Metode Numerik


Nim                 : 1730511097
Nama             : Salmaa Felia Mentari
Prodi               : Teknik Informatika
Mata Kuliah : Metode Numerik

Metode Tabulasi dan Biseksi
A.   Metode Tabulasi

1.    Program Tabulasi
#include <stdio.h>
#include <math.h>
float b,a,n,h,e,x[100],y[100];
int i,j;
float f(float x){
            return(exp(-x)-x);
}
void tabel(){
            puts("tMetode Tabel");
            puts("\t===================\n");
            printf("t Fungsi\t= F(x)=exp(-x)-x\n");
            printf("Masukkan batas bawah\t= ");
            scanf("%f", &b);
            printf("Masukkan batas atas\t= ");
            scanf("%f", &a);
            printf("Masukkan iterasi\t\t= ");
            scanf("%f", &n);
            printf("Toleransi Error\t\t= ");
            scanf("%f", &e);
            h = (a - b)/n;
            printf("i\t\tx\t\t\tfx\n");
            for(i=0;i<n+1;i++){
                        x[i]=b+(i*h);
                        y[i]=f(x[i]);
                        printf("%d\t\t%f\t\t%f\n" ,i,x[i],y[i]);
            }
            for(j=0;j<n-1;j++){
                        if((y[j]*y[j+1])<0){
                                    printf("\nAkar diantara %f & %f\n" ,x[j] ,x[j+1]);
                                    if(fabs(y[j])<fabs(y[j+1])) {
                                                printf("Akar lebih dekat ke %f\n" , x[j]);
                                                printf("Toleransi error = %f" , y[j]);
                                    }else{
                                                printf("Akar lebih dekat ke %f\n" , x[j+1]);
                                                printf("Toleransi error = %f", y[j+1]);
                                    }
                        }
            }
}
main(){
            tabel();
}







2.    Flowchart Tabulasi

  
3.    Algoritma Tabulasi

a.    Menentukan batas atas, batas bawah, iterasi, dan toleransi error dengan fungsi fx = exp (-x)-x
b.    Lalu akan muncul table untuk fungsi interval antara nilai x dan fx
c.    Proses terus berulang hingga f(x) = 0 atau f(x) < toleransi.

B.   Metode Biseksi

1.    Program biseksi
#include<stdio.h>
#include<conio.h>
#include<math.h>

float bisection(float x) {
            float d;
            d=pow(x,2)-(2*pow(x,1))-2;
            return d;
}
main(){
            float x1,x2,xr,error,tol;
            int i=1;
            printf("\n\t\t\t\t\" Metode Bisection\n");
            printf("\t\t\t\t Metode Bagi Dua \" \n");
            printf("\t====================================================\n\n");
            printf("\t\t\t\t x^2-2x-2=0\n\n");
            printf("\tMasukkan batas atas persamaan(x1) : ");scanf("%f,&x1");
            printf("\tMasukkan batas bawah persamaan(x2) : ");scanf("%f,&x2");
            printf("\tMasukkan nilai toleransi : ");scanf("%f,&tol");
            printf("\tTidak ada akar diantara kedua batas persamaan\n");
            {
                        printf("\n \ti\tx1 \tx2 \txr \tf(x1) \tf(x2) \tf(xr) \terror \n");
                        do {
                                    xr=(x1+x2)/2;
                                    error=fabs(x2-x1)/fabs(x2);
                                    printf("\n\t%d\t%.3f\t%.3f\t%.3f\t%.3f\t%.3f\t%.3f\t%.3f\n",i,x1,x2,xr,bisection(x1),bisection(x2),bisection(xr),error);
                                    if(bisection(x1)*bisection(x2)<0)
                                    x2=xr;
                                    else
                                    x1=xr;
                                    i++;
                        }
                        while(tol<error);
                        printf("\n\tnilai xr terakhir : %.3f\n",xr);
                        printf("tBanyaknya iterasi : %d \n",i-1);
                        printf("\n\t\t\t\t\t\t\tBy :");
                        printf("\n\t\t\t\t\t\t\t---------");
                        printf("\n\t\t\t\t\t\t\tKelompok 1");
            }
            getch();
            return 0;
}



2.    Flowchart Biseksi



                                               
3.    Algortima Biseksi

a.    Tentukan x1, x2, nilai toleransi
b.    Periksa apakah x(1) x x(2) < 0, jika ya keluar dari program karena pada solusi yang diberikan tidak terdapat akar persamaan.
c.    Hitung nilai xr = (x1 + x2)/2
d.    Jika nilai mutlak (x2-x1) < toleransi tuliskan xr sebagai hasil perhitungan dan akhiri program, jika tidak lanjutkan kelangkah selanjutnya.
e.    Jika jumlah iterasi > iterasi maksimukan akhiri program.
f.     Jika x(1) x x(2) < 0, maka xr = x2 atau xr = x1.
g.    Kembali kelangkah c


Referensi
Di akses dari https://sayfudinblogz.blogspot.com pada tanggal 17 Oktober 2019
Di akses dari https://ismuhardwiputra.files.wordpress.com pada tanggal 17 Oktober 2019