diff --git a/examples/harbor-house/coldstart-500000-s0.dom b/examples/harbor-house/coldstart-500000-s0.dom index 8cc7af8..617f843 100644 --- a/examples/harbor-house/coldstart-500000-s0.dom +++ b/examples/harbor-house/coldstart-500000-s0.dom @@ -14,8 +14,8 @@ perimeter: d: null rotation: 1 division: -- 0.35975947294777627 -- 0.35975947294777627 +- 0.4259239623548846 +- 0.4259239623548846 height: 3.0 elevation: 0.0 wall_inner: 0.08 @@ -23,388 +23,313 @@ wall_outer: 0.25 l: rotation: 1 division: - - 0.33156462767046246 - - 0.33156462767046246 + - 0.5145119957760619 + - 0.5145119957760619 l: - rotation: 1 + rotation: 3 division: - - 0.59834286480964 - - 0.59834286480964 - l: - rotation: 1 - division: - - 0.4402218333896918 - - 0.4402218333896918 - l: - type: O - rotation: 0 - r: - type: C - rotation: 0 - r: - rotation: 1 - division: - - 0.508779979260747 - - 0.508779979260747 - l: - type: O - rotation: 0 - r: - type: of - rotation: 0 - r: - rotation: 0 - division: - - 0.8292529752476315 - - 0.8292529752476315 + - 0.7372477547323839 + - 0.7372477547323839 l: rotation: 0 division: - - 0.6923041379160803 - - 0.6923041379160803 + - 0.28333622842211925 + - 0.28333622842211925 l: - rotation: 1 - division: - - 0.3434179864581049 - - 0.3434179864581049 - l: - type: cr1 - rotation: 0 - r: - rotation: 1 - division: - - 0.5496582986920638 - - 0.5496582986920638 - l: - type: ws1 - rotation: 0 - r: - type: O - rotation: 0 + type: O + rotation: 0 r: - rotation: 1 - division: - - 0.5 - - 0.5 - l: - type: st1 - rotation: 0 - r: - rotation: 0 - division: - - 0.3333333333333333 - - 0.3333333333333333 - l: - type: m - rotation: 0 - r: - rotation: 1 - division: - - 0.5 - - 0.5 - l: - type: m - rotation: 0 - r: - type: m - rotation: 0 + type: cr1 + rotation: 2 r: rotation: 1 division: - - 0.6110630393726628 - - 0.6110630393726628 + - 0.5059213472651911 + - 0.5059213472651911 l: type: C rotation: 0 r: - type: of + type: C rotation: 0 -r: - rotation: 3 - division: - - 0.7204722827274844 - - 0.7204722827274844 - l: - rotation: 1 + r: + rotation: 2 division: - - 0.2766653316838056 - - 0.2766653316838056 + - 0.7384537617532285 + - 0.7384537617532285 l: rotation: 1 division: - - 0.7465908501948653 - - 0.7465908501948653 + - 0.8627536956652582 + - 0.8627536956652582 l: rotation: 2 division: - - 0.44565667083894717 - - 0.44565667083894717 + - 0.4768854382205807 + - 0.4768854382205807 l: - type: C + type: n rotation: 0 r: - rotation: 0 - division: - - 0.5 - - 0.5 - l: - type: la1 - rotation: 0 - r: - type: ef1 - rotation: 0 + type: n + rotation: 3 r: - type: me1 - rotation: 0 - r: - rotation: 1 - division: - - 0.8336532144799493 - - 0.8336532144799493 - l: - rotation: 1 + rotation: 3 division: - - 0.09775707514576723 - - 0.09775707514576723 - l: - rotation: 1 - division: - - 0.3333333333333333 - - 0.3333333333333333 - l: - type: t - rotation: 0 - r: - rotation: 0 - division: - - 0.5 - - 0.5 - l: - type: t - rotation: 0 - r: - type: t - rotation: 0 - r: - rotation: 1 - division: - - 0.3333333333333333 - - 0.3333333333333333 - l: - type: n - rotation: 0 - r: - rotation: 1 - division: - - 0.5 - - 0.5 - l: - type: n - rotation: 0 - r: - type: n - rotation: 0 - r: - rotation: 1 - division: - - 0.4929484117058974 - - 0.4929484117058974 + - 0.3631426312336177 + - 0.3631426312336177 l: type: t rotation: 0 - r: - type: C - rotation: 0 - r: - rotation: 1 - division: - - 0.32394713619584153 - - 0.32394713619584153 - l: - rotation: 1 - division: - - 0.5627707950298636 - - 0.5627707950298636 - l: - type: k1 - rotation: 0 - r: - type: O - rotation: 0 - r: - rotation: 0 - division: - - 0.8069461067486836 - - 0.8069461067486836 - l: - type: da1 - rotation: 0 - r: - type: C - rotation: 0 -above: - rotation: 0 - division: - - 0.4495832091911983 - - 0.4495832091911983 - height: 3.0 - l: - rotation: 0 - division: - - 0.4145021861758863 - - 0.4145021861758863 - l: - rotation: 0 - division: - - 0.7526452677591007 - - 0.7526452677591007 - l: - rotation: 0 - division: - - 0.6918932843804633 - - 0.6918932843804633 - l: - type: C - rotation: 0 r: rotation: 0 division: - - 0.3333333333333333 - - 0.3333333333333333 - l: - type: r - rotation: 0 - r: - rotation: 1 - division: - - 0.5 - - 0.5 - l: - type: r - rotation: 0 - r: - type: r - rotation: 0 - r: - rotation: 0 - division: - - 0.4375 - - 0.4375 - l: - type: ut1 - rotation: 0 - r: - rotation: 0 - division: - - 0.3333333333333333 - - 0.3333333333333333 - l: - type: n - rotation: 0 - r: - rotation: 1 - division: - - 0.5 - - 0.5 - l: - type: t - rotation: 0 - r: - type: t - rotation: 0 - r: - rotation: 0 - division: - - 0.7373284540420059 - - 0.7373284540420059 - l: - rotation: 0 - division: - - 0.5 - - 0.5 - l: - type: O - rotation: 0 - r: - type: O - rotation: 0 - r: - rotation: 0 - division: - - 0.625 - - 0.625 - l: - rotation: 0 - division: - - 0.3333333333333333 - - 0.3333333333333333 - l: - type: r - rotation: 0 - r: - rotation: 0 - division: - - 0.5 - - 0.5 - l: - type: r - rotation: 0 - r: - type: r - rotation: 0 - r: - type: r - rotation: 0 - r: - rotation: 0 - division: - - 0.5950404181185998 - - 0.5950404181185998 - l: - rotation: 0 - division: - - 0.5717581526588603 - - 0.5717581526588603 - l: - rotation: 0 - division: - - 0.9230769230769231 - - 0.9230769230769231 - l: - rotation: 0 - division: - - 0.5 - - 0.5 + - 0.5061221341235115 + - 0.5061221341235115 l: type: t rotation: 0 r: - type: n + type: t rotation: 0 + r: + rotation: 1 + division: + - 0.5802863978450712 + - 0.5802863978450712 + l: + type: me1 + rotation: 0 + r: + type: C + rotation: 0 +r: + rotation: 1 + division: + - 0.8096926040364771 + - 0.8096926040364771 + l: + rotation: 0 + division: + - 0.2963883137607755 + - 0.2963883137607755 + l: + rotation: 1 + division: + - 0.8370154596890989 + - 0.8370154596890989 + l: + rotation: 2 + division: + - 0.571197306229532 + - 0.571197306229532 + l: + type: da1 + rotation: 0 r: - type: li1 + type: O rotation: 0 r: + type: C + rotation: 0 + r: + rotation: 1 + division: + - 0.82867901058569 + - 0.82867901058569 + l: + rotation: 2 + division: + - 0.1679878749678333 + - 0.1679878749678333 + l: + type: k1 + rotation: 0 + r: + rotation: 1 + division: + - 0.36541227267882825 + - 0.36541227267882825 + l: + rotation: 1 + division: + - 0.6437744025691031 + - 0.6437744025691031 + l: + type: ws1 + rotation: 0 + r: + type: O + rotation: 0 + r: + rotation: 2 + division: + - 0.6621032068588621 + - 0.6621032068588621 + l: + rotation: 1 + division: + - 0.821658595449267 + - 0.821658595449267 + l: + type: n + rotation: 0 + r: + type: C + rotation: 0 + r: + rotation: 3 + division: + - 0.5049433632607838 + - 0.5049433632607838 + l: + rotation: 2 + division: + - 0.5839374235267318 + - 0.5839374235267318 + l: + type: m + rotation: 0 + r: + type: C + rotation: 0 + r: + type: O + rotation: 0 + r: + rotation: 3 + division: + - 0.5223173908574568 + - 0.5223173908574568 + l: + rotation: 0 + division: + - 0.5317445671635113 + - 0.5317445671635113 + l: + type: ef1 + rotation: 0 + r: + type: m + rotation: 0 + r: + type: la1 + rotation: 0 + r: + rotation: 1 + division: + - 0.5338424923830531 + - 0.5338424923830531 + l: + rotation: 0 + division: + - 0.78561771348831 + - 0.78561771348831 + l: rotation: 0 division: - - 0.6918932843804633 - - 0.6918932843804633 + - 0.2712833558776919 + - 0.2712833558776919 + l: + type: of + rotation: 0 + r: + type: st1 + rotation: 0 + r: + type: C + rotation: 0 + r: + rotation: 2 + division: + - 0.6913472617912713 + - 0.6913472617912713 + l: + rotation: 1 + division: + - 0.5061221341235114 + - 0.5061221341235114 + l: + type: C + rotation: 0 + r: + rotation: 3 + division: + - 0.5061221341235114 + - 0.5061221341235114 + l: + type: C + rotation: 0 + r: + type: m + rotation: 0 + r: + type: of + rotation: 0 +above: + rotation: 0 + division: + - 0.46686896603993033 + - 0.46686896603993033 + height: 3.0 + l: + rotation: 0 + division: + - 0.563819840813669 + - 0.563819840813669 + l: + rotation: 0 + division: + - 0.7373284540420059 + - 0.7373284540420059 + l: + rotation: 0 + division: + - 0.5 + - 0.5 l: type: O rotation: 0 r: + type: O + rotation: 0 + r: + rotation: 0 + division: + - 0.375 + - 0.375 + l: rotation: 0 division: - - 0.3333333333333333 - - 0.3333333333333333 + - 0.3458501249843992 + - 0.3458501249843992 l: type: r rotation: 0 r: rotation: 0 division: - - 0.5 - - 0.5 + - 0.5061221341235114 + - 0.5061221341235114 + l: + type: r + rotation: 0 + r: + type: r + rotation: 0 + r: + rotation: 0 + division: + - 0.3515963240672897 + - 0.3515963240672897 + l: + type: r + rotation: 0 + r: + rotation: 0 + division: + - 0.5061221341235114 + - 0.5061221341235114 l: type: r rotation: 0 @@ -414,19 +339,150 @@ above: r: rotation: 0 division: - - 0.5646254827628482 - - 0.5646254827628482 + - 0.6887574841111406 + - 0.6887574841111406 l: rotation: 0 division: - - 0.22891450965556917 - - 0.22891450965556917 + - 0.6918932843804633 + - 0.6918932843804633 + l: + rotation: 3 + division: + - 0.5 + - 0.5 + l: + type: C + rotation: 0 + r: + rotation: 0 + division: + - 0.5985358591149017 + - 0.5985358591149017 + l: + type: O + rotation: 0 + r: + type: li1 + rotation: 0 + r: + rotation: 0 + division: + - 0.3333333333333333 + - 0.3333333333333333 + l: + type: t + rotation: 0 + r: + rotation: 0 + division: + - 0.5 + - 0.5 + l: + type: t + rotation: 0 + r: + type: t + rotation: 0 + r: + rotation: 0 + division: + - 0.3181818181818182 + - 0.3181818181818182 l: type: st2 rotation: 0 r: - type: O + rotation: 0 + division: + - 0.3769847420952976 + - 0.3769847420952976 + l: + type: r + rotation: 0 + r: + type: r + rotation: 0 + r: + rotation: 0 + division: + - 0.742320549254305 + - 0.742320549254305 + l: + rotation: 0 + division: + - 0.509576911643064 + - 0.509576911643064 + l: + rotation: 0 + division: + - 0.14285714285714285 + - 0.14285714285714285 + l: + type: n + rotation: 0 + r: + type: C rotation: 0 r: - type: C rotation: 0 + division: + - 0.5 + - 0.5 + l: + type: O + rotation: 0 + r: + rotation: 0 + division: + - 0.5 + - 0.5 + l: + type: C + rotation: 0 + r: + type: O + rotation: 0 + r: + rotation: 0 + division: + - 0.2935968792571724 + - 0.2935968792571724 + l: + rotation: 0 + division: + - 0.6428571428571429 + - 0.6428571428571429 + l: + type: n + rotation: 0 + r: + type: ut1 + rotation: 0 + r: + rotation: 3 + division: + - 0.5 + - 0.5 + l: + rotation: 1 + division: + - 0.5 + - 0.5 + l: + type: C + rotation: 0 + r: + rotation: 3 + division: + - 0.5 + - 0.5 + l: + type: r + rotation: 0 + r: + type: r + rotation: 0 + r: + type: C + rotation: 0 diff --git a/examples/maple-court/coldstart-500000-s1.log b/examples/maple-court/coldstart-500000-s1.log new file mode 100644 index 0000000..d3a4b3d --- /dev/null +++ b/examples/maple-court/coldstart-500000-s1.log @@ -0,0 +1,105 @@ +WARNING: 338 m2 per storey needs ~70 m of daylit wall; the plot's non-private perimeter gives 55 m. Roughly 22 m2 of courtyard closes the gap. (DESIGN.md ยง38.3) +seed : /home/bruno/src/homemaker-layout/examples/maple-court/init.dom +programme : maple-court +budget : 500000 +pop : 16 +child_budget : 80 +workers : 1 +rng seed : 1 +leaf sharing : True (factor=3) +superpose : False +multi_use : False +conn grade : False +use tiers : False +bridge circulation : False +ruin recreate : False +collapse in-search : True +shapecurve warmstart : False +shapecurve prune : False +output : /home/bruno/src/homemaker-layout/examples/maple-court/coldstart-500000-s1.dom +[ 80 evals] best 7.48546e-46 (fails 141) via construct/0 +[ 160 evals] best 4.82423e-42 (fails 127) via construct/1 +[ 480 evals] best 8.67067e-42 (fails 124) via construct/5 +[ 800 evals] best 4.80398e-39 (fails 122) via construct/9 +[ 1440 evals] best 6.36848e-40 (fails 118) via place_missing r -> rrrr +[ 2160 evals] best 1.32118e-39 (fails 117) via level_fix noop +[ 2400 evals] best 1.60106e-38 (fails 114) via place_missing em -> rlll +[ 3040 evals] best 3.2838e-38 (fails 113) via rotate 0/rrll +[ 3760 evals] best 3.65129e-38 (fails 113) via core_undivide noop +[ 4320 evals] best 5.79431e-37 (fails 109) via place_missing r -> rrrl +[ 4400 evals] best 5.8784e-37 (fails 109) via core_undivide noop +[ 4640 evals] best 2.78722e-36 (fails 107) via retype 1/rlllr->py +[ 5760 evals] best 4.90785e-34 (fails 100) via crossover lrrl<->rrrl +[ 8480 evals] best 5.06412e-34 (fails 100) via level_retype 2/rrlr<->0/rrrl +[ 8960 evals] best 1.00937e-33 (fails 99) via retype 1/rrlr->O +[ 9840 evals] best 2.11427e-33 (fails 98) via swap 0/lrr +[ 10480 evals] best 2.17495e-33 (fails 98) via swap 0/rlrl +[ 11040 evals] best 2.25388e-33 (fails 98) via core_divide noop +[ 12480 evals] best 4.78668e-33 (fails 98) via undivide 2/llr +[ 12720 evals] best 4.80876e-33 (fails 98) via core_divide noop +[ 13760 evals] best 9.1709e-33 (fails 96) via divide 2/llrr +[ 14560 evals] best 1.84586e-32 (fails 95) via core_undivide noop +[ 16880 evals] best 1.85284e-32 (fails 95) via crossover llrlr<->rlllr +[ 19840 evals] best 7.42595e-32 (fails 93) via core_undivide noop +[ 20800 evals] best 1.48504e-31 (fails 92) via core_undivide noop +[ 23680 evals] best 1.48739e-31 (fails 92) via core_undivide noop +[ 24560 evals] best 1.55172e-31 (fails 92) via core_divide noop +[ 25680 evals] best 1.56264e-31 (fails 92) via core_undivide noop +[ 26080 evals] best 6.36171e-31 (fails 90) via swap 2/rrr +[ 27040 evals] best 6.41788e-31 (fails 90) via level_retype 0/rrrl<->2/rllr +[ 28240 evals] best 1.02644e-30 (fails 89) via crossover lrl<->lrr +[ 29200 evals] best 1.04874e-30 (fails 89) via crossover llrrr<->llrrr +[ 30320 evals] best 3.66451e-30 (fails 88) via level_compound_fix k1: lvl2 โ†’ lvl0/rllll + insert lr1 into lrlr/lvl0 +[ 30960 evals] best 1.09242e-29 (fails 86) via crossover rrlrr<->llrrl +[ 33120 evals] best 3.5356e-29 (fails 84) via crossover llrll<->lrll +[ 36160 evals] best 3.56494e-29 (fails 84) via level_retype 0/lrrr<->2/rllr +[ 40320 evals] best 4.93101e-29 (fails 84) via crossover lr<->lr +[ 40960 evals] best 4.96131e-29 (fails 84) via crossover rlrrr<->rlrrr +[ 42240 evals] best 8.67773e-29 (fails 83) via retype 2/rrrrr->t +[ 43920 evals] best 1.52112e-28 (fails 81) via crossover lllr<->rlrr +[ 46480 evals] best 1.52992e-28 (fails 81) via crossover lrr<->lrr +[ 48720 evals] best 3.06138e-28 (fails 80) via level_retype 2/lllr<->0/rlrlr +[ 51120 evals] best 3.07068e-28 (fails 80) via swap 2/llrr +[ 53440 evals] best 3.07434e-28 (fails 80) via swap 0/rlrr +[ 54560 evals] best 3.44534e-28 (fails 80) via crossover lrrl<->lllrl +[ 57600 evals] best 3.45695e-28 (fails 80) via core_divide noop +[ 58240 evals] best 3.46141e-28 (fails 80) via core_undivide noop +[ 61440 evals] best 3.46205e-28 (fails 80) via core_divide noop +[ 61840 evals] best 3.4624e-28 (fails 80) via core_divide noop +[ 62720 evals] best 3.46265e-28 (fails 80) via core_divide noop +[ 62800 evals] best 3.46265e-28 (fails 80) via core_undivide noop +[ 64880 evals] best 3.51879e-28 (fails 79) via level_fix k1: lvl2/rrlr โ†’ lvl0/rllll +[ 66240 evals] best 3.53264e-28 (fails 79) via retype 1/lrll->gh1 +[ 66480 evals] best 3.55549e-28 (fails 79) via core_divide noop +[ 66800 evals] best 3.57445e-28 (fails 79) via crossover llrll<->llrll +[ 68000 evals] best 2.06412e-27 (fails 77) via level_fix k1: lvl2/rrlr โ†’ lvl0/rllll +[ 69120 evals] best 2.06883e-27 (fails 77) via core_divide noop +[ 71520 evals] best 2.76174e-27 (fails 76) via rotate 0/lr +[ 72640 evals] best 2.76227e-27 (fails 76) via core_undivide noop +[ 73520 evals] best 2.76276e-27 (fails 76) via core_divide noop +[ 75600 evals] best 2.7632e-27 (fails 76) via core_divide noop +[ 76320 evals] best 2.76358e-27 (fails 76) via core_undivide noop +[ 76960 evals] best 2.76389e-27 (fails 76) via core_undivide noop +[ 78880 evals] best 1.83174e-26 (fails 75) via level_retype 0/rrlrlr<->2/rlll +[ 78960 evals] best 1.87802e-26 (fails 75) via core_divide noop +[ 79360 evals] best 3.90146e-26 (fails 74) via swap 0/rlrl +[ 79520 evals] best 3.95859e-26 (fails 74) via rotate 0/llrr +[ 79600 evals] best 3.96056e-26 (fails 74) via crossover lrrl<->lllrl +[ 82720 evals] best 3.98751e-26 (fails 74) via core_undivide noop +[ 84240 evals] best 8.37192e-26 (fails 73) via crossover llrl<->lrr +[ 84640 evals] best 8.42852e-26 (fails 73) via rotate 2/rrrr +[ 84800 evals] best 3.5634e-25 (fails 71) via crossover rllr<->lrrl +[ 87040 evals] best 3.59072e-25 (fails 71) via rotate 0/rrll +[ 89120 evals] best 3.61957e-25 (fails 71) via retype 1/rlllr->lr1 +[ 90800 evals] best 1.19078e-24 (fails 70) via crossover rlrrl<->rrlrr +[ 97680 evals] best 5.2661e-24 (fails 68) via rotate 0/lrl +[ 98560 evals] best 5.54831e-24 (fails 68) via retype 0/rlrlr->ur3 +[103360 evals] best 5.61335e-24 (fails 68) via level_retype 2/llll<->1/rllll +[104400 evals] best 5.65917e-24 (fails 68) via core_divide noop +[106240 evals] best 5.68365e-24 (fails 68) via core_undivide noop +[108800 evals] best 1.16147e-23 (fails 67) via core_divide noop +[109760 evals] best 2.26647e-23 (fails 66) via swap 0/lrl +[112160 evals] best 2.27596e-23 (fails 66) via core_undivide noop +[112800 evals] best 9.05097e-23 (fails 64) via level_retype 0/llrll<->2/rrll +[115920 evals] best 9.55098e-23 (fails 64) via core_undivide noop +[117200 evals] best 9.59197e-23 (fails 64) via rotate 0/rlrl diff --git a/experiments/results/coldstart_baseline.tsv b/experiments/results/coldstart_baseline.tsv index 863f2e5..af32d88 100644 --- a/experiments/results/coldstart_baseline.tsv +++ b/experiments/results/coldstart_baseline.tsv @@ -1,3 +1,4 @@ programme seed budget fails hard soft score elapsed_s dom programme-house 0 500000 1 0 1 0.00587685 19400.4 coldstart-500000-s0.dom health-centre 0 500000 4 2 2 0.0011747 130593.0 coldstart-500000-s0.dom +harbor-house 0 500000 33 8 25 1.68969e-11 160951.3 coldstart-500000-s0.dom