Преглед изворни кода

GA selection parameters and a fitness function

George C. Privon пре 6 година
родитељ
комит
f1274d310a
1 измењених фајлова са 35 додато и 0 уклоњено
  1. 35 0
      chap1/comp1/simpleGA.rkt

+ 35 - 0
chap1/comp1/simpleGA.rkt

@@ -0,0 +1,35 @@
+#lang typed/racket
+
+;; A simple genetic algorithm
+;; Computer Exercise #1 from Intro to GA by Mitchell
+;;
+;; Uses:
+;; - fitness-proportionate selection
+;; - routlette-wheel sampling
+
+(require math)
+
+; population size and individual chromosome length
+(define popsize 100)
+(define chromlen 100)
+; single-point crossover rate
+(define p-cross 0.7)
+; bitwise mutation rate
+(define p-mutate 0.001)
+
+
+; Fitness assessment is the number of 1's in the population member
+(: fitness (-> (Listof Integer) Real))
+(define (fitness member)
+  (/ (sum member)
+     (length member)))
+
+
+; mutate an individual
+(: mutate (-> (Listof Integer) (Listof Integer)))
+(define (mutate member)
+  )
+
+(: genpop (-> (Listof Integer)))
+(define genpop
+  )