Sabtu, 23 November 2019

UTS Kecerdasan Buatan

Nomor 1
Dalam bahasan kecerdasan buatan sebuah software/ hardware disebut cerdas jika memiliki kemampuan untuk searching, reasoning, planning dan learning.

Searching adalah salah satu motode penyelesaian masalah dengan pencarian solusi pada suatu permasalahan yang dihadapi. Contoh penggunaan komputer yang dilengkapi Global Positioning System (GPS).
Reasoning adalah teknik yang digunakan untuk melakukan penalaran terhadap suatu masalah yang dialami manusia. Contoh diterapkan pada software permainan catur yang disebut HITECH.
Planning adalah teknik yang digunakan untuk melakukan perencanaan terhadap suatu masalah yang hendak diselesaikan. Contoh diterapkan pada Optimum-AIV adalah suatu planner (software yang menggunakan teknik planning) yang digunakan oleh European Space Agency untuk assembly atau perakitan, integration atau penggabungan dan verification (AIV) pesawat terbang. Software tersebut digunakan untuk membuat perencanaan dan untuk memonitor eksekusi terhadap perencanaan-perencanaan tersebut.
Learning adalah teknik yang digunakan untuk membuat mesin-mesin otomatis melalui proses pembelajaran dan pelatihan sedemikian rupa hingga bisa menjadi cerdas layaknya manusia. Contoh diterapkan pada pengendali mobil otomatis sehingga bisa berjalan sendiri tanpa disetir oleh manusia.

Nomor 2
Langkah pertama karena yang terbuka hanya terdapat 1 simpul, maka S adalah best node.
F (A) = 5 + 90 = 95
F (B) = 10 + 90 = 100
F (C) = 5 + 60 +=65
Best node selanjutnya adalah F(C) = 65
Closed = S Open = A, B, C
F(B) = SC + CB + HB
        = 5 + 4 +90
        = 99
F(F) = SC + CF + HF
        = 5 + 12 + 50
        = 67
Langkah kedua C dengan biaya terkecil ( yaitu 65) terpilih menjadi best node dan di pindahkan ke closed. Semua suksesor di C dibuka yaitu B dan F dan dimasukan ke open.
F (B) Jika starting point dari C = 99
F (B) Sebelumnya ( saat parent B adalah S ) = 100
B berganti parent dari S ke C
Open = (A, B, C, F)
Closed = (C, S)

F menjadi titik awal karena merupakan best node dari opened list dengan nilai F(f) = 67
Bangkitkan suksesor dari F yaitu simpul E dan G.
G belum pernah ada di opened list / closed list maka langsung di hitung nilainya
F (E) = SE + FE + h(E)
         = 5 + 4 + 100
         = 109
F (G) = CF + FG + h(G)
         = 12 + 5 + 40
         = 57

Hasil akhir :
Jalur terpendek melalui : S > C > F > G dengan nilai 57
Opened List Akhir : ( A, B)
Closed List Akhir : (S, C, F)

Nomor 3
Proposional Logic adalah logika yang menyatakan satu fakta bisa bernilai benar atau salah. Tapi untuk masalah yang kompleks (seperti pada permainan catur), proposional logic tidak bisa digunakan secara praktis karena kita harus membangun banyak sekali fakta untuk merepresentasikan keadaan sederhana. 

Nomor 4
Fuzzy Logic (Logika Fuzzy) atau biasa juga disebut dengan Logika Samar merupakan jenis logika yang memiliki nilai samar antara benar dan salah, dengan memetakan suatu ruang input ke dalam suatu ruang output didasari oleh konsep himpunan fuzzy. Dalam logika ini, suatu hal bisa bernilai benar dan salah secara bersamaan. Logika ini baiknya digunakan pada masalah yang mengandung unsur ketidakpastian, ketidaktepatan, ataupun kekaburan. Contoh pada pembuatan aplikasi diagnosa penyakit.

Nomor 5
Suhu 10o C, berada dinilai linguistik Cold dan Normal
Sematik atau derajat keanggotaan untuk Cold dihitung menggunakan rumus:
-(x-d)/(d-c), c < x < d, dimana c=3 dan d=12
-(10-12)/(12-3)= 0,13 
Sematik atau derajat keanggotaan untuk Normal dihitung menggunakan rumus:
(x-d)/(d-c), c < x < d, dimana c=3 dan d=12
(10-12)/(12-3)= -0,13 

Suhu 14o C, berada dinilai linguistik Cool dan Normal
Sematik atau derajat keanggotaan untuk Cool dihitung menggunakan rumus:
-(x-d)/(d-c), c < x < d, dimana c=12 dan d=15
-(14-15)/(15-12)= 0,33
Sematik atau derajat keanggotaan untuk Normal dihitung menggunakan rumus:
(x-b)/(b-a), a < x < b, dimana a=12 dan b=15
(14-15)/(15-12)= -0,33

Suhu 25o C, berada dinilai linguistik Normal dan Warm
Sematik atau derajat keanggotaan untuk Normal dihitung menggunakan rumus:
-(x-d)/(d-c), c < x < d, dimana c=24 dan d=27
-(25-27)/(27-24)= 0,66
Sematik atau derajat keanggotaan untuk Warm dihitung menggunakan rumus:
(x-b)/(b-a), a < x < b, dimana a=24 dan b=27
(25-27)/(27-24)= -0,66

Suhu 45o C, berada dinilai linguistik Warm dan Hot
Sematik atau derajat keanggotaan untuk Warm dihitung menggunakan rumus:
-(x-d)/(d-c), c < x < d, dimana c=39 dan d=50
-(45-50)/(50-39)= 0,45
Sematik atau derajat keanggotaan untuk Hot dihitung menggunakan rumus:
(x-b)/(b-a), a < x < b, dimana a=39 dan b=50
(45-50)/(50-39)= -0,45

Kamis, 17 Oktober 2019

Tugas Metode Numerik | Metode Tabulasi dan Metode Biseksi


Nama              : Hasbi Nabil
NIM                : 1730511078

METODE TABULASI
Algoritma Metode Tabulasi
a.       Menentukan interval yakni X1 dan X2 dimana f(X1) * f(X2) < 0.
b.       Jika telah memenuhi syarat, maka membuat tabel di antara X1 dan X2 yang menyebabkan terjadinya perubahan tanda pada f(x).
c.       Proses terus berulang hingga f(x) = 0 atau f(x) < toleransi.
Flowchart Tabulasi



METODE BISEKSI
Algoritma Program Metode Biseksi
a.       Tentukan a, b, toleransi dan jumlah iterasi maksimum.
b.      Periksa apakah f(a) x f(b) > 0, jika ya keluar dari program karena pada solusi yang diberikan tidak terdapat akar persamaan.
c.       Hitung nilai m = (a+b)/2
d.      Jika nilai mutlak (b-a) < toleransi tuliskan m sebagai hasil perhitungan dan akhiri program, jika tidak lanjutkan kelangkah selanjutnya.
e.       Jika jumlah iterasi > iterasi maksimum akhiri program.
f.        Jika f(a) x f(b) < 0, maka b = m, jika tidak a = m
g.      Kembali ke langkah c
Flowchart Metode Biseksi

Senin, 14 Oktober 2019

Algoritma Hill Climbing dan Iterative Deepening Search


Iterative Deepening Search


a.      Pengertian Iterative Deepening Search
Iterative Deepening Search (IDS) merupakan metode yang menggabungkan kelebihan Breadth First Search (BFS) yaitu complete dan optimal dengan kelebihan Depth First Search (DFS) yaitu space complexity rendah atau membutuhkan sedikit memori. Sehingga didapatkan metode searching yang optimal dan menggunakan sedikit storage. Tetapi konsekuensinya adalah time complexity-nya menjadi tinggi.

b.      Alur Algoritma Iterative Deepening Search
Mula mula IDS melakukan pencarian secara iteratif menggunakan metode Depth-Limited-Search DLS, dimulai dengan batasan level 0. Jika belum ditemukan solusi, maka dilakukan iterasi ke-2 dengan batasan level 1. Demikian seterusnya hingga ditemukan solusi.
Penelusuran di setiap proses pencariannya menggunakan cara kerja DFS, yaitu dengan menelusuri satu node dalam setiap level dari yang paling kiri. Jika pada level yang paling dalam, solusi belum ditemukan, maka pencarian dilanjutkan pada node sebelah kanan. Demikian seterusnya sampai ditemukan solusi.
Penelusuran ini merupakan metode yang ada pada DFS. Dengan adanya kelebihan pada DFS, maka IDS hanya membutuhkan memori yang kecil. Dengan menggunakan cara BFS, metode IFS dapat menemukan solusi terbaik karena pencarian dilakukan secara merata terlebih dahulu hingga batas bertambah dan pengulangan terjadi.

c.       Implementasi Algoritma Iterative Deepening Search
Algoritma IDS dapat diimplementasikan atau diterapkan dalam penyelesaian permainan teka-teki kakuro.  Kakuro dimainkan pada sebuah tabel kotak-kotak yang mirip dengan permainan teka teki silang. Di dalam kakuro, jumlah dari nilai input harus sama dengan petunjuk yang tertera di kiri atau di atas. Pemain hanya bisa memasukkan angka dari 1 hingga 9, sehingga jumlah angka sama dengan petunjuk. Tidak boleh terdapat angka yang sama pada baris dan kolom yang sama. Hanya akan ada satu solusi untuk setiap puzzle.
Algoritma IDS dapat diimplementasikan kedalam :
1.      Dengan IDS, pembuat soal kakuro dapat menguji apakah soal yang telah dibuatnya mempunyai solusi atau tidak dengan menggunakan metode algoritma pencarian.
2.      Pencarian jawaban dalam kakuro lebih cepat.
3.      Aplikasi merupakan implementasi nyata dari kecerdasan buatan (artificial intelligence), terutama algoritma pencarian IDS untuk mencari penyelesaian dari suatu permasalahan, dalam hal ini soal Kakuro.




Hill Climbing

a.      Pengertian Hill Climbing
Hill Climbing merupakan salah satu metode yang masuk ke dalam metode pencarian heuristik. Metode pencarian heuristic/informed pencarian solusinya dilakukan menggunakan keadaan awal (initial state) dan aturan produksi berupa fungsi heuristik (suatu fungsi untuk menghitung nilai atau biaya perkiraan dari suatu solusi permasalah yang dicari) sebagai modal untuk melakukan iterasi menuju goal state.

b.      Alur Algoritma Hill Climbing
Hill Climbing (HC) dibagi menjadi dua bagian, yaitu: Simple Hill Climbing (SHC) dan SteepestAscent Hill Climbing (SAHC). Secara garis besar, langkah-langkah dari HC adalah sebagai berikut:
1.      Dibentuk lintasan awal sebagai keadaan awal (initial state), kemudian dilakukan pengujian dari keadaan awal tersebut. Pengujian dilakukan dengan menghitung total jarak yang ditempuh pada initial state. Pengujian tersebut dilakukan untuk mendapatkan nilai heuristik sebagai pembanding terhadap nilai-nilai heuristik yang ada setelah dilakukan kombinasi pertukaran dua kota. Hasil dari pengujian tersebut adalah jarak minimal yang ditempuh pada permasalahan TSP. Hasil tersebut akan digunakan sebagai pembanding hasil dari langkah berikutnya.
2.      Setelah dibentuk lintasan awal sebagai keadaan awal, langkah selanjutnya yaitu melakukan kombinasi penukaran dua kota kemudian dilakukan pengujian seperti pada poin a, hingga mencapai kondisi goal, jika tidak maka pilihlah elemen yang lain hingga mencapai goal. Kondisi goal diartikan sebagai keadaan yang merupakan solusi optimum dari permasalahan TSP dengan kondisi: panjang jalur baru < panjang jalur lama.
3.      Jika kondisi goal telah tercapai maka kondisi tersebut adalah solusinya, jika tidak, maka bukan solusinya.

c.       Implementasi Algoritma Hill Climbing
Dalam penggunaannya, algoritma hill climbing dapat diimplementasikan kedalam sistem penjadwalan kuliah. Suyanto (2007) menjelaskan algoritma SAHC sebagai berikut:
1)      Evaluasi initial state. Jika state ini adalah goal state, maka kembalikan state ini sebagai solusi dan keluar dari fungsi. Jika state ini bukan goal state, lanjutkan proses dengan initial state sebagai current state (keadaan sekarang).
2)      Ulangi sampai solusi ditemukan atau sampai tidak ada perubahan terhadap current state:
a.      Misalkan SUK adalah suatu state yang menjadi suksesor sari current state.
b.      Untuk setiap operator yang bisa dilakukan terhadap current state, kerjakan:
                                                                             i.            Aplikasikan operator tersebut dan bangkitkan new state.
                                                                            ii.            Evaluasi new state. Jika merupakan goal state, kembalikan state ini sebagai solusi dan keluar dari program. Jika bukan goal state, bandingkan new state dengan SUK. Jika new state lebih baik dari SUK, maka ganti SUK dengan new state. Jika tidak lebih baik, SUK tidak perlu diganti.
3)      Jika SUK lebih baik dari current state, maka ganti current state dengan SUK.



Referensi
Hendrik, Jackri. (2017). Penerapan Algoritma Interative-Deepening Search (Ids) Dalam Penyelesaian Permainan Teka-Teki Kakuro. Informasi dan Teknologi Ilmiah (INTI).
Saifullah, Shoffan & Hermawan, Arief. (2016). Pengembangan sistem penjadwalan kuliah menggunakan algoritma steepest ascent hill climbing.
Irfan, Muhammad. (2018). Penyelesaian Travelling Salesman Problem ( TSP ) Menggunakan Algoritma Hill Climbing dan MATLAB.



Rabu, 17 April 2019

UTS IMK - Aplikasi Beli Baju Online berbasis Web


1.      Judul Penelitian
Aplikasi Beli Baju Online Berbasis Web.

2.      Penjelasan dari Penelitian yang Akan Dibuat
Aplikasi ini dibuat untuk mempermudah system pembelian kaos pada toko ANNISA Kain Kaos. Pada pengaplikasiannya, aplikasi berbasis web ini nantinya akan menyediakan halaman awal yang memberikan akses bagi customer untuk memilih produk mana yang diinginkan. Sebelum masuk ke halaman awal, mulanya customer diharuskan untuk daftar serta login terlebih dahulu.
Kenapa berbasis web? Hal ini untuk mempermudah akses aplikasi oleh customer serta supaya tidak perlu datang ke toko untuk membeli produk. Pembayaran dilakukan dengan transfer.

3.      Gambaran Pengguna
3.1 Owner
Pemilik toko. Menyediakan produk yang akan dijual.
3.2 Admin
Admin dari aplikasi ini adalah pria atau wanita berusia 25 tahun keatas yang mahir menggunakan komputer, cakap dalam mengolah database, dan cukup paham tentang website dan pengelolaannya.
3.3 Customer
Customer adalah pria dan wanita semua kalangan yang paham dalam mengoprasikan gadget.



4.      Analisis Tugas/Aktivitas
4.1 Analisis Sistem
4.1.1 Analisis Sistem Berjalan
Dari hasil observasi dalam system berjalan serta wawancara pemilik toko yang dilakukan penulis, diperoleh analisis berjalan sebagai berikut.
1.      Prosedur Pembelian Produk Toko
Prosedur pembelian produk di toko ANNISA Kain Kaos adalah sebagai berikut:
                                            I.            Customer datang ke toko
                                         II.            Customer memilih produk yang dijual di toko
                                      III.            Jika ditemukan produk yang diinginkan, customer melakukan pembayaran langsung kepada owner
                                      IV.            Customer membawa pulang produk yang telah dibeli kemudian meninggalkan toko
                                        V.            Owner melakukan pencatatan transaksi

2.      Workflow Sistem yang Berjalan




4.1.2 Analisis Permasalahan
Dengan proses pembelian kaos yang saat ini sedang berjalan, ditemukan beberapa permasalahan diantaranya:
1.      Customer harus tahu terlebih dahulu tentang toko ANNISA Kain Kaos jika ingin datang ke toko. Sedangkan belum adanya promosi yang dilakukan agar toko tersebut dikenal lebih luas di masyarakat.
2.      Customer harus datang langsung ke toko, hal ini tentunya memakan waktu dan tenaga customer. Kebanyakan customer lebih memilih toko yang lebih dekat atau bahkan belanja di online shop.
3.      Diperlukan juga waktu yang cukup lama bagi customer untuk memilih produk yang ada diseisi toko.
4.      Dalam rekap/pencatatan transaksi secara manual sering terjadi kesalahan seperti salah tulis, lupa mencatat, atau bahkan hilangnya catatan transaksi.

4.1.3 Analisis Pemecahan Masalah
Melihat beberapa masalah yang ditemukan, maka diusulkan pemecahan masalah sebagai berikut:
1.      Menambahkan system pembelian di toko dengan system pembelian berbasis Web, hal ini tentunya akan mengefektifkan waktu dan memudahkan akses customer yang tidak mengetahui alamat toko. Juga lebih mudah untuk promosi dengan hanya menyebarkan url website saja.
2.      Sistem yang dikembangkan terhubung ke database untuk menyimpan semua data customer, dan data produk yang sekaligus mencangkup data transaksi.

4.1.4 Analisis Kebutuhan dan Usulan Sistem
1.      Analisis Kebutuhan Sistem
Kebutuhan system yang diperlukan dalam pembuatan Web beli baju online yaitu sebagai berikut.
a.       Data yang dibutuhkan
i.                    Data Produk : kode produk, nama produk, jenis produk, warna produk, ukuran produk, harga produk, stok produk, foto.
ii.                  Data Customer : id, nama, username, password, alamat.
b.      Form yang dibutuhkan
i.                    Form menu utama
ii.                  Form login customer
iii.                Form daftar customer
iv.                Form beli produk



2.      Usulan Sistem
Sistem yang akan dikembangkan ini adalah system pembelian baju secara online yang berbasis web. System ini dikembangkan dengan harapan dapat menjadi solusi pemecahan masalah pada system yang sedang berjalan, serta mempermudah customer dalam pembelian, dan owner dalam pencatatan data.
Prosedur system yang diajukan oleh penulis adalah:
a.       Owner
Memberikan data produk yang akan dijual kepada admin.
b.      Admin
i.                    Login admin
ii.                  Masuk ke halaman admin
iii.                Mengelola halaman awal
iv.                Mengelola data produk
v.                  Dapat mengakses seluruh data produk
vi.                Logout
c.       Customer
i.                    Daftar akun
ii.                  Login username dan password yang telah didaftarkan
iii.                Masuk halaman awal
iv.                Memilih produk dihalaman awal
v.                  Memesan produk
vi.                Logout


Adapun workflow system yang diusulkan dalam proses pembelian baju online adalah sebagai berikut:





5.       Perancangan IMK
5.1 Perancangan Basis Data
Adapun perancangan basis data yang terdapat pada system pembelian baju online adalah sebagai berikut:
Nama database : db_toko
Jumlah tabel : 3
1.      Nama Tabel : admin
Kunci Utama : username
Jumlah field : 2

No
Nama
Tipe
Ukuran
1.
username
Varchar
12
2.
password
varchar
15

2.      Nama Tabel : data_produk
Kunci utama : kode
Jumlah field : 7

No
Nama
Tipe
Ukuran
1.
kode
Varchar
8
2.
nama
varchar
15
3.
jenis
Varchar
15
4.
warna
Varchar
15
5.
ukuran
Varchar
15
6.
harga
int
9
7.
stok
int
3
8.
foto
varchar
50

3.      Nama Tabel : data_cust
Kunci utama : id
Jumlah field : 5

No
Nama
Tipe
Ukuran
1.
id
Varchar
8
2.
Nama_cust
Varchar
20
3.
username
Varchar
12
4.
password
varchar
15
5.
alamat
char
100



5.2 Perancangan Tampilan

1.                  Form menu utama


If
     klik >> pilih
Then
     Masuk halaman data produk
Else If
klik logout
Then
     Masuk halaman login
Else If
Klik next Page
Then
     Masuk halaman selanjutnya



2.                  Form login customer


If
     klik Login
Then
     Verifikasi data
Else If
Data valid
Then
     Masuk halaman awal
Else If
Klik daftar
Then
     Masuk halaman daftar



3.                  Form daftar customer


If
     klik DAFTAR
Then
     Input ke tabel data_cust
Else If
klik DAFTAR
Then
     Masuk halaman login

4.                  Form beli produk


If
     klik BELI PRODUK
Then
     Stok di database berkurang
Else If
klik BELI PRODUK
Then
     muncul no. rekening