NEURON HEBB
Disusun Oleh :
Nama
: Kurniawan Setiadi
NIM
Kelas
: 10111465
: AI 12
using
using
using
using
using
using
using
using
System;
System.Collections.Generic;
System.ComponentModel;
System.Data;
System.Drawing;
System.Linq;
System.Text;
System.Windows.Forms;
namespace NeuronHebb
{
public partial class Form1 : Form
{
//inisialisasi
int[] p1 = new int[10];
int[] fn = new int[10];
int[] n = new int[10];
int[] p2 = new int[10];
int[] satu = new int[10];
int[] t = new int[10];
int[] delta_w1 = new int[10];
int[] delta_w2 = new int[10];
int[] delta_bias = new int[10];
int[] w1 = new int[10];
int[] w2 = new int[10];
int[] b = new int[10];
int i;
int nilai_w1, nilai_w2, nilai_b;
//end inisialisasi
public Form1()
{
InitializeComponent();
}
public void Neouron_hebb()
{
//Header Tabel Masukan target
DataTable tabel = new DataTable();
//buat kolomnya
tabel.Columns.Add("P1");
tabel.Columns.Add("P2");
tabel.Columns.Add("1");
tabel.Columns.Add("Target");
//End Tabel
//Header Tabel Machine Learning
DataTable tb_pelatihan = new DataTable();
//buat kolomnya
tb_pelatihan.Columns.Add("P1");
tb_pelatihan.Columns.Add("P2");
tb_pelatihan.Columns.Add("1");
tb_pelatihan.Columns.Add("Target");
tb_pelatihan.Columns.Add("Delta W1");
tb_pelatihan.Columns.Add("Delta W2");
tb_pelatihan.Columns.Add("Delta B");
tb_pelatihan.Columns.Add(" W1");
tb_pelatihan.Columns.Add(" W2");
tb_pelatihan.Columns.Add(" B");
//End Tabel
// End Inisialisasi tabel Machine Learning
//Header Tabel Hasil Akhir
DataTable tb_hasil_akhir = new DataTable();
//buat kolomnya
tb_hasil_akhir.Columns.Add("P1");
tb_hasil_akhir.Columns.Add("P2");
tb_hasil_akhir.Columns.Add("n = p1 w1 +p2 w2+ b ");
tb_hasil_akhir.Columns.Add("a = f(n)");
//End Tabel
// End Inisialisasi tabel Hasil akhir
//inisialisai p1
p1[1] = int.Parse(p1_1.Text);
p1[2] = int.Parse(p1_2.Text); ;
p1[3] = int.Parse(p1_3.Text);
p1[4] = int.Parse(p1_4.Text);
//end inisialisasi p1
//inisialisai p2
p2[1] = int.Parse(p2_1.Text);
p2[2] = int.Parse(p2_2.Text);
p2[3] = int.Parse(p2_3.Text);
p2[4] = int.Parse(p2_4.Text);
//end inisialisasi p2
//inisialisasi 1
satu[1] = 1;
satu[2] = 1;
satu[3] = 1;
satu[4] = 1;
//end inisialisasi 1
//inisialisasi target
t[1] = int.Parse(t_1.Text);
t[2] = int.Parse(t_2.Text);
t[3] = int.Parse(t_3.Text);
t[4] = int.Parse(t_4.Text);
//end inisialisasi target
//for untuk menampilkan nilai masukan
for (i = 1; i <= 4; i++)
{
//Menampilkan Tabel Masukan target
DataRow baris;
baris = tabel.NewRow();
tabel.Rows.Add(baris);
baris[0]
baris[1]
baris[2]
baris[3]
=
=
=
=
p1[i];
p2[i];
satu[i];
t[i];
//End 2
//3. Bobot Baru
w1[i] = w1[i - 1] + delta_w1[i];
w2[i] = w2[i - 1] + delta_w2[i];
b[i] = b[i - 1] + delta_bias[i];
//End 3
=
=
=
=
=
=
=
=
=
=
p1[i];
p2[i];
satu[i];
t[i];
delta_w1[i];
delta_w2[i];
delta_bias[i];
w1[i];
w2[i];
b[i];
}
//4.Nilai w1 , w2 dan b
nilai_w1 = w1[4];
nilai_w2 = w2[4];
nilai_b = b[4];
nilai_w_1.Text = Convert.ToString(nilai_w1);
nilai_w_2.Text = Convert.ToString(nilai_w2);
nilai_bias.Text = Convert.ToString(nilai_b);
int temp_w1 = int.Parse(nilai_w_1.Text);
//End 4
}
else
{
lbl_kesimpulan.Text = "Keluaran Tidak Sama Dengan target Jaringan Hebb tidak
dapat mengerti pola yang dimaksud ";
}
//end 7
br_hasil_akhir = tb_hasil_akhir.NewRow();
tb_hasil_akhir.Rows.Add(br_hasil_akhir);
br_hasil_akhir[0] = p1[i];
br_hasil_akhir[1] = p2[i];
br_hasil_akhir[2] = n[i];
br_hasil_akhir[3] = fn[i];
//--lanjutkan pengisian baris -//memasukkan tabel kedalam datasgrid
this.dgv_hasil_akhir.DataSource = tb_hasil_akhir;
//mengatur judul header dan alternate back color
this.dgv_hasil_akhir.ColumnHeadersDefaultCellStyle.Alignment =
DataGridViewContentAlignment.MiddleCenter;
this.dgv_hasil_akhir.AlternatingRowsDefaultCellStyle.BackColor = Color.LightGray;
//mengatur lebar dan perataan text masing2 kolom
this.dgv_hasil_akhir.Columns[0].Width = 100;
this.dgv_hasil_akhir.Columns[0].DefaultCellStyle.Alignment =
DataGridViewContentAlignment.MiddleRight;
this.dgv_hasil_akhir.Columns[1].Width = 100;
this.dgv_hasil_akhir.Columns[1].DefaultCellStyle.Alignment =
DataGridViewContentAlignment.MiddleCenter;
this.dgv_hasil_akhir.Columns[2].Width = 150;
this.dgv_hasil_akhir.Columns[2].DefaultCellStyle.Alignment =
DataGridViewContentAlignment.MiddleLeft;
//Menampilkan Tabel Masukan target
Screenshoot Program
Gerbang Logika AND
Input Biner Output Biner
Gerbang Logika OR