• Tidak ada hasil yang ditemukan

LAMPIRAN C : SOURCE CODE PROGRAM

PROSES PENGUJIAN

Dim X(100, 2), Xs(100, 3), Xs1(100, 3), alfa, palfa, bobot(3), jb1, jb2, jb3, maxi, mini, temp1, temp2, temp3 As Double Dim Xs2(100, 3), Xs3(100, 3), Xs4(100, 3), Xs5(100, 3) As Double

Dim target1(100), target2(100), target3(100), target4(100), target5(100) As Double Dim v1(3, 4), v_11(3, 4), v01(4), w_11(4), w1(4), w01 As Variant

Dim v2(3, 4), v_12(3, 4), v02(4), w_12(4), w2(4), w02 As Variant Dim v3(3, 4), v_13(3, 4), v03(4), w_13(4), w3(4), w03 As Variant Dim v4(3, 4), v_14(3, 4), v04(4), w_14(4), w4(4), w04 As Variant Dim v5(3, 4), v_15(3, 4), v05(4), w_15(4), w5(4), w05 As Variant Dim i, n, j, maxepoh, k As Integer

Dim d_input As String Dim strCode As String

Dim ch(1 To 200, 1 To 5) As Variant

Dim v(3, 4), v_1(3, 4), v0(4), w_1(4), w(4), w0, kuadrat_error_rerata As Variant Dim Z_in(4), Z(4), Y_in, Y_akt, Y_h(100), per_error, kuadrat_error, delta_error As Variant Dim delta_W(4), delta_w0, alfa_bpnn, delta_Inp(4), Delta(4), delta_v0(4) As Variant Dim Target(100), delta_v(2, 4) As Variant

Private Sub Command1_Click() Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "Random input" & vbCrLf & vbCrLf For i = 1 To Val(Text2.Text)

X(i, 1) = X(i, 1) / 100 X(i, 1) = Round(X(i, 1), 3)

Text1.Text = Text1.Text & "x" & i & "= " & X(i, 1) & vbCrLf Next i

Text1.Text = Text1.Text & vbCrLf & vbCrLf alfa = 0.6

bobot(3) = bobot(3) + alfa * (X(i, 1) - bobot(3))

Text1.Text = Text1.Text & vbCrLf & vbCrLf Loop Until n = maxepoh

bobot(1) = bobot(1) * 100 bobot(2) = bobot(2) * 100 bobot(3) = bobot(3) * 100 bobot(1) = Round(bobot(1), 0) bobot(2) = Round(bobot(2), 0) bobot(3) = Round(bobot(3), 0)

Text1.Text = Text1.Text & "Hasil Bobot terakhir adalah" & vbCrLf Text1.Text = Text1.Text & "w1= " & bobot(1) & " w2= " & bobot(2) Text1.Text = Text1.Text & " w3= " & bobot(3) & vbCrLf

maxi = X(1, 1)

If (bobot(1) <> temp1) And (bobot(1) <> temp3) Then temp2 = bobot(1)

End If

If (bobot(2) <> temp1) And (bobot(2) <> temp3) Then temp2 = bobot(2)

End If

If (bobot(3) <> temp1) And (bobot(3) <> temp3) Then temp2 = bobot(3)

End If Text1.Text = ""

Text1.Text = Text1.Text & " Nilai Hasil Kohonen" & vbCrLf

Text1.Text = Text1.Text & " maxi= " & maxi & vbCrLf Text1.Text = Text1.Text & " temp1= " & temp1 & vbCrLf Text1.Text = Text1.Text & " temp2= " & temp2 & vbCrLf Text1.Text = Text1.Text & " temp3= " & temp3 & vbCrLf Text1.Text = Text1.Text & " mini= " & mini & vbCrLf Dim a, b, c, op As Integer

For i = 1 To 200

Next i

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "input 1" & vbCrLf & vbCrLf set_bobot

Text1.Text = Text1.Text & "Target" & vbCrLf & vbCrLf

Dim hitn, indhit As Integer

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "input 2" & vbCrLf & vbCrLf set_bobot

Text1.Text = Text1.Text & "Target" & vbCrLf & vbCrLf hitn = 0

w02 = w0

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "input 3" & vbCrLf & vbCrLf set_bobot

Text1.Text = Text1.Text & "Target" & vbCrLf & vbCrLf hitn = 0

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "input 4" & vbCrLf & vbCrLf set_bobot

Text1.Text = Text1.Text & "Target" & vbCrLf & vbCrLf hitn = 0

Next j

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "input 5" & vbCrLf & vbCrLf set_bobot

Text1.Text = Text1.Text & "Target" & vbCrLf & vbCrLf hitn = 0

target_error = 0.001 'data bagus alfa=0.0001 max_epoh = Val(Text3.Text)

End Sub

Private Sub Command2_Click() Text1.Text = "Bilangan Random" & vbCrLf For i = 1 To Val(Text2.Text)

shorting End Sub Sub shorting() Dim temp As Double For i = 1 To Val(Text2.Text)

Text1.Text = Text1.Text & vbCrLf & vbCrLf Text1.Text = Text1.Text & "Hasil Sorting" & vbCrLf For i = 1 To Val(Text2.Text)

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "Input Hasil Normalisasi" & vbCrLf & vbCrLf For i = 1 To Text2.Text

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "Bobot Input Ke Hidden" & vbCrLf & vbCrLf For i = 1 To 3

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "Bias Input Ke Hidden" & vbCrLf & vbCrLf For i = 1 To 4

v0(i) = Round(Rnd(10), 4)

Text1.Text = Text1.Text & v0(i) & " "

Next i

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "Bobot Hidden Ke Output" & vbCrLf & vbCrLf For i = 1 To 4

'w_1(i) = 0

w(i) = Round(Rnd(10), 4)

Text1.Text = Text1.Text & w(i) & " "

Next i

Text1.Text = Text1.Text & vbCrLf & vbCrLf 'w0 = 0.467

w0 = Round(Rnd(10), 4)

Text1.Text = Text1.Text & "Bias Hidden Ke Output = " & w0 & vbCrLf & vbCrLf End Sub

strCode = strCode & bobot(1) & "{ENTER}"

strCode = strCode & bobot(2) & "{ENTER}"

strCode = strCode & bobot(3) & "{ENTER 2}"

Shell "Notepad.exe", vbNormalFocus SendKeys strCode, True

End Sub Sub simpan1()

strCode = strCode & "Bobot Input Ke Hidden Hasil Trainning {ENTER}"

For j = 1 To 4

strCode = strCode & "Bias Input Ke Hidden Hasil Trainning {ENTER}"

For i = 1 To 4

strCode = strCode & v01(i) & "{ENTER}"

Next i

strCode = strCode & "Bobot Hidden Ke Output Hasil Trainning {ENTER}"

For i = 1 To 4

strCode = strCode & w1(i) & "{ENTER}"

Next i

strCode = strCode & "Bias Hidden Ke Output Hasil Trainning {ENTER}"

strCode = strCode & w01 & "{ENTER}"

End Sub Sub simpan2()

strCode = strCode & "Bobot Input Ke Hidden Hasil Trainning {ENTER}"

For j = 1 To 4

strCode = strCode & v2(1, j) & "{ENTER}"

Next j

strCode = strCode & "Bias Input Ke Hidden Hasil Trainning {ENTER}"

For i = 1 To 4

strCode = strCode & v02(i) & "{ENTER}"

Next i

strCode = strCode & "Bobot Hidden Ke Output Hasil Trainning {ENTER}"

For i = 1 To 4

strCode = strCode & w2(i) & "{ENTER}"

Next i

strCode = strCode & "Bias Hidden Ke Output Hasil Trainning {ENTER}"

strCode = strCode & w02 & "{ENTER}"

End Sub Sub simpan3()

strCode = strCode & "Bobot Input Ke Hidden Hasil Trainning {ENTER}"

For j = 1 To 4

strCode = strCode & "Bias Input Ke Hidden Hasil Trainning {ENTER}"

For i = 1 To 4

strCode = strCode & v03(i) & "{ENTER}"

Next i

strCode = strCode & "Bobot Hidden Ke Output Hasil Trainning {ENTER}"

For i = 1 To 4

strCode = strCode & w3(i) & "{ENTER}"

Next i

strCode = strCode & "Bias Hidden Ke Output Hasil Trainning {ENTER}"

strCode = strCode & w03 & "{ENTER}"

End Sub Sub simpan4()

strCode = strCode & "Bobot Input Ke Hidden Hasil Trainning {ENTER}"

For j = 1 To 4

strCode = strCode & "Bias Input Ke Hidden Hasil Trainning {ENTER}"

For i = 1 To 4

strCode = strCode & v04(i) & "{ENTER}"

Next i

strCode = strCode & "Bobot Hidden Ke Output Hasil Trainning {ENTER}"

For i = 1 To 4

strCode = strCode & w4(i) & "{ENTER}"

Next i

strCode = strCode & "Bias Hidden Ke Output Hasil Trainning {ENTER}"

strCode = strCode & w04 & "{ENTER}"

End Sub

Sub simpan5()

strCode = strCode & "Bobot Input Ke Hidden Hasil Trainning {ENTER}"

For j = 1 To 4

strCode = strCode & "Bias Input Ke Hidden Hasil Trainning {ENTER}"

For i = 1 To 4

strCode = strCode & v05(i) & "{ENTER}"

Next i

strCode = strCode & "Bobot Hidden Ke Output Hasil Trainning {ENTER}"

For i = 1 To 4

strCode = strCode & w5(i) & "{ENTER}"

Next i

strCode = strCode & "Bias Hidden Ke Output Hasil Trainning {ENTER}"

strCode = strCode & w05 & "{ENTER}"

Dim hitn, indhit As Integer hitn = 0

indhit = 0 For i = 1 To 200 If indhit = 0 Then hitn = hitn + 1

ch(i, 1) = Y_h(hitn)

Dim hitn, indhit As Integer hitn = 0

End If

Dim hitn, indhit As Integer hitn = 0

For i = 1 To 3

Dim hitn, indhit As Integer hitn = 0

Next i

Dim hitn, indhit As Integer hitn = 0

w_15(i) = w_1(i) Dim epoh As Variant epoh = 1

Do

kuadrat_error_rerata = 0

'Text1.Text = Text1.Text & "Epoh" & epoh & vbCrLf epoh = epoh + 1

For j = 1 To Val(Text2.Text) iterasi

Next j

kuadrat_error_rerata = kuadrat_error_rerata / 100 kuadrat_error_rerata = Round(kuadrat_error_rerata, 4)

'Text1.Text = Text1.Text & "kuadrat error rata2= " & kuadrat_error_rerata & vbCrLf If kuadrat_error_rerata < target_error Then

GoTo selesai End If

'Text1.Text = Text1.Text & vbCrLf Loop Until epoh = Val(Text3.Text) selesai:

Text1.Text = Text1.Text & "Epoh ke = " & epoh & vbCrLf

Text1.Text = Text1.Text & "kuadrat error= " & kuadrat_error_rerata & vbCrLf For i = 1 To 100

Text1.Text = Text1.Text & "y" & i & "=" & Y_h(i) & vbCrLf Next i

Text1.Text = Text1.Text & vbCrLf Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "Bobot Input Ke Hidden Hasil Trainning" & vbCrLf & vbCrLf For i = 1 To 3

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "Bias Input Ke Hidden Hasil Trainning" & vbCrLf & vbCrLf For i = 1 To 4

Text1.Text = Text1.Text & v0(i) & " "

Next i

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "Bobot Hidden Ke Output Hasil Trainning" & vbCrLf & vbCrLf For i = 1 To 4

Text1.Text = Text1.Text & w(i) & " "

Next i

Text1.Text = Text1.Text & vbCrLf & vbCrLf

Text1.Text = Text1.Text & "Bias Hidden Ke Output Hasil Trainning = " & w0 & vbCrLf & vbCrLf End Sub

Sub iterasi()

Dim Sigma_Inp, Sigma_W As Variant For i = 1 To 4

Sigma_Inp = 0

For k = 1 To 3

'Text1.Text = Text1.Text & per_error & vbCrLf kuadrat_error = per_error ^ 2

kuadrat_error = Round(kuadrat_error, 4)

kuadrat_error_rerata = kuadrat_error_rerata + kuadrat_error delta_error = per_error * Y_akt * (1 - Y_akt)

delta_error = Round(delta_error, 4)

'Text1.Text = Text1.Text & delta_error & vbCrLf

v(i, k) = Round(v(i, k), 5)

Dim tempsem, tempsem1 As Double tempsem = ch(1, 1)

Dim tempsem, tempsem1 As Double tempsem = ch(1, 2)

Else

Dim tempsem, tempsem1 As Double tempsem = ch(1, 3)

Dim tempsem, tempsem1 As Double tempsem = ch(1, 4)

Dim tempsem, tempsem1 As Double tempsem = ch(1, 5)

Dokumen terkait