PROGRAM UNTUK MENGENALI POLA SEGITIGA, LINGKARAN, DAN PERSEGI
Adapun software yang digunakan adalah mathlab dengan sistem jaringan saraf tiruan, adapun layer-layer yang digunakan adalah 2 input layer, 2 hidden layer, dan 1 output lalyer.
Input yang digunakan pada program ini ada 2 input yaitu input pertama nilai sudut dari pola yang ingin diketahui dan input kedua sisi dari pola tersebut. Kemudian untuk outputnya hanya terdapat 1 output pada program ini yaitu keluaran yang berupa pola yang tercapai dari input yang diberikan yaitu segitiga, lingkaran atau persegi. Pada program ini tidak ada iterasi yang dilakukan karena kami kelompok enam bulum begitu sangat paham dengan tugas ini.
Didam program ini mempunyai nilai awal yang konstan yaitu bias (b=1), nilai bobot (w11=3, w12=4, w21=5, w22=3, v11=3, dan v12=4), input 1 yaitu sudut (20,30, 40, 50, 60, 70, 80, 90, 100, 120, 130), input sisi (1, 3, 4), dan fungsi yang digunakan adalah fungsi linier.
Dibawah ini adalah listing program dari mathlab:
clear all;
clc;
disp('-------------------------------');
disp('Program pengenalan pola');
disp('-------------------------------');
%Menentukan nilai bobot w dan v
w11=3;
w12=4;
w21=5;
w22=3;
v11=3;
v12=4;
x1 = input('masukkan nilai sudut = ');
disp('pilih');
disp('1. Dengan 1 sisi');
disp('2. Dengan 3 sisi');
disp('3. Dengan 4 sisi');
pilih =input ('pilihan anda (1-3) nomor ->');
b1 = 1;
b2 = 1;
b3 = 1;
switch pilih
case 1
x2 =1;
%menentukan nilai hidden layer
n1=x1*w11+x2*w12-b1;
H1=n1;
n2=x1*w21+x2*w22-b2;
H2=n2;
%-----------------H1-H2-------------------
q=H1*v11+x2*v12-b3;
Q=q;
disp(['nilai pola =' num2str(Q)]);
disp('POLA LINGKARAN');
case 2
x2 =3;
%menentukan nilai hidden layer
n1=x1*w11+x2*w12-b1;
H1=n1;
n2=x1*w21+x2*w22-b2;
H2=n2;
%-----------------H1-H2-------------------
q=H1*v11+x2*v12-b3;
Q=q;
disp(['nilai pola =' num2str(Q)]);
disp('POLA SEGITIGA');
case 3
x2 =4;
%menentukan nilai hidden layer
n1=x1*w11+x2*w12-b1;
H1=n1;
n2=x1*w21+x2*w22-b2;
H2=n2;
%-----------------H1-H2-------------------
q=H1*v11+x2*v12-b3;
Q=q;
disp(['nilai pola =' num2str(Q)]);
disp('POLA PERSEGI');
end;
HASIL PROGRAM
1. Hasil untuk pola lingkaran
2. Hasil untuk pola segitiga
3. Hasil untuk pola persegi
KESIMPULAN
Dari hasil pemograman untuk mengenali pola didapat kesimpulan sebagai berikut:
1. variabel yang digunakan pada program ini sangat sederhana dan sedikit sehingga untuk sudu-sudut yang lebih banyak program ini belum mampu membaca pola yang didapat.
2. tidak adanya iterasi yang dilakukan pada program ini sehingga tidak ada proses pembelajaran yang dilakukan.
3. program ini tidak bisa menampilkan bentuk gambaran pola yang didapatkan, seberapa besar polanya, outputnya hanya menampilkan sebuah informasi pola berbentuk huruf
4. untuk mendapatkan jenis pola yang tampilannya langsung bentuk dari pola tersebut maka hendaklah menambahkan jenis-jenis variabel yang lebih banyak dan harus adanya proses pembelajaran.
Adapun software yang digunakan adalah mathlab dengan sistem jaringan saraf tiruan, adapun layer-layer yang digunakan adalah 2 input layer, 2 hidden layer, dan 1 output lalyer.
Input yang digunakan pada program ini ada 2 input yaitu input pertama nilai sudut dari pola yang ingin diketahui dan input kedua sisi dari pola tersebut. Kemudian untuk outputnya hanya terdapat 1 output pada program ini yaitu keluaran yang berupa pola yang tercapai dari input yang diberikan yaitu segitiga, lingkaran atau persegi. Pada program ini tidak ada iterasi yang dilakukan karena kami kelompok enam bulum begitu sangat paham dengan tugas ini.
Didam program ini mempunyai nilai awal yang konstan yaitu bias (b=1), nilai bobot (w11=3, w12=4, w21=5, w22=3, v11=3, dan v12=4), input 1 yaitu sudut (20,30, 40, 50, 60, 70, 80, 90, 100, 120, 130), input sisi (1, 3, 4), dan fungsi yang digunakan adalah fungsi linier.
Dibawah ini adalah listing program dari mathlab:
clear all;
clc;
disp('-------------------------------');
disp('Program pengenalan pola');
disp('-------------------------------');
%Menentukan nilai bobot w dan v
w11=3;
w12=4;
w21=5;
w22=3;
v11=3;
v12=4;
x1 = input('masukkan nilai sudut = ');
disp('pilih');
disp('1. Dengan 1 sisi');
disp('2. Dengan 3 sisi');
disp('3. Dengan 4 sisi');
pilih =input ('pilihan anda (1-3) nomor ->');
b1 = 1;
b2 = 1;
b3 = 1;
switch pilih
case 1
x2 =1;
%menentukan nilai hidden layer
n1=x1*w11+x2*w12-b1;
H1=n1;
n2=x1*w21+x2*w22-b2;
H2=n2;
%-----------------H1-H2-------------------
q=H1*v11+x2*v12-b3;
Q=q;
disp(['nilai pola =' num2str(Q)]);
disp('POLA LINGKARAN');
case 2
x2 =3;
%menentukan nilai hidden layer
n1=x1*w11+x2*w12-b1;
H1=n1;
n2=x1*w21+x2*w22-b2;
H2=n2;
%-----------------H1-H2-------------------
q=H1*v11+x2*v12-b3;
Q=q;
disp(['nilai pola =' num2str(Q)]);
disp('POLA SEGITIGA');
case 3
x2 =4;
%menentukan nilai hidden layer
n1=x1*w11+x2*w12-b1;
H1=n1;
n2=x1*w21+x2*w22-b2;
H2=n2;
%-----------------H1-H2-------------------
q=H1*v11+x2*v12-b3;
Q=q;
disp(['nilai pola =' num2str(Q)]);
disp('POLA PERSEGI');
end;
HASIL PROGRAM
1. Hasil untuk pola lingkaran
2. Hasil untuk pola segitiga
3. Hasil untuk pola persegi
KESIMPULAN
Dari hasil pemograman untuk mengenali pola didapat kesimpulan sebagai berikut:
1. variabel yang digunakan pada program ini sangat sederhana dan sedikit sehingga untuk sudu-sudut yang lebih banyak program ini belum mampu membaca pola yang didapat.
2. tidak adanya iterasi yang dilakukan pada program ini sehingga tidak ada proses pembelajaran yang dilakukan.
3. program ini tidak bisa menampilkan bentuk gambaran pola yang didapatkan, seberapa besar polanya, outputnya hanya menampilkan sebuah informasi pola berbentuk huruf
4. untuk mendapatkan jenis pola yang tampilannya langsung bentuk dari pola tersebut maka hendaklah menambahkan jenis-jenis variabel yang lebih banyak dan harus adanya proses pembelajaran.