Dalam AG Representasi genetik atau lebih sering disebut dengan pengkodean menurut beberapa sumber, terdapat 3 macam representasi yaitu;
1. Biner, representasi secara biner nilai-nilai gen hanya akan bernilai 0 atau 1.
Function Populasi(UkPop As Integer, JumGen As Integer) As Variant()
Dim Brs, Kol As Integer
Dim BilRnd As Single
ReDim Populasi(UkPop, JumGen)
For Brs = 1 To UkPop
For Kol = 1 To JumGen
Randomize
Populasi(Brs, Kol) = Round(Rnd(), 0)
Next Kol
Next Brs
End Function
2. Float, representasi menggunakan bilangan riil (bilangan pecahan) yang nilai-nilai gennya berada pada rentang nilai 0 dan 1 dengan pembulatan 6 digit di belakang koma.
Function Populasi(UkPop As Integer, JumGen As Integer) As Variant()
Dim Brs, Kol As Integer
Dim BilRnd As Single
ReDim Populasi(UkPop, JumGen)
For Brs = 1 To UkPop
For Kol = 1 To JumGen
Randomize
Populasi(Brs, Kol) = Round(Rnd(), 6)
Next Kol
Next Brs
End Function
2. Integer, representasi menggunakan bilangan bulat yang nilai-nilai gennya ditentukan dalam suatu rentang tertentu, misalnya dalam rentang 0 s/d 9.
Function Populasi(UkPop As Integer, JumGen As Integer) As Variant()
Dim Brs, Kol As Integer
Dim BilRnd As Single
ReDim Populasi(UkPop, JumGen)
For Brs = 1 To UkPop
For Kol = 1 To JumGen
Randomize
Populasi(Brs, Kol) = int((Rnd()*9)
Next Kol
Next Brs
End Function
- Biner, menggunakan pengkodean secara biner 0 atau 1,
- Float, pengkodean bilangan riil positif biasanya dalam rentang [0,1),
- Integer, pengkodean menggunakan bilangan bulat.
1. Biner, representasi secara biner nilai-nilai gen hanya akan bernilai 0 atau 1.
Function Populasi(UkPop As Integer, JumGen As Integer) As Variant()
Dim Brs, Kol As Integer
Dim BilRnd As Single
ReDim Populasi(UkPop, JumGen)
For Brs = 1 To UkPop
For Kol = 1 To JumGen
Randomize
Populasi(Brs, Kol) = Round(Rnd(), 0)
Next Kol
Next Brs
End Function
2. Float, representasi menggunakan bilangan riil (bilangan pecahan) yang nilai-nilai gennya berada pada rentang nilai 0 dan 1 dengan pembulatan 6 digit di belakang koma.
Function Populasi(UkPop As Integer, JumGen As Integer) As Variant()
Dim Brs, Kol As Integer
Dim BilRnd As Single
ReDim Populasi(UkPop, JumGen)
For Brs = 1 To UkPop
For Kol = 1 To JumGen
Randomize
Populasi(Brs, Kol) = Round(Rnd(), 6)
Next Kol
Next Brs
End Function
2. Integer, representasi menggunakan bilangan bulat yang nilai-nilai gennya ditentukan dalam suatu rentang tertentu, misalnya dalam rentang 0 s/d 9.
Function Populasi(UkPop As Integer, JumGen As Integer) As Variant()
Dim Brs, Kol As Integer
Dim BilRnd As Single
ReDim Populasi(UkPop, JumGen)
For Brs = 1 To UkPop
For Kol = 1 To JumGen
Randomize
Populasi(Brs, Kol) = int((Rnd()*9)
Next Kol
Next Brs
End Function
Bos, boleh minta contoh aplikasi AG menggunakan VB6? mohon pencerahannya
BalasHapusBapak Eko saya sangat terbantu dengan blog ini, saya lagi belajar buat program AG dengan VB6, sy tunggu kelanjutannya pak sperti :
BalasHapusfungsi fitness,roullet whell,tournament slection,mutasi, crossover.
trimakasih
pak, klo boleh sya juga minta contoh aplikasi yg JST menggunakan VB??
BalasHapusMohon jawabnnya, pak..
Terima kasih..