Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (define-library <genetic-algorithm>
- (import (scheme base) (only (srfi 27) random-real))
- (export climb fitness)
- (begin (define (fitness hill) (/ (apply + hill) (length hill)))
- (define (mutate parent percentage)
- (map (lambda (x) (+ x (modulo (random-real) (* x percentage))))
- parent))
- (define (climb fitness percentage parent)
- (let ([fitness-parent (fitness parent)])
- (if (> fitness-parent 0.9) parent
- (climb fitness percentage
- (let ([child (mutate parent percentage)])
- (if (> fitness-parent (fitness child)) parent child))))))))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement