logging indices now

This commit is contained in:
Ryan Boldi 2022-06-05 10:17:23 -04:00
parent b591403fe8
commit f39d5e76cd
2 changed files with 8 additions and 8 deletions

View File

@ -49,7 +49,6 @@
(fn [_] {:plushy (genome/make-random-plushy instructions max-initial-plushy-size)}) (fn [_] {:plushy (genome/make-random-plushy instructions max-initial-plushy-size)})
(range population-size)) (range population-size))
indexed-training-data (downsample/assign-indices-to-data (downsample/initialize-case-distances argmap))] indexed-training-data (downsample/assign-indices-to-data (downsample/initialize-case-distances argmap))]
(prn {:ind-training-data (first indexed-training-data)})
(let [training-data (if (= (:parent-selection argmap) :ds-lexicase) (let [training-data (if (= (:parent-selection argmap) :ds-lexicase)
(case (:ds-function argmap) (case (:ds-function argmap)
:case-avg (downsample/select-downsample-avg indexed-training-data argmap) :case-avg (downsample/select-downsample-avg indexed-training-data argmap)
@ -69,9 +68,10 @@
population)) population))
best-individual (first ds-evaluated-pop) best-individual (first ds-evaluated-pop)
best-individual-passes-ds (and (= (:parent-selection argmap) :ds-lexicase) (<= (:total-error best-individual) solution-error-threshold))] best-individual-passes-ds (and (= (:parent-selection argmap) :ds-lexicase) (<= (:total-error best-individual) solution-error-threshold))]
(if (sequential? (:input1 (first training-data))) (prn {:ds-indices-list (map #(:index %) training-data)})
(prn {:ds-inputs (map #(first (:input1 %)) training-data)}) ;(if (sequential? (:input1 (first training-data)))
(prn {:ds-inputs (map #(:input1 %) training-data)})) ;(prn {:ds-inputs (map #(first (:input1 %)) training-data)})
;(prn {:ds-inputs (map #(:input1 %) training-data)}))
(if (:custom-report argmap) (if (:custom-report argmap)
((:custom-report argmap) ds-evaluated-pop generation argmap) ((:custom-report argmap) ds-evaluated-pop generation argmap)
(report ds-evaluated-pop generation argmap)) (report ds-evaluated-pop generation argmap))
@ -97,10 +97,10 @@
(let [reindexed-pop (hyperselection/reindex-pop ds-evaluated-pop)] (let [reindexed-pop (hyperselection/reindex-pop ds-evaluated-pop)]
(if (:elitism argmap) (if (:elitism argmap)
(hyperselection/log-hyperselection-and-ret (conj (repeatedly (dec population-size) (hyperselection/log-hyperselection-and-ret (conj (repeatedly (dec population-size)
#(variation/new-individual reindexed-pop argmap)) #(variation/new-individual reindexed-pop argmap))
(first reindexed-pop))) (first reindexed-pop)))
(hyperselection/log-hyperselection-and-ret (repeatedly population-size ;need to count occurance of each parent, and reset IDs (hyperselection/log-hyperselection-and-ret (repeatedly population-size ;need to count occurance of each parent, and reset IDs
#(variation/new-individual reindexed-pop argmap))))) #(variation/new-individual reindexed-pop argmap)))))
(if (= (:parent-selection argmap) :ds-lexicase) (if (= (:parent-selection argmap) :ds-lexicase)
(if (zero? (mod generation ds-parent-gens)) (if (zero? (mod generation ds-parent-gens))
(downsample/update-case-distances rep-evaluated-pop indexed-training-data indexed-training-data) ; update distances every ds-parent-gens generations (downsample/update-case-distances rep-evaluated-pop indexed-training-data indexed-training-data) ; update distances every ds-parent-gens generations

View File

@ -167,7 +167,7 @@
{:input1 [3] :output1 [13] :index 3 :distances [0 5 0 0 0]} {:input1 [3] :output1 [13] :index 3 :distances [0 5 0 0 0]}
{:input1 [4] :output1 [14] :index 4 :distances [0 5 0 0 0]}) {:input1 [4] :output1 [14] :index 4 :distances [0 5 0 0 0]})
{:downsample-rate 0.4 :case-t-size 5})] {:downsample-rate 0.4 :case-t-size 5})]
(or (= (:index (first selected)) 1) (= (:index (second selected)) 1)))))) (or (= (:index (first selected)) 2) (= (:index (second selected)) 2))))))
(t/deftest hyperselection-test (t/deftest hyperselection-test