;; AI Final Project ;; Module: Genetics-Individual ;; CSC 466 - Graci ;; Jacob Peck - 20110330 (defclass individual () ( (data :accessor individual-data :initarg :data :initform NIL) ; data is a slot containing whatever data should represent an "individual" (name :accessor individual-name :initarg :name :initform 0) ; a (ideally unique) identifier for the individual, integer by default (fitness :accessor individual-fitness :initarg :fitness :initform 0) ; the individual's fitness ) ) (defmethod make-individual ((data t) (name integer)) (make-instance 'individual :data data :name name :fitness 0) ) (defmethod visualize-individual ((ind individual)) (format t "Individual ~A:~%~A (fitness: ~A)~%" (individual-name ind) (individual-data ind) (individual-fitness ind)) NIL ) (defmethod copy-individual ((ind individual) &aux newind) (setf newind (make-individual (individual-data ind) 0)) (setf (individual-fitness newind) (individual-fitness ind)) newind )