tugas ai

21
1. PENDAHULUAN Dalam dekade terakhir, kecerdasan buatan berkembang sangat pesat. Kecerdasan buatan adalah suatu ilmu pengetahuan dimana komputer diprogram untuk menyelesaikan masalah menurut penalaran manusia. Dengan kata lain, komputer diprogram untuk berpikir layaknya manusia. Teknik yang digunakan dalam kecerdasan buatan memungkinkan dibuatnya sebuah program yang setiap bagiannya mengandung langkah-langkah independen dan dapat diidentifikasi dengan baik untuk dapat memecahkan sebuah atau sejumlah masalah. Dengan definisi ini Kecerdasan buatan menawarkan baik media aupun uji teori kecerdasan. Teori-teori ini dapat dinyatakan dalam bahasa program computer dan dibuktkan esekusinya pada computer nyata. Kecerdasan buatan pertama kali diperkenalkan pada tahun 1950-an dimana waktu itu para ilmuan dan peneliti muulai memikirkan bagaimana mesin dapat bekerja menurut nalar manusia. Pada tahun 1956, professor dari Massachuset Institute of Technology barnama John McCarthy memunculkan konsep kecerdasan buatan pada Dermouth Conference. Pada konferensi tersebut didefinisikan konsep utama dari kecerdasan buatan yaitu mengetahui dan memodelkan proses-proses berfikir manusia dan mendesain masin agar dapat meniru kelakuan manusia tersebut.

description

ai

Transcript of tugas ai

Page 1: tugas ai

1. PENDAHULUAN

Dalam dekade terakhir, kecerdasan buatan berkembang sangat pesat.

Kecerdasan buatan adalah suatu ilmu pengetahuan dimana komputer diprogram untuk

menyelesaikan masalah menurut penalaran manusia. Dengan kata lain, komputer

diprogram untuk berpikir layaknya manusia. Teknik yang digunakan dalam

kecerdasan buatan memungkinkan dibuatnya sebuah program yang setiap bagiannya

mengandung langkah-langkah independen dan dapat diidentifikasi dengan baik untuk

dapat memecahkan sebuah atau sejumlah masalah. Dengan definisi ini Kecerdasan

buatan menawarkan baik media aupun uji teori kecerdasan. Teori-teori ini dapat

dinyatakan dalam bahasa program computer dan dibuktkan esekusinya pada computer

nyata.

Kecerdasan buatan pertama kali diperkenalkan pada tahun 1950-an dimana

waktu itu para ilmuan dan peneliti muulai memikirkan bagaimana mesin dapat

bekerja menurut nalar manusia. Pada tahun 1956, professor dari Massachuset Institute

of Technology barnama John McCarthy memunculkan konsep kecerdasan buatan

pada Dermouth Conference. Pada konferensi tersebut didefinisikan konsep utama dari

kecerdasan buatan yaitu mengetahui dan memodelkan proses-proses berfikir manusia

dan mendesain masin agar dapat meniru kelakuan manusia tersebut.

Salah satu aplikasi kecerdasan buatan adalah pattern recognition yang

berfungsi untuk memetakan suatu data ke dalam konsep tertentu yang telah

didefinisikan sebelumnya. Konsep tertentu ini disebut class atau kategori. Salah satu

metode yang akhir-akhir ini banyak mendapat perhatian sebagao state of the art

dalam patern recognition adalah support vector machining (SVM). Berbeda dengan

strategi neural network yang berusaha mencari hyper line pemisah antar class, SVM

adalah linear classifier, dan selanjutnya dikembangkan agar dapat bekerja pada

problem-problem non linier, dengan memasukkan konsep krenel trick pada ruang

kerja berdimensi tinggi.

Page 2: tugas ai

2. KASUS

Teknologi baru dikembangkan guna mengatasi masalah tentang penghematan

energi dan pengurangan emisi. Salah satunya adalah pengembangan motor listrik.

Motor listrik yang memiliki efisiensi tinggi, torsi yang tinggi, kecepatan yang tinggi

dan dapat divariasikan, dan biaya perawatan yang rendah. Hanya saja motor yang

digunakan secara umum saat ini, yakni motor DC dan motor induksi, belum dapat

memenuhi kebutuhan tersebut. Motor DC memiliki efisiensi yang tinggi karena

penggunaan tegangan DC pada rotor untuk menggerakkan motor tersebut. Hanya saja

motor DC memiliki biaya perawatan yang tinggi akibat digunakannya brush dalam

komutasi motor DC. Sedangkan pada motor induksi memiliki biaya perawatan yang

lebih rendah dan memiliki kecepatan yang lebih tinggi dibandingkan motor DC. Hal

ini terjadi karena motor induksi tidak menggunakan brush untuk menunjang

komutasi, namun motor induksi memiliki efisiensi yang lebih rendah dibandingkan

motor DC dan cepat panas. Oleh karena itu untuk memenuhi karakteristik motor yang

tersebut diatas maka digunakan motor Brushless Direct Current (BLDC).

Motor BLDC memiliki komponen stator yang terbuat dari kumparan dan

rotor yang terbuat dari magnet permanen yang menggunakan sumber tegangan DC.

Dengan menggunakan data karakteristik motor BLDC dari percobaan dengan

dynamometer dapat ditentukan efisiensi motor BLDC tersebut. Motode LS-SVM

dimanfaatkan untuk mengetahui perkiraan efisiensi motor BLDC pada titik yang lain.

3. TEORI

Support Vector Machine

Support vector machine merupakan teknik untuk memprediksi, baik dalam kasus

kalsifikasi maupun regresi, yang relatif baru karena baru dikembangkan pada tahun

1995 oleh Boser, Guyon dan Vapnik. SVM mempunyai kerja yang hampir sama

dengan Artificial Neural Network dalam hal fungsi dan kondisi permasalahan yang

ingin diselesaikan. Keduanya masuk dalam kelas supervised learning. SVM dan

Page 3: tugas ai

ANN telah banyak digunakan oleh para ilmuan untuk menyelesaikan permasalahan di

berbagai bidang seperti gene expression analysis, finansial, cuaca hingga bidang

kedokteran. Perbedaan keduanya adalah ANN menemukan solusi berupa local

optimal yang artinya setiap kita menjalankan ANN solusi yang kita temukan akan

selalu berbeda. Hal ini disebabkan local optimal yang dicapai tidak selalu sama.

Berbeda dengan SVM yang yang menemukan solusi secara global optimal. SVM

akan menghsilkan output yang selalu sama setiap kali running.

Baik SVM dan ANN digunakan sebagai metode untuk pengenalan metode.

Pembelajaran dilakukan dengan cara menyediakan data input dan data ouput.

Pembelajaran dengan cara ini disebut dengan pembelajaran terarah. Dengan adanya

data input dan data output tersebut akan tergambar sebuah ketergantungan antara

input terhadap output. Selanjutnya, diharapkan fungsi yang terbentuk mempunyai

kemampuan generalisasi yang baik, dengan kata lain fungsi tersebut dapat digunakan

walaupun data inupt yang digunakan nantinya di luar data pembelajaran.

Konsep dasar SVM adalah berusaha menemukan hyperplane atau garis pemisah dua

kelas pada input space. Ilustrasi dari kerja SVM dapat dilihat pada gambar 3.1

dibawah ini.

Gambar 3.1 Hyperplane yang dihasilkan oleh SVM

Page 4: tugas ai

Pada gambar 2.4 digambarkan terdapat dua jenis kelas yaitu -1 yang digambarkan

dengan warna merah dan +1 yang digambarkan dengan warna kuning. Problem dari

gambar diatas atas bagaimana menemukan garis yang memisahkan kedua jenis data

tersebut. Berbagai alternatif garis ditunjukkan pada gambar 2.4 a. Hyperplane

pemisah terbaik dapat dapat ditemukan dengan cara mengukur margin hyperplane

dan mencari titik maksimalnya. Margin adalah jarak hyperplane dengan data paling

dekat dengan hyperplane dari masing-masing kelas. Data yang paling dekat dengan

hyperplane disebut support vector. Gambar 2.4 b menunjukkan hyperplane terbaik

yang memisahkan kedua data. Usaha untuk menemukan hyperplane terbaik ini

merupakan inti dari proses pembelajaran SVM.(Nugroho dkk. 2003)

Pada permasalahan nyata, sangatlah sulit untuk menemukan data yang dapat

dipisahkan secara linier. Oleh karena itu digunakanlah fungsi kernel untuk mengatasi

permasalahan non-linier. Dengan memasukkan fungsi kernel, maka problem data

non-linier menjadi linier dalam space baru. Ilustrasi dari fungsi kernel dapat dilihat

pada gambar 2.5.

Gambar 3.2 Ilustrasi Fungsi Kernel

Ada 4 jenis kernel yang biasanya digunakan, yaitu

1. Linier Kernel

2. Polynomial Kernel

Page 5: tugas ai

3. Radial Basis Function (RBF) Kernel

4. Tangent Hyperbolic (sigmoid) Kernel

1.) Algoritma Support Vector Machine

Support Vector Machine (SVM) adalah salah satu teknik klasifikasi data dengan

proses pelatihan. Salah satu ciri dari metode SVM adalah menemukan garis

hyperplane atau garis pemisah terbaik sehingga diperoleh ukuran margin yang

maksimal. Titik yang terdekat dengan hyperplane disebut support vector. Margin

adalah dua kali jarak antara hyperplane dengan support vector. Ilustrasi SVM untuk

data yang terpisahkan secara linier dapat dilihat pada gambar 3.3

Gambar 3.3. Hyperplane Alternatif dan Hyperplane Terbaik Dengan Data Yang

Dapat Dipisahkan Secara Linier

Dalam contoh diatas dua kelas dipisahkan oleh dua garis sejajar. Bidang pembatas

pertama membatasi kelas pertama sedangkan bidang kedua membatasi kelas kedua,

sehingga diperoleh:

x i . w+b≥+1 untuk yi=+1.....................................................................(3.1)

xi .w+b≤−1 untuk yi=-1

Page 6: tugas ai

Dengan w adalah normal bidang dan b adalah posisi bidang relatif terhadap puast

kooordinat. Nilai margin (jarak) antara bidang pembatas (berdasarkan rumus jarak ke

garis pusat) adalah

1−b−(−1−b)w

= 2w

Nilai margin ini dimaksimalkan dengan tetap memenuhi persamaan 3.1. Dengan

mengalikan b dan w dengan sebuah konstanta, akan dihasilkan nilai margin yang

dikalikan dengan konstanta yang sama. Oleh karena itu, konstrain pada persamaan

(3.1) merupakan scaling constant yang dapat dipenuhi dengan rescaling b dan w.

Selain itu, karena memaksimalkan

1|w| sama dengan meminimumkan |w|2 dan jika

kedua bidang pembatas persamaan (2.7) dipresentasikan ke dalam pertidaksamaan

y i( x i . w+b )−1≥0 ................................................................................(3.2)

Maka pencarian bidang pemisah terbaik dengan nilai margin terbesar dapat

dirumuskan menjadi masalah optimasi konstrain, yaitu

min 12|w|2

..............................................................................................(3.3)

s,t y i( x i . w+b )−1≥0

Persoalan ini akan lebih mudah diselesaikan jika diubah ke dalam formula lagrangian

yang menggunakan lagrange multiplier. Dengan demikian permasalahan optimasi

konstrain dapat diubah menjadi

minw ,b

L p (w ,b , a )=12|w|2−∑

i=1

n

ai y i ( xi .w+b )+∑i=1

n

a i..............................(3.4)

Page 7: tugas ai

Dengan tambahan konstrain, ai ≥ 0 (nilai dari koefisien lagrange). Dengan

meminimumkan Lp terhadap w dan b, maka dari

∂∂b

Lp (w ,b ,a )=0diperoleh (3.5)

dan dari

∂∂w

Lp ( w ,b , a )=0diperoleh (3.7)

∑i=1

n

ai yi=0..........................................................................................(3.6)

w=∑i=1

n

ai y i xi........................................................................................(3.7)

Vektor w seringkali bernilai besar (mungkin tak terhingga), tetapi nilai αi terhingga.

Untuk itu, formula lagrangian Lp (primal problem) diubah ke dalam dual problem Ld.

Dengan mensubstitusikan persamaan (2.11) ke Lp diperoleh dual problem Ld dengan

konstrain berbeda

LD(α )=∑i=0

n

αi−12 ∑

i=1, j=1

n

αi α j yi y j xi x j.......................................................(3.8)

S,t. ∑i=1

n

ai y i=0 , αi≥0..........................................................................(3.9)

Dengan demikian, dapat diperoleh nilai αi yang nantinya digunakan untuk

menemukan w. Terdapat nilai αi untuk setiap data pelatihan. Data pelatihan yang

memiliki nilai αi>0 adalah support vector sedangkan sisanya memiliki nilai αi=0.

Dengan demikian fungsi keputusan yang dihasilkan hanya dipengaruhi oleh support

vector.

Formula pencarian bidang pemisah terbaik ini adalah permasalahan quadratic

programming sehingga nilai maksimum global dari αi selalu dapat ditemukan. Setelah

solusi permasalahan quadratic programming ditemukan (nilai αi), maka kelas dari

data pengujian x dapat ditentukan berdasarkan nilai dari fungsi keputusan:

Page 8: tugas ai

f ( xd )=∑i=0

ns

αi y i xi xd+b......................................................................(3.10)

Xi adalah support vector, ns= jumlah support vector dan xd adalah data yang akan

diklasifikasi.

2.) SVM pada Nonliniarly Separable Data

Metode untuk mengklasifikasikan data yang tidak dapat dipisahkan secara linier

adalah dengan mentransformasikan data ke dalam dimensi ruang fitur (feature space)

sehingga dapat dipisahkan secara linier pada feature space.

Gambar 3.4. Feature Space

Caranya, data dipetakan dengan menggunakan fungsi pemetaan (transformasi)

xk→φ ( xk ) ke dalam feature space sehingga terdapat bidang pemisah yang dapat

memisahkandata sesuai dengan kelasnya. Misalkan terdapat data set yang datanya

memiliki dua atribut dan dua kelas yaitu kelas positif dan kelas negatif. Data yang

memiliki kelas positif {(2,2),(2,-2),(-2,2),(-2,-2)}, dan data yang memiliki kelas

negatif {91,1),(1,-1),(-1,1),(-1,-1)}. Apabila data ini digambarkan dalam ruang dua

dimensi (gambar 2.9) dapat dilihat data ini tidak dapat dipisah secara linier. Oleh

karena itu, digunakan fungsi transformasi berikut

Page 9: tugas ai

φ (x1 , x2 )=√ x12+x2

2>2→( 4−x2+|x1−x2|, 4−x1+|x1−x2|)

φ (x1 , x2 )=√ x12+x2

2≤2→( x1 , x2 ) ...................(3.11)

Data sesudah transformasi adalah {(2,2),(6,2),(6,6),(2,6)} untuk kelas negatif, dan

{(1,1),(1,-1),(-1,1),(-1,-1)} untuk kelas positif. Selanjutnya pencarian bidang pemisah

terbaik dilakukan pada data ini.

Gambar 3.5. Transformasi ke Feature Space

Dengan menggunakan transformasi xk→ φ ( xk ) , maka nilai w=∑

i=1

ns

αi y i φ( x i ) dan

fungsi hasil pembelajaran yang dihasilkan adalah

f ( xd )=∑i=1

ns

αi y i φ( x i )φ( xd)+b.............................................................(3.12)

Feature space dalam prakteknya biasanya memiliki dimensi yang lebih tinggi dari

vektor input (input space). Hal ini mengakibatkan komputasi pada feature space

mungkin sangat besar, karena ada kemungkinan feature space dapat memiliki jumlah

feature yang tak terhingga. Selain itu, sulit mengetahui fungsi transformasi yang

tepat. Untuk mengatasi masalah ini, pada SVM digunakan ‘kernel trick’. Dari

persamaan 2.11 dapat dilihat terdapat dot product φ (x i )φ( xd ) . Jika terdapat sebuah

fungsi kernel K sehingga K ( x i xd )=φ( x i)φ( xd ), maka fungsi transformasi φ (xk )

tidak perlu diketahui secara persis. Dengan demikian fungsi yang dihasilkan dari

pelatihan adalah

Page 10: tugas ai

f ( xd )=∑i=1

ns

αi y i K ( xi , xd )+b (xi= support vector)..............................(3.13)

Syarat sebuah fungsi untuk menjadi fungsi kernel adalah memenuhi teorema Mercer

yang menyatakan bahwa matriks kernel yang dihasilkan harus bersifat positive semi-

definite. Fungsi kernel yang umum digunakan adalah sebagai berikut:

a. Kernel linier

K ( x i x )=x iT x .................................................................................(3.14)

b. Polynomial kernel

K ( x i x )=(γ . xiT x+r )p , γ >0 ..............................................................(3.15)

c. Radial Basis Function (RBF)

K ( x i x )=exp (−γ|x i−x|2) , γ >0 .........................................................(3.16)

d. Sigmoid kernel

K ( x i x )= tanh (γxiT x+r )...................................................................(3.17)

Fungsi kernel yang direkomendasikan untuk diuji pertama klai adalah kernel RBF

karena memiliki performasi yang sama dengan kernel linier pada parameter tertentu,

memiliki perilaku seperti fungsi kernel sigmoid dengan parameter tertentu dan

rentang nilainya kecil.

4. METODOLOGI

Metodologi yang digunakan utuk memprediksi eisiensi motor brushless direct

current (BLDC) adalah metode LS-SVM dengan Radial Base Function (RBF)

Kernel. Kemudian melakukan analisa error atau kesalahan antara output jaringan

dengan output target, apabila error yang dihasilkan lebih kecil dari 5% maka jaringan

yang terbentuk dapat memprediksi output (efisiensi) dengan baik.

Page 11: tugas ai

Perintah Training

Jenis

Jaringan

Training

RBF Kernel trainlssvm({X,Y,type,gam,sig2,'RBF_kernel','preprocess'})

Perintah Simulasi/Validasi

Jenis Jaringan Simulasi/Validasi

RBF Kernelsimlssvm({input,output,type,gam,sig2

,'RBF_kernel','preprocess'},{alpha,b},input baru)

Selesai

Analisa MSE

Testing

Output Jaringan

Pola Jaringan

Pembuatan Prediksi dengan LS-SVM

(Training) Data Input dan Output

Mulai

Page 12: tugas ai

5. DATA

Data hasil percobaan

No RPM Tors Eff No RPM Tors Eff1 500 2.26 33 36 3000 2.26 852 500 4.52 36 37 3000 4.52 873 500 6.78 40 38 3000 6.78 88.54 500 9.04 46 39 3000 9.04 87.55 500 15.82 48 40 3000 15.82 876 500 18.1 50 41 3000 18.1 86.57 500 20.34 51 42 3000 20.34 868 1000 2.26 55 43 3500 2.26 869 1000 4.52 60 44 3500 4.52 88

10 100 6.78 68 45 3500 6.78 9011 100 9.04 70 46 3500 9.04 90.512 1000 15.82 71 47 3500 15.82 89.513 1000 18.1 70 48 3500 18.1 88.514 1000 20.34 70 49 3500 20.34 87.515 1500 2.26 68 50 4000 2.26 87.516 1500 4.52 76 51 4000 4.52 88.517 1500 6.78 83 52 4000 6.78 9118 1500 9.04 82 53 4000 9.04 9219 1500 15.82 82 54 4000 15.82 9020 1500 18.1 78 55 4000 18.1 88.521 1500 20.34 78 56 4000 20.34 8822 2000 2.26 77 57 4500 2.26 8823 2000 4.52 85.5 58 4500 4.52 9024 2000 6.78 86.5 59 4500 6.78 9225 2000 9.04 85.5 60 4500 9.04 92.526 2000 15.82 84.5 61 4500 15.82 9127 2000 18.1 85.3 62 4500 18.1 9028 2000 20.34 83 63 4500 20.34 89.529 2500 2.26 83 64 5000 2.26 89.530 2500 4.52 86 65 5000 4.52 90.531 2500 6.78 87.5 66 5000 6.78 9232 2500 9.04 87 67 5000 9.04 9333 2500 15.82 86.5 68 5000 15.82 92.534 2500 18.1 85 69 5000 18.1 9235 2500 20.34 85 70 5000 20.34 91

6. Verivikasi

Page 13: tugas ai

clc;

data = [...

500 2.26 33500 4.52 36500 6.78 40500 9.04 46500 13.56 48500 18.1 50500 20.34 511000 2.26 551000 4.52 601000 6.78 681000 9.04 701000 15.82 711000 18.1 701000 20.34 701500 2.26 681500 4.52 761500 6.78 831500 9.04 821500 13.56 821500 18.1 781500 20.34 782000 2.26 772000 4.52 85.52000 6.78 86.52000 9.04 85.52000 15.82 84.52000 18.1 85.32000 20.34 832500 2.26 832500 4.52 862500 6.78 87.52500 9.04 872500 15.82 86.52500 18.1 852500 20.34 853000 2.26 853000 4.52 873000 11.3 88.53000 13.56 87.53000 15.82 873000 18.1 86.53000 20.34 863500 2.26 863500 4.52 883500 6.78 903500 9.04 90.53500 15.82 89.5

3500 18.1 88.53500 20.34 87.54000 2.26 87.54000 4.52 88.54000 6.78 914000 9.04 924000 15.82 904000 18.1 88.54000 20.34 884500 2.26 884500 4.52 904500 6.78 924500 9.04 92.54500 15.82 914500 18.1 904500 20.34 89.55000 2.26 89.55000 4.52 90.55000 6.78 925000 9.04 935000 15.82 92.55000 18.1 925000 20.34 91];

data2 = [...

500 11.3 46500 15.82 481000 11.3 701000 13.56 711500 11.3 801500 15.82 802000 11.3 852000 13.56 85.52500 11.3 86.52500 13.56 87.53000 6.78 88.53000 9.04 893500 11.3 903500 13.56 894000 11.3 91.54000 13.56 914500 11.3 92.54500 13.56 925000 11.3 935000 13.56 93];

Program

Page 14: tugas ai

X=data(:,1:2);Y=data(:,3); gam = 5;sig2 = 0.4;type = 'function estimation';[alpha,b] = trainlssvm({X,Y,type,gam,sig2,'RBF_kernel','preprocess'}); Xt=data2(:,1:2);Ytt=data2(:,3);Yt = simlssvm({X,Y,type,gam,sig2,'RBF_kernel','preprocess'},{alpha,b},Xt);%figure; plotlssvm({X,Y,type,gam,sig2,'RBF_kernel','preprocess'},{alpha,b});hold on;hold off %error=((Ytt'-Yt')^2)^0.5Error = (((Ytt'-Yt')./Ytt'*100).^2).^0.5;Error'YttYtMSE = mean(Error)toc plot(Yt,'r-*'); title('perbandingan efisiensi');xlabel('jumlah data');ylabel('efisiensi');hold on;plot(Ytt,'b-o'); hold off;gridlegend('Output','Nilai Target')

Validasi

Output LSSVM Output Error

151.759

9 46 12.5215

253.504

5 48 11.4677

367.451

1 70 3.6412

467.478

9 71 4.9593

580.984

6 80 1.2308

Page 15: tugas ai

680.193

9 80 0.2423

785.930

8 85 1.095

885.400

6 85.5 0.1162

986.418

5 86.5 0.0942

1086.222

4 87.5 1.4601

1187.826

4 88.5 0.7611

1287.867

5 89 1.2725

1389.752

2 90 0.2753

1489.144

7 89 0.1626

1591.332

5 91.5 0.1831

1690.494

7 91 0.555217 91.962 92.5 0.5816

1891.273

4 92 0.7898

1990.989

9 93 2.1614

2090.706

5 93 2.46622.30185

5

Plot grafik prediksi efisiensi motor brushless direct current (BLDC)

Page 16: tugas ai

7. Kesimpulan

Dalam prediksi efisiensi motor brushless direct current (BLDC) motode LS-SVM RBF dapat menghasilkan MSE dibawah 5% yaitu 2.3% yang artinya hasil yang didapatkan baik dan dapt dijadikan referensi.