Compare commits
95 commits
main
...
claude/bea
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d04e585d38 | ||
|
|
3ccbba7284 | ||
|
|
58fe56eb55 | ||
|
|
99c85ec4ee | ||
|
|
73324deff1 | ||
|
|
8a1b547285 | ||
|
|
4931070602 | ||
|
|
f96ec0f316 | ||
|
|
774747e482 | ||
|
|
a7ef9e2fa0 | ||
|
|
f07b3865ef | ||
|
|
426203b154 | ||
|
|
9a8852a82b | ||
|
|
32973cfe95 | ||
|
|
d0567d7a74 | ||
|
|
f47dfe60af | ||
|
|
7047a782e5 | ||
|
|
47079997cf | ||
|
|
109849e438 | ||
|
|
a76ed3b9b8 | ||
|
|
fb70193074 | ||
|
|
f5612ce06c | ||
|
|
6268748fcb | ||
|
|
e92a96ac99 | ||
|
|
94d112aa02 | ||
|
|
84907694d0 | ||
|
|
970e07235f | ||
|
|
366a047a60 | ||
|
|
6d387bbe3b | ||
|
|
cd392e77c5 | ||
|
|
cc39a38317 | ||
|
|
4180a9eb88 | ||
| d492b7c271 | |||
| 2426760d40 | |||
| 761167f6a3 | |||
| 51782047f3 | |||
| b885bd3dbd | |||
| d7ac57d131 | |||
| b39b467662 | |||
| 9d99cf34f7 | |||
| 2415ad6504 | |||
| d5d99dd4f6 | |||
| 6d1eb26088 | |||
|
|
481e83cdbf | ||
|
|
4c95505907 | ||
|
|
104ba12237 | ||
|
|
c747e55abe | ||
|
|
f973d5c020 | ||
|
|
caf480aa32 | ||
|
|
57d8391c52 | ||
| ac5913151a | |||
|
|
6e8bcce8f3 | ||
|
|
03c1c5edcf | ||
|
|
e9e7060fb4 | ||
|
|
50fb293fa5 | ||
|
|
f6eeee7191 | ||
|
|
225e673ae3 | ||
|
|
148988df14 | ||
|
|
ee050532d6 | ||
|
|
98d403b966 | ||
|
|
df84bfe1e6 | ||
|
|
f5286dde3d | ||
|
|
e5eb397b52 | ||
|
|
e13b7b1313 | ||
|
|
4d7a3e65b9 | ||
|
|
e2d5838433 | ||
|
|
45eff37f96 | ||
|
|
c9b9eafef6 | ||
|
|
31d50ba72b | ||
|
|
335dd9c1ff | ||
|
|
055d7101cd | ||
| 0d4ae7ad54 | |||
|
|
bb27a5e548 | ||
|
|
6405ca1a59 | ||
|
|
f1831687c1 | ||
|
|
02967d5de7 | ||
|
|
189efdbfc7 | ||
|
|
8522576467 | ||
|
|
024311a2c2 | ||
|
|
7c41069226 | ||
|
|
3aee813ccd | ||
|
|
03aadec1ba | ||
|
|
72673a2ebf | ||
|
|
d5e10172c5 | ||
|
|
6bed7cc535 | ||
|
|
f476a5849e | ||
|
|
a25dc2cb59 | ||
|
|
7ec4e5d121 | ||
|
|
697914fac8 | ||
|
|
fd9802e499 | ||
|
|
1b3a0adc2e | ||
|
|
50b5cfd476 | ||
|
|
753356e47e | ||
|
|
c0c47a6e2d | ||
|
|
7046c7bd76 |
162 changed files with 1988077 additions and 2517 deletions
3
.beads/.gitignore
vendored
3
.beads/.gitignore
vendored
|
|
@ -59,6 +59,9 @@ backup/
|
|||
# Per-project environment file (Dolt connection config, GH#2520)
|
||||
.env
|
||||
|
||||
# Auto-import tracking marker (local mtime/size cache, per-machine)
|
||||
.auto-import-issues.jsonl
|
||||
|
||||
# Legacy files (from pre-Dolt versions)
|
||||
*.db
|
||||
*.db?*
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
4
.gitignore
vendored
4
.gitignore
vendored
|
|
@ -14,3 +14,7 @@ scratch/
|
|||
.dolt/
|
||||
*.db
|
||||
.beads-credential-key
|
||||
|
||||
# per-process shards written by the sharded A/B harnesses; the merged
|
||||
# <out>.csv is the artefact worth keeping (experiments/ab_9gj_ramp.py --report)
|
||||
experiments/results/*.csv.shard*
|
||||
|
|
|
|||
19
AGENTS.md
19
AGENTS.md
|
|
@ -56,6 +56,25 @@ bd close <id> # Complete work
|
|||
- Run `bd prime` for detailed command reference and session close protocol
|
||||
- Use `bd remember` for persistent knowledge — do NOT use MEMORY.md files
|
||||
|
||||
### Room-code namespaces (DESIGN.md §39.4/§39.6)
|
||||
|
||||
Leaf types share a first character across three namespaces:
|
||||
|
||||
- **`C` / `O` / `S`** — generic structural types (circulation / outside / sahn),
|
||||
uppercase, reserved. A programme code spelled exactly one of these is rejected
|
||||
at load.
|
||||
- **programme room codes** — lowercase, may start with *any* letter. The generic
|
||||
tests match `C`/`O`/`S` exactly, so `cr1` is a room, not circulation.
|
||||
- **`usage:`** — every space declares its access-requirement class
|
||||
(`living`/`kitchen`/`bedroom`/`toilet`/`utility`/`none`), mandatory, no
|
||||
fallback (DESIGN.md §39.7). A code's spelling decides nothing: `name:` is free
|
||||
text, `usage:` drives behaviour. There is no first-character type test left
|
||||
anywhere in the codebase.
|
||||
|
||||
When adding or editing a programme, run
|
||||
`python experiments/audit_programme_config.py` — it reports reserved-name
|
||||
collisions, the usage class each code picks up, and per-room-spec satisfiability.
|
||||
|
||||
## Session Completion
|
||||
|
||||
**When ending a work session**, you MUST complete ALL steps below. Work is NOT complete until `git push` succeeds.
|
||||
|
|
|
|||
33
CLAUDE.md
33
CLAUDE.md
|
|
@ -22,6 +22,25 @@ bd close <id> # Complete work
|
|||
- Run `bd prime` for detailed command reference and session close protocol
|
||||
- Use `bd remember` for persistent knowledge — do NOT use MEMORY.md files
|
||||
|
||||
### Room-code namespaces (DESIGN.md §39.4/§39.6)
|
||||
|
||||
Leaf types share a first character across three namespaces:
|
||||
|
||||
- **`C` / `O` / `S`** — generic structural types (circulation / outside / sahn),
|
||||
uppercase, reserved. A programme code spelled exactly one of these is rejected
|
||||
at load.
|
||||
- **programme room codes** — lowercase, may start with *any* letter. The generic
|
||||
tests match `C`/`O`/`S` exactly, so `cr1` is a room, not circulation.
|
||||
- **`usage:`** — every space declares its access-requirement class
|
||||
(`living`/`kitchen`/`bedroom`/`toilet`/`utility`/`none`), mandatory, no
|
||||
fallback (DESIGN.md §39.7). A code's spelling decides nothing: `name:` is free
|
||||
text, `usage:` drives behaviour. There is no first-character type test left
|
||||
anywhere in the codebase.
|
||||
|
||||
When adding or editing a programme, run
|
||||
`python experiments/audit_programme_config.py` — it reports reserved-name
|
||||
collisions, the usage class each code picks up, and per-room-spec satisfiability.
|
||||
|
||||
## Session Completion
|
||||
|
||||
**When ending a work session**, you MUST complete ALL steps below. Work is NOT complete until `git push` succeeds.
|
||||
|
|
@ -81,7 +100,6 @@ Key modules:
|
|||
- `innerloop.py` — ratio optimisation inner loop (Nelder-Mead / CMA-ES)
|
||||
- `driver.py` — memetic search outer loop
|
||||
- `evolve.py` — `homemaker-evolve` CLI entry point
|
||||
- `oracle.py` — legacy Perl shim, kept for validation only; do not use in new code
|
||||
- `bubble.py` — 3D bubble-diagram adjacency fitness-signal prototype (DESIGN.md §27, `mi7`); validated NULL, not wired into `fitness.py` — reference only, do not build on without a new formulation
|
||||
|
||||
## Conventions & Patterns
|
||||
|
|
@ -100,5 +118,14 @@ homemaker-fitness cf0b8a77e8b2325f92a7e7d150184a55.dom
|
|||
|
||||
The score is written to `<file>.dom.score` and failures to `<file>.dom.fails`; the numeric score is also printed to stderr.
|
||||
|
||||
Do **not** use `urb-fitness.pl` directly — `oracle.py` and the Perl tool are
|
||||
kept only for cross-validation.
|
||||
`fitness.py` is the **only** evaluator. The Perl oracle it was ported from —
|
||||
`oracle.py`, `urb-fitness.pl`, and the parity tests against them — is gone
|
||||
(DESIGN.md §39.21). Those parity tests had never actually run: no oracle
|
||||
`.score` was ever committed, so on a clean checkout every case skipped, and the
|
||||
only cases that ever executed compared the native scorer with itself (§39.20).
|
||||
|
||||
The corollary matters when reading the objective: a constant or a rule that
|
||||
looks odd is **not** thereby validated by "Urb did it this way". Several
|
||||
defects found in §39 were carried straight over from the Perl — see §39.19 on
|
||||
`value_supported`, and `homemaker-py-hxi` on circulation, which the owner has
|
||||
ruled needs fixing.
|
||||
|
|
|
|||
43
README.md
43
README.md
|
|
@ -57,3 +57,46 @@ search then only explores topology + types + adjacency.
|
|||
- `src/homemaker_layout/bubble.py` — 3D bubble-diagram adjacency fitness-signal
|
||||
prototype (DESIGN.md §27); validated null, not wired into `fitness.py` —
|
||||
reference only.
|
||||
|
||||
## Room codes and reserved names
|
||||
|
||||
Leaf types live in **three namespaces that share a first character**. Only the
|
||||
first is enforced; the other two are conventions the fitness function reads, so
|
||||
a room's *spelling* can change how it is scored.
|
||||
|
||||
**1. Generic structural types — `C`, `O`, `S` (reserved).** The leaves the
|
||||
search itself creates: `C` circulation, `O` outside, `S` sahn (an outside court
|
||||
that also serves as circulation). Always uppercase. A programme code spelled
|
||||
exactly `C`, `O` or `S` is rejected at load.
|
||||
|
||||
**2. Programme room codes — anything else, lowercase.** `k1`, `b1`, `cr1`,
|
||||
`of`, and single-character codes like `r` or `t`. These may start with **any**
|
||||
letter: since DESIGN.md §39.4 the generic tests match `C`/`O`/`S` exactly, so
|
||||
naming a room `cr1` no longer makes it circulation. (Before that fix it did —
|
||||
and silently dropped it from the required-space check entirely.)
|
||||
|
||||
**3. Access requirements — the `usage:` attribute.** Every space declares one
|
||||
of `living`, `kitchen`, `bedroom`, `toilet`, `utility`, `none`. Mandatory, no
|
||||
fallback, and a missing or unknown value is a load error. It replaced a
|
||||
first-character convention (`b`/`t`/`l`/`k`) under which a room silently
|
||||
inherited another room's connectivity rules from its spelling — `la1` "Laundry
|
||||
Room" was trimmed as a living room (DESIGN.md §39.7).
|
||||
|
||||
```yaml
|
||||
spaces:
|
||||
la1:
|
||||
usage: utility # controlled, drives engine behaviour
|
||||
name: Laundry Room # free text, building-specific
|
||||
```
|
||||
|
||||
A usage value exists only where the engine treats it differently, so the
|
||||
vocabulary is closed: a new access class means new code, not new config. Check a
|
||||
programme with:
|
||||
|
||||
```bash
|
||||
python experiments/audit_programme_config.py
|
||||
```
|
||||
|
||||
which reports reserved-name collisions, the usage class each code picks up, and
|
||||
whether each room's size/width/proportion/crinkliness targets are mutually
|
||||
satisfiable at all.
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@
|
|||
|
||||
spaces:
|
||||
cr1:
|
||||
usage: living
|
||||
name: Common Room with Fireplace
|
||||
size:
|
||||
- 80.0
|
||||
|
|
@ -26,6 +27,7 @@ spaces:
|
|||
- o
|
||||
|
||||
ef1:
|
||||
usage: none
|
||||
name: Entrance Foyer
|
||||
size:
|
||||
- 15.0
|
||||
|
|
@ -37,6 +39,7 @@ spaces:
|
|||
- c
|
||||
|
||||
da1:
|
||||
usage: living
|
||||
name: Dining Area
|
||||
size:
|
||||
- 60.0
|
||||
|
|
@ -53,6 +56,7 @@ spaces:
|
|||
- o
|
||||
|
||||
k1:
|
||||
usage: kitchen
|
||||
name: Kitchen
|
||||
size:
|
||||
- 30.0
|
||||
|
|
@ -65,6 +69,7 @@ spaces:
|
|||
- c
|
||||
|
||||
ws1:
|
||||
usage: living
|
||||
name: Workshop Space
|
||||
size:
|
||||
- 40.0
|
||||
|
|
@ -80,6 +85,7 @@ spaces:
|
|||
- o
|
||||
|
||||
m:
|
||||
usage: living
|
||||
name: Meeting Room
|
||||
size:
|
||||
- 10.0
|
||||
|
|
@ -92,6 +98,7 @@ spaces:
|
|||
count: 3
|
||||
|
||||
la1:
|
||||
usage: utility
|
||||
name: Laundry Room
|
||||
size:
|
||||
- 20.0
|
||||
|
|
@ -103,6 +110,8 @@ spaces:
|
|||
- c
|
||||
|
||||
st1:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: Ground Floor Storage
|
||||
size:
|
||||
- 22.0
|
||||
|
|
@ -114,6 +123,8 @@ spaces:
|
|||
- c
|
||||
|
||||
me1:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: Mechanical/Electrical Room
|
||||
size:
|
||||
- 25.0
|
||||
|
|
@ -125,6 +136,7 @@ spaces:
|
|||
- c
|
||||
|
||||
of:
|
||||
usage: bedroom
|
||||
name: Staff Office
|
||||
size:
|
||||
- 12.5
|
||||
|
|
|
|||
448
examples/harbor-house/3m.dom
Normal file
448
examples/harbor-house/3m.dom
Normal file
|
|
@ -0,0 +1,448 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3985442745073203
|
||||
- 0.3985442745073203
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3094512886869734
|
||||
- 0.3094512886869734
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5940581633377823
|
||||
- 0.5940581633377823
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8043008907725491
|
||||
- 0.8043008907725491
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.544025432199185
|
||||
- 0.544025432199185
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.391341459113696
|
||||
- 0.391341459113696
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7211389666113284
|
||||
- 0.7211389666113284
|
||||
l:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7235436770862052
|
||||
- 0.7235436770862052
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6505939964175393
|
||||
- 0.6505939964175393
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5868140737321261
|
||||
- 0.5868140737321261
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.43644811120043386
|
||||
- 0.43644811120043386
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7654752257383863
|
||||
- 0.7654752257383863
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4376436987858707
|
||||
- 0.4376436987858707
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.8494329721993664
|
||||
- 0.8494329721993664
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6049702596175167
|
||||
- 0.6049702596175167
|
||||
l:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 3
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3250476545214606
|
||||
- 0.3250476545214606
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8461640488517912
|
||||
- 0.8461640488517912
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6557435235032659
|
||||
- 0.6557435235032659
|
||||
l:
|
||||
type: m
|
||||
rotation: 1
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.561217084502605
|
||||
- 0.561217084502605
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.29120109801627336
|
||||
- 0.29120109801627336
|
||||
l:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.8436218368250273
|
||||
- 0.8436218368250273
|
||||
l:
|
||||
type: n
|
||||
rotation: 2
|
||||
r:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.839483766914491
|
||||
- 0.839483766914491
|
||||
l:
|
||||
type: n
|
||||
rotation: 2
|
||||
r:
|
||||
type: la1
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3519324875989489
|
||||
- 0.3519324875989489
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4256779296253242
|
||||
- 0.4256779296253242
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.1346153846153846
|
||||
- 0.1346153846153846
|
||||
l:
|
||||
type: ut1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6726619281231458
|
||||
- 0.6726619281231458
|
||||
l:
|
||||
type: li1
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8574647492492186
|
||||
- 0.8574647492492186
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5013138993448436
|
||||
- 0.5013138993448436
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5079366503514491
|
||||
- 0.5079366503514491
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.15629392209010023
|
||||
- 0.15629392209010023
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8577851940134021
|
||||
- 0.8577851940134021
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4126455278522538
|
||||
- 0.4126455278522538
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.1276875570629138
|
||||
- 0.1276875570629138
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7912375002017624
|
||||
- 0.7912375002017624
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5898846840065638
|
||||
- 0.5898846840065638
|
||||
l:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5146378236487134
|
||||
- 0.5146378236487134
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3871574227542141
|
||||
- 0.3871574227542141
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.30121819590152477
|
||||
- 0.30121819590152477
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5333101977082233
|
||||
- 0.5333101977082233
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7039689912158205
|
||||
- 0.7039689912158205
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5836803639257983
|
||||
- 0.5836803639257983
|
||||
l:
|
||||
type: r
|
||||
rotation: 2
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5585512945948533
|
||||
- 0.5585512945948533
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.821355066730113
|
||||
- 0.821355066730113
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.6901211782405532
|
||||
- 0.6901211782405532
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5650312500000001
|
||||
- 0.5650312500000001
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7292419211112857
|
||||
- 0.7292419211112857
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
29329
examples/harbor-house/3m.dom.dae
Normal file
29329
examples/harbor-house/3m.dom.dae
Normal file
File diff suppressed because one or more lines are too long
341262
examples/harbor-house/3m.dom.dxf
Normal file
341262
examples/harbor-house/3m.dom.dxf
Normal file
File diff suppressed because it is too large
Load diff
33039
examples/harbor-house/3m.dom.ifc
Normal file
33039
examples/harbor-house/3m.dom.ifc
Normal file
File diff suppressed because it is too large
Load diff
87
examples/harbor-house/ab-8iv-grid-rng0.trace
Normal file
87
examples/harbor-house/ab-8iv-grid-rng0.trace
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
15s [ 200 evals] best 2.99136e-19 (fails 58) via seed
|
||||
27s [ 280 evals] best 3.01967e-19 (fails 58) via place_missing noop
|
||||
39s [ 840 evals] best 3.03178e-19 (fails 58) via level_fix noop
|
||||
62s [ 1400 evals] best 3.0432e-19 (fails 58) via level_fix st1: lvl1/lrlrl → lvl0/rllr
|
||||
97s [ 2200 evals] best 1.22462e-18 (fails 56) via rotate 0/ll
|
||||
146s [ 3480 evals] best 2.45817e-18 (fails 55) via core_undivide noop
|
||||
157s [ 4040 evals] best 2.46734e-18 (fails 55) via swap 0/llllr
|
||||
178s [ 4440 evals] best 2.46851e-18 (fails 55) via level_fix noop
|
||||
191s [ 4760 evals] best 2.03417e-17 (fails 52) via divide 0/rllr
|
||||
215s [ 5400 evals] best 2.03526e-17 (fails 52) via level_retype 1/lrrrl<->0/lrrrr
|
||||
239s [ 6040 evals] best 2.03762e-17 (fails 52) via rotate 0/rllr
|
||||
263s [ 6680 evals] best 2.04377e-17 (fails 52) via core_undivide noop
|
||||
329s [ 8360 evals] best 1.4244e-16 (fails 49) via level_fix st1: lvl1/lrrrl → lvl0/rllrl
|
||||
342s [ 8840 evals] best 1.42926e-16 (fails 49) via place_missing noop
|
||||
353s [ 9080 evals] best 1.43695e-16 (fails 49) via place_missing noop
|
||||
366s [ 9320 evals] best 1.4375e-16 (fails 49) via place_missing noop
|
||||
378s [ 9800 evals] best 1.43884e-16 (fails 49) via place_missing noop
|
||||
390s [ 10040 evals] best 1.44162e-16 (fails 49) via core_undivide noop
|
||||
413s [ 10520 evals] best 1.4471e-16 (fails 49) via place_missing noop
|
||||
462s [ 12040 evals] best 1.45739e-16 (fails 49) via level_compound_fix st2: lvl0 → lvl1/rllr + insert st2 into llrlrl/lvl1
|
||||
487s [ 12440 evals] best 2.95169e-16 (fails 48) via level_fix noop
|
||||
596s [ 15320 evals] best 3.01432e-16 (fails 48) via core_undivide noop
|
||||
657s [ 17160 evals] best 3.01447e-16 (fails 48) via level_fix noop
|
||||
668s [ 17320 evals] best 3.01462e-16 (fails 48) via crossover l<->l
|
||||
680s [ 17640 evals] best 3.01478e-16 (fails 48) via core_undivide noop
|
||||
692s [ 17960 evals] best 3.01496e-16 (fails 48) via level_compound_fix noop
|
||||
704s [ 18280 evals] best 3.01513e-16 (fails 48) via place_missing noop
|
||||
742s [ 19240 evals] best 3.01516e-16 (fails 48) via level_fix noop
|
||||
793s [ 20520 evals] best 6.05253e-16 (fails 47) via undivide 1/lllr
|
||||
828s [ 21560 evals] best 1.10265e-15 (fails 46) via crossover lrrll<->lrlr
|
||||
866s [ 22360 evals] best 1.11444e-15 (fails 46) via core_undivide noop
|
||||
891s [ 23000 evals] best 1.11914e-15 (fails 46) via level_compound_fix noop
|
||||
967s [ 25080 evals] best 1.12384e-15 (fails 46) via level_compound_fix noop
|
||||
1049s [ 27160 evals] best 1.12851e-15 (fails 46) via core_undivide noop
|
||||
1097s [ 28440 evals] best 1.13191e-15 (fails 46) via level_compound_fix noop
|
||||
1099s [ 28600 evals] best 7.49651e-14 (fails 40) via retype 1/rlrlll->t
|
||||
1174s [ 30360 evals] best 7.55374e-14 (fails 40) via core_undivide noop
|
||||
1201s [ 31160 evals] best 7.60982e-14 (fails 40) via level_compound_fix noop
|
||||
1212s [ 31320 evals] best 7.65541e-14 (fails 40) via place_missing noop
|
||||
1286s [ 33240 evals] best 1.54772e-13 (fails 39) via swap 0/lrrll
|
||||
1363s [ 35160 evals] best 1.55395e-13 (fails 39) via place_missing noop
|
||||
1398s [ 36200 evals] best 1.56143e-13 (fails 39) via level_compound_fix noop
|
||||
1411s [ 36600 evals] best 1.56917e-13 (fails 39) via swap 1/llrr
|
||||
1424s [ 36840 evals] best 1.57541e-13 (fails 39) via level_compound_fix noop
|
||||
1451s [ 37640 evals] best 1.57782e-13 (fails 39) via place_missing noop
|
||||
1474s [ 38120 evals] best 2.87312e-13 (fails 38) via crossover lrrllr<->llllrr
|
||||
1524s [ 39320 evals] best 2.87802e-13 (fails 38) via crossover llllrr<->llllrl
|
||||
1549s [ 39960 evals] best 2.87806e-13 (fails 38) via undivide 0/llllr
|
||||
1561s [ 40440 evals] best 2.87806e-13 (fails 38) via crossover rrrr<->llllr
|
||||
1634s [ 42360 evals] best 2.87813e-13 (fails 38) via crossover llll<->llll
|
||||
1750s [ 45080 evals] best 2.87828e-13 (fails 38) via core_undivide noop
|
||||
1761s [ 45400 evals] best 2.87858e-13 (fails 38) via level_fix noop
|
||||
1774s [ 45880 evals] best 2.87884e-13 (fails 38) via core_undivide noop
|
||||
1812s [ 46760 evals] best 2.87887e-13 (fails 38) via level_compound_fix noop
|
||||
1825s [ 47160 evals] best 2.87899e-13 (fails 38) via core_undivide noop
|
||||
1847s [ 47640 evals] best 2.87933e-13 (fails 38) via place_missing noop
|
||||
1861s [ 47960 evals] best 2.8796e-13 (fails 38) via place_missing noop
|
||||
2672s [ 69000 evals] best 3.0614e-13 (fails 38) via level_retype 0/rrrr<->1/rlllrr
|
||||
2718s [ 70200 evals] best 5.48257e-13 (fails 37) via swap 1/rlrll
|
||||
2754s [ 71240 evals] best 1.03963e-12 (fails 36) via divide 1/rlllrl
|
||||
2781s [ 71720 evals] best 1.04455e-12 (fails 36) via core_undivide noop
|
||||
2794s [ 72040 evals] best 1.04987e-12 (fails 36) via core_undivide noop
|
||||
2915s [ 75320 evals] best 1.05549e-12 (fails 36) via core_undivide noop
|
||||
2927s [ 75480 evals] best 1.05569e-12 (fails 36) via place_missing noop
|
||||
2942s [ 75960 evals] best 1.0559e-12 (fails 36) via crossover rlrll<->rlrll
|
||||
2989s [ 77320 evals] best 1.05608e-12 (fails 36) via core_undivide noop
|
||||
3122s [ 80840 evals] best 1.05612e-12 (fails 36) via rotate 0/rlrl
|
||||
3148s [ 81400 evals] best 4.19947e-12 (fails 34) via level_retype 0/lrlrr<->1/rlllrlr
|
||||
3171s [ 82120 evals] best 4.22196e-12 (fails 34) via level_compound_fix noop
|
||||
3184s [ 82360 evals] best 4.22276e-12 (fails 34) via level_fix noop
|
||||
3232s [ 83480 evals] best 7.84445e-11 (fails 30) via divide 1/llll
|
||||
3272s [ 84440 evals] best 7.86095e-11 (fails 30) via core_undivide noop
|
||||
3310s [ 85640 evals] best 7.86227e-11 (fails 30) via place_missing noop
|
||||
3323s [ 85960 evals] best 7.86337e-11 (fails 30) via place_missing noop
|
||||
3593s [ 92680 evals] best 7.96266e-11 (fails 30) via level_retype 1/lllrr<->0/rrl
|
||||
3605s [ 92760 evals] best 7.96379e-11 (fails 30) via level_retype 0/lrrlrr<->1/rlrlll
|
||||
3929s [100760 evals] best 1.5021e-10 (fails 29) via swap 1/rlrll
|
||||
4345s [111480 evals] best 1.55004e-10 (fails 29) via level_retype 1/llrrr<->0/lrrllr
|
||||
4485s [115000 evals] best 2.64749e-10 (fails 28) via level_retype 1/llrlrr<->0/rlllrr
|
||||
4498s [115160 evals] best 5.3468e-10 (fails 27) via crossover rrrr<->rrrr
|
||||
4535s [116200 evals] best 5.38728e-10 (fails 27) via core_undivide noop
|
||||
4586s [117400 evals] best 5.4602e-10 (fails 27) via level_fix st1: lvl1/llrrr → lvl0/rllrl
|
||||
4600s [117880 evals] best 5.50955e-10 (fails 27) via core_undivide noop
|
||||
4624s [118520 evals] best 5.56091e-10 (fails 27) via level_fix noop
|
||||
5086s [129560 evals] best 2.35421e-09 (fails 25) via level_retype 0/lrrllr<->1/llrlrr
|
||||
5181s [131800 evals] best 2.35752e-09 (fails 25) via place_missing noop
|
||||
5221s [132760 evals] best 2.35752e-09 (fails 25) via place_missing noop
|
||||
8
examples/harbor-house/ab-8iv-run.log
Normal file
8
examples/harbor-house/ab-8iv-run.log
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
seed=evolved-3M.dom budget=150000 pop=8 workers=4 rng_seeds=[0]
|
||||
[rng 0] slice: fitness=3.523e-14 fails=41 evals=150040 created=15 5835.9s
|
||||
[rng 0] grid : fitness=2.358e-09 fails=25 evals=150040 created=15 5916.8s
|
||||
|
||||
=== SUMMARY (higher fitness = better; fewer fails = better) ===
|
||||
slice: fitness 3.523e-14..3.523e-14 (mean 3.523e-14) fails 41..41 (mean 41.0)
|
||||
grid : fitness 2.358e-09..2.358e-09 (mean 2.358e-09) fails 25..25 (mean 25.0)
|
||||
head-to-head (fails then fitness): {'slice': 0, 'grid': 1, 'tie': 0}
|
||||
114
examples/harbor-house/ab-8iv-slice-rng0.trace
Normal file
114
examples/harbor-house/ab-8iv-slice-rng0.trace
Normal file
|
|
@ -0,0 +1,114 @@
|
|||
15s [ 200 evals] best 2.78368e-25 (fails 78) via seed
|
||||
24s [ 280 evals] best 2.81966e-25 (fails 78) via place_missing noop
|
||||
32s [ 840 evals] best 2.83081e-25 (fails 78) via level_fix noop
|
||||
49s [ 1240 evals] best 2.85681e-25 (fails 78) via undivide 1/rlrll
|
||||
66s [ 1880 evals] best 2.86707e-25 (fails 78) via place_missing noop
|
||||
66s [ 1960 evals] best 4.17745e-25 (fails 77) via crossover rlll<->llr
|
||||
74s [ 2280 evals] best 1.76161e-24 (fails 75) via rotate 0/ll
|
||||
90s [ 3080 evals] best 4.67378e-24 (fails 74) via undivide 0/rllll
|
||||
118s [ 4120 evals] best 1.46076e-23 (fails 72) via level_retype 1/lrll<->0/lrlrr
|
||||
144s [ 5160 evals] best 1.36798e-22 (fails 69) via place_missing n -> rllrr
|
||||
309s [ 9880 evals] best 1.43611e-22 (fails 69) via crossover rlrr<->rlrr
|
||||
345s [ 11000 evals] best 5.37852e-22 (fails 67) via place_missing n -> rllrrr
|
||||
359s [ 11160 evals] best 5.45342e-22 (fails 67) via place_missing noop
|
||||
359s [ 11400 evals] best 7.04364e-22 (fails 67) via crossover lrrlr<->lrrr
|
||||
398s [ 12520 evals] best 2.63914e-21 (fails 65) via place_missing t -> rllrrrr
|
||||
514s [ 16360 evals] best 1.955e-20 (fails 62) via undivide 1/lrrlr
|
||||
533s [ 17000 evals] best 1.99161e-20 (fails 62) via crossover rrrr<->rrrr
|
||||
542s [ 17320 evals] best 2.02902e-20 (fails 62) via core_undivide noop
|
||||
543s [ 17400 evals] best 4.31819e-20 (fails 61) via rotate 0/lrrl
|
||||
582s [ 18760 evals] best 1.53608e-19 (fails 59) via place_missing r -> llrll
|
||||
599s [ 19160 evals] best 1.54019e-19 (fails 59) via core_undivide noop
|
||||
646s [ 20840 evals] best 1.55586e-19 (fails 59) via level_compound_fix noop
|
||||
700s [ 22840 evals] best 1.55593e-19 (fails 59) via level_compound_fix noop
|
||||
719s [ 23320 evals] best 1.55798e-19 (fails 59) via level_fix noop
|
||||
728s [ 23720 evals] best 1.5615e-19 (fails 59) via core_undivide noop
|
||||
747s [ 24280 evals] best 1.57193e-19 (fails 59) via rotate 0/lrlr
|
||||
769s [ 24920 evals] best 1.57705e-19 (fails 59) via level_compound_fix noop
|
||||
780s [ 25400 evals] best 6.03009e-19 (fails 57) via place_missing t -> rllrrrr
|
||||
807s [ 26200 evals] best 6.03785e-19 (fails 57) via level_fix noop
|
||||
827s [ 27000 evals] best 6.0458e-19 (fails 57) via core_undivide noop
|
||||
837s [ 27240 evals] best 6.0913e-19 (fails 57) via place_missing t -> rllrrrr
|
||||
846s [ 27560 evals] best 6.11018e-19 (fails 57) via crossover rllrrrr<->rllrrrr
|
||||
866s [ 28120 evals] best 6.13019e-19 (fails 57) via core_undivide noop
|
||||
879s [ 28680 evals] best 6.50627e-19 (fails 57) via retype 1/llrlrl->st1
|
||||
928s [ 30200 evals] best 6.52736e-19 (fails 57) via core_undivide noop
|
||||
960s [ 31160 evals] best 6.55054e-19 (fails 57) via place_missing noop
|
||||
980s [ 31720 evals] best 6.57339e-19 (fails 57) via crossover rllrr<->rllrr
|
||||
1032s [ 33320 evals] best 6.59183e-19 (fails 57) via place_missing noop
|
||||
1064s [ 34200 evals] best 6.60911e-19 (fails 57) via core_undivide noop
|
||||
1080s [ 34600 evals] best 6.62724e-19 (fails 57) via place_missing noop
|
||||
1101s [ 35160 evals] best 1.34695e-18 (fails 56) via level_retype 1/lrrrr<->0/rllrrl
|
||||
1130s [ 36200 evals] best 1.35084e-18 (fails 56) via swap 1/llrr
|
||||
1222s [ 39080 evals] best 1.3536e-18 (fails 56) via core_undivide noop
|
||||
1263s [ 40280 evals] best 1.35887e-18 (fails 56) via retype 0/rrl->O
|
||||
1296s [ 41240 evals] best 1.37684e-18 (fails 56) via place_missing noop
|
||||
1317s [ 41960 evals] best 2.75612e-18 (fails 55) via core_undivide noop
|
||||
1336s [ 42520 evals] best 2.76622e-18 (fails 55) via crossover llllrr<->llllrr
|
||||
1354s [ 43160 evals] best 2.76719e-18 (fails 55) via core_undivide noop
|
||||
1362s [ 43480 evals] best 2.7673e-18 (fails 55) via place_missing noop
|
||||
1371s [ 44040 evals] best 2.76773e-18 (fails 55) via place_missing noop
|
||||
1418s [ 45480 evals] best 2.89565e-18 (fails 55) via undivide 0/lrlr
|
||||
1458s [ 46920 evals] best 2.89592e-18 (fails 55) via core_undivide noop
|
||||
1478s [ 47480 evals] best 2.91016e-18 (fails 55) via divide 1/rlrlr
|
||||
1688s [ 52600 evals] best 4.62272e-17 (fails 51) via place_missing n -> rllrl
|
||||
1861s [ 56680 evals] best 4.63445e-17 (fails 51) via place_missing noop
|
||||
1909s [ 58120 evals] best 4.736e-17 (fails 51) via crossover lrlrr<->lrll
|
||||
1957s [ 58840 evals] best 4.75383e-17 (fails 51) via place_missing noop
|
||||
1998s [ 60040 evals] best 4.77234e-17 (fails 51) via level_retype 0/rllrrrrr<->1/llrllrr
|
||||
2024s [ 60680 evals] best 4.78944e-17 (fails 51) via place_missing noop
|
||||
2094s [ 62200 evals] best 4.81054e-17 (fails 51) via core_undivide noop
|
||||
2161s [ 63560 evals] best 7.68517e-16 (fails 47) via rotate 0/lrrl
|
||||
2176s [ 63800 evals] best 7.7191e-16 (fails 47) via place_missing noop
|
||||
2218s [ 64600 evals] best 7.75426e-16 (fails 47) via place_missing noop
|
||||
2236s [ 64920 evals] best 7.79234e-16 (fails 47) via place_missing noop
|
||||
2273s [ 65800 evals] best 7.82619e-16 (fails 47) via place_missing noop
|
||||
2387s [ 67960 evals] best 7.86104e-16 (fails 47) via core_undivide noop
|
||||
2485s [ 69560 evals] best 7.89754e-16 (fails 47) via swap 1/rlllr
|
||||
2669s [ 72600 evals] best 7.9387e-16 (fails 47) via place_missing noop
|
||||
2740s [ 74040 evals] best 1.09506e-15 (fails 46) via retype 0/rllll->st1
|
||||
2755s [ 74440 evals] best 1.10394e-15 (fails 46) via crossover lr<->lr
|
||||
2784s [ 74840 evals] best 1.11372e-15 (fails 46) via place_missing noop
|
||||
2819s [ 75480 evals] best 1.12392e-15 (fails 46) via place_missing noop
|
||||
2840s [ 75800 evals] best 1.13127e-15 (fails 46) via core_undivide noop
|
||||
2948s [ 78040 evals] best 1.14356e-15 (fails 46) via place_missing noop
|
||||
2965s [ 78600 evals] best 1.14876e-15 (fails 46) via place_missing noop
|
||||
2977s [ 78760 evals] best 1.15416e-15 (fails 46) via core_undivide noop
|
||||
3017s [ 79720 evals] best 1.15977e-15 (fails 46) via place_missing noop
|
||||
3081s [ 81400 evals] best 1.16386e-15 (fails 46) via rotate 0/rr
|
||||
3096s [ 81640 evals] best 1.16556e-15 (fails 46) via level_retype 0/rlllr<->1/llrlrr
|
||||
3121s [ 82360 evals] best 1.17153e-15 (fails 46) via swap 0/rlrlr
|
||||
3184s [ 84040 evals] best 1.17767e-15 (fails 46) via core_undivide noop
|
||||
3222s [ 85000 evals] best 1.18184e-15 (fails 46) via core_undivide noop
|
||||
3245s [ 85480 evals] best 1.18814e-15 (fails 46) via place_missing noop
|
||||
3301s [ 86840 evals] best 1.19454e-15 (fails 46) via crossover lrrr<->lrrr
|
||||
3313s [ 87080 evals] best 1.201e-15 (fails 46) via place_missing noop
|
||||
3365s [ 88360 evals] best 1.20745e-15 (fails 46) via place_missing noop
|
||||
3467s [ 90520 evals] best 1.2138e-15 (fails 46) via crossover rlrlrl<->rlrlrr
|
||||
3481s [ 91000 evals] best 1.21994e-15 (fails 46) via core_undivide noop
|
||||
3508s [ 91560 evals] best 1.22574e-15 (fails 46) via core_undivide noop
|
||||
3508s [ 91640 evals] best 8.63614e-15 (fails 43) via level_retype 1/llll<->0/rrl
|
||||
3730s [ 97080 evals] best 8.69346e-15 (fails 43) via swap 0/llllr
|
||||
3756s [ 97720 evals] best 8.7509e-15 (fails 43) via place_missing noop
|
||||
3858s [100360 evals] best 8.80776e-15 (fails 43) via rotate 0/llllr
|
||||
3882s [100760 evals] best 8.86311e-15 (fails 43) via core_undivide noop
|
||||
3896s [101080 evals] best 1.70808e-14 (fails 42) via crossover lrrrr<->lrll
|
||||
3921s [101880 evals] best 1.71667e-14 (fails 42) via place_missing noop
|
||||
4057s [105240 evals] best 1.72459e-14 (fails 42) via crossover lrlr<->lrlr
|
||||
4132s [107320 evals] best 1.73156e-14 (fails 42) via place_missing noop
|
||||
4145s [107720 evals] best 1.73708e-14 (fails 42) via place_missing noop
|
||||
4196s [109000 evals] best 1.74162e-14 (fails 42) via place_missing noop
|
||||
4233s [109800 evals] best 1.74389e-14 (fails 42) via place_missing noop
|
||||
4272s [110760 evals] best 1.74447e-14 (fails 42) via place_missing noop
|
||||
4336s [112520 evals] best 1.75219e-14 (fails 42) via rotate 0/rlrlr
|
||||
4361s [112920 evals] best 1.75253e-14 (fails 42) via undivide 1/llrllr
|
||||
4415s [114440 evals] best 1.76097e-14 (fails 42) via core_undivide noop
|
||||
4451s [115320 evals] best 1.76189e-14 (fails 42) via crossover rlr<->rlr
|
||||
4489s [116200 evals] best 1.77166e-14 (fails 42) via place_missing noop
|
||||
4514s [116840 evals] best 1.78312e-14 (fails 42) via place_missing noop
|
||||
4576s [118360 evals] best 1.78941e-14 (fails 42) via place_missing noop
|
||||
4740s [122600 evals] best 1.79859e-14 (fails 42) via rotate 1/llrlr
|
||||
4792s [123880 evals] best 3.50161e-14 (fails 41) via divide 1/llrlrl
|
||||
4815s [124440 evals] best 3.51369e-14 (fails 41) via place_missing noop
|
||||
4827s [124840 evals] best 3.5156e-14 (fails 41) via core_undivide noop
|
||||
5698s [146680 evals] best 3.52342e-14 (fails 41) via swap 1/llrlrl
|
||||
488
examples/harbor-house/coldstart-500000-s0.dom
Normal file
488
examples/harbor-house/coldstart-500000-s0.dom
Normal file
|
|
@ -0,0 +1,488 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4259239623548846
|
||||
- 0.4259239623548846
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5145119957760619
|
||||
- 0.5145119957760619
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7372477547323839
|
||||
- 0.7372477547323839
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.28333622842211925
|
||||
- 0.28333622842211925
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: cr1
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5059213472651911
|
||||
- 0.5059213472651911
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.7384537617532285
|
||||
- 0.7384537617532285
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8627536956652582
|
||||
- 0.8627536956652582
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.4768854382205807
|
||||
- 0.4768854382205807
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.3631426312336177
|
||||
- 0.3631426312336177
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5061221341235115
|
||||
- 0.5061221341235115
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
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: 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.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.3458501249843992
|
||||
- 0.3458501249843992
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 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
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6887574841111406
|
||||
- 0.6887574841111406
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 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:
|
||||
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:
|
||||
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
|
||||
60
examples/harbor-house/coldstart-500000-s0.log
Normal file
60
examples/harbor-house/coldstart-500000-s0.log
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
WARNING: 418 m2 per storey needs ~86 m of daylit wall; the plot's non-private perimeter gives 53 m. Roughly 49 m2 of courtyard closes the gap. (DESIGN.md §38.3)
|
||||
seed : /home/bruno/src/homemaker-layout/examples/harbor-house/init.dom
|
||||
programme : harbor-house
|
||||
budget : 500000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 1
|
||||
rng seed : 0
|
||||
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/harbor-house/coldstart-500000-s0.dom
|
||||
[ 80 evals] best 4.30115e-34 (fails 101) via construct/0
|
||||
[ 240 evals] best 6.34775e-22 (fails 62) via construct/2
|
||||
[ 1760 evals] best 1.0381e-21 (fails 61) via swap 0/lrr
|
||||
[ 1920 evals] best 1.07712e-21 (fails 61) via rotate 0/lrll
|
||||
[ 2720 evals] best 1.67039e-20 (fails 58) via level_retype 1/lrll<->0/rllr
|
||||
[ 2960 evals] best 1.75641e-20 (fails 58) via retype 1/lrrl->ws1
|
||||
[ 5120 evals] best 1.79841e-20 (fails 58) via core_undivide noop
|
||||
[ 5280 evals] best 3.39494e-20 (fails 57) via crossover rllll<->rllr
|
||||
[ 5440 evals] best 3.5999e-20 (fails 57) via core_divide noop
|
||||
[ 6720 evals] best 6.90053e-20 (fails 56) via rotate 0/ll
|
||||
[ 7840 evals] best 7.05248e-20 (fails 56) via core_divide noop
|
||||
[ 8080 evals] best 7.16548e-20 (fails 56) via level_retype 1/rlrl<->0/rllr
|
||||
[ 9600 evals] best 1.35685e-18 (fails 52) via retype 0/lrrl->da1
|
||||
[ 10000 evals] best 1.41061e-18 (fails 52) via core_divide noop
|
||||
[ 15200 evals] best 1.43527e-18 (fails 52) via core_undivide noop
|
||||
[ 18400 evals] best 4.70767e-18 (fails 50) via swap 0/rrr
|
||||
[ 18560 evals] best 4.78877e-18 (fails 50) via crossover rlrrl<->rlllr
|
||||
[ 19200 evals] best 4.96874e-18 (fails 50) via rotate 0/rrl
|
||||
[ 22560 evals] best 5.00177e-18 (fails 50) via core_undivide noop
|
||||
[ 23360 evals] best 5.02163e-18 (fails 50) via retype 1/rlll->of
|
||||
[ 24880 evals] best 5.02826e-18 (fails 50) via core_divide noop
|
||||
[ 27200 evals] best 5.02858e-18 (fails 50) via core_undivide noop
|
||||
[ 29600 evals] best 8.13881e-18 (fails 50) via level_retype 1/rlrl<->0/llrr
|
||||
[ 30960 evals] best 8.2257e-18 (fails 50) via core_undivide noop
|
||||
[ 37440 evals] best 8.31661e-18 (fails 50) via core_divide noop
|
||||
[ 39200 evals] best 8.34909e-18 (fails 50) via crossover rlr<->rlr
|
||||
[ 40240 evals] best 8.43219e-18 (fails 50) via core_undivide noop
|
||||
[ 46640 evals] best 8.44241e-18 (fails 50) via core_undivide noop
|
||||
[ 50800 evals] best 9.76987e-18 (fails 50) via crossover rllll<->llrr
|
||||
[ 51920 evals] best 1.00136e-17 (fails 49) via rotate 0/rll
|
||||
[ 52000 evals] best 1.00136e-17 (fails 49) via core_divide noop
|
||||
[ 52400 evals] best 1.01413e-17 (fails 49) via swap 0/llr
|
||||
[ 61440 evals] best 4.26469e-17 (fails 48) via rotate 0/rlrl
|
||||
[ 62800 evals] best 4.28559e-17 (fails 48) via core_divide noop
|
||||
[ 63840 evals] best 4.2856e-17 (fails 48) via retype 0/lrlll->da1
|
||||
[ 66560 evals] best 4.28816e-17 (fails 48) via core_undivide noop
|
||||
[ 67440 evals] best 4.2888e-17 (fails 48) via rotate 0/rlll
|
||||
[ 67680 evals] best 1.73994e-16 (fails 46) via level_retype 0/rllll<->1/rrr
|
||||
[ 70160 evals] best 1.73995e-16 (fails 46) via core_undivide noop
|
||||
[ 72240 evals] best 1.73995e-16 (fails 46) via crossover lrrl<->rrll
|
||||
[ 75680 evals] best 1.73995e-16 (fails 46) via core_undivide noop
|
||||
448
examples/harbor-house/coldstart-500000-s1.dom
Normal file
448
examples/harbor-house/coldstart-500000-s1.dom
Normal file
|
|
@ -0,0 +1,448 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3447706979333924
|
||||
- 0.3447706979333924
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4620968086285896
|
||||
- 0.4620968086285896
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7333622728278679
|
||||
- 0.7333622728278679
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3685378224774272
|
||||
- 0.3685378224774272
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6726120367713806
|
||||
- 0.6726120367713806
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.4878348762492206
|
||||
- 0.4878348762492206
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5327266765953544
|
||||
- 0.5327266765953544
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6295885542496246
|
||||
- 0.6295885542496246
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.346488895346572
|
||||
- 0.346488895346572
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5736030442061457
|
||||
- 0.5736030442061457
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7754091126054303
|
||||
- 0.7754091126054303
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7618823674092534
|
||||
- 0.7618823674092534
|
||||
l:
|
||||
type: cr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5694286299553355
|
||||
- 0.5694286299553355
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6400166014931463
|
||||
- 0.6400166014931463
|
||||
l:
|
||||
type: of
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8169932516637662
|
||||
- 0.8169932516637662
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8143711037723886
|
||||
- 0.8143711037723886
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.20740642422839703
|
||||
- 0.20740642422839703
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7678486305056437
|
||||
- 0.7678486305056437
|
||||
l:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5942284555193714
|
||||
- 0.5942284555193714
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4222096556781277
|
||||
- 0.4222096556781277
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5125
|
||||
- 0.5125
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5253125
|
||||
- 0.5253125
|
||||
l:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.36206707098566404
|
||||
- 0.36206707098566404
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4947182428246264
|
||||
- 0.4947182428246264
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.538125
|
||||
- 0.538125
|
||||
l:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6691962396683705
|
||||
- 0.6691962396683705
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5934000767031041
|
||||
- 0.5934000767031041
|
||||
l:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.6979469153542825
|
||||
- 0.6979469153542825
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: of
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3496587703571358
|
||||
- 0.3496587703571358
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4752819629962712
|
||||
- 0.4752819629962712
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2600355044813971
|
||||
- 0.2600355044813971
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3
|
||||
- 0.3
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7891502854072869
|
||||
- 0.7891502854072869
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4263589168351488
|
||||
- 0.4263589168351488
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5869817670374274
|
||||
- 0.5869817670374274
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6074393728221003
|
||||
- 0.6074393728221003
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8707490344743036
|
||||
- 0.8707490344743036
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4
|
||||
- 0.4
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: r
|
||||
rotation: 1
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6663490741716345
|
||||
- 0.6663490741716345
|
||||
l:
|
||||
type: r
|
||||
rotation: 1
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7134531618423475
|
||||
- 0.7134531618423475
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5816983284646627
|
||||
- 0.5816983284646627
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3595520659646767
|
||||
- 0.3595520659646767
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.6207610635692363
|
||||
- 0.6207610635692363
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3
|
||||
- 0.3
|
||||
l:
|
||||
type: li1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3401127568312368
|
||||
- 0.3401127568312368
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6818181818181818
|
||||
- 0.6818181818181818
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3338646386958839
|
||||
- 0.3338646386958839
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5458804216964745
|
||||
- 0.5458804216964745
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5985054852708556
|
||||
- 0.5985054852708556
|
||||
l:
|
||||
type: ut1
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.210849714592713
|
||||
- 0.210849714592713
|
||||
l:
|
||||
type: st2
|
||||
rotation: 2
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
138
examples/harbor-house/coldstart-500000-s1.log
Normal file
138
examples/harbor-house/coldstart-500000-s1.log
Normal file
|
|
@ -0,0 +1,138 @@
|
|||
WARNING: 418 m2 per storey needs ~86 m of daylit wall; the plot's non-private perimeter gives 53 m. Roughly 49 m2 of courtyard closes the gap. (DESIGN.md §38.3)
|
||||
seed : /home/bruno/src/homemaker-layout/examples/harbor-house/init.dom
|
||||
programme : harbor-house
|
||||
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/harbor-house/coldstart-500000-s1.dom
|
||||
[ 80 evals] best 1.97416e-37 (fails 113) via construct/0
|
||||
[ 160 evals] best 7.00325e-25 (fails 74) via construct/1
|
||||
[ 800 evals] best 6.80772e-23 (fails 69) via construct/9
|
||||
[ 4320 evals] best 9.1398e-23 (fails 69) via crossover rrrl<->lrlrl
|
||||
[ 5520 evals] best 3.57821e-22 (fails 67) via level_retype 1/lrlr<->0/lrrr
|
||||
[ 5760 evals] best 3.65686e-22 (fails 67) via level_fix noop
|
||||
[ 6800 evals] best 3.79298e-22 (fails 67) via level_fix noop
|
||||
[ 7760 evals] best 3.8619e-22 (fails 67) via level_fix noop
|
||||
[ 7840 evals] best 1.7705e-21 (fails 65) via swap 0/rrl
|
||||
[ 7920 evals] best 2.74628e-21 (fails 64) via level_compound_fix noop
|
||||
[ 8800 evals] best 5.85324e-21 (fails 64) via core_divide rlrl (2 floors)
|
||||
[ 12560 evals] best 1.35161e-20 (fails 62) via divide 1/rlrr
|
||||
[ 12800 evals] best 3.34685e-21 (fails 61) via divide 1/rlrl
|
||||
[ 13280 evals] best 5.60778e-20 (fails 60) via rotate 0/ll
|
||||
[ 13440 evals] best 1.11899e-20 (fails 59) via core_divide noop
|
||||
[ 15600 evals] best 1.12856e-20 (fails 59) via level_retype 0/llrr<->1/rlrlr
|
||||
[ 16320 evals] best 9.59246e-20 (fails 56) via crossover lrl<->rlll
|
||||
[ 17200 evals] best 3.64982e-19 (fails 54) via divide 1/rrrl
|
||||
[ 17760 evals] best 3.67434e-19 (fails 54) via core_undivide noop
|
||||
[ 19040 evals] best 1.24538e-17 (fails 49) via place_missing r -> rlrr
|
||||
[ 19920 evals] best 2.27675e-17 (fails 48) via crossover llrl<->llrr
|
||||
[ 22080 evals] best 4.47951e-17 (fails 47) via crossover llrl<->rlrl
|
||||
[ 26160 evals] best 4.48735e-17 (fails 47) via core_undivide noop
|
||||
[ 26640 evals] best 4.51597e-17 (fails 47) via crossover rllll<->rrll
|
||||
[ 27840 evals] best 5.54956e-17 (fails 47) via core_divide noop
|
||||
[ 33840 evals] best 5.58344e-17 (fails 47) via crossover rlr<->rlr
|
||||
[ 34720 evals] best 5.59502e-17 (fails 47) via retype 0/lllrl->t
|
||||
[ 36720 evals] best 5.62216e-17 (fails 47) via retype 1/lll->da1
|
||||
[ 37760 evals] best 5.62658e-17 (fails 47) via core_undivide noop
|
||||
[ 39680 evals] best 2.20153e-16 (fails 45) via swap 0/llr
|
||||
[ 45520 evals] best 2.20165e-16 (fails 45) via core_undivide noop
|
||||
[ 45920 evals] best 2.2103e-16 (fails 45) via core_divide noop
|
||||
[ 47200 evals] best 8.87603e-16 (fails 43) via core_undivide noop
|
||||
[ 53120 evals] best 7.82728e-15 (fails 40) via level_retype 1/rlrll<->0/llll
|
||||
[ 54480 evals] best 7.82772e-15 (fails 40) via core_divide noop
|
||||
[ 63120 evals] best 7.83773e-15 (fails 40) via swap 0/rrl
|
||||
[ 63200 evals] best 8.01003e-15 (fails 40) via core_divide noop
|
||||
[ 66240 evals] best 8.17685e-15 (fails 40) via core_undivide noop
|
||||
[ 67840 evals] best 1.57621e-14 (fails 39) via swap 0/lllr
|
||||
[ 67920 evals] best 1.60963e-14 (fails 39) via crossover lrrr<->rlrrr
|
||||
[ 70720 evals] best 1.61878e-14 (fails 39) via core_undivide noop
|
||||
[ 71360 evals] best 2.13599e-14 (fails 39) via crossover lr<->lr
|
||||
[ 76320 evals] best 2.17444e-14 (fails 39) via core_divide noop
|
||||
[ 76960 evals] best 3.01548e-14 (fails 38) via swap 0/rlrr
|
||||
[ 77120 evals] best 7.07557e-14 (fails 37) via core_divide noop
|
||||
[ 78240 evals] best 8.0242e-14 (fails 37) via level_retype 1/llrl<->0/rllll
|
||||
[ 78880 evals] best 8.95492e-14 (fails 37) via core_undivide noop
|
||||
[ 79920 evals] best 1.79545e-13 (fails 36) via core_undivide noop
|
||||
[ 81440 evals] best 3.28852e-13 (fails 35) via retype 1/rlrrl->me1
|
||||
[ 83200 evals] best 3.33778e-13 (fails 35) via level_retype 1/rlrrl<->0/rrlr
|
||||
[ 86800 evals] best 3.4079e-13 (fails 35) via swap 0/lllr
|
||||
[ 87520 evals] best 3.41583e-13 (fails 35) via retype 1/rrrlr->ut1
|
||||
[ 88640 evals] best 3.47403e-13 (fails 35) via core_undivide noop
|
||||
[ 89760 evals] best 1.43975e-12 (fails 33) via rotate 0/lllr
|
||||
[ 96800 evals] best 2.74475e-12 (fails 32) via core_undivide noop
|
||||
[ 97520 evals] best 2.79491e-12 (fails 32) via core_divide noop
|
||||
[ 99200 evals] best 5.60626e-12 (fails 31) via crossover rlllr<->rlllr
|
||||
[100640 evals] best 5.6397e-12 (fails 31) via level_retype 1/rrlrl<->0/rllrl
|
||||
[100720 evals] best 5.69106e-12 (fails 31) via crossover l<->l
|
||||
[103600 evals] best 5.72518e-12 (fails 31) via core_undivide noop
|
||||
[104000 evals] best 5.72765e-12 (fails 31) via crossover rrrl<->llrr
|
||||
[104880 evals] best 1.13649e-11 (fails 30) via swap 0/rlrr
|
||||
[105760 evals] best 1.14675e-11 (fails 30) via core_undivide noop
|
||||
[106720 evals] best 1.15509e-11 (fails 30) via core_undivide noop
|
||||
[112480 evals] best 1.1616e-11 (fails 30) via swap 0/rlrr
|
||||
[115600 evals] best 1.16278e-11 (fails 30) via core_divide noop
|
||||
[122080 evals] best 1.16391e-11 (fails 30) via core_undivide noop
|
||||
[122720 evals] best 1.1641e-11 (fails 30) via crossover rlrrl<->rlllr
|
||||
[126000 evals] best 1.22712e-11 (fails 30) via rotate 0/lllr
|
||||
[127360 evals] best 1.22713e-11 (fails 30) via crossover rlllr<->rlllr
|
||||
[129120 evals] best 1.22713e-11 (fails 30) via core_undivide noop
|
||||
[139520 evals] best 2.45561e-11 (fails 29) via divide 1/lrrl
|
||||
[141680 evals] best 2.49366e-11 (fails 29) via core_divide noop
|
||||
[152400 evals] best 2.52189e-11 (fails 29) via retype 1/lrrll->ut1
|
||||
[156160 evals] best 2.52213e-11 (fails 29) via core_undivide noop
|
||||
[158000 evals] best 2.52214e-11 (fails 29) via level_retype 1/lrlr<->0/lrlr
|
||||
[158640 evals] best 2.52946e-11 (fails 29) via core_undivide noop
|
||||
[161920 evals] best 2.52948e-11 (fails 29) via core_undivide noop
|
||||
[176480 evals] best 2.53112e-11 (fails 29) via core_divide noop
|
||||
[188480 evals] best 2.53113e-11 (fails 29) via crossover lrlr<->lrlr
|
||||
[192480 evals] best 2.70108e-11 (fails 29) via retype 0/llrr->O
|
||||
[220400 evals] best 5.31971e-11 (fails 28) via retype 0/lrrll->O
|
||||
[221680 evals] best 5.32438e-11 (fails 28) via core_undivide noop
|
||||
|
||||
--- finishing (homemaker-py-3l6): unfold + polish 250000 evals ---
|
||||
[finish] unfold: materialised 14 shared-leaf copies
|
||||
[ 200 evals] best 1.10357e-23 (fails 70) via seed
|
||||
[ 520 evals] best 7.90847e-23 (fails 67) via level_compound_fix st1: lvl1 → lvl0/rllrl
|
||||
[ 1560 evals] best 8.0677e-23 (fails 67) via core_divide noop
|
||||
[ 2280 evals] best 8.09024e-23 (fails 67) via core_undivide noop
|
||||
[ 3160 evals] best 6.36622e-22 (fails 64) via level_compound_fix r: lvl0 → lvl1/rllrr
|
||||
[ 4200 evals] best 1.16291e-21 (fails 63) via level_retype 0/rllrrrr<->1/rrllrr
|
||||
[ 4680 evals] best 4.50812e-21 (fails 61) via crossover lllrrrl<->llrr
|
||||
[ 5640 evals] best 9.50892e-21 (fails 60) via undivide 0/llrlr
|
||||
[ 9400 evals] best 6.41079e-20 (fails 57) via retype 0/rllll->st2
|
||||
[ 9480 evals] best 6.45739e-20 (fails 57) via retype 1/lrrrrl->t
|
||||
[ 15720 evals] best 6.50643e-20 (fails 57) via core_divide noop
|
||||
[ 16200 evals] best 6.55803e-20 (fails 57) via core_divide noop
|
||||
[ 19000 evals] best 1.25528e-19 (fails 56) via undivide 1/rrrl
|
||||
[ 19640 evals] best 1.26465e-19 (fails 56) via core_divide noop
|
||||
[ 19720 evals] best 3.14136e-19 (fails 55) via level_retype 0/lrrll<->1/llll
|
||||
[ 19880 evals] best 3.16683e-19 (fails 55) via core_divide noop
|
||||
[ 21800 evals] best 3.19364e-19 (fails 55) via core_undivide noop
|
||||
[ 22200 evals] best 3.22186e-19 (fails 55) via retype 1/lrrrrr->st2
|
||||
[ 24280 evals] best 3.25155e-19 (fails 55) via core_divide noop
|
||||
[ 24520 evals] best 3.2828e-19 (fails 55) via core_undivide noop
|
||||
[ 27560 evals] best 3.28746e-19 (fails 55) via swap 1/lrrrr
|
||||
[ 29080 evals] best 3.694e-19 (fails 55) via core_undivide noop
|
||||
[ 29400 evals] best 3.70022e-19 (fails 55) via retype 0/lllrrrl->of
|
||||
[ 32120 evals] best 3.70789e-19 (fails 55) via core_undivide noop
|
||||
[ 33640 evals] best 6.57751e-19 (fails 54) via core_divide noop
|
||||
[ 39560 evals] best 2.18305e-18 (fails 52) via level_retype 0/lllrl<->1/rrlrl
|
||||
[ 39640 evals] best 2.19058e-18 (fails 52) via core_undivide noop
|
||||
[ 43560 evals] best 2.19358e-18 (fails 52) via core_undivide noop
|
||||
[ 45480 evals] best 4.07392e-18 (fails 51) via undivide 0/rllrr
|
||||
[ 45560 evals] best 4.28145e-18 (fails 51) via swap 0/lllrrr
|
||||
[ 46600 evals] best 1.5216e-17 (fails 49) via level_retype 0/rrrr<->1/lrrrrl
|
||||
[ 49720 evals] best 1.61723e-17 (fails 49) via crossover rrrr<->rlllrl
|
||||
[ 50920 evals] best 1.6221e-17 (fails 49) via core_undivide noop
|
||||
448
examples/harbor-house/coldstart-500000-s2.dom
Normal file
448
examples/harbor-house/coldstart-500000-s2.dom
Normal file
|
|
@ -0,0 +1,448 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.6874610386484389
|
||||
- 0.6874610386484389
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2280937436613768
|
||||
- 0.2280937436613768
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5501610871830294
|
||||
- 0.5501610871830294
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.7625210938246068
|
||||
- 0.7625210938246068
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.25813360801099805
|
||||
- 0.25813360801099805
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.33221176332557584
|
||||
- 0.33221176332557584
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5641147148833822
|
||||
- 0.5641147148833822
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.33578355513625796
|
||||
- 0.33578355513625796
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.43366532078476366
|
||||
- 0.43366532078476366
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8498837031667675
|
||||
- 0.8498837031667675
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.8892175882819691
|
||||
- 0.8892175882819691
|
||||
l:
|
||||
type: cr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8677868254305496
|
||||
- 0.8677868254305496
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.14311549418230354
|
||||
- 0.14311549418230354
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5291738964225459
|
||||
- 0.5291738964225459
|
||||
l:
|
||||
type: of
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6233177548828126
|
||||
- 0.6233177548828126
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.36160216255540684
|
||||
- 0.36160216255540684
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.549017917538392
|
||||
- 0.549017917538392
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6289158565782637
|
||||
- 0.6289158565782637
|
||||
l:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.46123163039245607
|
||||
- 0.46123163039245607
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6350095670424352
|
||||
- 0.6350095670424352
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.26561003030770847
|
||||
- 0.26561003030770847
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7129605090656834
|
||||
- 0.7129605090656834
|
||||
l:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.501911014155332
|
||||
- 0.501911014155332
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6104391151107456
|
||||
- 0.6104391151107456
|
||||
l:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: da1
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6395508396772783
|
||||
- 0.6395508396772783
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7139724896730562
|
||||
- 0.7139724896730562
|
||||
l:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
type: of
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5283960567238627
|
||||
- 0.5283960567238627
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 1
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5149361343277968
|
||||
- 0.5149361343277968
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3507062178961106
|
||||
- 0.3507062178961106
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6809415061597456
|
||||
- 0.6809415061597456
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7891502854072869
|
||||
- 0.7891502854072869
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3
|
||||
- 0.3
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.3
|
||||
- 0.3
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.33578355513625796
|
||||
- 0.33578355513625796
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5036753327043868
|
||||
- 0.5036753327043868
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.25
|
||||
- 0.25
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3
|
||||
- 0.3
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.43979131341425537
|
||||
- 0.43979131341425537
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5804993563162023
|
||||
- 0.5804993563162023
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6918932843804633
|
||||
- 0.6918932843804633
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3333333333333333
|
||||
- 0.3333333333333333
|
||||
l:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5162672160219968
|
||||
- 0.5162672160219968
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3129107734502527
|
||||
- 0.3129107734502527
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.36063785448514774
|
||||
- 0.36063785448514774
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.47368421052631576
|
||||
- 0.47368421052631576
|
||||
l:
|
||||
type: li1
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5442279297292193
|
||||
- 0.5442279297292193
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.1901725227372534
|
||||
- 0.1901725227372534
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6818181818181818
|
||||
- 0.6818181818181818
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3571923800852189
|
||||
- 0.3571923800852189
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5227205562222715
|
||||
- 0.5227205562222715
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: ut1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6404479340353234
|
||||
- 0.6404479340353234
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
307
examples/harbor-house/coldstart-500000-s2.log
Normal file
307
examples/harbor-house/coldstart-500000-s2.log
Normal file
|
|
@ -0,0 +1,307 @@
|
|||
WARNING: 418 m2 per storey needs ~86 m of daylit wall; the plot's non-private perimeter gives 53 m. Roughly 49 m2 of courtyard closes the gap. (DESIGN.md §38.3)
|
||||
seed : /home/bruno/src/homemaker-layout/examples/harbor-house/init.dom
|
||||
programme : harbor-house
|
||||
budget : 500000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 1
|
||||
rng seed : 2
|
||||
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/harbor-house/coldstart-500000-s2.dom
|
||||
[ 80 evals] best 1.05967e-31 (fails 96) via construct/0
|
||||
[ 240 evals] best 2.81838e-21 (fails 58) via construct/2
|
||||
[ 1840 evals] best 1.08828e-20 (fails 56) via swap 0/rrl
|
||||
[ 2000 evals] best 2.18589e-20 (fails 55) via swap 0/lrll
|
||||
[ 7680 evals] best 2.22979e-20 (fails 55) via core_undivide noop
|
||||
[ 8320 evals] best 2.27491e-20 (fails 55) via level_fix noop
|
||||
[ 8560 evals] best 5.4761e-20 (fails 54) via swap 0/rrr
|
||||
[ 9440 evals] best 5.58534e-20 (fails 54) via core_undivide noop
|
||||
[ 10720 evals] best 2.15034e-19 (fails 52) via crossover rlr<->rrl
|
||||
[ 14400 evals] best 4.08743e-19 (fails 52) via core_divide noop
|
||||
[ 15120 evals] best 4.18415e-19 (fails 52) via core_divide noop
|
||||
[ 15680 evals] best 4.27242e-19 (fails 52) via core_undivide noop
|
||||
[ 15760 evals] best 4.34498e-19 (fails 52) via crossover rlrr<->rlrlr
|
||||
[ 15920 evals] best 3.34447e-19 (fails 51) via core_divide noop
|
||||
[ 17920 evals] best 3.46301e-19 (fails 51) via core_divide noop
|
||||
[ 19840 evals] best 6.00603e-18 (fails 48) via crossover rlr<->lrlll
|
||||
[ 21840 evals] best 6.12702e-18 (fails 48) via crossover rlr<->lrlll
|
||||
[ 22640 evals] best 6.20329e-18 (fails 48) via core_divide noop
|
||||
[ 23200 evals] best 6.28822e-18 (fails 48) via core_divide noop
|
||||
[ 23440 evals] best 6.36832e-18 (fails 48) via level_fix noop
|
||||
[ 24640 evals] best 6.36835e-18 (fails 48) via level_retype 1/llll<->0/llll
|
||||
[ 28400 evals] best 6.82917e-18 (fails 48) via swap 0/lrll
|
||||
[ 28560 evals] best 1.141e-17 (fails 47) via divide 0/rrrr
|
||||
[ 28880 evals] best 1.15021e-17 (fails 47) via level_fix noop
|
||||
[ 29680 evals] best 1.15671e-17 (fails 47) via core_divide noop
|
||||
[ 31520 evals] best 1.15684e-17 (fails 47) via core_divide noop
|
||||
[ 31680 evals] best 1.16014e-17 (fails 47) via crossover lrllr<->rrlr
|
||||
[ 76800 evals] best 4.93845e-17 (fails 45) via rotate 0/l
|
||||
[ 77920 evals] best 4.97739e-17 (fails 45) via core_divide noop
|
||||
[ 83440 evals] best 5.24758e-17 (fails 45) via level_fix noop
|
||||
[ 84000 evals] best 1.02117e-16 (fails 44) via crossover rllr<->lllr
|
||||
[ 85520 evals] best 1.02502e-16 (fails 44) via core_divide noop
|
||||
[ 87120 evals] best 1.0251e-16 (fails 44) via level_retype 0/rllr<->1/lrrl
|
||||
[112240 evals] best 1.03579e-16 (fails 44) via core_divide noop
|
||||
[121760 evals] best 1.82946e-16 (fails 43) via retype 0/lrllr->n
|
||||
[122000 evals] best 1.99829e-16 (fails 43) via crossover rrl<->lrrr
|
||||
[122080 evals] best 2.00702e-16 (fails 43) via core_undivide noop
|
||||
[135680 evals] best 2.05943e-16 (fails 43) via crossover rrrr<->rrrr
|
||||
[149280 evals] best 2.09028e-16 (fails 43) via rotate 0/lrrr
|
||||
[150560 evals] best 2.35877e-16 (fails 43) via crossover ll<->ll
|
||||
[151040 evals] best 2.37613e-16 (fails 43) via core_undivide noop
|
||||
[179840 evals] best 2.62645e-16 (fails 43) via core_divide noop
|
||||
[180960 evals] best 5.11898e-16 (fails 42) via core_divide noop
|
||||
[184560 evals] best 5.13843e-16 (fails 42) via core_undivide noop
|
||||
[209360 evals] best 5.87161e-16 (fails 42) via undivide 0/rrrr
|
||||
[267440 evals] best 8.76692e-16 (fails 41) via swap 0/rll
|
||||
[271440 evals] best 8.90317e-16 (fails 41) via retype 0/rllr->da1
|
||||
[272960 evals] best 9.43705e-16 (fails 41) via rotate 0/rll
|
||||
[276960 evals] best 9.45522e-16 (fails 41) via level_retype 1/rlll<->0/rrlr
|
||||
[293600 evals] best 9.80215e-16 (fails 41) via rotate 0/lrrr
|
||||
[295200 evals] best 1.0343e-15 (fails 41) via undivide 0/rrrr
|
||||
[301200 evals] best 1.04687e-15 (fails 41) via core_divide noop
|
||||
[301760 evals] best 1.05658e-15 (fails 41) via core_divide noop
|
||||
[303280 evals] best 1.06329e-15 (fails 41) via level_retype 0/rlr<->1/llrl
|
||||
[305680 evals] best 1.06818e-15 (fails 41) via core_divide noop
|
||||
[306960 evals] best 1.06932e-15 (fails 41) via core_undivide noop
|
||||
[323680 evals] best 2.35481e-15 (fails 40) via undivide 0/rrrr
|
||||
[328400 evals] best 2.36836e-15 (fails 40) via crossover llrr<->llrr
|
||||
[329120 evals] best 2.37505e-15 (fails 40) via crossover lr<->lr
|
||||
[388800 evals] best 1.08522e-14 (fails 38) via retype 1/rrrl->m
|
||||
[388880 evals] best 1.09216e-14 (fails 38) via crossover rrr<->rrr
|
||||
[390560 evals] best 1.09586e-14 (fails 38) via core_undivide noop
|
||||
[390960 evals] best 1.13532e-14 (fails 38) via core_undivide noop
|
||||
[459600 evals] best 1.701e-14 (fails 37) via rotate 0/root
|
||||
[461360 evals] best 3.34076e-14 (fails 36) via swap 0/rrl
|
||||
[461440 evals] best 3.38208e-14 (fails 36) via swap 0/rrl
|
||||
[461760 evals] best 3.42308e-14 (fails 36) via core_divide noop
|
||||
[464320 evals] best 3.61774e-14 (fails 36) via rotate 0/lll
|
||||
[466000 evals] best 3.66295e-14 (fails 36) via core_undivide noop
|
||||
[467760 evals] best 3.67664e-14 (fails 36) via retype 1/rlrl->ws1
|
||||
[472960 evals] best 3.67665e-14 (fails 36) via core_undivide noop
|
||||
[476080 evals] best 8.02802e-14 (fails 35) via rotate 0/rrl
|
||||
|
||||
--- finishing (homemaker-py-3l6): unfold + polish 250000 evals ---
|
||||
[finish] unfold: materialised 15 shared-leaf copies
|
||||
[ 200 evals] best 2.82118e-25 (fails 73) via seed
|
||||
[ 440 evals] best 2.30511e-24 (fails 70) via crossover llrlr<->rrlr
|
||||
[ 760 evals] best 4.49435e-24 (fails 69) via rotate 1/lllrr
|
||||
[ 2840 evals] best 8.78417e-24 (fails 68) via place_missing r -> llll
|
||||
[ 3000 evals] best 8.82774e-24 (fails 68) via crossover lrrlrrl<->lrrlrrr
|
||||
[ 3640 evals] best 2.42458e-23 (fails 67) via level_compound_fix m: lvl1 → lvl0/lrlll + insert k1 into llll/lvl0
|
||||
[ 4760 evals] best 2.05512e-23 (fails 66) via place_missing t -> llll
|
||||
[ 5400 evals] best 2.11658e-23 (fails 66) via core_divide noop
|
||||
[ 7160 evals] best 9.18288e-22 (fails 64) via level_compound_fix m: lvl1 → lvl0/rlr + insert da1 into rlll/lvl0
|
||||
[ 9000 evals] best 9.42501e-22 (fails 64) via core_undivide noop
|
||||
[ 9080 evals] best 9.49387e-22 (fails 64) via retype 0/lrrrlrr->da1
|
||||
[ 13480 evals] best 1.95716e-21 (fails 63) via crossover lrrrlrl<->lrrrlrr
|
||||
[ 14200 evals] best 1.76259e-20 (fails 60) via place_missing st1 -> llllr
|
||||
[ 14600 evals] best 1.77822e-20 (fails 60) via core_undivide noop
|
||||
[ 18280 evals] best 1.79011e-20 (fails 60) via swap 1/rrllr
|
||||
[ 19320 evals] best 2.31009e-19 (fails 56) via crossover lrrrl<->lrrll
|
||||
[ 20600 evals] best 2.4801e-19 (fails 56) via retype 0/rlrr->n
|
||||
[ 23720 evals] best 2.53529e-19 (fails 56) via crossover rrlr<->lrllr
|
||||
[ 25800 evals] best 4.9601e-19 (fails 55) via rotate 1/llrrr
|
||||
[ 26360 evals] best 5.07047e-19 (fails 55) via core_undivide noop
|
||||
[ 26760 evals] best 5.16496e-19 (fails 55) via core_undivide noop
|
||||
[ 27480 evals] best 5.23696e-19 (fails 55) via crossover rlrll<->lrllr
|
||||
[ 28200 evals] best 5.28718e-19 (fails 55) via retype 1/rrlll->da1
|
||||
[ 28920 evals] best 5.30665e-19 (fails 55) via core_undivide noop
|
||||
[ 29480 evals] best 5.31916e-19 (fails 55) via core_undivide noop
|
||||
[ 31000 evals] best 5.35085e-19 (fails 55) via retype 0/lrlll->cr1
|
||||
[ 31560 evals] best 2.09427e-18 (fails 53) via rotate 0/lrrlr
|
||||
[ 31880 evals] best 2.11436e-18 (fails 53) via crossover rrlr<->lrlr
|
||||
[ 32520 evals] best 2.12214e-18 (fails 53) via swap 0/lrrrl
|
||||
[ 34120 evals] best 2.12721e-18 (fails 53) via crossover llllrl<->lrrrll
|
||||
[ 36680 evals] best 2.13989e-18 (fails 53) via core_undivide noop
|
||||
[ 36840 evals] best 2.15581e-18 (fails 53) via core_undivide noop
|
||||
[ 37560 evals] best 2.17211e-18 (fails 53) via core_undivide noop
|
||||
[ 43640 evals] best 2.27557e-18 (fails 53) via divide 0/lrrllr
|
||||
[ 44200 evals] best 2.28734e-18 (fails 53) via crossover lrrrl<->lrllr
|
||||
[ 44440 evals] best 4.58147e-18 (fails 52) via level_retype 0/llllrl<->1/lrrrl
|
||||
[ 45720 evals] best 4.60723e-18 (fails 52) via retype 0/rrlr->st2
|
||||
[ 46200 evals] best 4.6297e-18 (fails 52) via core_undivide noop
|
||||
[ 47160 evals] best 4.64905e-18 (fails 52) via retype 1/lllll->ws1
|
||||
[ 47560 evals] best 9.3872e-18 (fails 51) via undivide 0/llrlr
|
||||
[ 48760 evals] best 9.43276e-18 (fails 51) via level_retype 1/lrrrl<->0/lllll
|
||||
[ 51720 evals] best 9.47208e-18 (fails 51) via crossover llrlr<->rrlr
|
||||
[ 52920 evals] best 9.50298e-18 (fails 51) via core_undivide noop
|
||||
[ 53560 evals] best 9.50553e-18 (fails 51) via core_undivide noop
|
||||
[ 54680 evals] best 9.61653e-18 (fails 51) via core_undivide noop
|
||||
[ 55880 evals] best 1.92326e-17 (fails 50) via level_retype 0/lrrlrrl<->1/rlll
|
||||
[ 58120 evals] best 1.92729e-17 (fails 50) via level_retype 1/lllrrl<->0/lrlr
|
||||
[ 59160 evals] best 1.92773e-17 (fails 50) via core_undivide noop
|
||||
[ 62920 evals] best 1.92791e-17 (fails 50) via crossover rlrll<->lrrrl
|
||||
[ 64200 evals] best 1.92792e-17 (fails 50) via level_retype 1/rrrl<->0/llrll
|
||||
[ 64440 evals] best 1.92793e-17 (fails 50) via level_retype 0/lrrlrl<->1/lrrrl
|
||||
[ 65800 evals] best 3.8015e-17 (fails 49) via rotate 0/llr
|
||||
[ 81640 evals] best 1.50706e-16 (fails 47) via rotate 0/lrrr
|
||||
[ 82280 evals] best 1.5782e-16 (fails 47) via rotate 0/llr
|
||||
[ 86120 evals] best 1.59101e-16 (fails 47) via level_retype 0/lllll<->1/lllrl
|
||||
[ 88120 evals] best 5.88473e-16 (fails 45) via place_missing r -> llrl
|
||||
[ 88760 evals] best 5.88501e-16 (fails 45) via core_undivide noop
|
||||
[201000 evals] best 5.92096e-16 (fails 45) via crossover ll<->ll
|
||||
[224600 evals] best 3.02462e-14 (fails 42) via divide 1/lrrl
|
||||
[225720 evals] best 3.02767e-14 (fails 42) via retype 1/lllll->ef1
|
||||
[226120 evals] best 3.03182e-14 (fails 42) via crossover llrlr<->lrlr
|
||||
[228040 evals] best 3.03693e-14 (fails 42) via crossover rllr<->rllr
|
||||
[229800 evals] best 3.03824e-14 (fails 42) via crossover rlll<->rrlr
|
||||
[229880 evals] best 3.04106e-14 (fails 42) via core_undivide noop
|
||||
[229960 evals] best 3.04107e-14 (fails 42) via level_retype 0/rlrlr<->1/rrrl
|
||||
|
||||
--- collapse (homemaker-py-94g): finish-time cell→room relabel ---
|
||||
[finish] collapse: 104 → 42 fails (applied)
|
||||
|
||||
--- done ---
|
||||
elapsed : 158579.2s
|
||||
evals : 750040 across 9374 topologies
|
||||
best : 3.04107e-14 (42 fails) via level_retype 0/rlrlr<->1/rrrl+collapse
|
||||
|
||||
improvement history:
|
||||
[ 80] 1.05967e-31 (share:construct/0)
|
||||
[ 240] 2.81838e-21 (share:construct/2)
|
||||
[ 1840] 1.08828e-20 (share:swap 0/rrl)
|
||||
[ 2000] 2.18589e-20 (share:swap 0/lrll)
|
||||
[ 7680] 2.22979e-20 (share:core_undivide noop)
|
||||
[ 8320] 2.27491e-20 (share:level_fix noop)
|
||||
[ 8560] 5.4761e-20 (share:swap 0/rrr)
|
||||
[ 9440] 5.58534e-20 (share:core_undivide noop)
|
||||
[ 10720] 2.15034e-19 (share:crossover rlr<->rrl)
|
||||
[ 14400] 4.08743e-19 (share:core_divide noop)
|
||||
[ 15120] 4.18415e-19 (share:core_divide noop)
|
||||
[ 15680] 4.27242e-19 (share:core_undivide noop)
|
||||
[ 15760] 4.34498e-19 (share:crossover rlrr<->rlrlr)
|
||||
[ 15920] 3.34447e-19 (share:core_divide noop)
|
||||
[ 17920] 3.46301e-19 (share:core_divide noop)
|
||||
[ 19840] 6.00603e-18 (share:crossover rlr<->lrlll)
|
||||
[ 21840] 6.12702e-18 (share:crossover rlr<->lrlll)
|
||||
[ 22640] 6.20329e-18 (share:core_divide noop)
|
||||
[ 23200] 6.28822e-18 (share:core_divide noop)
|
||||
[ 23440] 6.36832e-18 (share:level_fix noop)
|
||||
[ 24640] 6.36835e-18 (share:level_retype 1/llll<->0/llll)
|
||||
[ 28400] 6.82917e-18 (share:swap 0/lrll)
|
||||
[ 28560] 1.141e-17 (share:divide 0/rrrr)
|
||||
[ 28880] 1.15021e-17 (share:level_fix noop)
|
||||
[ 29680] 1.15671e-17 (share:core_divide noop)
|
||||
[ 31520] 1.15684e-17 (share:core_divide noop)
|
||||
[ 31680] 1.16014e-17 (share:crossover lrllr<->rrlr)
|
||||
[ 76800] 4.93845e-17 (share:rotate 0/l)
|
||||
[ 77920] 4.97739e-17 (share:core_divide noop)
|
||||
[ 83440] 5.24758e-17 (share:level_fix noop)
|
||||
[ 84000] 1.02117e-16 (share:crossover rllr<->lllr)
|
||||
[ 85520] 1.02502e-16 (share:core_divide noop)
|
||||
[ 87120] 1.0251e-16 (share:level_retype 0/rllr<->1/lrrl)
|
||||
[112240] 1.03579e-16 (share:core_divide noop)
|
||||
[121760] 1.82946e-16 (share:retype 0/lrllr->n)
|
||||
[122000] 1.99829e-16 (share:crossover rrl<->lrrr)
|
||||
[122080] 2.00702e-16 (share:core_undivide noop)
|
||||
[135680] 2.05943e-16 (share:crossover rrrr<->rrrr)
|
||||
[149280] 2.09028e-16 (share:rotate 0/lrrr)
|
||||
[150560] 2.35877e-16 (share:crossover ll<->ll)
|
||||
[151040] 2.37613e-16 (share:core_undivide noop)
|
||||
[179840] 2.62645e-16 (share:core_divide noop)
|
||||
[180960] 5.11898e-16 (share:core_divide noop)
|
||||
[184560] 5.13843e-16 (share:core_undivide noop)
|
||||
[209360] 5.87161e-16 (share:undivide 0/rrrr)
|
||||
[267440] 8.76692e-16 (share:swap 0/rll)
|
||||
[271440] 8.90317e-16 (share:retype 0/rllr->da1)
|
||||
[272960] 9.43705e-16 (share:rotate 0/rll)
|
||||
[276960] 9.45522e-16 (share:level_retype 1/rlll<->0/rrlr)
|
||||
[293600] 9.80215e-16 (share:rotate 0/lrrr)
|
||||
[295200] 1.0343e-15 (share:undivide 0/rrrr)
|
||||
[301200] 1.04687e-15 (share:core_divide noop)
|
||||
[301760] 1.05658e-15 (share:core_divide noop)
|
||||
[303280] 1.06329e-15 (share:level_retype 0/rlr<->1/llrl)
|
||||
[305680] 1.06818e-15 (share:core_divide noop)
|
||||
[306960] 1.06932e-15 (share:core_undivide noop)
|
||||
[323680] 2.35481e-15 (share:undivide 0/rrrr)
|
||||
[328400] 2.36836e-15 (share:crossover llrr<->llrr)
|
||||
[329120] 2.37505e-15 (share:crossover lr<->lr)
|
||||
[388800] 1.08522e-14 (share:retype 1/rrrl->m)
|
||||
[388880] 1.09216e-14 (share:crossover rrr<->rrr)
|
||||
[390560] 1.09586e-14 (share:core_undivide noop)
|
||||
[390960] 1.13532e-14 (share:core_undivide noop)
|
||||
[459600] 1.701e-14 (share:rotate 0/root)
|
||||
[461360] 3.34076e-14 (share:swap 0/rrl)
|
||||
[461440] 3.38208e-14 (share:swap 0/rrl)
|
||||
[461760] 3.42308e-14 (share:core_divide noop)
|
||||
[464320] 3.61774e-14 (share:rotate 0/lll)
|
||||
[466000] 3.66295e-14 (share:core_undivide noop)
|
||||
[467760] 3.67664e-14 (share:retype 1/rlrl->ws1)
|
||||
[472960] 3.67665e-14 (share:core_undivide noop)
|
||||
[476080] 8.02802e-14 (share:rotate 0/rrl)
|
||||
[500200] 2.82118e-25 (polish:seed)
|
||||
[500440] 2.30511e-24 (polish:crossover llrlr<->rrlr)
|
||||
[500760] 4.49435e-24 (polish:rotate 1/lllrr)
|
||||
[502840] 8.78417e-24 (polish:place_missing r -> llll)
|
||||
[503000] 8.82774e-24 (polish:crossover lrrlrrl<->lrrlrrr)
|
||||
[503640] 2.42458e-23 (polish:level_compound_fix m: lvl1 → lvl0/lrlll + insert k1 into llll/lvl0)
|
||||
[504760] 2.05512e-23 (polish:place_missing t -> llll)
|
||||
[505400] 2.11658e-23 (polish:core_divide noop)
|
||||
[507160] 9.18288e-22 (polish:level_compound_fix m: lvl1 → lvl0/rlr + insert da1 into rlll/lvl0)
|
||||
[509000] 9.42501e-22 (polish:core_undivide noop)
|
||||
[509080] 9.49387e-22 (polish:retype 0/lrrrlrr->da1)
|
||||
[513480] 1.95716e-21 (polish:crossover lrrrlrl<->lrrrlrr)
|
||||
[514200] 1.76259e-20 (polish:place_missing st1 -> llllr)
|
||||
[514600] 1.77822e-20 (polish:core_undivide noop)
|
||||
[518280] 1.79011e-20 (polish:swap 1/rrllr)
|
||||
[519320] 2.31009e-19 (polish:crossover lrrrl<->lrrll)
|
||||
[520600] 2.4801e-19 (polish:retype 0/rlrr->n)
|
||||
[523720] 2.53529e-19 (polish:crossover rrlr<->lrllr)
|
||||
[525800] 4.9601e-19 (polish:rotate 1/llrrr)
|
||||
[526360] 5.07047e-19 (polish:core_undivide noop)
|
||||
[526760] 5.16496e-19 (polish:core_undivide noop)
|
||||
[527480] 5.23696e-19 (polish:crossover rlrll<->lrllr)
|
||||
[528200] 5.28718e-19 (polish:retype 1/rrlll->da1)
|
||||
[528920] 5.30665e-19 (polish:core_undivide noop)
|
||||
[529480] 5.31916e-19 (polish:core_undivide noop)
|
||||
[531000] 5.35085e-19 (polish:retype 0/lrlll->cr1)
|
||||
[531560] 2.09427e-18 (polish:rotate 0/lrrlr)
|
||||
[531880] 2.11436e-18 (polish:crossover rrlr<->lrlr)
|
||||
[532520] 2.12214e-18 (polish:swap 0/lrrrl)
|
||||
[534120] 2.12721e-18 (polish:crossover llllrl<->lrrrll)
|
||||
[536680] 2.13989e-18 (polish:core_undivide noop)
|
||||
[536840] 2.15581e-18 (polish:core_undivide noop)
|
||||
[537560] 2.17211e-18 (polish:core_undivide noop)
|
||||
[543640] 2.27557e-18 (polish:divide 0/lrrllr)
|
||||
[544200] 2.28734e-18 (polish:crossover lrrrl<->lrllr)
|
||||
[544440] 4.58147e-18 (polish:level_retype 0/llllrl<->1/lrrrl)
|
||||
[545720] 4.60723e-18 (polish:retype 0/rrlr->st2)
|
||||
[546200] 4.6297e-18 (polish:core_undivide noop)
|
||||
[547160] 4.64905e-18 (polish:retype 1/lllll->ws1)
|
||||
[547560] 9.3872e-18 (polish:undivide 0/llrlr)
|
||||
[548760] 9.43276e-18 (polish:level_retype 1/lrrrl<->0/lllll)
|
||||
[551720] 9.47208e-18 (polish:crossover llrlr<->rrlr)
|
||||
[552920] 9.50298e-18 (polish:core_undivide noop)
|
||||
[553560] 9.50553e-18 (polish:core_undivide noop)
|
||||
[554680] 9.61653e-18 (polish:core_undivide noop)
|
||||
[555880] 1.92326e-17 (polish:level_retype 0/lrrlrrl<->1/rlll)
|
||||
[558120] 1.92729e-17 (polish:level_retype 1/lllrrl<->0/lrlr)
|
||||
[559160] 1.92773e-17 (polish:core_undivide noop)
|
||||
[562920] 1.92791e-17 (polish:crossover rlrll<->lrrrl)
|
||||
[564200] 1.92792e-17 (polish:level_retype 1/rrrl<->0/llrll)
|
||||
[564440] 1.92793e-17 (polish:level_retype 0/lrrlrl<->1/lrrrl)
|
||||
[565800] 3.8015e-17 (polish:rotate 0/llr)
|
||||
[581640] 1.50706e-16 (polish:rotate 0/lrrr)
|
||||
[582280] 1.5782e-16 (polish:rotate 0/llr)
|
||||
[586120] 1.59101e-16 (polish:level_retype 0/lllll<->1/lllrl)
|
||||
[588120] 5.88473e-16 (polish:place_missing r -> llrl)
|
||||
[588760] 5.88501e-16 (polish:core_undivide noop)
|
||||
[701000] 5.92096e-16 (polish:crossover ll<->ll)
|
||||
[724600] 3.02462e-14 (polish:divide 1/lrrl)
|
||||
[725720] 3.02767e-14 (polish:retype 1/lllll->ef1)
|
||||
[726120] 3.03182e-14 (polish:crossover llrlr<->lrlr)
|
||||
[728040] 3.03693e-14 (polish:crossover rllr<->rllr)
|
||||
[729800] 3.03824e-14 (polish:crossover rlll<->rrlr)
|
||||
[729880] 3.04106e-14 (polish:core_undivide noop)
|
||||
[729960] 3.04107e-14 (polish:level_retype 0/rlrlr<->1/rrrl)
|
||||
written : /home/bruno/src/homemaker-layout/examples/harbor-house/coldstart-500000-s2.dom
|
||||
85
examples/harbor-house/drawings/assets/default.css
Normal file
85
examples/harbor-house/drawings/assets/default.css
Normal file
|
|
@ -0,0 +1,85 @@
|
|||
/*
|
||||
* Bonsai - OpenBIM Blender Add-on
|
||||
* Copyright (C) 2020, 2021 Dion Moult <dion@thinkmoult.com>
|
||||
*
|
||||
* This file is part of Bonsai.
|
||||
*
|
||||
* Bonsai is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* Bonsai is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY, without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* long with Bonsai. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
* { stroke-linecap: round; stroke-linejoin: round; }
|
||||
text, tspan { /* 2.5mm */ fill: black; stroke: none; font-family: 'OpenGost Type B TT', 'DejaVu Sans Condensed', 'Liberation Sans', 'Arial Narrow', 'Arial'; font-size: 4.13px; }
|
||||
a text, a tspan { fill: blue !important; text-decoration: underline;}
|
||||
a:hover { cursor: pointer; }
|
||||
.cut { fill: black; stroke: black; stroke-linecap: 'round'; stroke-width: 0.35; fill-rule: evenodd; }
|
||||
.projection { fill: white; stroke: black; stroke-linecap: 'round'; stroke-width: 0.25; }
|
||||
.surface { stroke: none; fill: #fff; fill-rule: evenodd; }
|
||||
.annotation { fill: none; stroke: black; stroke-linecap: 'round'; stroke-width: 0.25; }
|
||||
.IfcAnnotation { fill: none; stroke: black; stroke-linecap: 'round'; stroke-width: 0.25; }
|
||||
.IfcGeographicElement { fill: none; stroke: black; stroke-linecap: 'round'; stroke-width: 1; }
|
||||
.PredefinedType-LINEWORK { stroke: black; stroke-width: 0.25; }
|
||||
.PredefinedType-LINEWORK.dashed { stroke-dasharray: 3, 2; }
|
||||
.PredefinedType-LINEWORK.fine { stroke-width: 0.18; stroke: #777777; }
|
||||
.PredefinedType-LINEWORK.thin { stroke-width: 0.25; }
|
||||
.PredefinedType-LINEWORK.medium { stroke-width: 0.35; }
|
||||
.PredefinedType-LINEWORK.thick { stroke-width: 0.5; }
|
||||
.PredefinedType-LINEWORK.strong { stroke-width: 1; }
|
||||
.PredefinedType-BACKGROUND { stroke: black; stroke-width: 0.18; }
|
||||
.PredefinedType-GRID { marker-start: url(#grid-marker); marker-end: url(#grid-marker); }
|
||||
.PredefinedType-SECTION { stroke-dasharray: 12.5, 3, 3, 3; }
|
||||
.PredefinedType-SECTIONLEVEL { marker-start: url(#section-level-marker); stroke-dasharray: 12.5, 3, 3, 3; }
|
||||
.PredefinedType-PLANLEVEL { marker-end: url(#plan-level-marker); }
|
||||
.PredefinedType-DIMENSION { marker-start: url(#dimension-marker-start); marker-end: url(#dimension-marker-end); }
|
||||
.PredefinedType-ANGLE { marker-start: url(#angle-marker-start); marker-end: url(#angle-marker-end); }
|
||||
.PredefinedType-RADIUS { marker-end: url(#fall-marker-end); }
|
||||
.PredefinedType-FALL { marker-end: url(#radius-marker-end); }
|
||||
.PredefinedType-SLOPEANGLE { marker-end: url(#radius-marker-end); }
|
||||
.PredefinedType-SLOPEPERCENT { marker-end: url(#radius-marker-end); }
|
||||
.PredefinedType-SLOPEFRACTION { marker-end: url(#radius-marker-end); }
|
||||
.PredefinedType-DIAMETER { marker-start: url(#diameter-marker-start); marker-end: url(#diameter-marker-end); }
|
||||
.PredefinedType-STAIRARROW { marker-start: url(#stair-marker-start); marker-end: url(#stair-marker-end); }
|
||||
.PredefinedType-BOUNDARY { fill: none; stroke: red; stroke-width: 1; stroke-dasharray: 12, 4, 3, 4, 3, 4; }
|
||||
.PredefinedType-SEALANT { fill: url(#crosshatch1); stroke-width: 0.25; }
|
||||
.PredefinedType-FILLAREA { fill: white; stroke: black; }
|
||||
.PredefinedType-BREAKLINE { fill: none; stroke: black; stroke-width: 0.25; marker-mid: url(#breakline-marker); }
|
||||
.PredefinedType-TEXT { fill: black; stroke: none; }
|
||||
path.PredefinedType-TEXTLEADER { marker-end: url(#leader-marker); }
|
||||
text.PredefinedType-TEXTLEADER, tspan.PredefinedType-TEXTLEADER { fill: black; stroke: none; }
|
||||
text.title, tspan.title { /* 7mm */ font-size: 11.55px; }
|
||||
text.header, tspan.header { /* 5mm */ font-size: 8.25px; }
|
||||
text.large, tspan.large { /* 3.5mm */ font-size: 5.78px; }
|
||||
text.regular, tspan.regular { /* 2.5mm */ font-size: 4.13px; }
|
||||
text.small, tspan.small { /* 1.8mm */ font-size: 2.97px; }
|
||||
text.GRID, tspan.GRID { /* 5mm */ font-size: 8.25px; }
|
||||
.material-blank { fill: white; }
|
||||
.material-diagonal1 { fill: url(#diagonal1); }
|
||||
.material-diagonal2 { fill: url(#diagonal2); }
|
||||
.material-diagonal3 { fill: url(#diagonal3); }
|
||||
.material-crosshatch1 { fill: url(#crosshatch1); }
|
||||
.material-crosshatch2 { fill: url(#crosshatch2); }
|
||||
.material-crosshatch3 { fill: url(#crosshatch3); }
|
||||
.material-brick { fill: url(#brick); }
|
||||
.material-earth { fill: url(#earth); }
|
||||
.material-glass { fill: url(#glass); }
|
||||
.material-liquid { fill: url(#liquid); }
|
||||
.material-grass { fill: url(#grass); }
|
||||
.material-honeycomb { fill: url(#honeycomb); }
|
||||
.material-sand { fill: url(#sand); }
|
||||
.material-concrete { fill: url(#concrete); stroke-width: 0.5; }
|
||||
.IfcSpace { fill: none; stroke: none; }
|
||||
.PredefinedType-STUD { stroke: black; stroke-width: 1; }
|
||||
.PredefinedType-WOOD { fill: url(#wood); stroke: black; stroke-width: 0.5; }
|
||||
.PredefinedType-STEEL { fill: url(#steel); stroke: black; stroke-width: 0.5; }
|
||||
.PredefinedType-CONCRETE { fill: url(#concrete); stroke: black; stroke-width: 0.5; }
|
||||
.PredefinedType-PLASTERBOARD { fill: url(#sand); stroke: black; stroke-width: 0.25; }
|
||||
107
examples/harbor-house/drawings/assets/markers.svg
Normal file
107
examples/harbor-house/drawings/assets/markers.svg
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<svg baseProfile="full" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!-- Tip: https://svg-path-visualizer.netlify.app/ -->
|
||||
<!-- Tip: https://www.svgviewer.dev/ -->
|
||||
<marker id="eng-dimension-marker-start" markerHeight="14" markerWidth="11" orient="auto" refX="1" refY="7">
|
||||
<g>
|
||||
<path d="M 11 3.5 L 11 10.5 L 1 7" class="annotation" style="fill:black;" />
|
||||
<path d="M 1 0 L 1 14" class="annotation" style="stroke-width:1;" />
|
||||
</g>
|
||||
</marker>
|
||||
<marker id="eng-dimension-marker-end" markerHeight="14" markerWidth="11" orient="auto" refX="10" refY="7">
|
||||
<g>
|
||||
<path d="M 0 3.5 L 0 10.5 L 10 7" class="annotation" style="fill:black;" />
|
||||
<path d="M 10 0 L 10 14" class="annotation" style="stroke-width:1;" />
|
||||
</g>
|
||||
</marker>
|
||||
<marker id="radius-marker-end" markerHeight="14" markerWidth="11" orient="auto" refX="10" refY="7">
|
||||
<g>
|
||||
<path d="M 0 3.5 L 0 10.5 L 10 7" class="annotation" style="fill:black;" />
|
||||
</g>
|
||||
</marker>
|
||||
<!-- same as for the radius -->
|
||||
<marker id="fall-marker-end" markerHeight="14" markerWidth="11" orient="auto" refX="10" refY="7">
|
||||
<g>
|
||||
<path d="M 0 3.5 L 0 10.5 L 10 7" class="annotation" style="fill:black;" />
|
||||
</g>
|
||||
</marker>
|
||||
<marker id="angle-marker-start" markerHeight="14" markerWidth="11" orient="auto" refX="1" refY="7">
|
||||
<g>
|
||||
<path d="M 11 3.5 L 11 10.5 L 1 7" class="annotation" style="fill:black;" />
|
||||
<path d="M 1 0 L 1 14" class="annotation" style="stroke-width:1;" />
|
||||
</g>
|
||||
</marker>
|
||||
<marker id="angle-marker-end" markerHeight="14" markerWidth="11" orient="auto" refX="10" refY="7">
|
||||
<g>
|
||||
<path d="M 0 3.5 L 0 10.5 L 10 7" class="annotation" style="fill:black;" />
|
||||
<path d="M 10 0 L 10 14" class="annotation" style="stroke-width:1;" />
|
||||
</g>
|
||||
</marker>
|
||||
<marker id="diameter-marker-start" markerHeight="14" markerWidth="11" orient="auto" refX="1" refY="7">
|
||||
<g>
|
||||
<path d="M 11 3.5 L 11 10.5 L 1 7" class="annotation" style="fill:black;" />
|
||||
<path d="M 1 0 L 1 14" class="annotation" style="stroke-width:1;" />
|
||||
</g>
|
||||
</marker>
|
||||
<marker id="diameter-marker-end" markerHeight="14" markerWidth="11" orient="auto" refX="10" refY="7">
|
||||
<g>
|
||||
<path d="M 0 3.5 L 0 10.5 L 10 7" class="annotation" style="fill:black;" />
|
||||
<path d="M 10 0 L 10 14" class="annotation" style="stroke-width:1;" />
|
||||
</g>
|
||||
</marker>
|
||||
<marker id="dimension-marker-start" markerHeight="30" markerWidth="20" refX="10" refY="15" orient="auto">
|
||||
<g>
|
||||
<path d="M 0 15 L 20 15" class="annotation" style="stroke-width:1;" />
|
||||
<path d="M 10 0 L 10 30" class="annotation" style="stroke-width:1;" />
|
||||
<path d="M 5 20 L 15 10" class="annotation" style="stroke-width:3;" />
|
||||
</g>
|
||||
</marker>
|
||||
<marker id="dimension-marker-end" markerHeight="30" markerWidth="20" refX="10" refY="15" orient="auto">
|
||||
<g>
|
||||
<path d="M 0 15 L 20 15" class="annotation" style="stroke-width:1;" />
|
||||
<path d="M 10 0 L 10 30" class="annotation" style="stroke-width:1;" />
|
||||
<path d="M 5 20 L 15 10" class="annotation" style="stroke-width:3;" />
|
||||
</g>
|
||||
</marker>
|
||||
<marker id="grid-marker" markerHeight="40" markerWidth="40" orient="auto" refX="20" refY="20">
|
||||
<circle cx="20" cy="20" fill="white" stroke="black" r="17" style="stroke-width: 2"/>
|
||||
</marker>
|
||||
<marker id="leader-marker" markerHeight="7" markerWidth="10" orient="auto" refX="10" refY="3.5">
|
||||
<path d="M 0 0 L 0 7 L 10 3.5" class="annotation" style="fill:black;" />
|
||||
</marker>
|
||||
<marker id="stair-marker-start" markerHeight="10" markerWidth="10" orient="auto" refX="5" refY="5">
|
||||
<circle cx="5" cy="5" fill="black" stroke="none" r="5"/>
|
||||
</marker>
|
||||
<marker id="stair-marker-end" markerHeight="42" markerWidth="21" orient="auto" refX="21" refY="21">
|
||||
<path d="M 0 0 L 21 21 L 0 42" class="annotation stair" style="stroke-width:2; marker-start: none; marker-end: none;" />
|
||||
</marker>
|
||||
<marker id="plan-level-marker" markerHeight="30" markerWidth="30" refX="15" refY="15" orient="auto">
|
||||
<g>
|
||||
<path d="M 15 0 L 15 30" class="annotation" style="stroke-width:1;" />
|
||||
<path d="M 0 15 L 30 15" class="annotation" style="stroke-width:1;" />
|
||||
<circle cx="15" cy="15" fill="white" stroke="black" r="7.5" style="stroke-width: 2"/>
|
||||
<path d="M 15 15 L 7.5 15 A 7.5 7.5 0 0 1 15 7.5 Z" fill="black"/>
|
||||
<path d="M 15 15 L 22.5 15 A 7.5 7.5 0 0 1 15 22.5 Z" fill="black"/>
|
||||
</g>
|
||||
</marker>
|
||||
<marker id="section-level-marker" markerHeight="11" markerWidth="90" refX="20" refY="10" orient="auto-start-reverse">
|
||||
<g>
|
||||
<path d="M 0 1 L 20 1 L 10 11 Z" fill="black" />
|
||||
<path d="M 0 1 L 90 1" class="annotation" style="stroke-width:1;" />
|
||||
</g>
|
||||
</marker>
|
||||
<marker id="breakline-marker" markerHeight="20" markerWidth="15" refX="7.5" refY="10" orient="auto">
|
||||
<g>
|
||||
<path d="M 0 10 L 5 20 L 7.5 10" class="annotation" style="stroke-width:1; fill: white;" />
|
||||
<path d="M 7.5 10 L 10 0 L 15 10" class="annotation" style="stroke-width:1; fill: white;" />
|
||||
</g>
|
||||
</marker>
|
||||
<filter x="0" y="0" width="1" height="1" id="fill-background">
|
||||
<feFlood flood-color="white" result="bg" />
|
||||
<feMerge>
|
||||
<feMergeNode in="bg"/>
|
||||
<feMergeNode in="SourceGraphic"/>
|
||||
</feMerge>
|
||||
</filter>
|
||||
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.7 KiB |
160
examples/harbor-house/drawings/assets/patterns.svg
Normal file
160
examples/harbor-house/drawings/assets/patterns.svg
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 70 KiB |
711
examples/harbor-house/drawings/assets/shading_styles.json
Normal file
711
examples/harbor-house/drawings/assets/shading_styles.json
Normal file
|
|
@ -0,0 +1,711 @@
|
|||
{
|
||||
"Technical": {
|
||||
"render_type": "VIEWPORT",
|
||||
"raster_style": {
|
||||
"bpy.data.worlds[0].color": [
|
||||
1.0,
|
||||
1.0,
|
||||
1.0
|
||||
],
|
||||
"scene.render.border_max_x": 1.0,
|
||||
"scene.render.border_max_y": 1.0,
|
||||
"scene.render.border_min_x": 0.0,
|
||||
"scene.render.border_min_y": 0.0,
|
||||
"scene.render.dither_intensity": 1.0,
|
||||
"scene.render.engine": "BLENDER_WORKBENCH",
|
||||
"scene.render.film_transparent": false,
|
||||
"scene.render.filter_size": 1.5,
|
||||
"scene.render.fps": 24,
|
||||
"scene.render.fps_base": 1.0,
|
||||
"scene.render.frame_map_new": 100,
|
||||
"scene.render.frame_map_old": 100,
|
||||
"scene.render.hair_subdiv": 0,
|
||||
"scene.render.hair_type": "STRAND",
|
||||
"scene.render.line_thickness": 1.0,
|
||||
"scene.render.line_thickness_mode": "ABSOLUTE",
|
||||
"scene.render.metadata_input": "SCENE",
|
||||
"scene.render.motion_blur_shutter": 0.5,
|
||||
"scene.render.pixel_aspect_x": 1.0,
|
||||
"scene.render.pixel_aspect_y": 1.0,
|
||||
"scene.render.preview_pixel_size": "AUTO",
|
||||
"scene.render.resolution_percentage": 100,
|
||||
"scene.render.resolution_x": 1000,
|
||||
"scene.render.resolution_y": 1000,
|
||||
"scene.render.sequencer_gl_preview": "SOLID",
|
||||
"scene.render.simplify_child_particles": 1.0,
|
||||
"scene.render.simplify_child_particles_render": 1.0,
|
||||
"scene.render.simplify_gpencil": false,
|
||||
"scene.render.simplify_gpencil_antialiasing": true,
|
||||
"scene.render.simplify_gpencil_modifier": true,
|
||||
"scene.render.simplify_gpencil_onplay": false,
|
||||
"scene.render.simplify_gpencil_shader_fx": true,
|
||||
"scene.render.simplify_gpencil_tint": true,
|
||||
"scene.render.simplify_gpencil_view_fill": true,
|
||||
"scene.render.simplify_subdivision": 6,
|
||||
"scene.render.simplify_subdivision_render": 6,
|
||||
"scene.render.simplify_volumes": 1.0,
|
||||
"scene.render.stamp_font_size": 12,
|
||||
"scene.render.stamp_note_text": "",
|
||||
"scene.render.threads": 20,
|
||||
"scene.render.threads_mode": "AUTO",
|
||||
"scene.render.use_border": false,
|
||||
"scene.render.use_compositing": true,
|
||||
"scene.render.use_crop_to_border": false,
|
||||
"scene.render.use_file_extension": true,
|
||||
"scene.render.use_freestyle": false,
|
||||
"scene.render.use_high_quality_normals": false,
|
||||
"scene.render.use_lock_interface": false,
|
||||
"scene.render.use_motion_blur": false,
|
||||
"scene.render.use_multiview": false,
|
||||
"scene.render.use_overwrite": true,
|
||||
"scene.render.use_persistent_data": false,
|
||||
"scene.render.use_placeholder": false,
|
||||
"scene.render.use_render_cache": false,
|
||||
"scene.render.use_sequencer": true,
|
||||
"scene.render.use_sequencer_override_scene_strip": false,
|
||||
"scene.render.use_simplify": false,
|
||||
"scene.render.use_single_layer": false,
|
||||
"scene.render.use_stamp": false,
|
||||
"scene.render.use_stamp_camera": true,
|
||||
"scene.render.use_stamp_date": true,
|
||||
"scene.render.use_stamp_filename": true,
|
||||
"scene.render.use_stamp_frame": true,
|
||||
"scene.render.use_stamp_frame_range": false,
|
||||
"scene.render.use_stamp_hostname": false,
|
||||
"scene.render.use_stamp_labels": true,
|
||||
"scene.render.use_stamp_lens": false,
|
||||
"scene.render.use_stamp_marker": false,
|
||||
"scene.render.use_stamp_memory": false,
|
||||
"scene.render.use_stamp_note": false,
|
||||
"scene.render.use_stamp_render_time": true,
|
||||
"scene.render.use_stamp_scene": true,
|
||||
"scene.render.use_stamp_sequencer_strip": false,
|
||||
"scene.render.use_stamp_time": true,
|
||||
"scene.render.views_format": "STEREO_3D",
|
||||
"scene.view_settings.exposure": 0.0,
|
||||
"scene.view_settings.gamma": 1.0,
|
||||
"scene.view_settings.look": "None",
|
||||
"scene.view_settings.use_curve_mapping": false,
|
||||
"scene.view_settings.view_transform": "Standard",
|
||||
"scene.display.shading.aov_name": "",
|
||||
"scene.display.shading.background_color": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"scene.display.shading.background_type": "THEME",
|
||||
"scene.display.shading.cavity_ridge_factor": 1.0,
|
||||
"scene.display.shading.cavity_type": "BOTH",
|
||||
"scene.display.shading.cavity_valley_factor": 1.0,
|
||||
"scene.display.shading.color_type": "SINGLE",
|
||||
"scene.display.shading.curvature_ridge_factor": 1.0,
|
||||
"scene.display.shading.curvature_valley_factor": 1.0,
|
||||
"scene.display.shading.light": "FLAT",
|
||||
"scene.display.shading.object_outline_color": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"scene.display.shading.render_pass": "COMBINED",
|
||||
"scene.display.shading.shadow_intensity": 0.5,
|
||||
"scene.display.shading.show_backface_culling": false,
|
||||
"scene.display.shading.show_cavity": false,
|
||||
"scene.display.shading.show_object_outline": true,
|
||||
"scene.display.shading.show_shadows": false,
|
||||
"scene.display.shading.show_specular_highlight": true,
|
||||
"scene.display.shading.show_xray": false,
|
||||
"scene.display.shading.show_xray_wireframe": false,
|
||||
"scene.display.shading.single_color": [
|
||||
1.0,
|
||||
1.0,
|
||||
1.0
|
||||
],
|
||||
"scene.display.shading.studio_light": "Default",
|
||||
"scene.display.shading.studiolight_background_alpha": 0.0,
|
||||
"scene.display.shading.studiolight_background_blur": 0.0,
|
||||
"scene.display.shading.studiolight_intensity": 0.0,
|
||||
"scene.display.shading.studiolight_rotate_z": 0.0,
|
||||
"scene.display.shading.type": "SOLID",
|
||||
"scene.display.shading.use_compositor": "DISABLED",
|
||||
"scene.display.shading.use_dof": false,
|
||||
"scene.display.shading.use_scene_lights": false,
|
||||
"scene.display.shading.use_scene_lights_render": false,
|
||||
"scene.display.shading.use_scene_world": false,
|
||||
"scene.display.shading.use_scene_world_render": false,
|
||||
"scene.display.shading.use_studiolight_view_rotation": true,
|
||||
"scene.display.shading.use_world_space_lighting": false,
|
||||
"scene.display.shading.wireframe_color_type": "THEME",
|
||||
"scene.display.shading.xray_alpha": 0.5,
|
||||
"scene.display.shading.xray_alpha_wireframe": 0.0,
|
||||
"scene.display.light_direction": [
|
||||
0.5,
|
||||
0.5,
|
||||
0.5
|
||||
],
|
||||
"scene.display.matcap_ssao_attenuation": 1.0,
|
||||
"scene.display.matcap_ssao_distance": 0.20000000298023224,
|
||||
"scene.display.matcap_ssao_samples": 16,
|
||||
"scene.display.render_aa": "8",
|
||||
"scene.display.shadow_focus": 0.0,
|
||||
"scene.display.shadow_shift": 0.10000000149011612,
|
||||
"scene.display.viewport_aa": "FXAA",
|
||||
"space.overlay.bone_wire_alpha": 1.0,
|
||||
"space.overlay.display_handle": "SELECTED",
|
||||
"space.overlay.fade_inactive_alpha": 0.4000000059604645,
|
||||
"space.overlay.gpencil_fade_layer": 0.5,
|
||||
"space.overlay.gpencil_fade_objects": 0.5,
|
||||
"space.overlay.gpencil_grid_opacity": 0.5,
|
||||
"space.overlay.gpencil_vertex_paint_opacity": 1.0,
|
||||
"space.overlay.grid_lines": 16,
|
||||
"space.overlay.grid_scale": 1.0,
|
||||
"space.overlay.grid_subdivisions": 10,
|
||||
"space.overlay.normals_constant_screen_size": 7.0,
|
||||
"space.overlay.normals_length": 0.10000000149011612,
|
||||
"space.overlay.sculpt_curves_cage_opacity": 0.5,
|
||||
"space.overlay.sculpt_mode_face_sets_opacity": 1.0,
|
||||
"space.overlay.sculpt_mode_mask_opacity": 0.75,
|
||||
"space.overlay.show_annotation": true,
|
||||
"space.overlay.show_axis_x": false,
|
||||
"space.overlay.show_axis_y": false,
|
||||
"space.overlay.show_axis_z": false,
|
||||
"space.overlay.show_bones": true,
|
||||
"space.overlay.show_cursor": true,
|
||||
"space.overlay.show_curve_normals": false,
|
||||
"space.overlay.show_edge_bevel_weight": true,
|
||||
"space.overlay.show_edge_crease": true,
|
||||
"space.overlay.show_edge_seams": true,
|
||||
"space.overlay.show_edge_sharp": true,
|
||||
"space.overlay.show_extra_edge_angle": false,
|
||||
"space.overlay.show_extra_edge_length": false,
|
||||
"space.overlay.show_extra_face_angle": false,
|
||||
"space.overlay.show_extra_face_area": false,
|
||||
"space.overlay.show_extra_indices": false,
|
||||
"space.overlay.show_extras": true,
|
||||
"space.overlay.show_face_center": false,
|
||||
"space.overlay.show_face_normals": false,
|
||||
"space.overlay.show_face_orientation": false,
|
||||
"space.overlay.show_faces": true,
|
||||
"space.overlay.show_fade_inactive": false,
|
||||
"space.overlay.show_floor": false,
|
||||
"space.overlay.show_freestyle_edge_marks": true,
|
||||
"space.overlay.show_freestyle_face_marks": true,
|
||||
"space.overlay.show_look_dev": false,
|
||||
"space.overlay.show_motion_paths": true,
|
||||
"space.overlay.show_object_origins": false,
|
||||
"space.overlay.show_object_origins_all": false,
|
||||
"space.overlay.show_onion_skins": false,
|
||||
"space.overlay.show_ortho_grid": true,
|
||||
"space.overlay.show_outline_selected": true,
|
||||
"space.overlay.show_overlays": true,
|
||||
"space.overlay.show_paint_wire": false,
|
||||
"space.overlay.show_relationship_lines": false,
|
||||
"space.overlay.show_sculpt_curves_cage": true,
|
||||
"space.overlay.show_sculpt_face_sets": true,
|
||||
"space.overlay.show_sculpt_mask": true,
|
||||
"space.overlay.show_split_normals": false,
|
||||
"space.overlay.show_stats": false,
|
||||
"space.overlay.show_statvis": false,
|
||||
"space.overlay.show_text": true,
|
||||
"space.overlay.show_vertex_normals": false,
|
||||
"space.overlay.show_viewer_attribute": true,
|
||||
"space.overlay.show_weight": false,
|
||||
"space.overlay.show_wireframes": true,
|
||||
"space.overlay.show_wpaint_contours": false,
|
||||
"space.overlay.show_xray_bone": false,
|
||||
"space.overlay.texture_paint_mode_opacity": 1.0,
|
||||
"space.overlay.use_debug_freeze_view_culling": false,
|
||||
"space.overlay.use_gpencil_canvas_xray": false,
|
||||
"space.overlay.use_gpencil_edit_lines": true,
|
||||
"space.overlay.use_gpencil_fade_gp_objects": false,
|
||||
"space.overlay.use_gpencil_fade_layers": false,
|
||||
"space.overlay.use_gpencil_fade_objects": false,
|
||||
"space.overlay.use_gpencil_grid": false,
|
||||
"space.overlay.use_gpencil_multiedit_line_only": false,
|
||||
"space.overlay.use_gpencil_onion_skin": false,
|
||||
"space.overlay.use_gpencil_show_directions": false,
|
||||
"space.overlay.use_gpencil_show_material_name": false,
|
||||
"space.overlay.use_normals_constant_screen_size": false,
|
||||
"space.overlay.vertex_opacity": 1.0,
|
||||
"space.overlay.vertex_paint_mode_opacity": 1.0,
|
||||
"space.overlay.viewer_attribute_opacity": 1.0,
|
||||
"space.overlay.weight_paint_mode_opacity": 1.0,
|
||||
"space.overlay.wireframe_opacity": 1.0,
|
||||
"space.overlay.wireframe_threshold": 0.0,
|
||||
"space.overlay.xray_alpha_bone": 0.0
|
||||
}
|
||||
},
|
||||
"Shaded": {
|
||||
"render_type": "VIEWPORT",
|
||||
"raster_style": {
|
||||
"bpy.data.worlds[0].color": [
|
||||
1.0,
|
||||
1.0,
|
||||
1.0
|
||||
],
|
||||
"scene.render.border_max_x": 1.0,
|
||||
"scene.render.border_max_y": 1.0,
|
||||
"scene.render.border_min_x": 0.0,
|
||||
"scene.render.border_min_y": 0.0,
|
||||
"scene.render.dither_intensity": 1.0,
|
||||
"scene.render.engine": "BLENDER_WORKBENCH",
|
||||
"scene.render.film_transparent": false,
|
||||
"scene.render.filter_size": 1.5,
|
||||
"scene.render.fps": 24,
|
||||
"scene.render.fps_base": 1.0,
|
||||
"scene.render.frame_map_new": 100,
|
||||
"scene.render.frame_map_old": 100,
|
||||
"scene.render.hair_subdiv": 0,
|
||||
"scene.render.hair_type": "STRAND",
|
||||
"scene.render.line_thickness": 1.0,
|
||||
"scene.render.line_thickness_mode": "ABSOLUTE",
|
||||
"scene.render.metadata_input": "SCENE",
|
||||
"scene.render.motion_blur_shutter": 0.5,
|
||||
"scene.render.pixel_aspect_x": 1.0,
|
||||
"scene.render.pixel_aspect_y": 1.0,
|
||||
"scene.render.preview_pixel_size": "AUTO",
|
||||
"scene.render.resolution_percentage": 100,
|
||||
"scene.render.resolution_x": 1000,
|
||||
"scene.render.resolution_y": 1000,
|
||||
"scene.render.sequencer_gl_preview": "SOLID",
|
||||
"scene.render.simplify_child_particles": 1.0,
|
||||
"scene.render.simplify_child_particles_render": 1.0,
|
||||
"scene.render.simplify_gpencil": false,
|
||||
"scene.render.simplify_gpencil_antialiasing": true,
|
||||
"scene.render.simplify_gpencil_modifier": true,
|
||||
"scene.render.simplify_gpencil_onplay": false,
|
||||
"scene.render.simplify_gpencil_shader_fx": true,
|
||||
"scene.render.simplify_gpencil_tint": true,
|
||||
"scene.render.simplify_gpencil_view_fill": true,
|
||||
"scene.render.simplify_subdivision": 6,
|
||||
"scene.render.simplify_subdivision_render": 6,
|
||||
"scene.render.simplify_volumes": 1.0,
|
||||
"scene.render.stamp_font_size": 12,
|
||||
"scene.render.stamp_note_text": "",
|
||||
"scene.render.threads": 20,
|
||||
"scene.render.threads_mode": "AUTO",
|
||||
"scene.render.use_border": false,
|
||||
"scene.render.use_compositing": true,
|
||||
"scene.render.use_crop_to_border": false,
|
||||
"scene.render.use_file_extension": true,
|
||||
"scene.render.use_freestyle": false,
|
||||
"scene.render.use_high_quality_normals": false,
|
||||
"scene.render.use_lock_interface": false,
|
||||
"scene.render.use_motion_blur": false,
|
||||
"scene.render.use_multiview": false,
|
||||
"scene.render.use_overwrite": true,
|
||||
"scene.render.use_persistent_data": false,
|
||||
"scene.render.use_placeholder": false,
|
||||
"scene.render.use_render_cache": false,
|
||||
"scene.render.use_sequencer": true,
|
||||
"scene.render.use_sequencer_override_scene_strip": false,
|
||||
"scene.render.use_simplify": false,
|
||||
"scene.render.use_single_layer": false,
|
||||
"scene.render.use_stamp": false,
|
||||
"scene.render.use_stamp_camera": true,
|
||||
"scene.render.use_stamp_date": true,
|
||||
"scene.render.use_stamp_filename": true,
|
||||
"scene.render.use_stamp_frame": true,
|
||||
"scene.render.use_stamp_frame_range": false,
|
||||
"scene.render.use_stamp_hostname": false,
|
||||
"scene.render.use_stamp_labels": true,
|
||||
"scene.render.use_stamp_lens": false,
|
||||
"scene.render.use_stamp_marker": false,
|
||||
"scene.render.use_stamp_memory": false,
|
||||
"scene.render.use_stamp_note": false,
|
||||
"scene.render.use_stamp_render_time": true,
|
||||
"scene.render.use_stamp_scene": true,
|
||||
"scene.render.use_stamp_sequencer_strip": false,
|
||||
"scene.render.use_stamp_time": true,
|
||||
"scene.render.views_format": "STEREO_3D",
|
||||
"scene.view_settings.exposure": 0.0,
|
||||
"scene.view_settings.gamma": 1.0,
|
||||
"scene.view_settings.look": "None",
|
||||
"scene.view_settings.use_curve_mapping": false,
|
||||
"scene.view_settings.view_transform": "Standard",
|
||||
"scene.display.shading.aov_name": "",
|
||||
"scene.display.shading.background_color": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"scene.display.shading.background_type": "THEME",
|
||||
"scene.display.shading.cavity_ridge_factor": 1.0,
|
||||
"scene.display.shading.cavity_type": "BOTH",
|
||||
"scene.display.shading.cavity_valley_factor": 1.0,
|
||||
"scene.display.shading.color_type": "MATERIAL",
|
||||
"scene.display.shading.curvature_ridge_factor": 1.0,
|
||||
"scene.display.shading.curvature_valley_factor": 1.0,
|
||||
"scene.display.shading.light": "STUDIO",
|
||||
"scene.display.shading.object_outline_color": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"scene.display.shading.render_pass": "COMBINED",
|
||||
"scene.display.shading.shadow_intensity": 0.5,
|
||||
"scene.display.shading.show_backface_culling": false,
|
||||
"scene.display.shading.show_cavity": true,
|
||||
"scene.display.shading.show_object_outline": true,
|
||||
"scene.display.shading.show_shadows": true,
|
||||
"scene.display.shading.show_specular_highlight": true,
|
||||
"scene.display.shading.show_xray": false,
|
||||
"scene.display.shading.show_xray_wireframe": false,
|
||||
"scene.display.shading.single_color": [
|
||||
1.0,
|
||||
1.0,
|
||||
1.0
|
||||
],
|
||||
"scene.display.shading.studio_light": "forest.exr",
|
||||
"scene.display.shading.studiolight_background_alpha": 0.0,
|
||||
"scene.display.shading.studiolight_background_blur": 0.0,
|
||||
"scene.display.shading.studiolight_intensity": 0.0,
|
||||
"scene.display.shading.studiolight_rotate_z": 0.0,
|
||||
"scene.display.shading.type": "RENDERED",
|
||||
"scene.display.shading.use_compositor": "DISABLED",
|
||||
"scene.display.shading.use_dof": false,
|
||||
"scene.display.shading.use_scene_lights": false,
|
||||
"scene.display.shading.use_scene_lights_render": false,
|
||||
"scene.display.shading.use_scene_world": false,
|
||||
"scene.display.shading.use_scene_world_render": false,
|
||||
"scene.display.shading.use_studiolight_view_rotation": true,
|
||||
"scene.display.shading.use_world_space_lighting": false,
|
||||
"scene.display.shading.wireframe_color_type": "THEME",
|
||||
"scene.display.shading.xray_alpha": 0.5,
|
||||
"scene.display.shading.xray_alpha_wireframe": 0.0,
|
||||
"scene.display.light_direction": [
|
||||
0.5,
|
||||
0.5,
|
||||
0.5
|
||||
],
|
||||
"scene.display.matcap_ssao_attenuation": 1.0,
|
||||
"scene.display.matcap_ssao_distance": 0.20000000298023224,
|
||||
"scene.display.matcap_ssao_samples": 16,
|
||||
"scene.display.render_aa": "8",
|
||||
"scene.display.shadow_focus": 0.0,
|
||||
"scene.display.shadow_shift": 0.10000000149011612,
|
||||
"scene.display.viewport_aa": "FXAA",
|
||||
"space.overlay.bone_wire_alpha": 1.0,
|
||||
"space.overlay.display_handle": "SELECTED",
|
||||
"space.overlay.fade_inactive_alpha": 0.4000000059604645,
|
||||
"space.overlay.gpencil_fade_layer": 0.5,
|
||||
"space.overlay.gpencil_fade_objects": 0.5,
|
||||
"space.overlay.gpencil_grid_opacity": 0.5,
|
||||
"space.overlay.gpencil_vertex_paint_opacity": 1.0,
|
||||
"space.overlay.grid_lines": 16,
|
||||
"space.overlay.grid_scale": 1.0,
|
||||
"space.overlay.grid_subdivisions": 10,
|
||||
"space.overlay.normals_constant_screen_size": 7.0,
|
||||
"space.overlay.normals_length": 0.10000000149011612,
|
||||
"space.overlay.sculpt_curves_cage_opacity": 0.5,
|
||||
"space.overlay.sculpt_mode_face_sets_opacity": 1.0,
|
||||
"space.overlay.sculpt_mode_mask_opacity": 0.75,
|
||||
"space.overlay.show_annotation": true,
|
||||
"space.overlay.show_axis_x": false,
|
||||
"space.overlay.show_axis_y": false,
|
||||
"space.overlay.show_axis_z": false,
|
||||
"space.overlay.show_bones": true,
|
||||
"space.overlay.show_cursor": true,
|
||||
"space.overlay.show_curve_normals": false,
|
||||
"space.overlay.show_edge_bevel_weight": true,
|
||||
"space.overlay.show_edge_crease": true,
|
||||
"space.overlay.show_edge_seams": true,
|
||||
"space.overlay.show_edge_sharp": true,
|
||||
"space.overlay.show_extra_edge_angle": false,
|
||||
"space.overlay.show_extra_edge_length": false,
|
||||
"space.overlay.show_extra_face_angle": false,
|
||||
"space.overlay.show_extra_face_area": false,
|
||||
"space.overlay.show_extra_indices": false,
|
||||
"space.overlay.show_extras": true,
|
||||
"space.overlay.show_face_center": false,
|
||||
"space.overlay.show_face_normals": false,
|
||||
"space.overlay.show_face_orientation": false,
|
||||
"space.overlay.show_faces": true,
|
||||
"space.overlay.show_fade_inactive": false,
|
||||
"space.overlay.show_floor": false,
|
||||
"space.overlay.show_freestyle_edge_marks": true,
|
||||
"space.overlay.show_freestyle_face_marks": true,
|
||||
"space.overlay.show_look_dev": false,
|
||||
"space.overlay.show_motion_paths": true,
|
||||
"space.overlay.show_object_origins": false,
|
||||
"space.overlay.show_object_origins_all": false,
|
||||
"space.overlay.show_onion_skins": false,
|
||||
"space.overlay.show_ortho_grid": true,
|
||||
"space.overlay.show_outline_selected": true,
|
||||
"space.overlay.show_overlays": true,
|
||||
"space.overlay.show_paint_wire": false,
|
||||
"space.overlay.show_relationship_lines": false,
|
||||
"space.overlay.show_sculpt_curves_cage": true,
|
||||
"space.overlay.show_sculpt_face_sets": true,
|
||||
"space.overlay.show_sculpt_mask": true,
|
||||
"space.overlay.show_split_normals": false,
|
||||
"space.overlay.show_stats": false,
|
||||
"space.overlay.show_statvis": false,
|
||||
"space.overlay.show_text": true,
|
||||
"space.overlay.show_vertex_normals": false,
|
||||
"space.overlay.show_viewer_attribute": true,
|
||||
"space.overlay.show_weight": false,
|
||||
"space.overlay.show_wireframes": false,
|
||||
"space.overlay.show_wpaint_contours": false,
|
||||
"space.overlay.show_xray_bone": false,
|
||||
"space.overlay.texture_paint_mode_opacity": 1.0,
|
||||
"space.overlay.use_debug_freeze_view_culling": false,
|
||||
"space.overlay.use_gpencil_canvas_xray": false,
|
||||
"space.overlay.use_gpencil_edit_lines": true,
|
||||
"space.overlay.use_gpencil_fade_gp_objects": false,
|
||||
"space.overlay.use_gpencil_fade_layers": false,
|
||||
"space.overlay.use_gpencil_fade_objects": false,
|
||||
"space.overlay.use_gpencil_grid": false,
|
||||
"space.overlay.use_gpencil_multiedit_line_only": false,
|
||||
"space.overlay.use_gpencil_onion_skin": false,
|
||||
"space.overlay.use_gpencil_show_directions": false,
|
||||
"space.overlay.use_gpencil_show_material_name": false,
|
||||
"space.overlay.use_normals_constant_screen_size": false,
|
||||
"space.overlay.vertex_opacity": 1.0,
|
||||
"space.overlay.vertex_paint_mode_opacity": 1.0,
|
||||
"space.overlay.viewer_attribute_opacity": 1.0,
|
||||
"space.overlay.weight_paint_mode_opacity": 1.0,
|
||||
"space.overlay.wireframe_opacity": 1.0,
|
||||
"space.overlay.wireframe_threshold": 0.0,
|
||||
"space.overlay.xray_alpha_bone": 0.0
|
||||
}
|
||||
},
|
||||
"Blender Default": {
|
||||
"render_type": "VIEWPORT",
|
||||
"raster_style": {
|
||||
"bpy.data.worlds[0].color": [
|
||||
0.05087608844041824,
|
||||
0.05087608844041824,
|
||||
0.05087608844041824
|
||||
],
|
||||
"scene.eevee.use_shadows": true,
|
||||
"scene.eevee.shadow_ray_count": 1,
|
||||
"scene.eevee.shadow_step_count": 6,
|
||||
"scene.eevee.shadow_resolution_scale": 1.0,
|
||||
"scene.render.border_max_x": 1.0,
|
||||
"scene.render.border_max_y": 1.0,
|
||||
"scene.render.border_min_x": 0.0,
|
||||
"scene.render.border_min_y": 0.0,
|
||||
"scene.render.dither_intensity": 1.0,
|
||||
"scene.render.engine": "BLENDER_EEVEE",
|
||||
"scene.render.film_transparent": false,
|
||||
"scene.render.filter_size": 1.5,
|
||||
"scene.render.fps": 24,
|
||||
"scene.render.fps_base": 1.0,
|
||||
"scene.render.frame_map_new": 100,
|
||||
"scene.render.frame_map_old": 100,
|
||||
"scene.render.hair_subdiv": 0,
|
||||
"scene.render.hair_type": "STRAND",
|
||||
"scene.render.line_thickness": 1.0,
|
||||
"scene.render.line_thickness_mode": "ABSOLUTE",
|
||||
"scene.render.metadata_input": "SCENE",
|
||||
"scene.render.motion_blur_shutter": 0.5,
|
||||
"scene.render.pixel_aspect_x": 1.0,
|
||||
"scene.render.pixel_aspect_y": 1.0,
|
||||
"scene.render.preview_pixel_size": "AUTO",
|
||||
"scene.render.resolution_percentage": 100,
|
||||
"scene.render.resolution_x": 1000,
|
||||
"scene.render.resolution_y": 1000,
|
||||
"scene.render.sequencer_gl_preview": "SOLID",
|
||||
"scene.render.simplify_child_particles": 1.0,
|
||||
"scene.render.simplify_child_particles_render": 1.0,
|
||||
"scene.render.simplify_gpencil": false,
|
||||
"scene.render.simplify_gpencil_antialiasing": true,
|
||||
"scene.render.simplify_gpencil_modifier": true,
|
||||
"scene.render.simplify_gpencil_onplay": false,
|
||||
"scene.render.simplify_gpencil_shader_fx": true,
|
||||
"scene.render.simplify_gpencil_tint": true,
|
||||
"scene.render.simplify_gpencil_view_fill": true,
|
||||
"scene.render.simplify_subdivision": 6,
|
||||
"scene.render.simplify_subdivision_render": 6,
|
||||
"scene.render.simplify_volumes": 1.0,
|
||||
"scene.render.stamp_font_size": 12,
|
||||
"scene.render.stamp_note_text": "",
|
||||
"scene.render.threads": 20,
|
||||
"scene.render.threads_mode": "AUTO",
|
||||
"scene.render.use_border": false,
|
||||
"scene.render.use_compositing": true,
|
||||
"scene.render.use_crop_to_border": false,
|
||||
"scene.render.use_file_extension": true,
|
||||
"scene.render.use_freestyle": false,
|
||||
"scene.render.use_high_quality_normals": false,
|
||||
"scene.render.use_lock_interface": false,
|
||||
"scene.render.use_motion_blur": false,
|
||||
"scene.render.use_multiview": false,
|
||||
"scene.render.use_overwrite": true,
|
||||
"scene.render.use_persistent_data": false,
|
||||
"scene.render.use_placeholder": false,
|
||||
"scene.render.use_render_cache": false,
|
||||
"scene.render.use_sequencer": true,
|
||||
"scene.render.use_sequencer_override_scene_strip": false,
|
||||
"scene.render.use_simplify": false,
|
||||
"scene.render.use_single_layer": false,
|
||||
"scene.render.use_stamp": false,
|
||||
"scene.render.use_stamp_camera": true,
|
||||
"scene.render.use_stamp_date": true,
|
||||
"scene.render.use_stamp_filename": true,
|
||||
"scene.render.use_stamp_frame": true,
|
||||
"scene.render.use_stamp_frame_range": false,
|
||||
"scene.render.use_stamp_hostname": false,
|
||||
"scene.render.use_stamp_labels": true,
|
||||
"scene.render.use_stamp_lens": false,
|
||||
"scene.render.use_stamp_marker": false,
|
||||
"scene.render.use_stamp_memory": false,
|
||||
"scene.render.use_stamp_note": false,
|
||||
"scene.render.use_stamp_render_time": true,
|
||||
"scene.render.use_stamp_scene": true,
|
||||
"scene.render.use_stamp_sequencer_strip": false,
|
||||
"scene.render.use_stamp_time": true,
|
||||
"scene.render.views_format": "STEREO_3D",
|
||||
"scene.view_settings.exposure": 0.0,
|
||||
"scene.view_settings.gamma": 1.0,
|
||||
"scene.view_settings.look": "None",
|
||||
"scene.view_settings.use_curve_mapping": false,
|
||||
"scene.view_settings.view_transform": "Filmic",
|
||||
"scene.display.shading.aov_name": "",
|
||||
"scene.display.shading.background_color": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"scene.display.shading.background_type": "THEME",
|
||||
"scene.display.shading.cavity_ridge_factor": 1.0,
|
||||
"scene.display.shading.cavity_type": "WORLD",
|
||||
"scene.display.shading.cavity_valley_factor": 1.0,
|
||||
"scene.display.shading.color_type": "MATERIAL",
|
||||
"scene.display.shading.curvature_ridge_factor": 0.0,
|
||||
"scene.display.shading.curvature_valley_factor": 0.0,
|
||||
"scene.display.shading.light": "STUDIO",
|
||||
"scene.display.shading.object_outline_color": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"scene.display.shading.render_pass": "COMBINED",
|
||||
"scene.display.shading.shadow_intensity": 0.5,
|
||||
"scene.display.shading.show_backface_culling": false,
|
||||
"scene.display.shading.show_cavity": false,
|
||||
"scene.display.shading.show_object_outline": false,
|
||||
"scene.display.shading.show_shadows": false,
|
||||
"scene.display.shading.show_specular_highlight": true,
|
||||
"scene.display.shading.show_xray": false,
|
||||
"scene.display.shading.show_xray_wireframe": false,
|
||||
"scene.display.shading.single_color": [
|
||||
0.800000011920929,
|
||||
0.800000011920929,
|
||||
0.800000011920929
|
||||
],
|
||||
"scene.display.shading.studio_light": "forest.exr",
|
||||
"scene.display.shading.studiolight_background_alpha": 0.0,
|
||||
"scene.display.shading.studiolight_background_blur": 0.0,
|
||||
"scene.display.shading.studiolight_intensity": 0.0,
|
||||
"scene.display.shading.studiolight_rotate_z": 0.0,
|
||||
"scene.display.shading.type": "RENDERED",
|
||||
"scene.display.shading.use_compositor": "DISABLED",
|
||||
"scene.display.shading.use_dof": false,
|
||||
"scene.display.shading.use_scene_lights": false,
|
||||
"scene.display.shading.use_scene_lights_render": false,
|
||||
"scene.display.shading.use_scene_world": false,
|
||||
"scene.display.shading.use_scene_world_render": false,
|
||||
"scene.display.shading.use_studiolight_view_rotation": true,
|
||||
"scene.display.shading.use_world_space_lighting": false,
|
||||
"scene.display.shading.wireframe_color_type": "THEME",
|
||||
"scene.display.shading.xray_alpha": 0.5,
|
||||
"scene.display.shading.xray_alpha_wireframe": 0.0,
|
||||
"scene.display.light_direction": [
|
||||
0.5773502588272095,
|
||||
0.5773502588272095,
|
||||
0.5773502588272095
|
||||
],
|
||||
"scene.display.matcap_ssao_attenuation": 1.0,
|
||||
"scene.display.matcap_ssao_distance": 0.20000000298023224,
|
||||
"scene.display.matcap_ssao_samples": 16,
|
||||
"scene.display.render_aa": "8",
|
||||
"scene.display.shadow_focus": 0.0,
|
||||
"scene.display.shadow_shift": 0.10000000149011612,
|
||||
"scene.display.viewport_aa": "FXAA",
|
||||
"space.overlay.bone_wire_alpha": 1.0,
|
||||
"space.overlay.display_handle": "SELECTED",
|
||||
"space.overlay.fade_inactive_alpha": 0.4000000059604645,
|
||||
"space.overlay.gpencil_fade_layer": 0.5,
|
||||
"space.overlay.gpencil_fade_objects": 0.5,
|
||||
"space.overlay.gpencil_grid_opacity": 0.5,
|
||||
"space.overlay.gpencil_vertex_paint_opacity": 1.0,
|
||||
"space.overlay.grid_lines": 16,
|
||||
"space.overlay.grid_scale": 1.0,
|
||||
"space.overlay.grid_subdivisions": 10,
|
||||
"space.overlay.normals_constant_screen_size": 7.0,
|
||||
"space.overlay.normals_length": 0.10000000149011612,
|
||||
"space.overlay.sculpt_curves_cage_opacity": 0.5,
|
||||
"space.overlay.sculpt_mode_face_sets_opacity": 1.0,
|
||||
"space.overlay.sculpt_mode_mask_opacity": 0.75,
|
||||
"space.overlay.show_annotation": true,
|
||||
"space.overlay.show_axis_x": true,
|
||||
"space.overlay.show_axis_y": true,
|
||||
"space.overlay.show_axis_z": false,
|
||||
"space.overlay.show_bones": true,
|
||||
"space.overlay.show_cursor": true,
|
||||
"space.overlay.show_curve_normals": false,
|
||||
"space.overlay.show_edge_bevel_weight": true,
|
||||
"space.overlay.show_edge_crease": true,
|
||||
"space.overlay.show_edge_seams": true,
|
||||
"space.overlay.show_edge_sharp": true,
|
||||
"space.overlay.show_extra_edge_angle": false,
|
||||
"space.overlay.show_extra_edge_length": false,
|
||||
"space.overlay.show_extra_face_angle": false,
|
||||
"space.overlay.show_extra_face_area": false,
|
||||
"space.overlay.show_extra_indices": false,
|
||||
"space.overlay.show_extras": true,
|
||||
"space.overlay.show_face_center": false,
|
||||
"space.overlay.show_face_normals": false,
|
||||
"space.overlay.show_face_orientation": false,
|
||||
"space.overlay.show_faces": true,
|
||||
"space.overlay.show_fade_inactive": false,
|
||||
"space.overlay.show_floor": true,
|
||||
"space.overlay.show_freestyle_edge_marks": true,
|
||||
"space.overlay.show_freestyle_face_marks": true,
|
||||
"space.overlay.show_look_dev": false,
|
||||
"space.overlay.show_motion_paths": true,
|
||||
"space.overlay.show_object_origins": true,
|
||||
"space.overlay.show_object_origins_all": false,
|
||||
"space.overlay.show_onion_skins": false,
|
||||
"space.overlay.show_ortho_grid": true,
|
||||
"space.overlay.show_outline_selected": true,
|
||||
"space.overlay.show_overlays": true,
|
||||
"space.overlay.show_paint_wire": false,
|
||||
"space.overlay.show_relationship_lines": true,
|
||||
"space.overlay.show_sculpt_curves_cage": true,
|
||||
"space.overlay.show_sculpt_face_sets": true,
|
||||
"space.overlay.show_sculpt_mask": true,
|
||||
"space.overlay.show_split_normals": false,
|
||||
"space.overlay.show_stats": false,
|
||||
"space.overlay.show_statvis": false,
|
||||
"space.overlay.show_text": true,
|
||||
"space.overlay.show_vertex_normals": false,
|
||||
"space.overlay.show_viewer_attribute": true,
|
||||
"space.overlay.show_weight": false,
|
||||
"space.overlay.show_wireframes": false,
|
||||
"space.overlay.show_wpaint_contours": false,
|
||||
"space.overlay.show_xray_bone": false,
|
||||
"space.overlay.texture_paint_mode_opacity": 1.0,
|
||||
"space.overlay.use_debug_freeze_view_culling": false,
|
||||
"space.overlay.use_gpencil_canvas_xray": false,
|
||||
"space.overlay.use_gpencil_edit_lines": true,
|
||||
"space.overlay.use_gpencil_fade_gp_objects": false,
|
||||
"space.overlay.use_gpencil_fade_layers": false,
|
||||
"space.overlay.use_gpencil_fade_objects": false,
|
||||
"space.overlay.use_gpencil_grid": false,
|
||||
"space.overlay.use_gpencil_multiedit_line_only": false,
|
||||
"space.overlay.use_gpencil_onion_skin": false,
|
||||
"space.overlay.use_gpencil_show_directions": false,
|
||||
"space.overlay.use_gpencil_show_material_name": false,
|
||||
"space.overlay.use_normals_constant_screen_size": false,
|
||||
"space.overlay.vertex_opacity": 1.0,
|
||||
"space.overlay.vertex_paint_mode_opacity": 1.0,
|
||||
"space.overlay.viewer_attribute_opacity": 1.0,
|
||||
"space.overlay.weight_paint_mode_opacity": 1.0,
|
||||
"space.overlay.wireframe_opacity": 1.0,
|
||||
"space.overlay.wireframe_threshold": 1.0,
|
||||
"space.overlay.xray_alpha_bone": 0.0
|
||||
}
|
||||
}
|
||||
}
|
||||
72
examples/harbor-house/drawings/assets/symbols.svg
Normal file
72
examples/harbor-house/drawings/assets/symbols.svg
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<svg baseProfile="full" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="rectangle-tag">
|
||||
<rect x="-6" y="-2.5" width="12" height="5" fill="white" stroke="black" style="stroke-width: 0.25;" />
|
||||
</g>
|
||||
<g id="triangle-tag">
|
||||
<path style="fill: white; stroke: black; stroke-width: 0.25;" d="M 3.1409425e-7,-7.1069207 5.7650623,2.8784603 l -11.5301246,-6e-7 z" />
|
||||
</g>
|
||||
<g id="hexagon-tag">
|
||||
<path style="fill: white; stroke: black; stroke-width: 0.25;" d="m 0.0161133,-6.0583333 5.2339915,3.8366023 -2.031433,6.1633977 c 0,0 -6.4894866,-0.027414 -6.4894866,-0.027414 l -1.97929,-6.1803395 5.2662181,-3.7922467" />
|
||||
</g>
|
||||
<g id="capsule-tag">
|
||||
<rect x="-6" y="-2.5" width="12" height="5" rx="2.5" ry="2.5" fill="white" stroke="black" style="stroke-width: 0.25;" />
|
||||
</g>
|
||||
<g id="circle-tag">
|
||||
<circle r="5" fill="white" stroke="black" style="stroke-width: 0.25;" />
|
||||
</g>
|
||||
<g id="door-tag">
|
||||
<circle r="5" fill="white" stroke="black" style="stroke-width: 0.25;" />
|
||||
<text y="-1.75" class="regular" text-anchor="middle" dominant-baseline="middle" data-type="text-template"></text>
|
||||
<line x1="-5" x2="5" style="stroke: black; stroke-width: 0.25;" />
|
||||
<text y="2.5" class="regular" text-anchor="middle" dominant-baseline="middle" data-type="text-template"></text>
|
||||
</g>
|
||||
<g id="window-tag">
|
||||
<path style="fill: white; stroke: black; stroke-width: 0.25;" d="m 0.0161133,-6.0583333 5.2339915,3.8366023 -2.031433,6.1633977 c 0,0 -6.4894866,-0.027414 -6.4894866,-0.027414 l -1.97929,-6.1803395 5.2662181,-3.7922467" />
|
||||
</g>
|
||||
<g id="space-tag">
|
||||
<text y="-5" class="large" text-anchor="middle" dominant-baseline="middle" data-type="text-template"></text>
|
||||
<rect x="-6" y="-2.5" width="12" height="5" fill="white" stroke="black" style="stroke-width: 0.25;" />
|
||||
<text class="regular" text-anchor="middle" dominant-baseline="middle" data-type="text-template"></text>
|
||||
<text y="5" class="regular" text-anchor="middle" dominant-baseline="middle" data-type="text-template"></text>
|
||||
</g>
|
||||
<g id="elevation-arrow">
|
||||
<path style="fill: black;" d="M -7.07106 0 0 -7.07106 7.07106 0" />
|
||||
</g>
|
||||
<g id="elevation-tag">
|
||||
<circle r="5" fill="white" stroke="black" style="stroke-width: 0.25;" />
|
||||
<line x1="-5" y1="0" x2="5" y2="0" style="stroke: black; stroke-width: 0.25;" />
|
||||
</g>
|
||||
<g id="section-arrow">
|
||||
<path style="fill: black;" d="M -7.07106 0 0 -7.07106 7.07106 0" />
|
||||
</g>
|
||||
<g id="section-tag">
|
||||
<circle r="5" fill="white" stroke="black" style="stroke-width: 0.25;" />
|
||||
<line x1="-5" y1="0" x2="5" y2="0" style="stroke: black; stroke-width: 0.25;" />
|
||||
</g>
|
||||
<g id="dot">
|
||||
<circle r="1" fill="black" stroke="black" style="stroke-width: 0.25;" />
|
||||
</g>
|
||||
<g id="setout-tag">
|
||||
<circle fill="white" stroke="black" r="2.5" style="stroke-width: 0.5"/>
|
||||
<path d="M 0 0 L -2.5 0 A 2.5 2.5 0 0 1 0 -2.5 Z" fill="black"/>
|
||||
<path d="M 0 0 L 2.5 0 A 2.5 2.5 0 0 1 0 2.5 Z" fill="black"/>
|
||||
<text x="3" y="-8" class="regular" text-anchor="start" dominant-baseline="auto" data-type="text-template"></text>
|
||||
<text x="3" y="-4" class="regular" text-anchor="start" dominant-baseline="auto" data-type="text-template"></text>
|
||||
</g>
|
||||
<g id="setout-point">
|
||||
<circle fill="white" stroke="black" r="2.5" style="stroke-width: 0.5"/>
|
||||
<path d="M 0 0 L -2.5 0 A 2.5 2.5 0 0 1 0 -2.5 Z" fill="black"/>
|
||||
<path d="M 0 0 L 2.5 0 A 2.5 2.5 0 0 1 0 2.5 Z" fill="black"/>
|
||||
</g>
|
||||
<g id="control-point">
|
||||
<path style="fill: white; stroke: black; stroke-width: 0.5;" d="M 2.286165,1.4798666 H -1.0000316e-7 -2.2861651 L -1.1430826,-0.5000101 -1.0000316e-7,-2.479888 1.1430827,-0.5000101 Z" />
|
||||
<circle r="0.5" fill="black" stroke="black" style="stroke-width: 0.25;" />
|
||||
</g>
|
||||
<g id="traverse-point">
|
||||
<path style="fill: white; stroke: black; stroke-width: 0.5;" d="M -2,-2 2,2 M -2,2 2,-2" />
|
||||
</g>
|
||||
<g id="spot-elevation">
|
||||
<path style="fill: white; stroke: black; stroke-width: 0.5;" d="M 0,-2 0,2 M -2,0 2,0" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.2 KiB |
116
examples/harbor-house/drawings/cache/harbor-house 1-annotation.svg
vendored
Normal file
116
examples/harbor-house/drawings/cache/harbor-house 1-annotation.svg
vendored
Normal file
|
|
@ -0,0 +1,116 @@
|
|||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:ifc="http://www.ifcopenshell.org/ns" xmlns:xlink="http://www.w3.org/1999/xlink" baseProfile="full" data-scale="1:100" height="347.2920227050781mm" id="root" version="1.1" viewBox="0 0 283.9324049042492 347.2920227050781" width="283.9324049042492mm">
|
||||
<defs/>
|
||||
<use transform="rotate(-90.00000250447816, 278.5086364746094, 173.64601135253906)" x="278.5086364746094" xlink:href="#elevation-arrow" y="173.64601135253906"/>
|
||||
<use x="278.5086364746094" xlink:href="#elevation-tag" y="173.64601135253906"/>
|
||||
<text class="ELEVATION" dominant-baseline="middle" text-anchor="middle" x="278.5086364746094" y="171.14601135253906">5</text>
|
||||
<text class="ELEVATION" dominant-baseline="middle" text-anchor="middle" x="278.5086364746094" y="176.14601135253906">A001</text>
|
||||
<use transform="rotate(-0.0, 141.96620178222656, 341.7720031738281)" x="141.96620178222656" xlink:href="#elevation-arrow" y="341.7720031738281"/>
|
||||
<use x="141.96620178222656" xlink:href="#elevation-tag" y="341.7720031738281"/>
|
||||
<text class="ELEVATION" dominant-baseline="middle" text-anchor="middle" x="141.96620178222656" y="339.2720031738281">3</text>
|
||||
<text class="ELEVATION" dominant-baseline="middle" text-anchor="middle" x="141.96620178222656" y="344.2720031738281">A001</text>
|
||||
<use transform="rotate(180.00000500895632, 141.96620178222656, 5.519981384277344)" x="141.96620178222656" xlink:href="#elevation-arrow" y="5.519981384277344"/>
|
||||
<use x="141.96620178222656" xlink:href="#elevation-tag" y="5.519981384277344"/>
|
||||
<text class="ELEVATION" dominant-baseline="middle" text-anchor="middle" x="141.96620178222656" y="3.0199813842773438">2</text>
|
||||
<text class="ELEVATION" dominant-baseline="middle" text-anchor="middle" x="141.96620178222656" y="8.019981384277344">A001</text>
|
||||
<use transform="rotate(90.00000250447816, 5.423786640167236, 173.64601135253906)" x="5.423786640167236" xlink:href="#elevation-arrow" y="173.64601135253906"/>
|
||||
<use x="5.423786640167236" xlink:href="#elevation-tag" y="173.64601135253906"/>
|
||||
<text class="ELEVATION" dominant-baseline="middle" text-anchor="middle" x="5.423786640167236" y="171.14601135253906">4</text>
|
||||
<text class="ELEVATION" dominant-baseline="middle" text-anchor="middle" x="5.423786640167236" y="176.14601135253906">A001</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(104.0402603149414, 112.1025161743164) rotate(-0.0)">
|
||||
<tspan class="GlobalId-14k76oIez1vxM0oh32S0GE IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Circulation</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(55.23228073120117, 162.96786499023438) rotate(-0.0)">
|
||||
<tspan class="GlobalId-0MyH$XkpPDXxIUaT9Ld8Hw IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Outside</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(141.86961364746094, 151.8088836669922) rotate(-0.0)">
|
||||
<tspan class="GlobalId-2PE9CsOj13Z9IrWaGXrOc2 IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Bathroom</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(116.88951110839844, 48.97612762451172) rotate(-0.0)">
|
||||
<tspan class="GlobalId-2Xq2z1Eh5F8gNMVVogO2GJ IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Individual room</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(173.82005310058594, 144.2660675048828) rotate(-0.0)">
|
||||
<tspan class="GlobalId-0KyqAKW8nDBwZDBQdEj_iK IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">First floor storage</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(149.87120056152344, 255.59417724609375) rotate(-0.0)">
|
||||
<tspan class="GlobalId-3rMjwhobv6_PEgdf9$K3zJ IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Circulation</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(142.7828369140625, 178.0451202392578) rotate(-0.0)">
|
||||
<tspan class="GlobalId-1X0qZMsjb4UuCuoP0Lq41v IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Individual room</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(212.8541259765625, 285.85626220703125) rotate(-0.0)">
|
||||
<tspan class="GlobalId-2YLyAyX796LwYiMGzpPr2G IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Library corner</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(88.3046875, 63.82916259765625) rotate(-0.0)">
|
||||
<tspan class="GlobalId-0$IByw69TDLvnor8Ds1qWt IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Individual room</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(36.39326477050781, 311.0692138671875) rotate(-0.0)">
|
||||
<tspan class="GlobalId-0Y8lYMSb54fOgp0QqQ7Ns4 IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Stair</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(30.05246353149414, 124.2915267944336) rotate(-0.0)">
|
||||
<tspan class="GlobalId-2bqHH7bW9AKuxe1Uj6OLyq IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Individual room</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(204.09750366210938, 173.6927032470703) rotate(-0.0)">
|
||||
<tspan class="GlobalId-2bSIAbizzCYf5p7OTP8rJI IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Individual room</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(222.9790496826172, 112.36170959472656) rotate(-0.0)">
|
||||
<tspan class="GlobalId-2lg7HOP_vAtAB5Le8xwyz8 IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Ground floor storage</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(30.54391098022461, 175.71914672851562) rotate(-0.0)">
|
||||
<tspan class="GlobalId-0gdzN02vf34PC6Wcl$kR8J IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Circulation</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(82.68409729003906, 243.4410400390625) rotate(-0.0)">
|
||||
<tspan class="GlobalId-3hPXipzRz0S9exKDyH0Vcp IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Neighborhood</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(48.83393859863281, 93.4433822631836) rotate(-0.0)">
|
||||
<tspan class="GlobalId-1I8tY$FIv0_wDthF4VjB1P IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Bathroom</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(36.00395584106445, 222.1943359375) rotate(-0.0)">
|
||||
<tspan class="GlobalId-0MX6uTQTr8qOdGIROZnXYB IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Individual room</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(138.38088989257812, 58.71159362792969) rotate(-0.0)">
|
||||
<tspan class="GlobalId-3O1qPE9qj4yxEzv9SUamLD IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Individual room</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(87.72796630859375, 34.609764099121094) rotate(-0.0)">
|
||||
<tspan class="GlobalId-23LW3b_szBDBLnq0wZDN81 IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Outside</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(36.30070877075195, 289.939697265625) rotate(-0.0)">
|
||||
<tspan class="GlobalId-0g5Y0kvLv1hwBodQWzU4sm IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Individual room</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(194.0360107421875, 287.24896240234375) rotate(-0.0)">
|
||||
<tspan class="GlobalId-2QIAqitaLFJPcCk7DoGUtY IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Individual room</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(219.0067138671875, 46.154258728027344) rotate(-0.0)">
|
||||
<tspan class="GlobalId-247dH3OhD05Qw$82Tjf4WD IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Ground floor storage</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(29.954397201538086, 89.66910552978516) rotate(-0.0)">
|
||||
<tspan class="GlobalId-1FCx3YB1X4fhemya1p0hiR IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Circulation</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(36.176292419433594, 261.53753662109375) rotate(-0.0)">
|
||||
<tspan class="GlobalId-038B2S9SL0d9_I_xR1yvlW IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">First floor storage</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(101.0525131225586, 172.71115112304688) rotate(-0.0)">
|
||||
<tspan class="GlobalId-3kATNz14D6dQsPKCXfltH8 IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Sahn</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(55.496238708496094, 189.85069274902344) rotate(-0.0)">
|
||||
<tspan class="GlobalId-3$mxc3OeX3ggdTedb7yZeS IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Bathroom</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(49.11585235595703, 127.88272094726562) rotate(-0.0)">
|
||||
<tspan class="GlobalId-1_sXb7hMjA8u8EhCqXyOl4 IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Individual room</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(45.175167083740234, 49.580604553222656) rotate(-0.0)">
|
||||
<tspan class="GlobalId-0KSG2qVOb0zu1v0SS_Dofk IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">First floor storage</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(83.710205078125, 303.1560974121094) rotate(-0.0)">
|
||||
<tspan class="GlobalId-2Hk3oth3n8sh2h0Bf5KwNl IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">First floor storage</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(137.38067626953125, 29.91387367248535) rotate(-0.0)">
|
||||
<tspan class="GlobalId-3TY70XhmHAcRtu4o63zE$T IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Bathroom</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(170.83584594726562, 77.07499694824219) rotate(-0.0)">
|
||||
<tspan class="GlobalId-0Z1UUYeAf9zBPtDmFlSl5K IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">First floor storage</tspan>
|
||||
</text>
|
||||
<text dominant-baseline="middle" style="font-size: 0;" text-anchor="middle" transform="translate(222.19921875, 227.48216247558594) rotate(-0.0)">
|
||||
<tspan class="GlobalId-114S2YEkj9CRPoowAp_8WN IfcAnnotation PredefinedType-TEXT header" dy="0em" x="0" y="0">Utilities closet</tspan>
|
||||
</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 12 KiB |
8241
examples/harbor-house/drawings/cache/harbor-house 1-linework.svg
vendored
Normal file
8241
examples/harbor-house/drawings/cache/harbor-house 1-linework.svg
vendored
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 1.1 MiB |
8756
examples/harbor-house/drawings/harbor-house 1.svg
Normal file
8756
examples/harbor-house/drawings/harbor-house 1.svg
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 1.2 MiB |
300
examples/harbor-house/evolve-3M-nols-2.log
Normal file
300
examples/harbor-house/evolve-3M-nols-2.log
Normal file
|
|
@ -0,0 +1,300 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-3M-nols.dom
|
||||
programme : harbor-house
|
||||
budget : 3000000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 1
|
||||
rng seed : 0
|
||||
leaf sharing : False (factor=3)
|
||||
superpose : False
|
||||
output : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-3M-nols-2.dom
|
||||
[ 200 evals] best 1.20049e-11 (fails 32) via seed
|
||||
[ 20520 evals] best 1.3603e-11 (fails 32) via rotate 0/rrl
|
||||
[ 23240 evals] best 1.36649e-11 (fails 32) via core_undivide noop
|
||||
[ 28200 evals] best 1.38185e-11 (fails 32) via core_undivide noop
|
||||
[ 34520 evals] best 2.01893e-11 (fails 31) via place_missing noop
|
||||
[ 35480 evals] best 2.79281e-11 (fails 31) via place_missing noop
|
||||
[ 36200 evals] best 2.80872e-11 (fails 31) via place_missing noop
|
||||
[ 40200 evals] best 2.8253e-11 (fails 31) via place_missing noop
|
||||
[ 41880 evals] best 2.84268e-11 (fails 31) via crossover llrlr<->llrlr
|
||||
[ 50920 evals] best 2.85753e-11 (fails 31) via place_missing noop
|
||||
[ 62280 evals] best 2.89517e-11 (fails 30) via crossover rlrr<->llrl
|
||||
[ 62600 evals] best 3.34689e-11 (fails 30) via core_undivide noop
|
||||
[ 63720 evals] best 3.40595e-11 (fails 30) via level_retype 0/lllrlr<->1/rllllr
|
||||
[ 64120 evals] best 3.46347e-11 (fails 30) via place_missing noop
|
||||
[ 65240 evals] best 3.48699e-11 (fails 30) via place_missing noop
|
||||
[ 66920 evals] best 3.50429e-11 (fails 30) via place_missing noop
|
||||
[ 68200 evals] best 3.52197e-11 (fails 30) via place_missing noop
|
||||
[ 69480 evals] best 3.53897e-11 (fails 30) via place_missing noop
|
||||
[ 70120 evals] best 3.55584e-11 (fails 30) via core_undivide noop
|
||||
[ 72120 evals] best 3.56615e-11 (fails 30) via place_missing noop
|
||||
[ 77640 evals] best 7.76357e-11 (fails 29) via rotate 0/rlrr
|
||||
[ 80760 evals] best 7.81409e-11 (fails 29) via place_missing noop
|
||||
[ 89000 evals] best 7.86684e-11 (fails 29) via core_undivide noop
|
||||
[ 92840 evals] best 7.92192e-11 (fails 29) via core_undivide noop
|
||||
[ 94760 evals] best 7.97367e-11 (fails 29) via retype 0/lllrll->st1
|
||||
[105640 evals] best 9.11925e-11 (fails 29) via rotate 0/rlrl
|
||||
[112920 evals] best 1.43742e-10 (fails 28) via swap 0/rlrrl
|
||||
[148680 evals] best 1.70784e-10 (fails 28) via swap 0/rlrrl
|
||||
[191800 evals] best 1.92624e-10 (fails 28) via retype 0/rlrrll->O
|
||||
[211160 evals] best 1.99568e-10 (fails 28) via rotate 0/rrrlr
|
||||
[273560 evals] best 3.37479e-10 (fails 27) via divide 0/rrll
|
||||
[295640 evals] best 6.6851e-10 (fails 26) via level_retype 1/lrrlrl<->0/rrllr
|
||||
[300520 evals] best 6.71575e-10 (fails 26) via core_undivide noop
|
||||
[304840 evals] best 6.73945e-10 (fails 26) via core_undivide noop
|
||||
[305160 evals] best 6.76176e-10 (fails 26) via core_undivide noop
|
||||
[308760 evals] best 6.77048e-10 (fails 26) via place_missing noop
|
||||
[314360 evals] best 8.51018e-10 (fails 26) via divide 0/llrlr
|
||||
[320280 evals] best 8.53835e-10 (fails 26) via level_retype 1/llrlllr<->0/rrlr
|
||||
[321240 evals] best 8.54936e-10 (fails 26) via swap 0/rrrlrl
|
||||
[411880 evals] best 8.80111e-10 (fails 26) via undivide 0/lllrl
|
||||
[458040 evals] best 1.55881e-09 (fails 25) via crossover lllrl<->lrrr
|
||||
[491720 evals] best 1.80936e-09 (fails 25) via crossover rlrrll<->llrlrr
|
||||
[515000 evals] best 2.24132e-09 (fails 25) via rotate 1/lrrlr
|
||||
[600440 evals] best 2.28188e-09 (fails 25) via undivide 0/rrrll
|
||||
[633960 evals] best 3.87563e-09 (fails 24) via retype 1/rllrr->st1
|
||||
[660680 evals] best 4.58847e-09 (fails 24) via retype 1/rllrr->C
|
||||
[670120 evals] best 4.5971e-09 (fails 24) via core_undivide noop
|
||||
[673000 evals] best 4.60863e-09 (fails 24) via swap 0/rrrlrl
|
||||
[673720 evals] best 4.73211e-09 (fails 24) via retype 1/rrll->O
|
||||
[677160 evals] best 4.7494e-09 (fails 24) via place_missing noop
|
||||
[681160 evals] best 4.75775e-09 (fails 24) via core_undivide noop
|
||||
[689240 evals] best 4.86041e-09 (fails 24) via undivide 1/lrrll
|
||||
[695640 evals] best 4.86569e-09 (fails 24) via place_missing noop
|
||||
[703480 evals] best 4.86831e-09 (fails 24) via core_undivide noop
|
||||
[704360 evals] best 4.8863e-09 (fails 24) via swap 0/rrll
|
||||
[705480 evals] best 4.89938e-09 (fails 24) via place_missing noop
|
||||
[707000 evals] best 4.90287e-09 (fails 24) via crossover llrlrr<->rrrr
|
||||
[708040 evals] best 4.90394e-09 (fails 24) via core_undivide noop
|
||||
[713400 evals] best 5.00798e-09 (fails 24) via undivide 1/lrrll
|
||||
[724040 evals] best 5.11809e-09 (fails 24) via undivide 1/lrrll
|
||||
[735000 evals] best 5.15421e-09 (fails 24) via undivide 1/rlllr
|
||||
[746200 evals] best 5.15486e-09 (fails 24) via undivide 0/rrrll
|
||||
[768360 evals] best 5.26248e-09 (fails 24) via undivide 1/rlllr
|
||||
[800920 evals] best 5.26644e-09 (fails 24) via undivide 1/rlllr
|
||||
[827880 evals] best 5.26644e-09 (fails 24) via crossover lrllr<->llrlr
|
||||
[878680 evals] best 5.32211e-09 (fails 24) via level_retype 1/llrllll<->0/rllrl
|
||||
[1103320 evals] best 1.06348e-08 (fails 23) via undivide 0/rrrlrl
|
||||
[1116440 evals] best 1.12572e-08 (fails 23) via divide 0/rlrrll
|
||||
[1149800 evals] best 1.14984e-08 (fails 23) via undivide 1/lrrll
|
||||
[1382840 evals] best 1.15051e-08 (fails 23) via undivide 1/lrrll
|
||||
[1387880 evals] best 1.15251e-08 (fails 23) via rotate 0/rlrrl
|
||||
[1390440 evals] best 1.33748e-08 (fails 23) via retype 1/llrrr->st1
|
||||
[1437480 evals] best 1.33819e-08 (fails 23) via crossover llrlrl<->rrrr
|
||||
[1438120 evals] best 1.34359e-08 (fails 23) via rotate 0/rlrrll
|
||||
[1441720 evals] best 1.34477e-08 (fails 23) via core_divide noop
|
||||
[1441960 evals] best 1.34988e-08 (fails 23) via place_missing noop
|
||||
[1457640 evals] best 1.37468e-08 (fails 23) via undivide 0/llrllll
|
||||
[1627960 evals] best 2.6523e-08 (fails 22) via level_retype 1/llrllll<->0/rrlll
|
||||
[1629800 evals] best 2.65259e-08 (fails 22) via core_undivide noop
|
||||
[1755560 evals] best 5.83384e-08 (fails 21) via divide 0/lllrl
|
||||
[1805080 evals] best 1.18411e-07 (fails 20) via divide 0/lllrl
|
||||
[1865880 evals] best 1.18411e-07 (fails 20) via undivide 0/rlrrll
|
||||
[1880760 evals] best 1.88783e-07 (fails 19) via crossover rlrrll<->lrrr
|
||||
[1956360 evals] best 2.10097e-07 (fails 19) via crossover rlrrlll<->lllrll
|
||||
[1996840 evals] best 2.11465e-07 (fails 19) via retype 0/rlrrlll->C
|
||||
[1997640 evals] best 2.11848e-07 (fails 19) via core_divide noop
|
||||
[2007560 evals] best 2.35646e-07 (fails 19) via crossover rlrrlll<->lrrr
|
||||
[2012360 evals] best 2.36973e-07 (fails 19) via place_missing noop
|
||||
[2012760 evals] best 2.37399e-07 (fails 19) via place_missing noop
|
||||
[2038680 evals] best 2.49379e-07 (fails 19) via rotate 0/rlrrl
|
||||
[2045960 evals] best 4.54898e-07 (fails 18) via crossover lrrlrr<->llrlllr
|
||||
[2046280 evals] best 4.55804e-07 (fails 18) via place_missing noop
|
||||
[2046680 evals] best 4.56932e-07 (fails 18) via place_missing noop
|
||||
[2047400 evals] best 4.57898e-07 (fails 18) via core_divide noop
|
||||
[2064200 evals] best 4.58171e-07 (fails 18) via swap 0/rrll
|
||||
[2064360 evals] best 4.58199e-07 (fails 18) via core_divide noop
|
||||
[2065960 evals] best 4.58199e-07 (fails 18) via rotate 0/llrllll
|
||||
[2066600 evals] best 4.59148e-07 (fails 18) via place_missing noop
|
||||
[2067480 evals] best 4.5952e-07 (fails 18) via core_undivide noop
|
||||
[2097480 evals] best 4.61537e-07 (fails 18) via place_missing noop
|
||||
[2102040 evals] best 4.63543e-07 (fails 18) via place_missing noop
|
||||
[2102440 evals] best 4.64431e-07 (fails 18) via core_undivide noop
|
||||
[2164360 evals] best 4.72304e-07 (fails 18) via level_retype 0/lrrll<->1/lrlll
|
||||
[2194440 evals] best 4.72706e-07 (fails 18) via rotate 0/lrrlr
|
||||
[2195240 evals] best 4.73159e-07 (fails 18) via place_missing noop
|
||||
[2197000 evals] best 4.73498e-07 (fails 18) via place_missing noop
|
||||
[2209560 evals] best 4.75066e-07 (fails 18) via rotate 0/rrllr
|
||||
[2280840 evals] best 4.8783e-07 (fails 18) via rotate 0/rlrrll
|
||||
[2282840 evals] best 8.51649e-07 (fails 17) via level_retype 1/rrlrl<->0/llrllllr
|
||||
[2288840 evals] best 8.55171e-07 (fails 17) via crossover lrrlrl<->llrlllll
|
||||
[2289880 evals] best 8.55716e-07 (fails 17) via crossover lrrlrl<->llrllllr
|
||||
[2291800 evals] best 8.5789e-07 (fails 17) via core_undivide noop
|
||||
[2292440 evals] best 8.5798e-07 (fails 17) via place_missing noop
|
||||
[2305560 evals] best 8.8011e-07 (fails 17) via undivide 1/llrrl
|
||||
[2387000 evals] best 8.80152e-07 (fails 17) via undivide 1/llllr
|
||||
[2389880 evals] best 8.85765e-07 (fails 17) via swap 0/rlrrll
|
||||
[2390200 evals] best 8.89866e-07 (fails 17) via core_undivide noop
|
||||
[2390360 evals] best 8.93447e-07 (fails 17) via place_missing noop
|
||||
[2391320 evals] best 8.96723e-07 (fails 17) via place_missing noop
|
||||
[2391560 evals] best 9.00224e-07 (fails 17) via place_missing noop
|
||||
[2393800 evals] best 9.00342e-07 (fails 17) via core_undivide noop
|
||||
[2395800 evals] best 9.00374e-07 (fails 17) via place_missing noop
|
||||
[2430600 evals] best 1.02904e-06 (fails 17) via retype 0/rrlr->of
|
||||
[2494040 evals] best 1.02964e-06 (fails 17) via level_retype 1/rrrlrr<->0/rrlr
|
||||
[2494440 evals] best 1.03243e-06 (fails 17) via place_missing noop
|
||||
[2495080 evals] best 1.03547e-06 (fails 17) via place_missing noop
|
||||
[2495640 evals] best 1.03782e-06 (fails 17) via core_divide noop
|
||||
[2502600 evals] best 1.04002e-06 (fails 17) via place_missing noop
|
||||
[2504680 evals] best 1.04261e-06 (fails 17) via place_missing noop
|
||||
[2505960 evals] best 1.04369e-06 (fails 17) via core_undivide noop
|
||||
[2539560 evals] best 1.06976e-06 (fails 17) via undivide 1/rrrlrl
|
||||
[2559160 evals] best 1.07167e-06 (fails 17) via undivide 1/rrrlrl
|
||||
[2559720 evals] best 1.0724e-06 (fails 17) via place_missing noop
|
||||
[2583720 evals] best 1.0724e-06 (fails 17) via crossover rlrrr<->lrllr
|
||||
[2586280 evals] best 1.90952e-06 (fails 16) via divide 1/rlllr
|
||||
[2640920 evals] best 2.00292e-06 (fails 16) via divide 1/rlllr
|
||||
[2668680 evals] best 2.14664e-06 (fails 16) via divide 1/llllr
|
||||
[2690200 evals] best 2.15597e-06 (fails 16) via crossover lrrl<->lrrl
|
||||
[2693960 evals] best 4.1894e-06 (fails 15) via swap 1/rrrlr
|
||||
[2784840 evals] best 4.19245e-06 (fails 15) via rotate 1/rrlrr
|
||||
[2842120 evals] best 4.19245e-06 (fails 15) via divide 0/rrrr
|
||||
|
||||
--- done ---
|
||||
elapsed : 308651.9s
|
||||
evals : 3000040 across 37499 topologies
|
||||
best : 4.19245e-06 (15 fails) via divide 0/rrrr
|
||||
|
||||
improvement history:
|
||||
[ 200] 1.20049e-11 (seed)
|
||||
[ 20520] 1.3603e-11 (rotate 0/rrl)
|
||||
[ 23240] 1.36649e-11 (core_undivide noop)
|
||||
[ 28200] 1.38185e-11 (core_undivide noop)
|
||||
[ 34520] 2.01893e-11 (place_missing noop)
|
||||
[ 35480] 2.79281e-11 (place_missing noop)
|
||||
[ 36200] 2.80872e-11 (place_missing noop)
|
||||
[ 40200] 2.8253e-11 (place_missing noop)
|
||||
[ 41880] 2.84268e-11 (crossover llrlr<->llrlr)
|
||||
[ 50920] 2.85753e-11 (place_missing noop)
|
||||
[ 62280] 2.89517e-11 (crossover rlrr<->llrl)
|
||||
[ 62600] 3.34689e-11 (core_undivide noop)
|
||||
[ 63720] 3.40595e-11 (level_retype 0/lllrlr<->1/rllllr)
|
||||
[ 64120] 3.46347e-11 (place_missing noop)
|
||||
[ 65240] 3.48699e-11 (place_missing noop)
|
||||
[ 66920] 3.50429e-11 (place_missing noop)
|
||||
[ 68200] 3.52197e-11 (place_missing noop)
|
||||
[ 69480] 3.53897e-11 (place_missing noop)
|
||||
[ 70120] 3.55584e-11 (core_undivide noop)
|
||||
[ 72120] 3.56615e-11 (place_missing noop)
|
||||
[ 77640] 7.76357e-11 (rotate 0/rlrr)
|
||||
[ 80760] 7.81409e-11 (place_missing noop)
|
||||
[ 89000] 7.86684e-11 (core_undivide noop)
|
||||
[ 92840] 7.92192e-11 (core_undivide noop)
|
||||
[ 94760] 7.97367e-11 (retype 0/lllrll->st1)
|
||||
[105640] 9.11925e-11 (rotate 0/rlrl)
|
||||
[112920] 1.43742e-10 (swap 0/rlrrl)
|
||||
[148680] 1.70784e-10 (swap 0/rlrrl)
|
||||
[191800] 1.92624e-10 (retype 0/rlrrll->O)
|
||||
[211160] 1.99568e-10 (rotate 0/rrrlr)
|
||||
[273560] 3.37479e-10 (divide 0/rrll)
|
||||
[295640] 6.6851e-10 (level_retype 1/lrrlrl<->0/rrllr)
|
||||
[300520] 6.71575e-10 (core_undivide noop)
|
||||
[304840] 6.73945e-10 (core_undivide noop)
|
||||
[305160] 6.76176e-10 (core_undivide noop)
|
||||
[308760] 6.77048e-10 (place_missing noop)
|
||||
[314360] 8.51018e-10 (divide 0/llrlr)
|
||||
[320280] 8.53835e-10 (level_retype 1/llrlllr<->0/rrlr)
|
||||
[321240] 8.54936e-10 (swap 0/rrrlrl)
|
||||
[411880] 8.80111e-10 (undivide 0/lllrl)
|
||||
[458040] 1.55881e-09 (crossover lllrl<->lrrr)
|
||||
[491720] 1.80936e-09 (crossover rlrrll<->llrlrr)
|
||||
[515000] 2.24132e-09 (rotate 1/lrrlr)
|
||||
[600440] 2.28188e-09 (undivide 0/rrrll)
|
||||
[633960] 3.87563e-09 (retype 1/rllrr->st1)
|
||||
[660680] 4.58847e-09 (retype 1/rllrr->C)
|
||||
[670120] 4.5971e-09 (core_undivide noop)
|
||||
[673000] 4.60863e-09 (swap 0/rrrlrl)
|
||||
[673720] 4.73211e-09 (retype 1/rrll->O)
|
||||
[677160] 4.7494e-09 (place_missing noop)
|
||||
[681160] 4.75775e-09 (core_undivide noop)
|
||||
[689240] 4.86041e-09 (undivide 1/lrrll)
|
||||
[695640] 4.86569e-09 (place_missing noop)
|
||||
[703480] 4.86831e-09 (core_undivide noop)
|
||||
[704360] 4.8863e-09 (swap 0/rrll)
|
||||
[705480] 4.89938e-09 (place_missing noop)
|
||||
[707000] 4.90287e-09 (crossover llrlrr<->rrrr)
|
||||
[708040] 4.90394e-09 (core_undivide noop)
|
||||
[713400] 5.00798e-09 (undivide 1/lrrll)
|
||||
[724040] 5.11809e-09 (undivide 1/lrrll)
|
||||
[735000] 5.15421e-09 (undivide 1/rlllr)
|
||||
[746200] 5.15486e-09 (undivide 0/rrrll)
|
||||
[768360] 5.26248e-09 (undivide 1/rlllr)
|
||||
[800920] 5.26644e-09 (undivide 1/rlllr)
|
||||
[827880] 5.26644e-09 (crossover lrllr<->llrlr)
|
||||
[878680] 5.32211e-09 (level_retype 1/llrllll<->0/rllrl)
|
||||
[1103320] 1.06348e-08 (undivide 0/rrrlrl)
|
||||
[1116440] 1.12572e-08 (divide 0/rlrrll)
|
||||
[1149800] 1.14984e-08 (undivide 1/lrrll)
|
||||
[1382840] 1.15051e-08 (undivide 1/lrrll)
|
||||
[1387880] 1.15251e-08 (rotate 0/rlrrl)
|
||||
[1390440] 1.33748e-08 (retype 1/llrrr->st1)
|
||||
[1437480] 1.33819e-08 (crossover llrlrl<->rrrr)
|
||||
[1438120] 1.34359e-08 (rotate 0/rlrrll)
|
||||
[1441720] 1.34477e-08 (core_divide noop)
|
||||
[1441960] 1.34988e-08 (place_missing noop)
|
||||
[1457640] 1.37468e-08 (undivide 0/llrllll)
|
||||
[1627960] 2.6523e-08 (level_retype 1/llrllll<->0/rrlll)
|
||||
[1629800] 2.65259e-08 (core_undivide noop)
|
||||
[1755560] 5.83384e-08 (divide 0/lllrl)
|
||||
[1805080] 1.18411e-07 (divide 0/lllrl)
|
||||
[1865880] 1.18411e-07 (undivide 0/rlrrll)
|
||||
[1880760] 1.88783e-07 (crossover rlrrll<->lrrr)
|
||||
[1956360] 2.10097e-07 (crossover rlrrlll<->lllrll)
|
||||
[1996840] 2.11465e-07 (retype 0/rlrrlll->C)
|
||||
[1997640] 2.11848e-07 (core_divide noop)
|
||||
[2007560] 2.35646e-07 (crossover rlrrlll<->lrrr)
|
||||
[2012360] 2.36973e-07 (place_missing noop)
|
||||
[2012760] 2.37399e-07 (place_missing noop)
|
||||
[2038680] 2.49379e-07 (rotate 0/rlrrl)
|
||||
[2045960] 4.54898e-07 (crossover lrrlrr<->llrlllr)
|
||||
[2046280] 4.55804e-07 (place_missing noop)
|
||||
[2046680] 4.56932e-07 (place_missing noop)
|
||||
[2047400] 4.57898e-07 (core_divide noop)
|
||||
[2064200] 4.58171e-07 (swap 0/rrll)
|
||||
[2064360] 4.58199e-07 (core_divide noop)
|
||||
[2065960] 4.58199e-07 (rotate 0/llrllll)
|
||||
[2066600] 4.59148e-07 (place_missing noop)
|
||||
[2067480] 4.5952e-07 (core_undivide noop)
|
||||
[2097480] 4.61537e-07 (place_missing noop)
|
||||
[2102040] 4.63543e-07 (place_missing noop)
|
||||
[2102440] 4.64431e-07 (core_undivide noop)
|
||||
[2164360] 4.72304e-07 (level_retype 0/lrrll<->1/lrlll)
|
||||
[2194440] 4.72706e-07 (rotate 0/lrrlr)
|
||||
[2195240] 4.73159e-07 (place_missing noop)
|
||||
[2197000] 4.73498e-07 (place_missing noop)
|
||||
[2209560] 4.75066e-07 (rotate 0/rrllr)
|
||||
[2280840] 4.8783e-07 (rotate 0/rlrrll)
|
||||
[2282840] 8.51649e-07 (level_retype 1/rrlrl<->0/llrllllr)
|
||||
[2288840] 8.55171e-07 (crossover lrrlrl<->llrlllll)
|
||||
[2289880] 8.55716e-07 (crossover lrrlrl<->llrllllr)
|
||||
[2291800] 8.5789e-07 (core_undivide noop)
|
||||
[2292440] 8.5798e-07 (place_missing noop)
|
||||
[2305560] 8.8011e-07 (undivide 1/llrrl)
|
||||
[2387000] 8.80152e-07 (undivide 1/llllr)
|
||||
[2389880] 8.85765e-07 (swap 0/rlrrll)
|
||||
[2390200] 8.89866e-07 (core_undivide noop)
|
||||
[2390360] 8.93447e-07 (place_missing noop)
|
||||
[2391320] 8.96723e-07 (place_missing noop)
|
||||
[2391560] 9.00224e-07 (place_missing noop)
|
||||
[2393800] 9.00342e-07 (core_undivide noop)
|
||||
[2395800] 9.00374e-07 (place_missing noop)
|
||||
[2430600] 1.02904e-06 (retype 0/rrlr->of)
|
||||
[2494040] 1.02964e-06 (level_retype 1/rrrlrr<->0/rrlr)
|
||||
[2494440] 1.03243e-06 (place_missing noop)
|
||||
[2495080] 1.03547e-06 (place_missing noop)
|
||||
[2495640] 1.03782e-06 (core_divide noop)
|
||||
[2502600] 1.04002e-06 (place_missing noop)
|
||||
[2504680] 1.04261e-06 (place_missing noop)
|
||||
[2505960] 1.04369e-06 (core_undivide noop)
|
||||
[2539560] 1.06976e-06 (undivide 1/rrrlrl)
|
||||
[2559160] 1.07167e-06 (undivide 1/rrrlrl)
|
||||
[2559720] 1.0724e-06 (place_missing noop)
|
||||
[2583720] 1.0724e-06 (crossover rlrrr<->lrllr)
|
||||
[2586280] 1.90952e-06 (divide 1/rlllr)
|
||||
[2640920] 2.00292e-06 (divide 1/rlllr)
|
||||
[2668680] 2.14664e-06 (divide 1/llllr)
|
||||
[2690200] 2.15597e-06 (crossover lrrl<->lrrl)
|
||||
[2693960] 4.1894e-06 (swap 1/rrrlr)
|
||||
[2784840] 4.19245e-06 (rotate 1/rrlrr)
|
||||
[2842120] 4.19245e-06 (divide 0/rrrr)
|
||||
written : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-3M-nols-2.dom
|
||||
83
examples/harbor-house/evolve-3M-nols-3.log
Normal file
83
examples/harbor-house/evolve-3M-nols-3.log
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-3M-nols-2.dom
|
||||
programme : harbor-house
|
||||
budget : 3000000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 1
|
||||
rng seed : 0
|
||||
leaf sharing : False (factor=3)
|
||||
superpose : False
|
||||
output : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-3M-nols-3.dom
|
||||
[ 200 evals] best 4.27026e-06 (fails 15) via seed
|
||||
[ 280 evals] best 4.28413e-06 (fails 15) via place_missing noop
|
||||
[ 440 evals] best 4.29565e-06 (fails 15) via place_missing noop
|
||||
[ 81640 evals] best 4.29764e-06 (fails 15) via divide 0/lllrlr
|
||||
[180440 evals] best 4.29764e-06 (fails 15) via crossover rrrr<->rrrrl
|
||||
[182680 evals] best 4.41808e-06 (fails 15) via level_retype 1/rlllr<->0/rllll
|
||||
[182920 evals] best 4.47038e-06 (fails 15) via core_divide noop
|
||||
[183480 evals] best 4.48493e-06 (fails 15) via place_missing noop
|
||||
[184920 evals] best 4.49102e-06 (fails 15) via core_divide noop
|
||||
[204280 evals] best 4.54272e-06 (fails 15) via undivide 0/rrrr
|
||||
[327400 evals] best 4.58752e-06 (fails 15) via divide 0/llrlr
|
||||
[536760 evals] best 4.71291e-06 (fails 15) via level_retype 1/llrllllr<->0/rlrrlr
|
||||
[538200 evals] best 4.71436e-06 (fails 15) via core_divide noop
|
||||
[538760 evals] best 4.7158e-06 (fails 15) via core_undivide noop
|
||||
[540840 evals] best 4.71717e-06 (fails 15) via core_divide noop
|
||||
[541960 evals] best 4.7176e-06 (fails 15) via undivide 0/lllrlr
|
||||
[547640 evals] best 4.71761e-06 (fails 15) via place_missing noop
|
||||
[557960 evals] best 4.71761e-06 (fails 15) via place_missing noop
|
||||
[617800 evals] best 4.7182e-06 (fails 15) via rotate 1/llllr
|
||||
[621400 evals] best 4.7191e-06 (fails 15) via place_missing noop
|
||||
[621720 evals] best 4.71951e-06 (fails 15) via place_missing noop
|
||||
[626200 evals] best 4.7251e-06 (fails 15) via rotate 1/llllr
|
||||
[626360 evals] best 4.72553e-06 (fails 15) via level_retype 1/llllll<->0/lllrlrl
|
||||
[626760 evals] best 4.72555e-06 (fails 15) via swap 1/lrrr
|
||||
[627720 evals] best 4.72555e-06 (fails 15) via core_undivide noop
|
||||
[637720 evals] best 4.74589e-06 (fails 15) via rotate 0/lrrlr
|
||||
[781800 evals] best 4.95673e-06 (fails 15) via undivide 0/rllr
|
||||
[821880 evals] best 4.95673e-06 (fails 15) via crossover rlrrr<->lrllr
|
||||
[990520 evals] best 4.95673e-06 (fails 15) via crossover llrlllr<->lllrll
|
||||
[1078760 evals] best 5.12527e-06 (fails 15) via level_retype 1/lrlll<->0/lrrll
|
||||
[1288600 evals] best 5.12527e-06 (fails 15) via crossover rlrrr<->rlrrlll
|
||||
[1543000 evals] best 5.13676e-06 (fails 15) via undivide 1/rrrll
|
||||
[1700120 evals] interrupted — returning best-so-far
|
||||
|
||||
--- interrupted ---
|
||||
elapsed : 211447.0s
|
||||
evals : 1700120 across 21250 topologies
|
||||
best : 5.13676e-06 (15 fails) via undivide 1/rrrll
|
||||
|
||||
improvement history:
|
||||
[ 200] 4.27026e-06 (seed)
|
||||
[ 280] 4.28413e-06 (place_missing noop)
|
||||
[ 440] 4.29565e-06 (place_missing noop)
|
||||
[ 81640] 4.29764e-06 (divide 0/lllrlr)
|
||||
[180440] 4.29764e-06 (crossover rrrr<->rrrrl)
|
||||
[182680] 4.41808e-06 (level_retype 1/rlllr<->0/rllll)
|
||||
[182920] 4.47038e-06 (core_divide noop)
|
||||
[183480] 4.48493e-06 (place_missing noop)
|
||||
[184920] 4.49102e-06 (core_divide noop)
|
||||
[204280] 4.54272e-06 (undivide 0/rrrr)
|
||||
[327400] 4.58752e-06 (divide 0/llrlr)
|
||||
[536760] 4.71291e-06 (level_retype 1/llrllllr<->0/rlrrlr)
|
||||
[538200] 4.71436e-06 (core_divide noop)
|
||||
[538760] 4.7158e-06 (core_undivide noop)
|
||||
[540840] 4.71717e-06 (core_divide noop)
|
||||
[541960] 4.7176e-06 (undivide 0/lllrlr)
|
||||
[547640] 4.71761e-06 (place_missing noop)
|
||||
[557960] 4.71761e-06 (place_missing noop)
|
||||
[617800] 4.7182e-06 (rotate 1/llllr)
|
||||
[621400] 4.7191e-06 (place_missing noop)
|
||||
[621720] 4.71951e-06 (place_missing noop)
|
||||
[626200] 4.7251e-06 (rotate 1/llllr)
|
||||
[626360] 4.72553e-06 (level_retype 1/llllll<->0/lllrlrl)
|
||||
[626760] 4.72555e-06 (swap 1/lrrr)
|
||||
[627720] 4.72555e-06 (core_undivide noop)
|
||||
[637720] 4.74589e-06 (rotate 0/lrrlr)
|
||||
[781800] 4.95673e-06 (undivide 0/rllr)
|
||||
[821880] 4.95673e-06 (crossover rlrrr<->lrllr)
|
||||
[990520] 4.95673e-06 (crossover llrlllr<->lllrll)
|
||||
[1078760] 5.12527e-06 (level_retype 1/lrlll<->0/lrrll)
|
||||
[1288600] 5.12527e-06 (crossover rlrrr<->rlrrlll)
|
||||
[1543000] 5.13676e-06 (undivide 1/rrrll)
|
||||
written : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-3M-nols-3.dom
|
||||
347
examples/harbor-house/evolve-3M-nols.log
Normal file
347
examples/harbor-house/evolve-3M-nols.log
Normal file
|
|
@ -0,0 +1,347 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/harbor-house/init.dom
|
||||
programme : harbor-house
|
||||
budget : 3000000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 2
|
||||
rng seed : 0
|
||||
leaf sharing : False (factor=3)
|
||||
superpose : False
|
||||
output : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-3M-nols.dom
|
||||
[ 80 evals] best 2.31302e-32 (fails 96) via construct/0
|
||||
[ 480 evals] best 6.28664e-31 (fails 95) via construct/5
|
||||
[ 560 evals] best 8.41924e-29 (fails 85) via construct/6
|
||||
[ 4960 evals] best 1.34818e-27 (fails 81) via core_undivide noop
|
||||
[ 6960 evals] best 2.4105e-27 (fails 80) via swap 0/llrl
|
||||
[ 7200 evals] best 2.74679e-27 (fails 80) via core_undivide noop
|
||||
[ 7920 evals] best 2.83639e-27 (fails 80) via level_compound_fix noop
|
||||
[ 8400 evals] best 2.97407e-27 (fails 80) via core_divide noop
|
||||
[ 8880 evals] best 3.06629e-25 (fails 77) via crossover rrrlr<->lllrl
|
||||
[ 9280 evals] best 3.14266e-25 (fails 77) via crossover lrrr<->lrrr
|
||||
[ 11600 evals] best 3.20337e-25 (fails 77) via rotate 0/rrlr
|
||||
[ 13040 evals] best 3.53297e-25 (fails 77) via level_fix noop
|
||||
[ 14080 evals] best 3.5972e-25 (fails 77) via level_fix noop
|
||||
[ 15840 evals] best 3.63357e-25 (fails 77) via crossover llrll<->rrrlrr
|
||||
[ 16400 evals] best 7.14959e-25 (fails 76) via level_fix noop
|
||||
[ 16640 evals] best 1.27296e-24 (fails 75) via crossover llrll<->rrlrr
|
||||
[ 17280 evals] best 1.42988e-24 (fails 75) via divide 0/lllrl
|
||||
[ 18240 evals] best 1.44306e-24 (fails 75) via core_undivide noop
|
||||
[ 18720 evals] best 1.45696e-24 (fails 75) via level_fix noop
|
||||
[ 19760 evals] best 2.43981e-24 (fails 74) via crossover llrll<->rrlrr
|
||||
[ 20000 evals] best 5.6713e-23 (fails 70) via level_retype 1/rrlr<->0/llrll
|
||||
[ 20240 evals] best 5.71376e-23 (fails 70) via divide 1/rrrr
|
||||
[ 22000 evals] best 5.7467e-23 (fails 70) via crossover rrlrl<->lrrr
|
||||
[ 24560 evals] best 1.92643e-21 (fails 65) via divide 0/rlllr
|
||||
[ 35120 evals] best 3.38477e-21 (fails 64) via swap 1/rrll
|
||||
[ 36720 evals] best 4.9027e-19 (fails 57) via rotate 0/ll
|
||||
[ 37280 evals] best 4.95587e-19 (fails 57) via place_missing noop
|
||||
[ 37360 evals] best 4.9954e-19 (fails 57) via core_undivide noop
|
||||
[ 38160 evals] best 5.00695e-19 (fails 57) via swap 1/lrrr
|
||||
[ 38640 evals] best 5.03632e-19 (fails 57) via place_missing noop
|
||||
[ 39280 evals] best 5.07858e-19 (fails 57) via core_undivide noop
|
||||
[ 42960 evals] best 5.08967e-19 (fails 57) via core_undivide noop
|
||||
[ 43440 evals] best 5.12733e-19 (fails 57) via place_missing noop
|
||||
[ 48880 evals] best 5.15373e-19 (fails 57) via core_undivide noop
|
||||
[ 49280 evals] best 5.16595e-19 (fails 57) via place_missing noop
|
||||
[ 49680 evals] best 1.00953e-18 (fails 56) via swap 1/rrll
|
||||
[ 53120 evals] best 1.01793e-18 (fails 56) via place_missing noop
|
||||
[ 53760 evals] best 1.02547e-18 (fails 56) via place_missing noop
|
||||
[ 54080 evals] best 1.03319e-18 (fails 56) via place_missing noop
|
||||
[ 54320 evals] best 1.03737e-18 (fails 56) via place_missing noop
|
||||
[ 56000 evals] best 1.03961e-18 (fails 56) via place_missing noop
|
||||
[ 56240 evals] best 4.35991e-18 (fails 54) via swap 0/lrll
|
||||
[ 56720 evals] best 4.36779e-18 (fails 54) via place_missing noop
|
||||
[ 65120 evals] best 8.78657e-18 (fails 53) via divide 1/rllll
|
||||
[ 70960 evals] best 3.31653e-17 (fails 51) via divide 0/rlrlr
|
||||
[ 77360 evals] best 3.46433e-17 (fails 51) via crossover rlllrl<->rrrlrl
|
||||
[ 77600 evals] best 3.47232e-17 (fails 51) via core_undivide noop
|
||||
[ 77760 evals] best 6.42852e-17 (fails 50) via crossover rlllr<->lrrr
|
||||
[ 78240 evals] best 6.43986e-17 (fails 50) via core_undivide noop
|
||||
[ 79440 evals] best 6.95809e-17 (fails 50) via place_missing noop
|
||||
[ 81120 evals] best 6.98301e-17 (fails 50) via crossover rlllrl<->llrlr
|
||||
[ 81840 evals] best 7.0239e-17 (fails 50) via undivide 0/rlllr
|
||||
[ 84000 evals] best 1.39756e-16 (fails 49) via place_missing noop
|
||||
[ 86560 evals] best 1.4024e-16 (fails 49) via swap 0/rrlr
|
||||
[ 87440 evals] best 1.40525e-16 (fails 49) via place_missing noop
|
||||
[ 88480 evals] best 1.40712e-16 (fails 49) via core_undivide noop
|
||||
[ 92160 evals] best 1.4085e-16 (fails 49) via core_undivide noop
|
||||
[ 93760 evals] best 1.41174e-16 (fails 49) via core_undivide noop
|
||||
[ 94800 evals] best 1.4133e-16 (fails 49) via crossover rllr<->rllr
|
||||
[ 95520 evals] best 1.4133e-16 (fails 49) via core_undivide noop
|
||||
[ 99520 evals] best 1.41365e-16 (fails 49) via rotate 0/rrlr
|
||||
[102960 evals] best 1.41384e-16 (fails 49) via core_undivide noop
|
||||
[109200 evals] best 1.41384e-16 (fails 49) via core_undivide noop
|
||||
[111360 evals] best 1.41385e-16 (fails 49) via crossover rrlr<->rrlr
|
||||
[113120 evals] best 1.41385e-16 (fails 49) via crossover llll<->llll
|
||||
[113440 evals] best 1.41385e-16 (fails 49) via place_missing noop
|
||||
[113520 evals] best 1.41385e-16 (fails 49) via crossover llrlr<->rrlrl
|
||||
[116400 evals] best 2.66356e-16 (fails 48) via divide 1/lrrlr
|
||||
[119760 evals] best 2.67137e-16 (fails 48) via crossover llrlr<->lrrr
|
||||
[122480 evals] best 2.67922e-16 (fails 48) via core_undivide noop
|
||||
[126800 evals] best 2.68701e-16 (fails 48) via place_missing noop
|
||||
[127040 evals] best 2.69471e-16 (fails 48) via crossover rrlrr<->rlllr
|
||||
[130160 evals] best 2.70232e-16 (fails 48) via swap 0/rrlr
|
||||
[130720 evals] best 2.7098e-16 (fails 48) via place_missing noop
|
||||
[132000 evals] best 2.71716e-16 (fails 48) via core_undivide noop
|
||||
[132880 evals] best 2.72318e-16 (fails 48) via crossover rr<->rr
|
||||
[135040 evals] best 2.72653e-16 (fails 48) via place_missing noop
|
||||
[135280 evals] best 2.73375e-16 (fails 48) via place_missing noop
|
||||
[136880 evals] best 2.73418e-16 (fails 48) via place_missing noop
|
||||
[148560 evals] best 4.16474e-16 (fails 47) via retype 1/llrrr->C
|
||||
[151040 evals] best 4.17372e-16 (fails 47) via place_missing noop
|
||||
[151280 evals] best 4.18474e-16 (fails 47) via crossover lrlr<->lrlr
|
||||
[152640 evals] best 4.18814e-16 (fails 47) via level_retype 0/lrrr<->1/rlrr
|
||||
[152960 evals] best 4.19542e-16 (fails 47) via core_undivide noop
|
||||
[196160 evals] best 8.32838e-16 (fails 46) via divide 0/llrlr
|
||||
[196480 evals] best 8.33448e-16 (fails 46) via core_undivide noop
|
||||
[218000 evals] best 8.61697e-16 (fails 46) via core_undivide noop
|
||||
[218320 evals] best 1.82549e-15 (fails 45) via crossover llrlrr<->rrrlrl
|
||||
[220480 evals] best 1.84041e-15 (fails 45) via place_missing noop
|
||||
[224800 evals] best 1.8471e-15 (fails 45) via place_missing noop
|
||||
[227920 evals] best 1.8556e-15 (fails 45) via level_retype 0/lrrl<->1/rlrll
|
||||
[229040 evals] best 1.88537e-15 (fails 45) via place_missing noop
|
||||
[238240 evals] best 1.88614e-15 (fails 45) via core_undivide noop
|
||||
[239360 evals] best 1.88691e-15 (fails 45) via place_missing noop
|
||||
[239600 evals] best 1.89068e-15 (fails 45) via place_missing noop
|
||||
[248080 evals] best 1.89301e-15 (fails 45) via rotate 0/rllr
|
||||
[249120 evals] best 1.89476e-15 (fails 45) via undivide 1/rrrr
|
||||
[251120 evals] best 1.90302e-15 (fails 45) via place_missing noop
|
||||
[251440 evals] best 1.91171e-15 (fails 45) via core_undivide noop
|
||||
[256240 evals] best 1.91628e-15 (fails 45) via level_compound_fix noop
|
||||
[264160 evals] best 1.91864e-15 (fails 45) via undivide 1/rrll
|
||||
[298240 evals] best 1.91968e-15 (fails 45) via rotate 0/llrlr
|
||||
[350640 evals] best 3.20989e-15 (fails 44) via level_retype 1/rlllr<->0/llrlrl
|
||||
[354960 evals] best 3.21594e-15 (fails 44) via place_missing noop
|
||||
[356000 evals] best 3.25352e-15 (fails 44) via core_undivide noop
|
||||
[364480 evals] best 3.52964e-15 (fails 44) via divide 1/lrlll
|
||||
[398720 evals] best 6.85608e-15 (fails 43) via crossover lrrr<->rlllr
|
||||
[405840 evals] best 6.90948e-15 (fails 43) via undivide 0/lrrr
|
||||
[406080 evals] best 6.91101e-15 (fails 43) via crossover lrlr<->lrlr
|
||||
[418640 evals] best 7.16851e-15 (fails 43) via divide 1/rlllr
|
||||
[446080 evals] best 7.26349e-15 (fails 43) via retype 0/llrlrr->O
|
||||
[454160 evals] best 7.32344e-15 (fails 43) via level_retype 1/rlllr<->0/rrlrr
|
||||
[454800 evals] best 7.36787e-15 (fails 43) via level_compound_fix noop
|
||||
[455760 evals] best 7.40312e-15 (fails 43) via core_undivide noop
|
||||
[458000 evals] best 7.44497e-15 (fails 43) via level_fix noop
|
||||
[459200 evals] best 7.44541e-15 (fails 43) via level_compound_fix noop
|
||||
[465280 evals] best 7.44608e-15 (fails 43) via core_undivide noop
|
||||
[472800 evals] best 7.46595e-15 (fails 43) via rotate 0/rrrlr
|
||||
[486560 evals] best 7.89349e-15 (fails 43) via divide 1/lrrll
|
||||
[487840 evals] best 7.91275e-15 (fails 43) via undivide 1/rrrlrr
|
||||
[488640 evals] best 7.93254e-15 (fails 43) via level_compound_fix noop
|
||||
[488800 evals] best 1.59054e-14 (fails 42) via crossover lrl<->lrl
|
||||
[489760 evals] best 1.60641e-14 (fails 42) via undivide 1/rlllll
|
||||
[491760 evals] best 1.61148e-14 (fails 42) via level_compound_fix noop
|
||||
[492720 evals] best 1.61666e-14 (fails 42) via place_missing noop
|
||||
[496320 evals] best 1.6771e-14 (fails 42) via crossover llrlrr<->rrrlrr
|
||||
[545120 evals] best 1.69985e-14 (fails 42) via retype 0/llrlrr->O
|
||||
[644400 evals] best 1.70134e-14 (fails 42) via crossover rllr<->rllr
|
||||
[647760 evals] best 3.33347e-14 (fails 41) via divide 1/lllrl
|
||||
[649280 evals] best 3.33715e-14 (fails 41) via place_missing noop
|
||||
[651600 evals] best 3.34018e-14 (fails 41) via place_missing noop
|
||||
[652640 evals] best 3.34846e-14 (fails 41) via swap 1/lrrr
|
||||
[654160 evals] best 6.71114e-14 (fails 40) via place_missing noop
|
||||
[656880 evals] best 6.71452e-14 (fails 40) via place_missing noop
|
||||
[657200 evals] best 6.73373e-14 (fails 40) via level_retype 1/rlrr<->0/rrlrr
|
||||
[659840 evals] best 6.73423e-14 (fails 40) via place_missing noop
|
||||
[709280 evals] best 6.73966e-14 (fails 40) via place_missing noop
|
||||
[712000 evals] best 6.74016e-14 (fails 40) via core_undivide noop
|
||||
[715040 evals] best 6.74798e-14 (fails 40) via rotate 0/rrrlr
|
||||
[715840 evals] best 6.75045e-14 (fails 40) via crossover rr<->rr
|
||||
[730720 evals] best 1.17348e-13 (fails 39) via place_missing noop
|
||||
[730960 evals] best 1.1892e-13 (fails 39) via place_missing noop
|
||||
[733920 evals] best 1.20289e-13 (fails 39) via place_missing noop
|
||||
[744000 evals] best 1.21233e-13 (fails 39) via place_missing noop
|
||||
[746480 evals] best 1.2124e-13 (fails 39) via core_undivide noop
|
||||
[756000 evals] best 2.30213e-13 (fails 38) via swap 1/lrrl
|
||||
[845200 evals] best 2.30492e-13 (fails 38) via undivide 0/llrll
|
||||
[855520 evals] best 3.95213e-13 (fails 37) via divide 1/llrll
|
||||
[858240 evals] best 3.95218e-13 (fails 37) via place_missing noop
|
||||
[954720 evals] best 3.95218e-13 (fails 37) via crossover llrrl<->rlllr
|
||||
[1000720 evals] best 8.99351e-13 (fails 36) via divide 1/rrlr
|
||||
[1013760 evals] best 9.49614e-13 (fails 36) via crossover llrlrr<->lrllr
|
||||
[1020400 evals] best 2.10451e-12 (fails 35) via swap 1/rrlr
|
||||
[1023280 evals] best 2.26139e-12 (fails 34) via crossover rrrr<->llrlrl
|
||||
[1035200 evals] best 2.37266e-12 (fails 34) via crossover llrlrr<->lllrl
|
||||
[1036080 evals] best 4.43872e-12 (fails 33) via rotate 0/rrrlr
|
||||
[1056240 evals] best 4.43872e-12 (fails 33) via divide 1/llllll
|
||||
[1140880 evals] best 1.16099e-11 (fails 32) via rotate 0/rllr
|
||||
[1142080 evals] best 1.16252e-11 (fails 32) via place_missing noop
|
||||
[1142240 evals] best 1.16499e-11 (fails 32) via retype 1/llrlr->st1
|
||||
[1145760 evals] best 1.1659e-11 (fails 32) via place_missing noop
|
||||
[1213120 evals] best 1.18556e-11 (fails 32) via divide 1/rlllr
|
||||
[1217840 evals] best 1.18668e-11 (fails 32) via divide 0/llrlrl
|
||||
[1227920 evals] best 1.19364e-11 (fails 32) via divide 0/lllrl
|
||||
[1237600 evals] interrupted — returning best-so-far
|
||||
|
||||
--- interrupted ---
|
||||
elapsed : 54933.2s
|
||||
evals : 1237600 across 15470 topologies
|
||||
best : 1.19364e-11 (32 fails) via divide 0/lllrl
|
||||
|
||||
improvement history:
|
||||
[ 80] 2.31302e-32 (construct/0)
|
||||
[ 480] 6.28664e-31 (construct/5)
|
||||
[ 560] 8.41924e-29 (construct/6)
|
||||
[ 4960] 1.34818e-27 (core_undivide noop)
|
||||
[ 6960] 2.4105e-27 (swap 0/llrl)
|
||||
[ 7200] 2.74679e-27 (core_undivide noop)
|
||||
[ 7920] 2.83639e-27 (level_compound_fix noop)
|
||||
[ 8400] 2.97407e-27 (core_divide noop)
|
||||
[ 8880] 3.06629e-25 (crossover rrrlr<->lllrl)
|
||||
[ 9280] 3.14266e-25 (crossover lrrr<->lrrr)
|
||||
[ 11600] 3.20337e-25 (rotate 0/rrlr)
|
||||
[ 13040] 3.53297e-25 (level_fix noop)
|
||||
[ 14080] 3.5972e-25 (level_fix noop)
|
||||
[ 15840] 3.63357e-25 (crossover llrll<->rrrlrr)
|
||||
[ 16400] 7.14959e-25 (level_fix noop)
|
||||
[ 16640] 1.27296e-24 (crossover llrll<->rrlrr)
|
||||
[ 17280] 1.42988e-24 (divide 0/lllrl)
|
||||
[ 18240] 1.44306e-24 (core_undivide noop)
|
||||
[ 18720] 1.45696e-24 (level_fix noop)
|
||||
[ 19760] 2.43981e-24 (crossover llrll<->rrlrr)
|
||||
[ 20000] 5.6713e-23 (level_retype 1/rrlr<->0/llrll)
|
||||
[ 20240] 5.71376e-23 (divide 1/rrrr)
|
||||
[ 22000] 5.7467e-23 (crossover rrlrl<->lrrr)
|
||||
[ 24560] 1.92643e-21 (divide 0/rlllr)
|
||||
[ 35120] 3.38477e-21 (swap 1/rrll)
|
||||
[ 36720] 4.9027e-19 (rotate 0/ll)
|
||||
[ 37280] 4.95587e-19 (place_missing noop)
|
||||
[ 37360] 4.9954e-19 (core_undivide noop)
|
||||
[ 38160] 5.00695e-19 (swap 1/lrrr)
|
||||
[ 38640] 5.03632e-19 (place_missing noop)
|
||||
[ 39280] 5.07858e-19 (core_undivide noop)
|
||||
[ 42960] 5.08967e-19 (core_undivide noop)
|
||||
[ 43440] 5.12733e-19 (place_missing noop)
|
||||
[ 48880] 5.15373e-19 (core_undivide noop)
|
||||
[ 49280] 5.16595e-19 (place_missing noop)
|
||||
[ 49680] 1.00953e-18 (swap 1/rrll)
|
||||
[ 53120] 1.01793e-18 (place_missing noop)
|
||||
[ 53760] 1.02547e-18 (place_missing noop)
|
||||
[ 54080] 1.03319e-18 (place_missing noop)
|
||||
[ 54320] 1.03737e-18 (place_missing noop)
|
||||
[ 56000] 1.03961e-18 (place_missing noop)
|
||||
[ 56240] 4.35991e-18 (swap 0/lrll)
|
||||
[ 56720] 4.36779e-18 (place_missing noop)
|
||||
[ 65120] 8.78657e-18 (divide 1/rllll)
|
||||
[ 70960] 3.31653e-17 (divide 0/rlrlr)
|
||||
[ 77360] 3.46433e-17 (crossover rlllrl<->rrrlrl)
|
||||
[ 77600] 3.47232e-17 (core_undivide noop)
|
||||
[ 77760] 6.42852e-17 (crossover rlllr<->lrrr)
|
||||
[ 78240] 6.43986e-17 (core_undivide noop)
|
||||
[ 79440] 6.95809e-17 (place_missing noop)
|
||||
[ 81120] 6.98301e-17 (crossover rlllrl<->llrlr)
|
||||
[ 81840] 7.0239e-17 (undivide 0/rlllr)
|
||||
[ 84000] 1.39756e-16 (place_missing noop)
|
||||
[ 86560] 1.4024e-16 (swap 0/rrlr)
|
||||
[ 87440] 1.40525e-16 (place_missing noop)
|
||||
[ 88480] 1.40712e-16 (core_undivide noop)
|
||||
[ 92160] 1.4085e-16 (core_undivide noop)
|
||||
[ 93760] 1.41174e-16 (core_undivide noop)
|
||||
[ 94800] 1.4133e-16 (crossover rllr<->rllr)
|
||||
[ 95520] 1.4133e-16 (core_undivide noop)
|
||||
[ 99520] 1.41365e-16 (rotate 0/rrlr)
|
||||
[102960] 1.41384e-16 (core_undivide noop)
|
||||
[109200] 1.41384e-16 (core_undivide noop)
|
||||
[111360] 1.41385e-16 (crossover rrlr<->rrlr)
|
||||
[113120] 1.41385e-16 (crossover llll<->llll)
|
||||
[113440] 1.41385e-16 (place_missing noop)
|
||||
[113520] 1.41385e-16 (crossover llrlr<->rrlrl)
|
||||
[116400] 2.66356e-16 (divide 1/lrrlr)
|
||||
[119760] 2.67137e-16 (crossover llrlr<->lrrr)
|
||||
[122480] 2.67922e-16 (core_undivide noop)
|
||||
[126800] 2.68701e-16 (place_missing noop)
|
||||
[127040] 2.69471e-16 (crossover rrlrr<->rlllr)
|
||||
[130160] 2.70232e-16 (swap 0/rrlr)
|
||||
[130720] 2.7098e-16 (place_missing noop)
|
||||
[132000] 2.71716e-16 (core_undivide noop)
|
||||
[132880] 2.72318e-16 (crossover rr<->rr)
|
||||
[135040] 2.72653e-16 (place_missing noop)
|
||||
[135280] 2.73375e-16 (place_missing noop)
|
||||
[136880] 2.73418e-16 (place_missing noop)
|
||||
[148560] 4.16474e-16 (retype 1/llrrr->C)
|
||||
[151040] 4.17372e-16 (place_missing noop)
|
||||
[151280] 4.18474e-16 (crossover lrlr<->lrlr)
|
||||
[152640] 4.18814e-16 (level_retype 0/lrrr<->1/rlrr)
|
||||
[152960] 4.19542e-16 (core_undivide noop)
|
||||
[196160] 8.32838e-16 (divide 0/llrlr)
|
||||
[196480] 8.33448e-16 (core_undivide noop)
|
||||
[218000] 8.61697e-16 (core_undivide noop)
|
||||
[218320] 1.82549e-15 (crossover llrlrr<->rrrlrl)
|
||||
[220480] 1.84041e-15 (place_missing noop)
|
||||
[224800] 1.8471e-15 (place_missing noop)
|
||||
[227920] 1.8556e-15 (level_retype 0/lrrl<->1/rlrll)
|
||||
[229040] 1.88537e-15 (place_missing noop)
|
||||
[238240] 1.88614e-15 (core_undivide noop)
|
||||
[239360] 1.88691e-15 (place_missing noop)
|
||||
[239600] 1.89068e-15 (place_missing noop)
|
||||
[248080] 1.89301e-15 (rotate 0/rllr)
|
||||
[249120] 1.89476e-15 (undivide 1/rrrr)
|
||||
[251120] 1.90302e-15 (place_missing noop)
|
||||
[251440] 1.91171e-15 (core_undivide noop)
|
||||
[256240] 1.91628e-15 (level_compound_fix noop)
|
||||
[264160] 1.91864e-15 (undivide 1/rrll)
|
||||
[298240] 1.91968e-15 (rotate 0/llrlr)
|
||||
[350640] 3.20989e-15 (level_retype 1/rlllr<->0/llrlrl)
|
||||
[354960] 3.21594e-15 (place_missing noop)
|
||||
[356000] 3.25352e-15 (core_undivide noop)
|
||||
[364480] 3.52964e-15 (divide 1/lrlll)
|
||||
[398720] 6.85608e-15 (crossover lrrr<->rlllr)
|
||||
[405840] 6.90948e-15 (undivide 0/lrrr)
|
||||
[406080] 6.91101e-15 (crossover lrlr<->lrlr)
|
||||
[418640] 7.16851e-15 (divide 1/rlllr)
|
||||
[446080] 7.26349e-15 (retype 0/llrlrr->O)
|
||||
[454160] 7.32344e-15 (level_retype 1/rlllr<->0/rrlrr)
|
||||
[454800] 7.36787e-15 (level_compound_fix noop)
|
||||
[455760] 7.40312e-15 (core_undivide noop)
|
||||
[458000] 7.44497e-15 (level_fix noop)
|
||||
[459200] 7.44541e-15 (level_compound_fix noop)
|
||||
[465280] 7.44608e-15 (core_undivide noop)
|
||||
[472800] 7.46595e-15 (rotate 0/rrrlr)
|
||||
[486560] 7.89349e-15 (divide 1/lrrll)
|
||||
[487840] 7.91275e-15 (undivide 1/rrrlrr)
|
||||
[488640] 7.93254e-15 (level_compound_fix noop)
|
||||
[488800] 1.59054e-14 (crossover lrl<->lrl)
|
||||
[489760] 1.60641e-14 (undivide 1/rlllll)
|
||||
[491760] 1.61148e-14 (level_compound_fix noop)
|
||||
[492720] 1.61666e-14 (place_missing noop)
|
||||
[496320] 1.6771e-14 (crossover llrlrr<->rrrlrr)
|
||||
[545120] 1.69985e-14 (retype 0/llrlrr->O)
|
||||
[644400] 1.70134e-14 (crossover rllr<->rllr)
|
||||
[647760] 3.33347e-14 (divide 1/lllrl)
|
||||
[649280] 3.33715e-14 (place_missing noop)
|
||||
[651600] 3.34018e-14 (place_missing noop)
|
||||
[652640] 3.34846e-14 (swap 1/lrrr)
|
||||
[654160] 6.71114e-14 (place_missing noop)
|
||||
[656880] 6.71452e-14 (place_missing noop)
|
||||
[657200] 6.73373e-14 (level_retype 1/rlrr<->0/rrlrr)
|
||||
[659840] 6.73423e-14 (place_missing noop)
|
||||
[709280] 6.73966e-14 (place_missing noop)
|
||||
[712000] 6.74016e-14 (core_undivide noop)
|
||||
[715040] 6.74798e-14 (rotate 0/rrrlr)
|
||||
[715840] 6.75045e-14 (crossover rr<->rr)
|
||||
[730720] 1.17348e-13 (place_missing noop)
|
||||
[730960] 1.1892e-13 (place_missing noop)
|
||||
[733920] 1.20289e-13 (place_missing noop)
|
||||
[744000] 1.21233e-13 (place_missing noop)
|
||||
[746480] 1.2124e-13 (core_undivide noop)
|
||||
[756000] 2.30213e-13 (swap 1/lrrl)
|
||||
[845200] 2.30492e-13 (undivide 0/llrll)
|
||||
[855520] 3.95213e-13 (divide 1/llrll)
|
||||
[858240] 3.95218e-13 (place_missing noop)
|
||||
[954720] 3.95218e-13 (crossover llrrl<->rlllr)
|
||||
[1000720] 8.99351e-13 (divide 1/rrlr)
|
||||
[1013760] 9.49614e-13 (crossover llrlrr<->lrllr)
|
||||
[1020400] 2.10451e-12 (swap 1/rrlr)
|
||||
[1023280] 2.26139e-12 (crossover rrrr<->llrlrl)
|
||||
[1035200] 2.37266e-12 (crossover llrlrr<->lllrl)
|
||||
[1036080] 4.43872e-12 (rotate 0/rrrlr)
|
||||
[1056240] 4.43872e-12 (divide 1/llllll)
|
||||
[1140880] 1.16099e-11 (rotate 0/rllr)
|
||||
[1142080] 1.16252e-11 (place_missing noop)
|
||||
[1142240] 1.16499e-11 (retype 1/llrlr->st1)
|
||||
[1145760] 1.1659e-11 (place_missing noop)
|
||||
[1213120] 1.18556e-11 (divide 1/rlllr)
|
||||
[1217840] 1.18668e-11 (divide 0/llrlrl)
|
||||
[1227920] 1.19364e-11 (divide 0/lllrl)
|
||||
written : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-3M-nols.dom
|
||||
234
examples/harbor-house/evolve-3M.log
Normal file
234
examples/harbor-house/evolve-3M.log
Normal file
|
|
@ -0,0 +1,234 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/harbor-house/init.dom
|
||||
programme : harbor-house
|
||||
budget : 3000000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 2
|
||||
rng seed : 0
|
||||
leaf sharing : True (factor=3)
|
||||
superpose : False
|
||||
output : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-3M.dom
|
||||
[ 80 evals] best 1.23724e-18 (fails 51) via construct/0
|
||||
[ 160 evals] best 3.60774e-14 (fails 37) via construct/1
|
||||
[ 4400 evals] best 3.92553e-14 (fails 37) via level_fix noop
|
||||
[ 5600 evals] best 2.5324e-13 (fails 35) via divide 0/lrrr
|
||||
[ 6560 evals] best 2.54766e-13 (fails 35) via crossover rrrl<->rrrl
|
||||
[ 6800 evals] best 5.12736e-13 (fails 34) via core_divide noop
|
||||
[ 8240 evals] best 5.20906e-13 (fails 34) via level_compound_fix noop
|
||||
[ 11040 evals] best 5.21558e-13 (fails 34) via swap 0/lrl
|
||||
[ 13200 evals] best 5.24939e-13 (fails 34) via core_divide noop
|
||||
[ 14960 evals] best 5.27579e-13 (fails 34) via crossover lrrl<->lrrl
|
||||
[ 15200 evals] best 5.31633e-13 (fails 34) via core_undivide noop
|
||||
[ 15600 evals] best 2.18076e-12 (fails 32) via crossover rrrl<->rlrr
|
||||
[ 15840 evals] best 2.21022e-12 (fails 32) via level_fix noop
|
||||
[ 19120 evals] best 2.24186e-12 (fails 32) via level_compound_fix noop
|
||||
[ 19360 evals] best 2.26499e-12 (fails 32) via level_compound_fix noop
|
||||
[ 24960 evals] best 7.39417e-11 (fails 27) via undivide 1/rrl
|
||||
[ 25360 evals] best 7.49515e-11 (fails 27) via core_undivide noop
|
||||
[ 29200 evals] best 7.57633e-11 (fails 27) via core_undivide noop
|
||||
[ 29680 evals] best 7.74529e-11 (fails 27) via level_fix noop
|
||||
[ 35280 evals] best 7.86348e-11 (fails 27) via level_fix noop
|
||||
[ 36880 evals] best 3.15641e-10 (fails 25) via level_retype 1/llrl<->0/rlrr
|
||||
[ 37360 evals] best 3.16e-10 (fails 25) via level_fix noop
|
||||
[ 39680 evals] best 3.16841e-10 (fails 25) via level_compound_fix noop
|
||||
[ 40160 evals] best 3.1945e-10 (fails 25) via rotate 0/rlr
|
||||
[ 40480 evals] best 3.2002e-10 (fails 25) via level_compound_fix noop
|
||||
[ 41120 evals] best 3.20176e-10 (fails 25) via core_undivide noop
|
||||
[ 42240 evals] best 3.20502e-10 (fails 25) via level_fix noop
|
||||
[ 44000 evals] best 1.22813e-09 (fails 22) via swap 0/rll
|
||||
[ 47120 evals] best 1.24341e-09 (fails 22) via crossover llrr<->llrr
|
||||
[ 48400 evals] best 1.36186e-09 (fails 22) via swap 0/rrr
|
||||
[ 55280 evals] best 1.37846e-09 (fails 22) via core_divide noop
|
||||
[ 56080 evals] best 1.39462e-09 (fails 22) via core_undivide noop
|
||||
[ 56880 evals] best 1.41015e-09 (fails 22) via level_compound_fix noop
|
||||
[ 57680 evals] best 1.42485e-09 (fails 22) via core_divide noop
|
||||
[ 58880 evals] best 1.43848e-09 (fails 22) via crossover lrl<->lrl
|
||||
[ 59360 evals] best 1.45094e-09 (fails 22) via core_undivide noop
|
||||
[ 61760 evals] best 2.44768e-08 (fails 21) via swap 0/lrl
|
||||
[ 61920 evals] best 2.49476e-08 (fails 21) via level_compound_fix noop
|
||||
[ 66320 evals] best 2.54089e-08 (fails 21) via level_fix noop
|
||||
[ 71440 evals] best 5.14082e-08 (fails 20) via core_undivide noop
|
||||
[ 76320 evals] best 6.34704e-08 (fails 20) via crossover lrl<->lrl
|
||||
[ 79200 evals] best 6.37227e-08 (fails 20) via crossover lrrrl<->lrrrl
|
||||
[ 79840 evals] best 6.38312e-08 (fails 20) via core_undivide noop
|
||||
[ 80720 evals] best 6.39174e-08 (fails 20) via level_fix noop
|
||||
[ 81200 evals] best 6.395e-08 (fails 20) via crossover rllr<->rllr
|
||||
[100240 evals] best 1.19279e-07 (fails 19) via level_fix noop
|
||||
[103280 evals] best 1.21428e-07 (fails 19) via crossover rrrr<->rlrr
|
||||
[111440 evals] best 1.23503e-07 (fails 19) via level_fix noop
|
||||
[111920 evals] best 1.25268e-07 (fails 19) via level_compound_fix noop
|
||||
[114000 evals] best 1.26206e-07 (fails 19) via rotate 0/rrr
|
||||
[115280 evals] best 1.26512e-07 (fails 19) via crossover rlrr<->lrlr
|
||||
[123520 evals] best 1.3089e-07 (fails 19) via crossover rrrr<->lrrrr
|
||||
[123840 evals] best 1.33083e-07 (fails 19) via level_fix noop
|
||||
[124160 evals] best 1.33493e-07 (fails 19) via level_compound_fix noop
|
||||
[130960 evals] best 1.54739e-07 (fails 19) via divide 1/llrl
|
||||
[192960 evals] best 2.09792e-07 (fails 18) via core_divide lrlr (2 floors)
|
||||
[194080 evals] best 2.21668e-07 (fails 18) via level_compound_fix noop
|
||||
[194640 evals] best 2.21905e-07 (fails 18) via crossover lllll<->lllll
|
||||
[197120 evals] best 2.42215e-07 (fails 18) via crossover llrr<->llrr
|
||||
[200160 evals] best 2.56155e-07 (fails 18) via crossover lrlrl<->lrlrl
|
||||
[202800 evals] best 2.56274e-07 (fails 18) via crossover rrrr<->lrll
|
||||
[207200 evals] best 2.57268e-07 (fails 18) via core_undivide noop
|
||||
[217840 evals] best 2.65752e-07 (fails 18) via level_compound_fix noop
|
||||
[218880 evals] best 2.66338e-07 (fails 18) via level_fix noop
|
||||
[218960 evals] best 2.66409e-07 (fails 18) via swap 0/lrlr
|
||||
[222960 evals] best 2.81898e-07 (fails 18) via crossover l<->l
|
||||
[224480 evals] best 2.81924e-07 (fails 18) via retype 0/lrll->st2
|
||||
[278800 evals] best 2.93777e-07 (fails 18) via divide 1/lrrr
|
||||
[279520 evals] best 2.93793e-07 (fails 18) via level_fix noop
|
||||
[320640 evals] best 2.95862e-07 (fails 18) via rotate 0/rrr
|
||||
[358880 evals] best 2.97323e-07 (fails 18) via rotate 0/rr
|
||||
[367120 evals] best 3.04012e-07 (fails 18) via crossover lrll<->llllr
|
||||
[417280 evals] best 1.18035e-06 (fails 16) via divide 1/rlr
|
||||
[423680 evals] best 1.18063e-06 (fails 16) via level_fix noop
|
||||
[427120 evals] best 1.18073e-06 (fails 16) via crossover l<->l
|
||||
[432960 evals] best 1.18987e-06 (fails 16) via undivide 0/lrlr
|
||||
[435360 evals] best 1.19002e-06 (fails 16) via swap 1/lrlr
|
||||
[440960 evals] best 1.25608e-06 (fails 16) via retype 0/lrlrr->ef1
|
||||
[443920 evals] best 2.24559e-06 (fails 15) via undivide 1/lrlr
|
||||
[460640 evals] best 2.4213e-06 (fails 15) via undivide 1/lrlr
|
||||
[474320 evals] best 2.4213e-06 (fails 15) via swap 0/lrl
|
||||
[534160 evals] best 4.65676e-06 (fails 14) via divide 1/llrlr
|
||||
[541600 evals] best 9.31353e-06 (fails 13) via level_compound_fix of: lvl1 → lvl0/rllr
|
||||
[570800 evals] best 9.38995e-06 (fails 13) via level_fix of: lvl1/llrlrl → lvl0/rllr
|
||||
[589600 evals] best 9.49326e-06 (fails 13) via swap 0/lrlr
|
||||
[590240 evals] best 9.53324e-06 (fails 13) via level_fix noop
|
||||
[591120 evals] best 9.56034e-06 (fails 13) via level_compound_fix noop
|
||||
[592960 evals] best 9.58028e-06 (fails 13) via level_fix noop
|
||||
[644000 evals] best 9.59623e-06 (fails 13) via rotate 0/lrlr
|
||||
[688880 evals] best 9.8317e-06 (fails 13) via crossover rrl<->lrrrr
|
||||
[689040 evals] best 9.85084e-06 (fails 13) via level_fix noop
|
||||
[689760 evals] best 9.86664e-06 (fails 13) via core_undivide noop
|
||||
[697680 evals] best 9.89198e-06 (fails 13) via rotate 0/rr
|
||||
[785120 evals] best 9.91323e-06 (fails 13) via rotate 1/llrlr
|
||||
[787760 evals] best 9.93767e-06 (fails 13) via undivide 0/llrr
|
||||
[789920 evals] best 1.00029e-05 (fails 13) via rotate 0/rrr
|
||||
[828560 evals] best 1.00451e-05 (fails 13) via crossover r<->r
|
||||
[889840 evals] best 1.00699e-05 (fails 13) via undivide 0/llrr
|
||||
[945840 evals] best 1.01801e-05 (fails 13) via divide 1/rlrl
|
||||
[946480 evals] best 1.01803e-05 (fails 13) via swap 1/rlrl
|
||||
[951520 evals] best 1.02053e-05 (fails 13) via undivide 0/llrr
|
||||
[1085840 evals] best 1.02214e-05 (fails 13) via rotate 0/lrlr
|
||||
[1382400 evals] best 1.02289e-05 (fails 13) via undivide 0/llrr
|
||||
[1383120 evals] best 1.02309e-05 (fails 13) via level_fix noop
|
||||
[1445040 evals] best 1.0247e-05 (fails 13) via rotate 0/lrlr
|
||||
[2198240 evals] best 1.0247e-05 (fails 13) via crossover lrlrr<->llrrr
|
||||
[2649680 evals] best 1.03342e-05 (fails 13) via divide 1/llrll
|
||||
[2951680 evals] best 1.03342e-05 (fails 13) via divide 0/llllr
|
||||
|
||||
--- done ---
|
||||
elapsed : 77682.2s
|
||||
evals : 3000000 across 37500 topologies
|
||||
best : 1.03342e-05 (13 fails) via divide 0/llllr
|
||||
|
||||
improvement history:
|
||||
[ 80] 1.23724e-18 (construct/0)
|
||||
[ 160] 3.60774e-14 (construct/1)
|
||||
[ 4400] 3.92553e-14 (level_fix noop)
|
||||
[ 5600] 2.5324e-13 (divide 0/lrrr)
|
||||
[ 6560] 2.54766e-13 (crossover rrrl<->rrrl)
|
||||
[ 6800] 5.12736e-13 (core_divide noop)
|
||||
[ 8240] 5.20906e-13 (level_compound_fix noop)
|
||||
[ 11040] 5.21558e-13 (swap 0/lrl)
|
||||
[ 13200] 5.24939e-13 (core_divide noop)
|
||||
[ 14960] 5.27579e-13 (crossover lrrl<->lrrl)
|
||||
[ 15200] 5.31633e-13 (core_undivide noop)
|
||||
[ 15600] 2.18076e-12 (crossover rrrl<->rlrr)
|
||||
[ 15840] 2.21022e-12 (level_fix noop)
|
||||
[ 19120] 2.24186e-12 (level_compound_fix noop)
|
||||
[ 19360] 2.26499e-12 (level_compound_fix noop)
|
||||
[ 24960] 7.39417e-11 (undivide 1/rrl)
|
||||
[ 25360] 7.49515e-11 (core_undivide noop)
|
||||
[ 29200] 7.57633e-11 (core_undivide noop)
|
||||
[ 29680] 7.74529e-11 (level_fix noop)
|
||||
[ 35280] 7.86348e-11 (level_fix noop)
|
||||
[ 36880] 3.15641e-10 (level_retype 1/llrl<->0/rlrr)
|
||||
[ 37360] 3.16e-10 (level_fix noop)
|
||||
[ 39680] 3.16841e-10 (level_compound_fix noop)
|
||||
[ 40160] 3.1945e-10 (rotate 0/rlr)
|
||||
[ 40480] 3.2002e-10 (level_compound_fix noop)
|
||||
[ 41120] 3.20176e-10 (core_undivide noop)
|
||||
[ 42240] 3.20502e-10 (level_fix noop)
|
||||
[ 44000] 1.22813e-09 (swap 0/rll)
|
||||
[ 47120] 1.24341e-09 (crossover llrr<->llrr)
|
||||
[ 48400] 1.36186e-09 (swap 0/rrr)
|
||||
[ 55280] 1.37846e-09 (core_divide noop)
|
||||
[ 56080] 1.39462e-09 (core_undivide noop)
|
||||
[ 56880] 1.41015e-09 (level_compound_fix noop)
|
||||
[ 57680] 1.42485e-09 (core_divide noop)
|
||||
[ 58880] 1.43848e-09 (crossover lrl<->lrl)
|
||||
[ 59360] 1.45094e-09 (core_undivide noop)
|
||||
[ 61760] 2.44768e-08 (swap 0/lrl)
|
||||
[ 61920] 2.49476e-08 (level_compound_fix noop)
|
||||
[ 66320] 2.54089e-08 (level_fix noop)
|
||||
[ 71440] 5.14082e-08 (core_undivide noop)
|
||||
[ 76320] 6.34704e-08 (crossover lrl<->lrl)
|
||||
[ 79200] 6.37227e-08 (crossover lrrrl<->lrrrl)
|
||||
[ 79840] 6.38312e-08 (core_undivide noop)
|
||||
[ 80720] 6.39174e-08 (level_fix noop)
|
||||
[ 81200] 6.395e-08 (crossover rllr<->rllr)
|
||||
[100240] 1.19279e-07 (level_fix noop)
|
||||
[103280] 1.21428e-07 (crossover rrrr<->rlrr)
|
||||
[111440] 1.23503e-07 (level_fix noop)
|
||||
[111920] 1.25268e-07 (level_compound_fix noop)
|
||||
[114000] 1.26206e-07 (rotate 0/rrr)
|
||||
[115280] 1.26512e-07 (crossover rlrr<->lrlr)
|
||||
[123520] 1.3089e-07 (crossover rrrr<->lrrrr)
|
||||
[123840] 1.33083e-07 (level_fix noop)
|
||||
[124160] 1.33493e-07 (level_compound_fix noop)
|
||||
[130960] 1.54739e-07 (divide 1/llrl)
|
||||
[192960] 2.09792e-07 (core_divide lrlr (2 floors))
|
||||
[194080] 2.21668e-07 (level_compound_fix noop)
|
||||
[194640] 2.21905e-07 (crossover lllll<->lllll)
|
||||
[197120] 2.42215e-07 (crossover llrr<->llrr)
|
||||
[200160] 2.56155e-07 (crossover lrlrl<->lrlrl)
|
||||
[202800] 2.56274e-07 (crossover rrrr<->lrll)
|
||||
[207200] 2.57268e-07 (core_undivide noop)
|
||||
[217840] 2.65752e-07 (level_compound_fix noop)
|
||||
[218880] 2.66338e-07 (level_fix noop)
|
||||
[218960] 2.66409e-07 (swap 0/lrlr)
|
||||
[222960] 2.81898e-07 (crossover l<->l)
|
||||
[224480] 2.81924e-07 (retype 0/lrll->st2)
|
||||
[278800] 2.93777e-07 (divide 1/lrrr)
|
||||
[279520] 2.93793e-07 (level_fix noop)
|
||||
[320640] 2.95862e-07 (rotate 0/rrr)
|
||||
[358880] 2.97323e-07 (rotate 0/rr)
|
||||
[367120] 3.04012e-07 (crossover lrll<->llllr)
|
||||
[417280] 1.18035e-06 (divide 1/rlr)
|
||||
[423680] 1.18063e-06 (level_fix noop)
|
||||
[427120] 1.18073e-06 (crossover l<->l)
|
||||
[432960] 1.18987e-06 (undivide 0/lrlr)
|
||||
[435360] 1.19002e-06 (swap 1/lrlr)
|
||||
[440960] 1.25608e-06 (retype 0/lrlrr->ef1)
|
||||
[443920] 2.24559e-06 (undivide 1/lrlr)
|
||||
[460640] 2.4213e-06 (undivide 1/lrlr)
|
||||
[474320] 2.4213e-06 (swap 0/lrl)
|
||||
[534160] 4.65676e-06 (divide 1/llrlr)
|
||||
[541600] 9.31353e-06 (level_compound_fix of: lvl1 → lvl0/rllr)
|
||||
[570800] 9.38995e-06 (level_fix of: lvl1/llrlrl → lvl0/rllr)
|
||||
[589600] 9.49326e-06 (swap 0/lrlr)
|
||||
[590240] 9.53324e-06 (level_fix noop)
|
||||
[591120] 9.56034e-06 (level_compound_fix noop)
|
||||
[592960] 9.58028e-06 (level_fix noop)
|
||||
[644000] 9.59623e-06 (rotate 0/lrlr)
|
||||
[688880] 9.8317e-06 (crossover rrl<->lrrrr)
|
||||
[689040] 9.85084e-06 (level_fix noop)
|
||||
[689760] 9.86664e-06 (core_undivide noop)
|
||||
[697680] 9.89198e-06 (rotate 0/rr)
|
||||
[785120] 9.91323e-06 (rotate 1/llrlr)
|
||||
[787760] 9.93767e-06 (undivide 0/llrr)
|
||||
[789920] 1.00029e-05 (rotate 0/rrr)
|
||||
[828560] 1.00451e-05 (crossover r<->r)
|
||||
[889840] 1.00699e-05 (undivide 0/llrr)
|
||||
[945840] 1.01801e-05 (divide 1/rlrl)
|
||||
[946480] 1.01803e-05 (swap 1/rlrl)
|
||||
[951520] 1.02053e-05 (undivide 0/llrr)
|
||||
[1085840] 1.02214e-05 (rotate 0/lrlr)
|
||||
[1382400] 1.02289e-05 (undivide 0/llrr)
|
||||
[1383120] 1.02309e-05 (level_fix noop)
|
||||
[1445040] 1.0247e-05 (rotate 0/lrlr)
|
||||
[2198240] 1.0247e-05 (crossover lrlrr<->llrrr)
|
||||
[2649680] 1.03342e-05 (divide 1/llrll)
|
||||
[2951680] 1.03342e-05 (divide 0/llllr)
|
||||
written : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-3M.dom
|
||||
463
examples/harbor-house/evolve-anneal-3M.log
Normal file
463
examples/harbor-house/evolve-anneal-3M.log
Normal file
|
|
@ -0,0 +1,463 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/harbor-house/init.dom
|
||||
programme : harbor-house
|
||||
budget : 1500000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 4
|
||||
rng seed : 0
|
||||
leaf sharing : True (factor=3)
|
||||
superpose : False
|
||||
output : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-anneal-3M.dom
|
||||
anneal grain : (4, 3, 2) → off (polish 1500000)
|
||||
[anneal] phase 1/3: grain 4, budget 500000 (construct population)
|
||||
[ 80 evals] best 2.08665e-19 (fails 51) via construct/0
|
||||
[ 560 evals] best 5.36487e-16 (fails 41) via construct/6
|
||||
[ 880 evals] best 8.24937e-16 (fails 40) via construct/10
|
||||
[ 1920 evals] best 3.40701e-15 (fails 38) via level_fix noop
|
||||
[ 2560 evals] best 3.54792e-15 (fails 38) via level_retype 1/rlr<->0/rrlr
|
||||
[ 5600 evals] best 7.10621e-15 (fails 37) via divide 1/lllr
|
||||
[ 5840 evals] best 7.22073e-15 (fails 37) via core_divide noop
|
||||
[ 8720 evals] best 8.05574e-15 (fails 37) via core_divide noop
|
||||
[ 9520 evals] best 9.60644e-15 (fails 37) via level_compound_fix noop
|
||||
[ 9760 evals] best 9.70633e-15 (fails 37) via core_divide noop
|
||||
[ 10240 evals] best 9.7388e-15 (fails 37) via crossover rrl<->rrl
|
||||
[ 11360 evals] best 9.73885e-15 (fails 37) via core_undivide noop
|
||||
[ 11440 evals] best 9.76347e-15 (fails 37) via core_undivide noop
|
||||
[ 12560 evals] best 9.76353e-15 (fails 37) via level_fix noop
|
||||
[ 13120 evals] best 9.80676e-15 (fails 37) via core_divide noop
|
||||
[ 13200 evals] best 9.81434e-15 (fails 37) via core_undivide noop
|
||||
[ 13760 evals] best 2.19875e-14 (fails 36) via swap 0/rrl
|
||||
[ 14640 evals] best 2.21351e-14 (fails 36) via core_undivide noop
|
||||
[ 16640 evals] best 3.12145e-14 (fails 35) via swap 0/lrl
|
||||
[ 20080 evals] best 6.11965e-14 (fails 34) via rotate 0/lrr
|
||||
[ 24560 evals] best 6.12446e-14 (fails 34) via core_undivide noop
|
||||
[ 27280 evals] best 9.09789e-14 (fails 34) via undivide 0/llr
|
||||
[ 29200 evals] best 9.09792e-14 (fails 34) via core_undivide noop
|
||||
[ 31120 evals] best 9.09795e-14 (fails 34) via core_divide noop
|
||||
[ 33120 evals] best 9.09799e-14 (fails 34) via core_divide noop
|
||||
[ 33360 evals] best 9.09802e-14 (fails 34) via core_divide noop
|
||||
[ 34640 evals] best 1.59113e-13 (fails 33) via crossover r<->r
|
||||
[ 36720 evals] best 1.59546e-13 (fails 33) via core_divide noop
|
||||
[ 45520 evals] best 1.98045e-13 (fails 33) via swap 0/rl
|
||||
[ 47360 evals] best 1.98703e-13 (fails 33) via swap 0/rrl
|
||||
[ 49520 evals] best 1.99037e-13 (fails 33) via core_divide noop
|
||||
[ 50240 evals] best 7.31388e-13 (fails 31) via swap 0/rll
|
||||
[ 50480 evals] best 7.31391e-13 (fails 31) via crossover rr<->rr
|
||||
[ 52240 evals] best 7.31395e-13 (fails 31) via core_undivide noop
|
||||
[ 58560 evals] best 7.31891e-13 (fails 31) via undivide 1/lllr
|
||||
[ 58960 evals] best 7.31896e-13 (fails 31) via undivide 1/lllr
|
||||
[ 65600 evals] best 7.31896e-13 (fails 31) via core_undivide noop
|
||||
[ 67680 evals] best 7.31897e-13 (fails 31) via core_divide noop
|
||||
[ 68160 evals] best 7.31897e-13 (fails 31) via retype 1/lllr->st2
|
||||
[ 95360 evals] best 8.30056e-12 (fails 29) via divide 1/rrl
|
||||
[ 99440 evals] best 8.30058e-12 (fails 29) via core_divide noop
|
||||
[101840 evals] best 8.39142e-12 (fails 29) via level_retype 1/rlr<->0/rlr
|
||||
[105200 evals] best 8.39887e-12 (fails 29) via core_divide noop
|
||||
[112720 evals] best 8.41871e-12 (fails 29) via core_undivide noop
|
||||
[117440 evals] best 8.44275e-12 (fails 29) via undivide 1/lrll
|
||||
[117760 evals] best 8.4503e-12 (fails 29) via core_undivide noop
|
||||
[122640 evals] best 8.47017e-12 (fails 29) via core_divide noop
|
||||
[165280 evals] best 1.43128e-11 (fails 28) via divide 0/rrrrr
|
||||
[168000 evals] best 1.45749e-11 (fails 28) via core_undivide noop
|
||||
[170400 evals] best 1.68382e-11 (fails 28) via divide 1/rll
|
||||
[172640 evals] best 1.71204e-11 (fails 28) via core_undivide noop
|
||||
[178720 evals] best 1.79457e-11 (fails 28) via divide 0/lrr
|
||||
[183680 evals] best 1.82521e-11 (fails 28) via core_divide noop
|
||||
[190480 evals] best 1.85485e-11 (fails 28) via core_undivide noop
|
||||
[190960 evals] best 1.89079e-11 (fails 28) via core_divide noop
|
||||
[192000 evals] best 1.92475e-11 (fails 28) via core_undivide noop
|
||||
[192240 evals] best 3.98705e-11 (fails 27) via rotate 0/lrr
|
||||
[196400 evals] best 4.00667e-11 (fails 27) via divide 1/rrlr
|
||||
[197760 evals] best 4.00667e-11 (fails 27) via retype 1/rrlrr->st2
|
||||
[261200 evals] best 7.87414e-11 (fails 26) via crossover l<->l
|
||||
[271200 evals] best 7.87477e-11 (fails 26) via core_divide noop
|
||||
[274240 evals] best 7.96497e-11 (fails 26) via core_divide noop
|
||||
[275040 evals] best 8.05626e-11 (fails 26) via core_undivide noop
|
||||
[277040 evals] best 1.4805e-10 (fails 25) via undivide 0/rlll
|
||||
[277600 evals] best 1.51268e-10 (fails 25) via core_divide noop
|
||||
[283040 evals] best 3.12178e-10 (fails 24) via rotate 0/lrr
|
||||
[313680 evals] best 3.12896e-10 (fails 24) via level_retype 1/rlr<->0/rlr
|
||||
[340000 evals] best 6.89781e-10 (fails 23) via divide 1/rlll
|
||||
[351440 evals] best 6.89742e-09 (fails 23) via core_undivide noop
|
||||
[353280 evals] best 6.94596e-09 (fails 23) via core_undivide noop
|
||||
[358400 evals] best 7.00355e-09 (fails 23) via core_undivide noop
|
||||
[362720 evals] best 7.0692e-09 (fails 23) via swap 0/rrrrr
|
||||
[364560 evals] best 7.14137e-09 (fails 23) via core_undivide noop
|
||||
[365520 evals] best 7.20308e-09 (fails 23) via core_undivide noop
|
||||
[365920 evals] best 7.23862e-09 (fails 23) via core_undivide noop
|
||||
[373840 evals] best 7.23862e-09 (fails 23) via crossover rrrrrl<->rrll
|
||||
[390880 evals] best 7.24269e-09 (fails 23) via rotate 0/lrr
|
||||
[402480 evals] best 7.2467e-09 (fails 23) via crossover rrll<->lrrr
|
||||
[422480 evals] best 1.02386e-08 (fails 23) via divide 1/rlll
|
||||
[422720 evals] best 2.05575e-08 (fails 22) via divide 1/lrll
|
||||
[455120 evals] best 2.30337e-08 (fails 22) via crossover lrrr<->rllr
|
||||
[463120 evals] best 2.38566e-08 (fails 22) via level_retype 0/rlrl<->1/rlr
|
||||
[466080 evals] best 4.78825e-08 (fails 21) via core_divide rrll (2 floors)
|
||||
[483840 evals] best 9.76421e-08 (fails 20) via divide 1/lrll
|
||||
[497440 evals] best 1.95284e-07 (fails 19) via crossover rrllr<->rrllr
|
||||
[anneal] phase 2/3: grain 3, budget 500000 — unfolded 96 leaf-copies (share>3)
|
||||
[ 200 evals] best 1.83626e-13 (fails 39) via anneal-seed/0
|
||||
[ 4320 evals] best 1.83638e-13 (fails 39) via level_retype 0/lrrr<->1/rrlr
|
||||
[ 7680 evals] best 1.83641e-13 (fails 39) via swap 1/llrrl
|
||||
[ 8880 evals] best 3.62008e-13 (fails 38) via undivide 1/lrrr
|
||||
[ 17120 evals] best 3.6202e-13 (fails 38) via core_undivide noop
|
||||
[ 18080 evals] best 7.35588e-13 (fails 37) via undivide 1/llrrl
|
||||
[ 18640 evals] best 7.35612e-13 (fails 37) via core_undivide noop
|
||||
[ 28400 evals] best 1.3318e-12 (fails 36) via retype 1/lrrr->O
|
||||
[ 48240 evals] best 1.39362e-12 (fails 36) via level_retype 1/llrrlr<->0/rllr
|
||||
[ 48880 evals] best 1.39398e-12 (fails 36) via swap 1/llrrr
|
||||
[ 53920 evals] best 1.4572e-12 (fails 36) via crossover rr<->rr
|
||||
[ 56960 evals] best 1.45745e-12 (fails 36) via core_undivide noop
|
||||
[ 60880 evals] best 1.7726e-12 (fails 35) via level_retype 0/llr<->1/rrlr
|
||||
[ 63520 evals] best 5.87208e-12 (fails 34) via divide 1/rrrr
|
||||
[ 66880 evals] best 1.22536e-11 (fails 33) via retype 0/rrrrrl->r
|
||||
[ 68640 evals] best 2.42529e-11 (fails 32) via rotate 0/rrrrr
|
||||
[ 71760 evals] best 2.43119e-11 (fails 32) via crossover lrl<->lrl
|
||||
[ 72080 evals] best 2.43801e-11 (fails 32) via core_undivide noop
|
||||
[ 78160 evals] best 2.43839e-11 (fails 32) via level_retype 0/lrrr<->1/rllr
|
||||
[ 91600 evals] best 2.4769e-11 (fails 32) via level_retype 0/rllr<->1/rlr
|
||||
[ 93760 evals] best 2.48387e-11 (fails 32) via divide 1/rlr
|
||||
[ 96800 evals] best 2.50941e-11 (fails 32) via core_undivide noop
|
||||
[103280 evals] best 2.51131e-11 (fails 32) via core_undivide noop
|
||||
[119920 evals] best 2.51267e-11 (fails 32) via rotate 1/llrrr
|
||||
[122800 evals] best 2.53283e-11 (fails 32) via core_undivide noop
|
||||
[123600 evals] best 2.53618e-11 (fails 32) via core_undivide noop
|
||||
[125520 evals] best 5.07696e-11 (fails 31) via crossover rrrrrr<->rlrr
|
||||
[137680 evals] best 5.10394e-11 (fails 31) via retype 1/lrlll->of
|
||||
[141280 evals] best 5.23793e-11 (fails 31) via undivide 0/rrrrr
|
||||
[150320 evals] best 5.24022e-11 (fails 31) via core_undivide noop
|
||||
[151200 evals] best 4.10836e-10 (fails 28) via crossover lrrl<->rrll
|
||||
[186000 evals] best 4.11313e-10 (fails 28) via level_retype 1/llll<->0/rlrr
|
||||
[192320 evals] best 4.11815e-10 (fails 28) via core_undivide noop
|
||||
[202560 evals] best 4.12887e-10 (fails 28) via rotate 0/rlr
|
||||
[216800 evals] best 8.7845e-10 (fails 27) via core_divide rrlll (2 floors)
|
||||
[223120 evals] best 8.98065e-10 (fails 27) via core_divide rrlll (2 floors)
|
||||
[225040 evals] best 9.19804e-10 (fails 27) via core_undivide noop
|
||||
[228880 evals] best 9.3217e-10 (fails 27) via core_undivide noop
|
||||
[233600 evals] best 9.87021e-10 (fails 27) via crossover rrrl<->rrrl
|
||||
[234880 evals] best 9.90066e-10 (fails 27) via core_undivide noop
|
||||
[235360 evals] best 1.88613e-09 (fails 26) via crossover rlrl<->lrrr
|
||||
[243040 evals] best 1.88635e-09 (fails 26) via core_undivide noop
|
||||
[288320 evals] best 1.88635e-09 (fails 26) via crossover lr<->lr
|
||||
[310320 evals] best 7.90852e-09 (fails 24) via retype 0/rrlllr->r
|
||||
[389200 evals] best 1.51646e-08 (fails 23) via rotate 1/llrll
|
||||
[392960 evals] best 1.51781e-08 (fails 23) via undivide 0/rlr
|
||||
[396000 evals] best 1.51869e-08 (fails 23) via undivide 1/llrll
|
||||
[418240 evals] best 1.61363e-08 (fails 23) via divide 1/rlll
|
||||
[419600 evals] best 3.04324e-08 (fails 22) via swap 0/rll
|
||||
[444640 evals] best 3.11245e-08 (fails 22) via core_undivide noop
|
||||
[453680 evals] best 5.97513e-08 (fails 21) via core_undivide noop
|
||||
[458480 evals] best 6.06147e-08 (fails 21) via undivide 1/llrll
|
||||
[459440 evals] best 6.14333e-08 (fails 21) via crossover rlrl<->rrllr
|
||||
[464560 evals] best 6.19713e-08 (fails 21) via level_retype 0/lrrr<->1/lrlll
|
||||
[467600 evals] best 6.2383e-08 (fails 21) via crossover llr<->llr
|
||||
[468000 evals] best 6.25855e-08 (fails 21) via undivide 0/rlr
|
||||
[anneal] phase 3/3: grain 2, budget 500000 — unfolded 128 leaf-copies (share>2)
|
||||
[ 200 evals] best 3.28383e-15 (fails 45) via anneal-seed/0
|
||||
[ 2400 evals] best 1.27109e-14 (fails 43) via anneal-seed/11
|
||||
[ 4160 evals] best 1.27122e-14 (fails 43) via core_undivide noop
|
||||
[ 4960 evals] best 1.27133e-14 (fails 43) via core_undivide noop
|
||||
[ 5440 evals] best 1.27141e-14 (fails 43) via crossover rl<->rl
|
||||
[ 6400 evals] best 2.54301e-14 (fails 42) via core_undivide noop
|
||||
[ 8960 evals] best 2.54321e-14 (fails 42) via swap 0/llllr
|
||||
[ 9760 evals] best 2.54342e-14 (fails 42) via swap 1/llrlr
|
||||
[ 9920 evals] best 2.54547e-14 (fails 42) via undivide 0/rlr
|
||||
[ 22960 evals] best 2.54569e-14 (fails 42) via core_undivide noop
|
||||
[ 26080 evals] best 5.14279e-14 (fails 41) via rotate 0/lrlrr
|
||||
[ 28720 evals] best 5.15142e-14 (fails 41) via core_undivide noop
|
||||
[ 29040 evals] best 5.15186e-14 (fails 41) via core_undivide noop
|
||||
[ 30000 evals] best 5.15297e-14 (fails 41) via swap 1/llrll
|
||||
[ 31760 evals] best 5.15349e-14 (fails 41) via core_undivide noop
|
||||
[ 32480 evals] best 5.20851e-14 (fails 41) via divide 1/llrlrl
|
||||
[ 38160 evals] best 5.26944e-14 (fails 41) via core_undivide noop
|
||||
[ 40160 evals] best 5.32798e-14 (fails 41) via crossover rrlrrl<->rrlrrl
|
||||
[ 47040 evals] best 1.03522e-13 (fails 40) via divide 1/llrlrl
|
||||
[ 54000 evals] best 3.8649e-13 (fails 38) via divide 0/rrlrrl
|
||||
[ 54320 evals] best 3.88486e-13 (fails 38) via core_undivide noop
|
||||
[ 65040 evals] best 3.89607e-13 (fails 38) via divide 1/lrrr
|
||||
[ 66960 evals] best 3.89689e-13 (fails 38) via level_retype 0/lrrr<->1/rllr
|
||||
[ 69840 evals] best 3.97558e-13 (fails 38) via swap 1/llrlrl
|
||||
[ 71840 evals] best 4.01654e-13 (fails 38) via core_undivide noop
|
||||
[ 74960 evals] best 2.66422e-11 (fails 32) via level_retype 1/lrlrrr<->0/rlrl
|
||||
[ 79760 evals] best 2.67443e-11 (fails 32) via swap 1/llrll
|
||||
[ 90480 evals] best 2.67755e-11 (fails 32) via core_undivide noop
|
||||
[ 95840 evals] best 2.84823e-11 (fails 32) via divide 1/rrlr
|
||||
[106080 evals] best 2.85064e-11 (fails 32) via core_undivide noop
|
||||
[242160 evals] best 1.10468e-10 (fails 30) via level_retype 0/rrlllr<->1/lrlrl
|
||||
[261840 evals] best 1.13005e-10 (fails 30) via rotate 0/lrlrr
|
||||
[294080 evals] best 2.25842e-10 (fails 29) via level_retype 1/llrlrll<->0/rrlrrll
|
||||
[304880 evals] best 4.3164e-10 (fails 28) via swap 0/rlr
|
||||
[346880 evals] best 4.36981e-10 (fails 28) via rotate 0/lrlrr
|
||||
[359680 evals] best 4.40945e-10 (fails 28) via swap 1/llrlrl
|
||||
[381840 evals] best 9.00576e-10 (fails 27) via divide 0/lllr
|
||||
[449040 evals] best 9.20992e-10 (fails 27) via rotate 0/lrlrr
|
||||
[anneal] finish: de-share (grain off), polish 1500000 evals — unfolded 32 leaf-copies
|
||||
[ 200 evals] best 1.79588e-12 (fails 36) via anneal-seed/0
|
||||
[ 4800 evals] best 1.79593e-12 (fails 36) via place_missing noop
|
||||
[ 15360 evals] best 1.79623e-12 (fails 36) via rotate 0/rrlrr
|
||||
[ 36240 evals] best 3.50817e-12 (fails 35) via level_retype 1/llrrr<->0/rrlrl
|
||||
[103120 evals] best 3.52062e-12 (fails 35) via undivide 1/rrrl
|
||||
[123200 evals] best 1.26003e-11 (fails 33) via crossover llllrlr<->rrrrr
|
||||
[127040 evals] best 1.26851e-11 (fails 33) via core_undivide noop
|
||||
[128800 evals] best 1.27772e-11 (fails 33) via core_undivide noop
|
||||
[131840 evals] best 2.32615e-11 (fails 32) via core_divide rrllr (2 floors)
|
||||
[134480 evals] best 2.33823e-11 (fails 32) via place_missing noop
|
||||
[135360 evals] best 2.34449e-11 (fails 32) via level_retype 1/rrrr<->0/rrlrrlr
|
||||
[140880 evals] best 2.34579e-11 (fails 32) via place_missing noop
|
||||
[141920 evals] best 2.34703e-11 (fails 32) via place_missing noop
|
||||
[149040 evals] best 2.5583e-11 (fails 32) via level_retype 0/llllrlrl<->1/llrrl
|
||||
[165520 evals] best 4.43277e-11 (fails 31) via undivide 0/rrllr
|
||||
[173760 evals] best 4.5392e-11 (fails 31) via divide 1/lrlll
|
||||
[174400 evals] best 4.55799e-11 (fails 31) via crossover l<->l
|
||||
[181440 evals] best 4.57067e-11 (fails 31) via place_missing noop
|
||||
[199920 evals] best 1.82608e-10 (fails 29) via level_retype 0/rrlrl<->1/rrllrr
|
||||
[201600 evals] best 1.83115e-10 (fails 29) via core_undivide noop
|
||||
[205360 evals] best 1.83224e-10 (fails 29) via swap 1/lrrll
|
||||
[206960 evals] best 1.84394e-10 (fails 29) via place_missing noop
|
||||
[207280 evals] best 1.85542e-10 (fails 29) via place_missing noop
|
||||
[211360 evals] best 1.85715e-10 (fails 29) via undivide 0/lllr
|
||||
[394320 evals] best 1.85916e-10 (fails 29) via rotate 0/lrlrr
|
||||
[395200 evals] best 1.87069e-10 (fails 29) via place_missing noop
|
||||
[396640 evals] best 1.87243e-10 (fails 29) via place_missing noop
|
||||
[429680 evals] best 1.95082e-10 (fails 29) via level_retype 0/lrlrrr<->1/llrlrll
|
||||
[531200 evals] best 7.98394e-10 (fails 27) via level_retype 0/llllrlrl<->1/llrlrll
|
||||
[617520 evals] best 8.06466e-10 (fails 27) via undivide 0/lrll
|
||||
[797200 evals] best 8.47009e-10 (fails 27) via level_retype 1/llrr<->0/lrrr
|
||||
[846480 evals] best 8.84037e-10 (fails 27) via level_retype 1/lrlrrl<->0/rrlrrll
|
||||
[969760 evals] best 8.94046e-10 (fails 27) via rotate 1/llrlrl
|
||||
[1083680 evals] best 1.60805e-09 (fails 26) via swap 0/llllrlr
|
||||
[1198960 evals] best 6.4322e-09 (fails 24) via level_retype 0/rrrrrl<->1/lrlrrl
|
||||
[1357200 evals] best 1.21534e-08 (fails 23) via crossover rlr<->llllrlr
|
||||
[1453360 evals] best 1.25851e-08 (fails 23) via swap 1/lrrll
|
||||
[1454560 evals] best 1.25997e-08 (fails 23) via place_missing noop
|
||||
[1455440 evals] best 1.26006e-08 (fails 23) via place_missing noop
|
||||
[1465600 evals] best 1.26006e-08 (fails 23) via undivide 0/lllr
|
||||
[1492400 evals] best 1.26278e-08 (fails 23) via undivide 1/llrlrll
|
||||
|
||||
--- done ---
|
||||
elapsed : 79027.6s
|
||||
evals : 3000000 across 37428 topologies
|
||||
best : 1.26278e-08 (23 fails) via undivide 1/llrlrll
|
||||
|
||||
improvement history:
|
||||
[ 80] 2.08665e-19 (g4:construct/0)
|
||||
[ 560] 5.36487e-16 (g4:construct/6)
|
||||
[ 880] 8.24937e-16 (g4:construct/10)
|
||||
[ 1920] 3.40701e-15 (g4:level_fix noop)
|
||||
[ 2560] 3.54792e-15 (g4:level_retype 1/rlr<->0/rrlr)
|
||||
[ 5600] 7.10621e-15 (g4:divide 1/lllr)
|
||||
[ 5840] 7.22073e-15 (g4:core_divide noop)
|
||||
[ 8720] 8.05574e-15 (g4:core_divide noop)
|
||||
[ 9520] 9.60644e-15 (g4:level_compound_fix noop)
|
||||
[ 9760] 9.70633e-15 (g4:core_divide noop)
|
||||
[ 10240] 9.7388e-15 (g4:crossover rrl<->rrl)
|
||||
[ 11360] 9.73885e-15 (g4:core_undivide noop)
|
||||
[ 11440] 9.76347e-15 (g4:core_undivide noop)
|
||||
[ 12560] 9.76353e-15 (g4:level_fix noop)
|
||||
[ 13120] 9.80676e-15 (g4:core_divide noop)
|
||||
[ 13200] 9.81434e-15 (g4:core_undivide noop)
|
||||
[ 13760] 2.19875e-14 (g4:swap 0/rrl)
|
||||
[ 14640] 2.21351e-14 (g4:core_undivide noop)
|
||||
[ 16640] 3.12145e-14 (g4:swap 0/lrl)
|
||||
[ 20080] 6.11965e-14 (g4:rotate 0/lrr)
|
||||
[ 24560] 6.12446e-14 (g4:core_undivide noop)
|
||||
[ 27280] 9.09789e-14 (g4:undivide 0/llr)
|
||||
[ 29200] 9.09792e-14 (g4:core_undivide noop)
|
||||
[ 31120] 9.09795e-14 (g4:core_divide noop)
|
||||
[ 33120] 9.09799e-14 (g4:core_divide noop)
|
||||
[ 33360] 9.09802e-14 (g4:core_divide noop)
|
||||
[ 34640] 1.59113e-13 (g4:crossover r<->r)
|
||||
[ 36720] 1.59546e-13 (g4:core_divide noop)
|
||||
[ 45520] 1.98045e-13 (g4:swap 0/rl)
|
||||
[ 47360] 1.98703e-13 (g4:swap 0/rrl)
|
||||
[ 49520] 1.99037e-13 (g4:core_divide noop)
|
||||
[ 50240] 7.31388e-13 (g4:swap 0/rll)
|
||||
[ 50480] 7.31391e-13 (g4:crossover rr<->rr)
|
||||
[ 52240] 7.31395e-13 (g4:core_undivide noop)
|
||||
[ 58560] 7.31891e-13 (g4:undivide 1/lllr)
|
||||
[ 58960] 7.31896e-13 (g4:undivide 1/lllr)
|
||||
[ 65600] 7.31896e-13 (g4:core_undivide noop)
|
||||
[ 67680] 7.31897e-13 (g4:core_divide noop)
|
||||
[ 68160] 7.31897e-13 (g4:retype 1/lllr->st2)
|
||||
[ 95360] 8.30056e-12 (g4:divide 1/rrl)
|
||||
[ 99440] 8.30058e-12 (g4:core_divide noop)
|
||||
[101840] 8.39142e-12 (g4:level_retype 1/rlr<->0/rlr)
|
||||
[105200] 8.39887e-12 (g4:core_divide noop)
|
||||
[112720] 8.41871e-12 (g4:core_undivide noop)
|
||||
[117440] 8.44275e-12 (g4:undivide 1/lrll)
|
||||
[117760] 8.4503e-12 (g4:core_undivide noop)
|
||||
[122640] 8.47017e-12 (g4:core_divide noop)
|
||||
[165280] 1.43128e-11 (g4:divide 0/rrrrr)
|
||||
[168000] 1.45749e-11 (g4:core_undivide noop)
|
||||
[170400] 1.68382e-11 (g4:divide 1/rll)
|
||||
[172640] 1.71204e-11 (g4:core_undivide noop)
|
||||
[178720] 1.79457e-11 (g4:divide 0/lrr)
|
||||
[183680] 1.82521e-11 (g4:core_divide noop)
|
||||
[190480] 1.85485e-11 (g4:core_undivide noop)
|
||||
[190960] 1.89079e-11 (g4:core_divide noop)
|
||||
[192000] 1.92475e-11 (g4:core_undivide noop)
|
||||
[192240] 3.98705e-11 (g4:rotate 0/lrr)
|
||||
[196400] 4.00667e-11 (g4:divide 1/rrlr)
|
||||
[197760] 4.00667e-11 (g4:retype 1/rrlrr->st2)
|
||||
[261200] 7.87414e-11 (g4:crossover l<->l)
|
||||
[271200] 7.87477e-11 (g4:core_divide noop)
|
||||
[274240] 7.96497e-11 (g4:core_divide noop)
|
||||
[275040] 8.05626e-11 (g4:core_undivide noop)
|
||||
[277040] 1.4805e-10 (g4:undivide 0/rlll)
|
||||
[277600] 1.51268e-10 (g4:core_divide noop)
|
||||
[283040] 3.12178e-10 (g4:rotate 0/lrr)
|
||||
[313680] 3.12896e-10 (g4:level_retype 1/rlr<->0/rlr)
|
||||
[340000] 6.89781e-10 (g4:divide 1/rlll)
|
||||
[351440] 6.89742e-09 (g4:core_undivide noop)
|
||||
[353280] 6.94596e-09 (g4:core_undivide noop)
|
||||
[358400] 7.00355e-09 (g4:core_undivide noop)
|
||||
[362720] 7.0692e-09 (g4:swap 0/rrrrr)
|
||||
[364560] 7.14137e-09 (g4:core_undivide noop)
|
||||
[365520] 7.20308e-09 (g4:core_undivide noop)
|
||||
[365920] 7.23862e-09 (g4:core_undivide noop)
|
||||
[373840] 7.23862e-09 (g4:crossover rrrrrl<->rrll)
|
||||
[390880] 7.24269e-09 (g4:rotate 0/lrr)
|
||||
[402480] 7.2467e-09 (g4:crossover rrll<->lrrr)
|
||||
[422480] 1.02386e-08 (g4:divide 1/rlll)
|
||||
[422720] 2.05575e-08 (g4:divide 1/lrll)
|
||||
[455120] 2.30337e-08 (g4:crossover lrrr<->rllr)
|
||||
[463120] 2.38566e-08 (g4:level_retype 0/rlrl<->1/rlr)
|
||||
[466080] 4.78825e-08 (g4:core_divide rrll (2 floors))
|
||||
[483840] 9.76421e-08 (g4:divide 1/lrll)
|
||||
[497440] 1.95284e-07 (g4:crossover rrllr<->rrllr)
|
||||
[500200] 1.83626e-13 (g3:anneal-seed/0)
|
||||
[504320] 1.83638e-13 (g3:level_retype 0/lrrr<->1/rrlr)
|
||||
[507680] 1.83641e-13 (g3:swap 1/llrrl)
|
||||
[508880] 3.62008e-13 (g3:undivide 1/lrrr)
|
||||
[517120] 3.6202e-13 (g3:core_undivide noop)
|
||||
[518080] 7.35588e-13 (g3:undivide 1/llrrl)
|
||||
[518640] 7.35612e-13 (g3:core_undivide noop)
|
||||
[528400] 1.3318e-12 (g3:retype 1/lrrr->O)
|
||||
[548240] 1.39362e-12 (g3:level_retype 1/llrrlr<->0/rllr)
|
||||
[548880] 1.39398e-12 (g3:swap 1/llrrr)
|
||||
[553920] 1.4572e-12 (g3:crossover rr<->rr)
|
||||
[556960] 1.45745e-12 (g3:core_undivide noop)
|
||||
[560880] 1.7726e-12 (g3:level_retype 0/llr<->1/rrlr)
|
||||
[563520] 5.87208e-12 (g3:divide 1/rrrr)
|
||||
[566880] 1.22536e-11 (g3:retype 0/rrrrrl->r)
|
||||
[568640] 2.42529e-11 (g3:rotate 0/rrrrr)
|
||||
[571760] 2.43119e-11 (g3:crossover lrl<->lrl)
|
||||
[572080] 2.43801e-11 (g3:core_undivide noop)
|
||||
[578160] 2.43839e-11 (g3:level_retype 0/lrrr<->1/rllr)
|
||||
[591600] 2.4769e-11 (g3:level_retype 0/rllr<->1/rlr)
|
||||
[593760] 2.48387e-11 (g3:divide 1/rlr)
|
||||
[596800] 2.50941e-11 (g3:core_undivide noop)
|
||||
[603280] 2.51131e-11 (g3:core_undivide noop)
|
||||
[619920] 2.51267e-11 (g3:rotate 1/llrrr)
|
||||
[622800] 2.53283e-11 (g3:core_undivide noop)
|
||||
[623600] 2.53618e-11 (g3:core_undivide noop)
|
||||
[625520] 5.07696e-11 (g3:crossover rrrrrr<->rlrr)
|
||||
[637680] 5.10394e-11 (g3:retype 1/lrlll->of)
|
||||
[641280] 5.23793e-11 (g3:undivide 0/rrrrr)
|
||||
[650320] 5.24022e-11 (g3:core_undivide noop)
|
||||
[651200] 4.10836e-10 (g3:crossover lrrl<->rrll)
|
||||
[686000] 4.11313e-10 (g3:level_retype 1/llll<->0/rlrr)
|
||||
[692320] 4.11815e-10 (g3:core_undivide noop)
|
||||
[702560] 4.12887e-10 (g3:rotate 0/rlr)
|
||||
[716800] 8.7845e-10 (g3:core_divide rrlll (2 floors))
|
||||
[723120] 8.98065e-10 (g3:core_divide rrlll (2 floors))
|
||||
[725040] 9.19804e-10 (g3:core_undivide noop)
|
||||
[728880] 9.3217e-10 (g3:core_undivide noop)
|
||||
[733600] 9.87021e-10 (g3:crossover rrrl<->rrrl)
|
||||
[734880] 9.90066e-10 (g3:core_undivide noop)
|
||||
[735360] 1.88613e-09 (g3:crossover rlrl<->lrrr)
|
||||
[743040] 1.88635e-09 (g3:core_undivide noop)
|
||||
[788320] 1.88635e-09 (g3:crossover lr<->lr)
|
||||
[810320] 7.90852e-09 (g3:retype 0/rrlllr->r)
|
||||
[889200] 1.51646e-08 (g3:rotate 1/llrll)
|
||||
[892960] 1.51781e-08 (g3:undivide 0/rlr)
|
||||
[896000] 1.51869e-08 (g3:undivide 1/llrll)
|
||||
[918240] 1.61363e-08 (g3:divide 1/rlll)
|
||||
[919600] 3.04324e-08 (g3:swap 0/rll)
|
||||
[944640] 3.11245e-08 (g3:core_undivide noop)
|
||||
[953680] 5.97513e-08 (g3:core_undivide noop)
|
||||
[958480] 6.06147e-08 (g3:undivide 1/llrll)
|
||||
[959440] 6.14333e-08 (g3:crossover rlrl<->rrllr)
|
||||
[964560] 6.19713e-08 (g3:level_retype 0/lrrr<->1/lrlll)
|
||||
[967600] 6.2383e-08 (g3:crossover llr<->llr)
|
||||
[968000] 6.25855e-08 (g3:undivide 0/rlr)
|
||||
[1000200] 3.28383e-15 (g2:anneal-seed/0)
|
||||
[1002400] 1.27109e-14 (g2:anneal-seed/11)
|
||||
[1004160] 1.27122e-14 (g2:core_undivide noop)
|
||||
[1004960] 1.27133e-14 (g2:core_undivide noop)
|
||||
[1005440] 1.27141e-14 (g2:crossover rl<->rl)
|
||||
[1006400] 2.54301e-14 (g2:core_undivide noop)
|
||||
[1008960] 2.54321e-14 (g2:swap 0/llllr)
|
||||
[1009760] 2.54342e-14 (g2:swap 1/llrlr)
|
||||
[1009920] 2.54547e-14 (g2:undivide 0/rlr)
|
||||
[1022960] 2.54569e-14 (g2:core_undivide noop)
|
||||
[1026080] 5.14279e-14 (g2:rotate 0/lrlrr)
|
||||
[1028720] 5.15142e-14 (g2:core_undivide noop)
|
||||
[1029040] 5.15186e-14 (g2:core_undivide noop)
|
||||
[1030000] 5.15297e-14 (g2:swap 1/llrll)
|
||||
[1031760] 5.15349e-14 (g2:core_undivide noop)
|
||||
[1032480] 5.20851e-14 (g2:divide 1/llrlrl)
|
||||
[1038160] 5.26944e-14 (g2:core_undivide noop)
|
||||
[1040160] 5.32798e-14 (g2:crossover rrlrrl<->rrlrrl)
|
||||
[1047040] 1.03522e-13 (g2:divide 1/llrlrl)
|
||||
[1054000] 3.8649e-13 (g2:divide 0/rrlrrl)
|
||||
[1054320] 3.88486e-13 (g2:core_undivide noop)
|
||||
[1065040] 3.89607e-13 (g2:divide 1/lrrr)
|
||||
[1066960] 3.89689e-13 (g2:level_retype 0/lrrr<->1/rllr)
|
||||
[1069840] 3.97558e-13 (g2:swap 1/llrlrl)
|
||||
[1071840] 4.01654e-13 (g2:core_undivide noop)
|
||||
[1074960] 2.66422e-11 (g2:level_retype 1/lrlrrr<->0/rlrl)
|
||||
[1079760] 2.67443e-11 (g2:swap 1/llrll)
|
||||
[1090480] 2.67755e-11 (g2:core_undivide noop)
|
||||
[1095840] 2.84823e-11 (g2:divide 1/rrlr)
|
||||
[1106080] 2.85064e-11 (g2:core_undivide noop)
|
||||
[1242160] 1.10468e-10 (g2:level_retype 0/rrlllr<->1/lrlrl)
|
||||
[1261840] 1.13005e-10 (g2:rotate 0/lrlrr)
|
||||
[1294080] 2.25842e-10 (g2:level_retype 1/llrlrll<->0/rrlrrll)
|
||||
[1304880] 4.3164e-10 (g2:swap 0/rlr)
|
||||
[1346880] 4.36981e-10 (g2:rotate 0/lrlrr)
|
||||
[1359680] 4.40945e-10 (g2:swap 1/llrlrl)
|
||||
[1381840] 9.00576e-10 (g2:divide 0/lllr)
|
||||
[1449040] 9.20992e-10 (g2:rotate 0/lrlrr)
|
||||
[1500200] 1.79588e-12 (polish:anneal-seed/0)
|
||||
[1504800] 1.79593e-12 (polish:place_missing noop)
|
||||
[1515360] 1.79623e-12 (polish:rotate 0/rrlrr)
|
||||
[1536240] 3.50817e-12 (polish:level_retype 1/llrrr<->0/rrlrl)
|
||||
[1603120] 3.52062e-12 (polish:undivide 1/rrrl)
|
||||
[1623200] 1.26003e-11 (polish:crossover llllrlr<->rrrrr)
|
||||
[1627040] 1.26851e-11 (polish:core_undivide noop)
|
||||
[1628800] 1.27772e-11 (polish:core_undivide noop)
|
||||
[1631840] 2.32615e-11 (polish:core_divide rrllr (2 floors))
|
||||
[1634480] 2.33823e-11 (polish:place_missing noop)
|
||||
[1635360] 2.34449e-11 (polish:level_retype 1/rrrr<->0/rrlrrlr)
|
||||
[1640880] 2.34579e-11 (polish:place_missing noop)
|
||||
[1641920] 2.34703e-11 (polish:place_missing noop)
|
||||
[1649040] 2.5583e-11 (polish:level_retype 0/llllrlrl<->1/llrrl)
|
||||
[1665520] 4.43277e-11 (polish:undivide 0/rrllr)
|
||||
[1673760] 4.5392e-11 (polish:divide 1/lrlll)
|
||||
[1674400] 4.55799e-11 (polish:crossover l<->l)
|
||||
[1681440] 4.57067e-11 (polish:place_missing noop)
|
||||
[1699920] 1.82608e-10 (polish:level_retype 0/rrlrl<->1/rrllrr)
|
||||
[1701600] 1.83115e-10 (polish:core_undivide noop)
|
||||
[1705360] 1.83224e-10 (polish:swap 1/lrrll)
|
||||
[1706960] 1.84394e-10 (polish:place_missing noop)
|
||||
[1707280] 1.85542e-10 (polish:place_missing noop)
|
||||
[1711360] 1.85715e-10 (polish:undivide 0/lllr)
|
||||
[1894320] 1.85916e-10 (polish:rotate 0/lrlrr)
|
||||
[1895200] 1.87069e-10 (polish:place_missing noop)
|
||||
[1896640] 1.87243e-10 (polish:place_missing noop)
|
||||
[1929680] 1.95082e-10 (polish:level_retype 0/lrlrrr<->1/llrlrll)
|
||||
[2031200] 7.98394e-10 (polish:level_retype 0/llllrlrl<->1/llrlrll)
|
||||
[2117520] 8.06466e-10 (polish:undivide 0/lrll)
|
||||
[2297200] 8.47009e-10 (polish:level_retype 1/llrr<->0/lrrr)
|
||||
[2346480] 8.84037e-10 (polish:level_retype 1/lrlrrl<->0/rrlrrll)
|
||||
[2469760] 8.94046e-10 (polish:rotate 1/llrlrl)
|
||||
[2583680] 1.60805e-09 (polish:swap 0/llllrlr)
|
||||
[2698960] 6.4322e-09 (polish:level_retype 0/rrrrrl<->1/lrlrrl)
|
||||
[2857200] 1.21534e-08 (polish:crossover rlr<->llllrlr)
|
||||
[2953360] 1.25851e-08 (polish:swap 1/lrrll)
|
||||
[2954560] 1.25997e-08 (polish:place_missing noop)
|
||||
[2955440] 1.26006e-08 (polish:place_missing noop)
|
||||
[2965600] 1.26006e-08 (polish:undivide 0/lllr)
|
||||
[2992400] 1.26278e-08 (polish:undivide 1/llrlrll)
|
||||
written : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-anneal-3M.dom
|
||||
102
examples/harbor-house/evolve-unfold-2.log
Normal file
102
examples/harbor-house/evolve-unfold-2.log
Normal file
|
|
@ -0,0 +1,102 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-unfold.dom
|
||||
programme : harbor-house
|
||||
budget : 2200000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 1
|
||||
rng seed : 0
|
||||
leaf sharing : False (factor=3)
|
||||
superpose : False
|
||||
output : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-unfold.dom
|
||||
[ 200 evals] best 4.51297e-07 (fails 18) via seed
|
||||
[116920 evals] best 4.58937e-07 (fails 18) via level_retype 0/rrl<->1/rrrr
|
||||
[117400 evals] best 4.59593e-07 (fails 18) via place_missing noop
|
||||
[118680 evals] best 4.59745e-07 (fails 18) via crossover rl<->rl
|
||||
[118840 evals] best 4.59956e-07 (fails 18) via crossover lrrlrrl<->rlrlr
|
||||
[119080 evals] best 4.60039e-07 (fails 18) via level_compound_fix st2: lvl0 → lvl1/rllr + insert st2 into llrlll/lvl1
|
||||
[119320 evals] best 4.6052e-07 (fails 18) via crossover rlllrrl<->rrrll
|
||||
[121800 evals] best 4.607e-07 (fails 18) via crossover lrrlrl<->rlrr
|
||||
[122440 evals] best 4.60858e-07 (fails 18) via core_undivide noop
|
||||
[122840 evals] best 4.60995e-07 (fails 18) via core_undivide noop
|
||||
[155800 evals] best 4.60996e-07 (fails 18) via core_undivide noop
|
||||
[208680 evals] best 4.62556e-07 (fails 18) via rotate 0/lrrlrr
|
||||
[212120 evals] best 4.62561e-07 (fails 18) via core_undivide noop
|
||||
[219960 evals] best 4.62609e-07 (fails 18) via rotate 0/lrlr
|
||||
[293960 evals] best 4.62609e-07 (fails 18) via divide 0/rllr
|
||||
[394120 evals] best 4.64255e-07 (fails 18) via crossover lrr<->lrr
|
||||
[724200 evals] best 4.64744e-07 (fails 18) via level_retype 1/lrrlrr<->0/rrl
|
||||
[761640 evals] best 4.64933e-07 (fails 18) via divide 0/lrrlrl
|
||||
[766280 evals] best 4.64992e-07 (fails 18) via place_missing noop
|
||||
[769560 evals] best 4.65067e-07 (fails 18) via place_missing noop
|
||||
[770920 evals] best 4.65088e-07 (fails 18) via level_fix st2: lvl0/llrr → lvl1/rllr
|
||||
[822680 evals] best 4.77975e-07 (fails 18) via level_retype 0/llrr<->1/llll
|
||||
[826280 evals] best 9.39855e-07 (fails 17) via level_retype 1/lrrll<->0/rrl
|
||||
[835400 evals] best 9.4021e-07 (fails 17) via rotate 0/rlrl
|
||||
[856520 evals] best 1.12377e-06 (fails 17) via swap 0/llr
|
||||
[858120 evals] best 1.12983e-06 (fails 17) via divide 1/llrlllr
|
||||
[862600 evals] best 1.13527e-06 (fails 17) via core_undivide noop
|
||||
[868600 evals] best 1.13594e-06 (fails 17) via level_retype 0/rllr<->1/llll
|
||||
[942600 evals] best 1.15623e-06 (fails 17) via swap 0/rlllrr
|
||||
[1054920 evals] best 1.15695e-06 (fails 17) via swap 1/lrrrl
|
||||
[1200760 evals] best 1.20729e-06 (fails 17) via level_retype 1/lrll<->0/rrl
|
||||
[1209240 evals] best 1.20801e-06 (fails 17) via crossover rlllr<->rlllr
|
||||
[1495480 evals] best 2.38115e-06 (fails 16) via divide 0/rllr
|
||||
[1571720 evals] best 2.38261e-06 (fails 16) via crossover rlllrr<->rlllrr
|
||||
[1606120 evals] best 2.38363e-06 (fails 16) via rotate 0/rlrl
|
||||
[1702040 evals] best 4.04178e-06 (fails 15) via divide 0/llrr
|
||||
[1704520 evals] best 4.08878e-06 (fails 15) via divide 0/llllrll
|
||||
[1706040 evals] best 4.13629e-06 (fails 15) via place_missing noop
|
||||
[1706600 evals] best 4.18784e-06 (fails 15) via place_missing noop
|
||||
[1707480 evals] best 4.19055e-06 (fails 15) via core_undivide noop
|
||||
[1731800 evals] best 4.19125e-06 (fails 15) via core_undivide noop
|
||||
[1791400 evals] best 4.19234e-06 (fails 15) via rotate 0/rlrl
|
||||
|
||||
--- done ---
|
||||
elapsed : 155812.8s
|
||||
evals : 2200040 across 27499 topologies
|
||||
best : 4.19234e-06 (15 fails) via rotate 0/rlrl
|
||||
|
||||
improvement history:
|
||||
[ 200] 4.51297e-07 (seed)
|
||||
[116920] 4.58937e-07 (level_retype 0/rrl<->1/rrrr)
|
||||
[117400] 4.59593e-07 (place_missing noop)
|
||||
[118680] 4.59745e-07 (crossover rl<->rl)
|
||||
[118840] 4.59956e-07 (crossover lrrlrrl<->rlrlr)
|
||||
[119080] 4.60039e-07 (level_compound_fix st2: lvl0 → lvl1/rllr + insert st2 into llrlll/lvl1)
|
||||
[119320] 4.6052e-07 (crossover rlllrrl<->rrrll)
|
||||
[121800] 4.607e-07 (crossover lrrlrl<->rlrr)
|
||||
[122440] 4.60858e-07 (core_undivide noop)
|
||||
[122840] 4.60995e-07 (core_undivide noop)
|
||||
[155800] 4.60996e-07 (core_undivide noop)
|
||||
[208680] 4.62556e-07 (rotate 0/lrrlrr)
|
||||
[212120] 4.62561e-07 (core_undivide noop)
|
||||
[219960] 4.62609e-07 (rotate 0/lrlr)
|
||||
[293960] 4.62609e-07 (divide 0/rllr)
|
||||
[394120] 4.64255e-07 (crossover lrr<->lrr)
|
||||
[724200] 4.64744e-07 (level_retype 1/lrrlrr<->0/rrl)
|
||||
[761640] 4.64933e-07 (divide 0/lrrlrl)
|
||||
[766280] 4.64992e-07 (place_missing noop)
|
||||
[769560] 4.65067e-07 (place_missing noop)
|
||||
[770920] 4.65088e-07 (level_fix st2: lvl0/llrr → lvl1/rllr)
|
||||
[822680] 4.77975e-07 (level_retype 0/llrr<->1/llll)
|
||||
[826280] 9.39855e-07 (level_retype 1/lrrll<->0/rrl)
|
||||
[835400] 9.4021e-07 (rotate 0/rlrl)
|
||||
[856520] 1.12377e-06 (swap 0/llr)
|
||||
[858120] 1.12983e-06 (divide 1/llrlllr)
|
||||
[862600] 1.13527e-06 (core_undivide noop)
|
||||
[868600] 1.13594e-06 (level_retype 0/rllr<->1/llll)
|
||||
[942600] 1.15623e-06 (swap 0/rlllrr)
|
||||
[1054920] 1.15695e-06 (swap 1/lrrrl)
|
||||
[1200760] 1.20729e-06 (level_retype 1/lrll<->0/rrl)
|
||||
[1209240] 1.20801e-06 (crossover rlllr<->rlllr)
|
||||
[1495480] 2.38115e-06 (divide 0/rllr)
|
||||
[1571720] 2.38261e-06 (crossover rlllrr<->rlllrr)
|
||||
[1606120] 2.38363e-06 (rotate 0/rlrl)
|
||||
[1702040] 4.04178e-06 (divide 0/llrr)
|
||||
[1704520] 4.08878e-06 (divide 0/llllrll)
|
||||
[1706040] 4.13629e-06 (place_missing noop)
|
||||
[1706600] 4.18784e-06 (place_missing noop)
|
||||
[1707480] 4.19055e-06 (core_undivide noop)
|
||||
[1731800] 4.19125e-06 (core_undivide noop)
|
||||
[1791400] 4.19234e-06 (rotate 0/rlrl)
|
||||
written : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-unfold.dom
|
||||
305
examples/harbor-house/evolve-unfold.log
Normal file
305
examples/harbor-house/evolve-unfold.log
Normal file
|
|
@ -0,0 +1,305 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/harbor-house/materialised-3M.dom
|
||||
programme : harbor-house
|
||||
budget : 3000000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 1
|
||||
rng seed : 0
|
||||
leaf sharing : False (factor=3)
|
||||
superpose : False
|
||||
output : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-unfold.dom
|
||||
[ 200 evals] best 2.99136e-19 (fails 58) via seed
|
||||
[ 280 evals] best 3.01967e-19 (fails 58) via place_missing noop
|
||||
[ 760 evals] best 3.03178e-19 (fails 58) via level_fix noop
|
||||
[ 1080 evals] best 1.22315e-18 (fails 56) via undivide 1/rlrll
|
||||
[ 1960 evals] best 4.88154e-18 (fails 54) via undivide 1/lllr
|
||||
[ 4040 evals] best 4.88961e-18 (fails 54) via level_compound_fix noop
|
||||
[ 7320 evals] best 4.99058e-18 (fails 54) via divide 0/rllr
|
||||
[ 9560 evals] best 4.99975e-18 (fails 54) via undivide 0/llllr
|
||||
[ 10680 evals] best 5.01755e-18 (fails 54) via place_missing noop
|
||||
[ 11480 evals] best 9.99951e-18 (fails 53) via retype 0/rllrl->st1
|
||||
[ 12840 evals] best 1.03122e-17 (fails 53) via crossover rrl<->lrrlrr
|
||||
[ 12920 evals] best 4.06483e-17 (fails 51) via retype 0/rrrr->C
|
||||
[ 16760 evals] best 7.97622e-17 (fails 50) via undivide 1/rlrll
|
||||
[ 17800 evals] best 8.02921e-17 (fails 50) via rotate 0/llllr
|
||||
[ 18120 evals] best 8.08633e-17 (fails 50) via swap 0/lrlr
|
||||
[ 19160 evals] best 8.14312e-17 (fails 50) via level_fix noop
|
||||
[ 22120 evals] best 1.21571e-15 (fails 46) via swap 0/lrrlr
|
||||
[ 23640 evals] best 1.22179e-15 (fails 46) via level_fix noop
|
||||
[ 30040 evals] best 1.22195e-15 (fails 46) via level_compound_fix noop
|
||||
[ 30600 evals] best 1.22269e-15 (fails 46) via core_undivide noop
|
||||
[ 31160 evals] best 1.22417e-15 (fails 46) via level_compound_fix noop
|
||||
[ 31400 evals] best 1.22707e-15 (fails 46) via level_compound_fix noop
|
||||
[ 31560 evals] best 1.22821e-15 (fails 46) via place_missing noop
|
||||
[ 31800 evals] best 1.23179e-15 (fails 46) via place_missing noop
|
||||
[ 32680 evals] best 1.23254e-15 (fails 46) via level_fix noop
|
||||
[ 33560 evals] best 1.23401e-15 (fails 46) via core_undivide noop
|
||||
[ 33880 evals] best 1.23468e-15 (fails 46) via place_missing noop
|
||||
[ 34360 evals] best 4.40771e-15 (fails 44) via level_retype 0/rlllrl<->1/lrlrr
|
||||
[ 37320 evals] best 4.45896e-15 (fails 44) via level_fix noop
|
||||
[ 38280 evals] best 4.5458e-15 (fails 44) via undivide 1/llrr
|
||||
[ 39080 evals] best 9.29164e-15 (fails 43) via level_compound_fix noop
|
||||
[ 42040 evals] best 9.42528e-15 (fails 43) via core_undivide noop
|
||||
[ 43160 evals] best 9.93886e-15 (fails 43) via level_fix noop
|
||||
[ 44680 evals] best 9.96278e-15 (fails 43) via level_compound_fix noop
|
||||
[ 47640 evals] best 9.97578e-15 (fails 43) via level_fix noop
|
||||
[ 47800 evals] best 9.97622e-15 (fails 43) via place_missing noop
|
||||
[ 48040 evals] best 9.99008e-15 (fails 43) via place_missing noop
|
||||
[ 48920 evals] best 9.99411e-15 (fails 43) via level_fix noop
|
||||
[ 49720 evals] best 1.03773e-14 (fails 43) via level_fix noop
|
||||
[ 51560 evals] best 1.03962e-14 (fails 43) via level_fix noop
|
||||
[ 52040 evals] best 1.03962e-14 (fails 43) via crossover llllrl<->llllrr
|
||||
[ 53400 evals] best 1.77761e-14 (fails 42) via level_retype 0/lrlrl<->1/lllr
|
||||
[ 53480 evals] best 1.77762e-14 (fails 42) via level_fix noop
|
||||
[ 53640 evals] best 1.77763e-14 (fails 42) via rotate 0/llllr
|
||||
[ 56600 evals] best 7.00332e-14 (fails 40) via place_missing r -> lrrrl
|
||||
[ 58760 evals] best 7.07195e-14 (fails 40) via level_fix noop
|
||||
[ 59240 evals] best 7.10585e-14 (fails 40) via level_fix noop
|
||||
[ 59640 evals] best 7.16534e-14 (fails 40) via swap 0/lrlr
|
||||
[ 63640 evals] best 5.51149e-13 (fails 37) via level_retype 1/lrrrlr<->0/llrr
|
||||
[ 64120 evals] best 5.51653e-13 (fails 37) via core_undivide noop
|
||||
[ 79880 evals] best 5.84975e-13 (fails 37) via crossover llrl<->rlllrl
|
||||
[ 85720 evals] best 2.46536e-12 (fails 35) via divide 0/rllr
|
||||
[ 86440 evals] best 2.46952e-12 (fails 35) via place_missing noop
|
||||
[ 86760 evals] best 2.47109e-12 (fails 35) via place_missing noop
|
||||
[ 87800 evals] best 2.47704e-12 (fails 35) via level_retype 0/lrrll<->1/llll
|
||||
[ 89320 evals] best 2.47709e-12 (fails 35) via rotate 1/llrll
|
||||
[ 90200 evals] best 2.48831e-12 (fails 35) via core_undivide noop
|
||||
[ 96600 evals] best 2.49053e-12 (fails 35) via level_retype 0/lrll<->1/rlllrr
|
||||
[100200 evals] best 2.49075e-12 (fails 35) via place_missing noop
|
||||
[100440 evals] best 5.49415e-12 (fails 34) via retype 1/llrlll->st1
|
||||
[101240 evals] best 5.51519e-12 (fails 34) via core_undivide noop
|
||||
[102200 evals] best 5.53436e-12 (fails 34) via core_undivide noop
|
||||
[102280 evals] best 2.14555e-11 (fails 32) via level_retype 0/lrll<->1/lllr
|
||||
[108520 evals] best 2.57994e-11 (fails 32) via level_compound_fix ws1: lvl1 → lvl0/llr + insert n into rrrl/lvl0
|
||||
[109560 evals] best 2.5808e-11 (fails 32) via place_missing noop
|
||||
[110360 evals] best 2.59325e-11 (fails 32) via swap 0/rlrlr
|
||||
[111560 evals] best 2.59762e-11 (fails 32) via place_missing noop
|
||||
[112280 evals] best 2.60214e-11 (fails 32) via core_undivide noop
|
||||
[113160 evals] best 2.60487e-11 (fails 32) via rotate 0/rllr
|
||||
[115640 evals] best 2.60965e-11 (fails 32) via crossover lr<->lr
|
||||
[124920 evals] best 2.6127e-11 (fails 32) via place_missing noop
|
||||
[125720 evals] best 2.61617e-11 (fails 32) via place_missing noop
|
||||
[128760 evals] best 2.62337e-11 (fails 32) via swap 0/rlllr
|
||||
[130280 evals] best 2.62639e-11 (fails 32) via core_undivide noop
|
||||
[130520 evals] best 2.63194e-11 (fails 32) via place_missing noop
|
||||
[135080 evals] best 2.63387e-11 (fails 32) via place_missing noop
|
||||
[136520 evals] best 2.6388e-11 (fails 32) via level_retype 0/rrl<->1/rllll
|
||||
[138040 evals] best 2.68627e-11 (fails 32) via swap 0/rlrlr
|
||||
[148680 evals] best 5.4017e-11 (fails 31) via place_missing noop
|
||||
[151160 evals] best 5.41523e-11 (fails 31) via place_missing noop
|
||||
[151560 evals] best 5.41822e-11 (fails 31) via level_retype 1/lrrrlr<->0/lrrlrl
|
||||
[154440 evals] best 5.4205e-11 (fails 31) via core_undivide noop
|
||||
[166760 evals] best 5.57913e-11 (fails 31) via core_undivide noop
|
||||
[167880 evals] best 5.5935e-11 (fails 31) via place_missing noop
|
||||
[168040 evals] best 5.59648e-11 (fails 31) via core_undivide noop
|
||||
[178120 evals] best 5.59873e-11 (fails 31) via place_missing noop
|
||||
[186120 evals] best 2.24215e-10 (fails 29) via undivide 0/rlrlr
|
||||
[189880 evals] best 2.25927e-10 (fails 29) via place_missing noop
|
||||
[194680 evals] best 2.28011e-10 (fails 29) via crossover lrrrr<->llllrr
|
||||
[195640 evals] best 2.33239e-10 (fails 29) via place_missing noop
|
||||
[196280 evals] best 2.34613e-10 (fails 29) via level_retype 1/lllr<->0/rlrr
|
||||
[199080 evals] best 2.35322e-10 (fails 29) via place_missing noop
|
||||
[199480 evals] best 2.35804e-10 (fails 29) via place_missing noop
|
||||
[200760 evals] best 2.36673e-10 (fails 29) via undivide 0/llllrr
|
||||
[201080 evals] best 2.37395e-10 (fails 29) via core_undivide noop
|
||||
[201480 evals] best 4.60074e-10 (fails 28) via crossover llllr<->rlrr
|
||||
[202920 evals] best 1.99463e-09 (fails 26) via level_retype 0/rrrll<->1/rllll
|
||||
[203640 evals] best 1.99916e-09 (fails 26) via core_undivide noop
|
||||
[204600 evals] best 2.00522e-09 (fails 26) via place_missing noop
|
||||
[204920 evals] best 2.00871e-09 (fails 26) via core_undivide noop
|
||||
[206120 evals] best 2.01305e-09 (fails 26) via place_missing noop
|
||||
[208440 evals] best 3.93349e-09 (fails 25) via crossover lrrll<->lrll
|
||||
[227320 evals] best 3.93912e-09 (fails 25) via undivide 1/lrrrl
|
||||
[255400 evals] best 4.01887e-09 (fails 25) via crossover llllrr<->rlrr
|
||||
[255960 evals] best 4.03512e-09 (fails 25) via level_retype 1/llrlll<->0/rllrr
|
||||
[261960 evals] best 4.04022e-09 (fails 25) via place_missing noop
|
||||
[265080 evals] best 4.04521e-09 (fails 25) via core_undivide noop
|
||||
[265720 evals] best 4.05035e-09 (fails 25) via place_missing noop
|
||||
[268600 evals] best 4.05563e-09 (fails 25) via place_missing noop
|
||||
[271320 evals] best 4.06105e-09 (fails 25) via place_missing noop
|
||||
[272680 evals] best 4.0666e-09 (fails 25) via place_missing noop
|
||||
[272840 evals] best 4.07228e-09 (fails 25) via place_missing noop
|
||||
[275160 evals] best 4.07807e-09 (fails 25) via core_undivide noop
|
||||
[280280 evals] best 4.07877e-09 (fails 25) via crossover lrrlrl<->rlrr
|
||||
[284680 evals] best 8.83242e-09 (fails 24) via level_retype 0/llllrl<->1/lrrlrl
|
||||
[284920 evals] best 8.83285e-09 (fails 24) via core_undivide noop
|
||||
[287400 evals] best 8.83313e-09 (fails 24) via place_missing noop
|
||||
[288760 evals] best 8.83334e-09 (fails 24) via swap 0/rlrl
|
||||
[324760 evals] best 8.89227e-09 (fails 24) via swap 0/lrlr
|
||||
[363400 evals] best 8.90188e-09 (fails 24) via swap 0/lrlr
|
||||
[363800 evals] best 9.01895e-09 (fails 24) via swap 1/lrrrl
|
||||
[368440 evals] best 9.047e-09 (fails 24) via rotate 1/llrl
|
||||
[378920 evals] best 9.04743e-09 (fails 24) via place_missing noop
|
||||
[379000 evals] best 9.10808e-09 (fails 24) via swap 0/lrlr
|
||||
[392760 evals] best 9.22733e-09 (fails 24) via swap 1/lrrrl
|
||||
[408840 evals] best 1.66708e-08 (fails 23) via divide 0/rlllrl
|
||||
[410440 evals] best 1.67345e-08 (fails 23) via place_missing noop
|
||||
[418440 evals] best 1.68009e-08 (fails 23) via core_undivide noop
|
||||
[418600 evals] best 1.68677e-08 (fails 23) via core_undivide noop
|
||||
[419080 evals] best 1.69062e-08 (fails 23) via place_missing noop
|
||||
[456760 evals] best 3.38125e-08 (fails 22) via level_retype 0/rllrr<->1/llrlll
|
||||
[508200 evals] best 3.49835e-08 (fails 22) via swap 0/rlllr
|
||||
[551560 evals] best 3.52155e-08 (fails 22) via place_missing noop
|
||||
[560760 evals] best 3.53974e-08 (fails 22) via core_undivide noop
|
||||
[578680 evals] best 3.54026e-08 (fails 22) via rotate 0/lrrlrr
|
||||
[579480 evals] best 3.54182e-08 (fails 22) via place_missing noop
|
||||
[581400 evals] best 3.54231e-08 (fails 22) via crossover lrrlrrl<->rlrll
|
||||
[615720 evals] best 3.59145e-08 (fails 22) via swap 0/rlllrr
|
||||
[627560 evals] best 1.07816e-07 (fails 20) via divide 0/llr
|
||||
[628280 evals] best 1.07831e-07 (fails 20) via core_undivide noop
|
||||
[699800 evals] best 1.09564e-07 (fails 20) via swap 0/rlllrr
|
||||
[736360 evals] best 1.09566e-07 (fails 20) via rotate 0/rlrl
|
||||
[874840 evals] best 4.45103e-07 (fails 18) via level_retype 1/llll<->0/rlllrrl
|
||||
[952040 evals] interrupted — returning best-so-far
|
||||
|
||||
--- interrupted ---
|
||||
elapsed : 66433.5s
|
||||
evals : 952040 across 11899 topologies
|
||||
best : 4.45103e-07 (18 fails) via level_retype 1/llll<->0/rlllrrl
|
||||
|
||||
improvement history:
|
||||
[ 200] 2.99136e-19 (seed)
|
||||
[ 280] 3.01967e-19 (place_missing noop)
|
||||
[ 760] 3.03178e-19 (level_fix noop)
|
||||
[ 1080] 1.22315e-18 (undivide 1/rlrll)
|
||||
[ 1960] 4.88154e-18 (undivide 1/lllr)
|
||||
[ 4040] 4.88961e-18 (level_compound_fix noop)
|
||||
[ 7320] 4.99058e-18 (divide 0/rllr)
|
||||
[ 9560] 4.99975e-18 (undivide 0/llllr)
|
||||
[ 10680] 5.01755e-18 (place_missing noop)
|
||||
[ 11480] 9.99951e-18 (retype 0/rllrl->st1)
|
||||
[ 12840] 1.03122e-17 (crossover rrl<->lrrlrr)
|
||||
[ 12920] 4.06483e-17 (retype 0/rrrr->C)
|
||||
[ 16760] 7.97622e-17 (undivide 1/rlrll)
|
||||
[ 17800] 8.02921e-17 (rotate 0/llllr)
|
||||
[ 18120] 8.08633e-17 (swap 0/lrlr)
|
||||
[ 19160] 8.14312e-17 (level_fix noop)
|
||||
[ 22120] 1.21571e-15 (swap 0/lrrlr)
|
||||
[ 23640] 1.22179e-15 (level_fix noop)
|
||||
[ 30040] 1.22195e-15 (level_compound_fix noop)
|
||||
[ 30600] 1.22269e-15 (core_undivide noop)
|
||||
[ 31160] 1.22417e-15 (level_compound_fix noop)
|
||||
[ 31400] 1.22707e-15 (level_compound_fix noop)
|
||||
[ 31560] 1.22821e-15 (place_missing noop)
|
||||
[ 31800] 1.23179e-15 (place_missing noop)
|
||||
[ 32680] 1.23254e-15 (level_fix noop)
|
||||
[ 33560] 1.23401e-15 (core_undivide noop)
|
||||
[ 33880] 1.23468e-15 (place_missing noop)
|
||||
[ 34360] 4.40771e-15 (level_retype 0/rlllrl<->1/lrlrr)
|
||||
[ 37320] 4.45896e-15 (level_fix noop)
|
||||
[ 38280] 4.5458e-15 (undivide 1/llrr)
|
||||
[ 39080] 9.29164e-15 (level_compound_fix noop)
|
||||
[ 42040] 9.42528e-15 (core_undivide noop)
|
||||
[ 43160] 9.93886e-15 (level_fix noop)
|
||||
[ 44680] 9.96278e-15 (level_compound_fix noop)
|
||||
[ 47640] 9.97578e-15 (level_fix noop)
|
||||
[ 47800] 9.97622e-15 (place_missing noop)
|
||||
[ 48040] 9.99008e-15 (place_missing noop)
|
||||
[ 48920] 9.99411e-15 (level_fix noop)
|
||||
[ 49720] 1.03773e-14 (level_fix noop)
|
||||
[ 51560] 1.03962e-14 (level_fix noop)
|
||||
[ 52040] 1.03962e-14 (crossover llllrl<->llllrr)
|
||||
[ 53400] 1.77761e-14 (level_retype 0/lrlrl<->1/lllr)
|
||||
[ 53480] 1.77762e-14 (level_fix noop)
|
||||
[ 53640] 1.77763e-14 (rotate 0/llllr)
|
||||
[ 56600] 7.00332e-14 (place_missing r -> lrrrl)
|
||||
[ 58760] 7.07195e-14 (level_fix noop)
|
||||
[ 59240] 7.10585e-14 (level_fix noop)
|
||||
[ 59640] 7.16534e-14 (swap 0/lrlr)
|
||||
[ 63640] 5.51149e-13 (level_retype 1/lrrrlr<->0/llrr)
|
||||
[ 64120] 5.51653e-13 (core_undivide noop)
|
||||
[ 79880] 5.84975e-13 (crossover llrl<->rlllrl)
|
||||
[ 85720] 2.46536e-12 (divide 0/rllr)
|
||||
[ 86440] 2.46952e-12 (place_missing noop)
|
||||
[ 86760] 2.47109e-12 (place_missing noop)
|
||||
[ 87800] 2.47704e-12 (level_retype 0/lrrll<->1/llll)
|
||||
[ 89320] 2.47709e-12 (rotate 1/llrll)
|
||||
[ 90200] 2.48831e-12 (core_undivide noop)
|
||||
[ 96600] 2.49053e-12 (level_retype 0/lrll<->1/rlllrr)
|
||||
[100200] 2.49075e-12 (place_missing noop)
|
||||
[100440] 5.49415e-12 (retype 1/llrlll->st1)
|
||||
[101240] 5.51519e-12 (core_undivide noop)
|
||||
[102200] 5.53436e-12 (core_undivide noop)
|
||||
[102280] 2.14555e-11 (level_retype 0/lrll<->1/lllr)
|
||||
[108520] 2.57994e-11 (level_compound_fix ws1: lvl1 → lvl0/llr + insert n into rrrl/lvl0)
|
||||
[109560] 2.5808e-11 (place_missing noop)
|
||||
[110360] 2.59325e-11 (swap 0/rlrlr)
|
||||
[111560] 2.59762e-11 (place_missing noop)
|
||||
[112280] 2.60214e-11 (core_undivide noop)
|
||||
[113160] 2.60487e-11 (rotate 0/rllr)
|
||||
[115640] 2.60965e-11 (crossover lr<->lr)
|
||||
[124920] 2.6127e-11 (place_missing noop)
|
||||
[125720] 2.61617e-11 (place_missing noop)
|
||||
[128760] 2.62337e-11 (swap 0/rlllr)
|
||||
[130280] 2.62639e-11 (core_undivide noop)
|
||||
[130520] 2.63194e-11 (place_missing noop)
|
||||
[135080] 2.63387e-11 (place_missing noop)
|
||||
[136520] 2.6388e-11 (level_retype 0/rrl<->1/rllll)
|
||||
[138040] 2.68627e-11 (swap 0/rlrlr)
|
||||
[148680] 5.4017e-11 (place_missing noop)
|
||||
[151160] 5.41523e-11 (place_missing noop)
|
||||
[151560] 5.41822e-11 (level_retype 1/lrrrlr<->0/lrrlrl)
|
||||
[154440] 5.4205e-11 (core_undivide noop)
|
||||
[166760] 5.57913e-11 (core_undivide noop)
|
||||
[167880] 5.5935e-11 (place_missing noop)
|
||||
[168040] 5.59648e-11 (core_undivide noop)
|
||||
[178120] 5.59873e-11 (place_missing noop)
|
||||
[186120] 2.24215e-10 (undivide 0/rlrlr)
|
||||
[189880] 2.25927e-10 (place_missing noop)
|
||||
[194680] 2.28011e-10 (crossover lrrrr<->llllrr)
|
||||
[195640] 2.33239e-10 (place_missing noop)
|
||||
[196280] 2.34613e-10 (level_retype 1/lllr<->0/rlrr)
|
||||
[199080] 2.35322e-10 (place_missing noop)
|
||||
[199480] 2.35804e-10 (place_missing noop)
|
||||
[200760] 2.36673e-10 (undivide 0/llllrr)
|
||||
[201080] 2.37395e-10 (core_undivide noop)
|
||||
[201480] 4.60074e-10 (crossover llllr<->rlrr)
|
||||
[202920] 1.99463e-09 (level_retype 0/rrrll<->1/rllll)
|
||||
[203640] 1.99916e-09 (core_undivide noop)
|
||||
[204600] 2.00522e-09 (place_missing noop)
|
||||
[204920] 2.00871e-09 (core_undivide noop)
|
||||
[206120] 2.01305e-09 (place_missing noop)
|
||||
[208440] 3.93349e-09 (crossover lrrll<->lrll)
|
||||
[227320] 3.93912e-09 (undivide 1/lrrrl)
|
||||
[255400] 4.01887e-09 (crossover llllrr<->rlrr)
|
||||
[255960] 4.03512e-09 (level_retype 1/llrlll<->0/rllrr)
|
||||
[261960] 4.04022e-09 (place_missing noop)
|
||||
[265080] 4.04521e-09 (core_undivide noop)
|
||||
[265720] 4.05035e-09 (place_missing noop)
|
||||
[268600] 4.05563e-09 (place_missing noop)
|
||||
[271320] 4.06105e-09 (place_missing noop)
|
||||
[272680] 4.0666e-09 (place_missing noop)
|
||||
[272840] 4.07228e-09 (place_missing noop)
|
||||
[275160] 4.07807e-09 (core_undivide noop)
|
||||
[280280] 4.07877e-09 (crossover lrrlrl<->rlrr)
|
||||
[284680] 8.83242e-09 (level_retype 0/llllrl<->1/lrrlrl)
|
||||
[284920] 8.83285e-09 (core_undivide noop)
|
||||
[287400] 8.83313e-09 (place_missing noop)
|
||||
[288760] 8.83334e-09 (swap 0/rlrl)
|
||||
[324760] 8.89227e-09 (swap 0/lrlr)
|
||||
[363400] 8.90188e-09 (swap 0/lrlr)
|
||||
[363800] 9.01895e-09 (swap 1/lrrrl)
|
||||
[368440] 9.047e-09 (rotate 1/llrl)
|
||||
[378920] 9.04743e-09 (place_missing noop)
|
||||
[379000] 9.10808e-09 (swap 0/lrlr)
|
||||
[392760] 9.22733e-09 (swap 1/lrrrl)
|
||||
[408840] 1.66708e-08 (divide 0/rlllrl)
|
||||
[410440] 1.67345e-08 (place_missing noop)
|
||||
[418440] 1.68009e-08 (core_undivide noop)
|
||||
[418600] 1.68677e-08 (core_undivide noop)
|
||||
[419080] 1.69062e-08 (place_missing noop)
|
||||
[456760] 3.38125e-08 (level_retype 0/rllrr<->1/llrlll)
|
||||
[508200] 3.49835e-08 (swap 0/rlllr)
|
||||
[551560] 3.52155e-08 (place_missing noop)
|
||||
[560760] 3.53974e-08 (core_undivide noop)
|
||||
[578680] 3.54026e-08 (rotate 0/lrrlrr)
|
||||
[579480] 3.54182e-08 (place_missing noop)
|
||||
[581400] 3.54231e-08 (crossover lrrlrrl<->rlrll)
|
||||
[615720] 3.59145e-08 (swap 0/rlllrr)
|
||||
[627560] 1.07816e-07 (divide 0/llr)
|
||||
[628280] 1.07831e-07 (core_undivide noop)
|
||||
[699800] 1.09564e-07 (swap 0/rlllrr)
|
||||
[736360] 1.09566e-07 (rotate 0/rlrl)
|
||||
[874840] 4.45103e-07 (level_retype 1/llll<->0/rlllrrl)
|
||||
written : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-unfold.dom
|
||||
479
examples/harbor-house/evolve-warmshare.log
Normal file
479
examples/harbor-house/evolve-warmshare.log
Normal file
|
|
@ -0,0 +1,479 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-3M.dom
|
||||
programme : harbor-house
|
||||
budget : 3000000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 1
|
||||
rng seed : 0
|
||||
leaf sharing : False (factor=3)
|
||||
superpose : False
|
||||
output : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-warmshare.dom
|
||||
[ 200 evals] best 7.13373e-29 (fails 90) via seed
|
||||
[ 680 evals] best 7.13374e-29 (fails 90) via level_fix noop
|
||||
[ 1800 evals] best 1.43878e-28 (fails 89) via place_missing r -> lrrrl
|
||||
[ 4200 evals] best 2.61821e-28 (fails 88) via place_missing t -> rllrr
|
||||
[ 4360 evals] best 1.39503e-27 (fails 86) via core_divide rlrr (2 floors)
|
||||
[ 4440 evals] best 2.20221e-27 (fails 85) via divide 0/rllrl
|
||||
[ 7560 evals] best 3.47487e-27 (fails 85) via core_undivide noop
|
||||
[ 8040 evals] best 4.94517e-26 (fails 81) via retype 0/rrl->r
|
||||
[ 9000 evals] best 3.79585e-25 (fails 78) via place_missing r -> lrrrl
|
||||
[ 9720 evals] best 3.93644e-25 (fails 78) via place_missing n -> rllr
|
||||
[ 10920 evals] best 6.00163e-24 (fails 74) via place_missing r -> lrrrl
|
||||
[ 12120 evals] best 6.11587e-24 (fails 74) via level_fix noop
|
||||
[ 12920 evals] best 6.29222e-24 (fails 74) via core_undivide noop
|
||||
[ 15000 evals] best 1.71947e-23 (fails 72) via place_missing m -> lrrl
|
||||
[ 15480 evals] best 1.73099e-23 (fails 72) via level_fix noop
|
||||
[ 19560 evals] best 6.08444e-23 (fails 70) via place_missing n -> rllrrr
|
||||
[ 27640 evals] best 6.14994e-23 (fails 70) via level_fix noop
|
||||
[ 28520 evals] best 6.20043e-23 (fails 70) via level_fix noop
|
||||
[ 29000 evals] best 6.23843e-23 (fails 70) via core_undivide noop
|
||||
[ 30120 evals] best 6.25916e-23 (fails 70) via core_undivide noop
|
||||
[ 30760 evals] best 6.26442e-23 (fails 70) via core_undivide noop
|
||||
[ 31320 evals] best 1.23029e-22 (fails 70) via undivide 0/rllrrr
|
||||
[ 31640 evals] best 1.85407e-21 (fails 65) via crossover rrl<->rlrr
|
||||
[ 33800 evals] best 1.8746e-21 (fails 65) via core_undivide noop
|
||||
[ 34040 evals] best 1.88627e-21 (fails 65) via core_undivide noop
|
||||
[ 35880 evals] best 1.89096e-21 (fails 65) via core_undivide noop
|
||||
[ 36200 evals] best 8.63218e-21 (fails 64) via swap 1/lrrrr
|
||||
[ 40680 evals] best 8.70626e-21 (fails 64) via level_compound_fix noop
|
||||
[ 41080 evals] best 1.67189e-20 (fails 63) via place_missing r -> llrlrl
|
||||
[ 41640 evals] best 1.67761e-20 (fails 63) via level_compound_fix noop
|
||||
[ 44920 evals] best 7.29193e-20 (fails 61) via crossover lrrlr<->rllrl
|
||||
[ 45960 evals] best 7.31576e-20 (fails 61) via level_compound_fix noop
|
||||
[ 47080 evals] best 1.36215e-19 (fails 60) via place_missing t -> rrrr
|
||||
[ 47480 evals] best 1.36247e-19 (fails 60) via level_fix noop
|
||||
[ 48360 evals] best 1.36406e-19 (fails 60) via level_fix noop
|
||||
[ 48600 evals] best 1.36485e-19 (fails 60) via crossover lrrlr<->rllrl
|
||||
[ 49160 evals] best 1.36534e-19 (fails 60) via level_compound_fix noop
|
||||
[ 50760 evals] best 1.36993e-19 (fails 60) via rotate 0/lrlr
|
||||
[ 57880 evals] best 1.37008e-19 (fails 60) via level_fix noop
|
||||
[ 57960 evals] best 1.37024e-19 (fails 60) via core_undivide noop
|
||||
[ 59320 evals] best 1.37041e-19 (fails 60) via level_fix noop
|
||||
[ 63160 evals] best 1.37057e-19 (fails 60) via core_undivide noop
|
||||
[ 63320 evals] best 1.37735e-19 (fails 60) via rotate 0/lrr
|
||||
[ 66600 evals] best 2.94829e-19 (fails 59) via level_retype 1/lrrrlrl<->0/llllrl
|
||||
[ 71800 evals] best 2.94872e-19 (fails 59) via core_undivide noop
|
||||
[ 74280 evals] best 5.90024e-19 (fails 58) via divide 0/rrrrr
|
||||
[ 75240 evals] best 7.62368e-19 (fails 57) via level_retype 0/rlll<->1/rlrlr
|
||||
[ 81320 evals] best 7.69032e-19 (fails 57) via level_retype 1/rlrlll<->0/rrrrl
|
||||
[ 83160 evals] best 1.03682e-18 (fails 57) via level_retype 1/lrlrl<->0/rllrrr
|
||||
[ 83480 evals] best 1.04208e-18 (fails 57) via rotate 0/rrrrr
|
||||
[ 89320 evals] best 1.04721e-18 (fails 57) via core_undivide noop
|
||||
[ 90760 evals] best 1.05258e-18 (fails 57) via core_undivide noop
|
||||
[ 92040 evals] best 1.22112e-18 (fails 57) via rotate 0/rrrr
|
||||
[ 96200 evals] best 1.54735e-18 (fails 56) via crossover lrrrr<->llllrl
|
||||
[ 98680 evals] best 1.54777e-18 (fails 56) via place_missing noop
|
||||
[ 99640 evals] best 1.54818e-18 (fails 56) via core_undivide noop
|
||||
[100600 evals] best 1.54858e-18 (fails 56) via core_undivide noop
|
||||
[102920 evals] best 1.54897e-18 (fails 56) via place_missing noop
|
||||
[103560 evals] best 1.54911e-18 (fails 56) via place_missing noop
|
||||
[104360 evals] best 1.62548e-18 (fails 56) via undivide 0/lrlr
|
||||
[105800 evals] best 1.62563e-18 (fails 56) via level_retype 0/rlrrr<->1/lrrrrl
|
||||
[106040 evals] best 1.62578e-18 (fails 56) via place_missing noop
|
||||
[109000 evals] best 1.62595e-18 (fails 56) via place_missing noop
|
||||
[109240 evals] best 1.62612e-18 (fails 56) via place_missing noop
|
||||
[109400 evals] best 1.6263e-18 (fails 56) via place_missing noop
|
||||
[110440 evals] best 1.62644e-18 (fails 56) via core_undivide noop
|
||||
[110520 evals] best 1.62653e-18 (fails 56) via crossover lrlr<->lrlrl
|
||||
[111160 evals] best 3.25423e-18 (fails 55) via divide 0/rrrrr
|
||||
[115320 evals] best 3.25464e-18 (fails 55) via place_missing noop
|
||||
[117800 evals] best 3.25582e-18 (fails 55) via level_retype 1/lrrrrr<->0/lrrrr
|
||||
[118360 evals] best 3.25868e-18 (fails 55) via place_missing noop
|
||||
[119640 evals] best 3.74625e-18 (fails 55) via place_missing r -> lrrl
|
||||
[120280 evals] best 3.74647e-18 (fails 55) via place_missing noop
|
||||
[120360 evals] best 3.74667e-18 (fails 55) via place_missing noop
|
||||
[123320 evals] best 3.74676e-18 (fails 55) via core_undivide noop
|
||||
[123720 evals] best 6.40395e-18 (fails 54) via divide 1/llrr
|
||||
[123880 evals] best 2.88855e-17 (fails 52) via place_missing r -> lrrl
|
||||
[124840 evals] best 2.89001e-17 (fails 52) via level_retype 0/lrrrr<->1/llrlrll
|
||||
[126600 evals] best 2.89018e-17 (fails 52) via place_missing noop
|
||||
[127480 evals] best 2.89033e-17 (fails 52) via place_missing noop
|
||||
[128360 evals] best 4.59545e-16 (fails 48) via level_compound_fix st1: lvl1 → lvl0/rllr
|
||||
[129800 evals] best 4.59566e-16 (fails 48) via core_undivide noop
|
||||
[133800 evals] best 4.59579e-16 (fails 48) via place_missing noop
|
||||
[138360 evals] best 9.21879e-16 (fails 47) via level_retype 0/lrrll<->1/rlrlr
|
||||
[138920 evals] best 9.21905e-16 (fails 47) via undivide 1/lrrrlr
|
||||
[177400 evals] best 1.02387e-15 (fails 47) via undivide 1/rrl
|
||||
[179960 evals] best 2.0557e-15 (fails 46) via divide 0/rrrrr
|
||||
[180440 evals] best 2.05953e-15 (fails 46) via level_retype 1/rllr<->0/rrrrrr
|
||||
[180760 evals] best 2.0647e-15 (fails 46) via crossover rlllrlrr<->rlllrlrr
|
||||
[185960 evals] best 4.03185e-15 (fails 45) via divide 0/lrrrl
|
||||
[189560 evals] best 4.04284e-15 (fails 45) via core_undivide noop
|
||||
[191560 evals] best 4.26565e-15 (fails 45) via crossover rrl<->rlrrr
|
||||
[192760 evals] best 4.27557e-15 (fails 45) via place_missing noop
|
||||
[194200 evals] best 8.22369e-15 (fails 44) via crossover llllrr<->rrrrr
|
||||
[194600 evals] best 1.65717e-14 (fails 43) via crossover rrrr<->rlllrlr
|
||||
[197640 evals] best 1.66031e-14 (fails 43) via core_undivide noop
|
||||
[201400 evals] best 3.39094e-14 (fails 42) via divide 0/rllr
|
||||
[205560 evals] best 4.33243e-14 (fails 41) via level_fix st2: lvl0/llllrrr → lvl1/rlll
|
||||
[206200 evals] best 8.67874e-14 (fails 40) via core_undivide noop
|
||||
[208360 evals] best 9.28664e-14 (fails 40) via level_fix of: lvl1/lrrll → lvl0/rllr
|
||||
[209960 evals] best 9.86678e-14 (fails 40) via level_fix of: lvl1/lrrll → lvl0/rllr
|
||||
[211640 evals] best 9.89888e-14 (fails 40) via place_missing noop
|
||||
[212440 evals] best 9.93193e-14 (fails 40) via core_undivide noop
|
||||
[214200 evals] best 9.96673e-14 (fails 40) via place_missing noop
|
||||
[216520 evals] best 1.0003e-13 (fails 40) via place_missing noop
|
||||
[220440 evals] best 1.96926e-13 (fails 39) via undivide 1/lrlr
|
||||
[221720 evals] best 1.99592e-13 (fails 39) via undivide 1/lrlr
|
||||
[222200 evals] best 2.00319e-13 (fails 39) via core_undivide noop
|
||||
[224040 evals] best 2.01076e-13 (fails 39) via place_missing noop
|
||||
[225800 evals] best 2.01871e-13 (fails 39) via level_retype 0/llllrrr<->1/lrrlrrr
|
||||
[228920 evals] best 3.94547e-13 (fails 38) via undivide 0/lrrl
|
||||
[229640 evals] best 3.9913e-13 (fails 38) via crossover lrrl<->lrrl
|
||||
[230600 evals] best 1.03507e-12 (fails 37) via place_missing n -> rllr
|
||||
[232600 evals] best 1.0387e-12 (fails 37) via swap 0/rrrr
|
||||
[232760 evals] best 1.03877e-12 (fails 37) via place_missing n -> rllr
|
||||
[235560 evals] best 1.21726e-13 (fails 36) via divide 1/rrrl
|
||||
[239640 evals] best 2.9842e-12 (fails 35) via place_missing noop
|
||||
[241560 evals] best 2.99774e-12 (fails 35) via place_missing noop
|
||||
[244200 evals] best 3.00495e-12 (fails 35) via core_undivide noop
|
||||
[244920 evals] best 3.01614e-12 (fails 35) via level_retype 0/llllrrr<->1/llrlrlr
|
||||
[245000 evals] best 3.16105e-12 (fails 35) via rotate 1/lrrlrr
|
||||
[245800 evals] best 3.21175e-12 (fails 35) via place_missing noop
|
||||
[248760 evals] best 3.21456e-12 (fails 35) via place_missing noop
|
||||
[250760 evals] best 3.2718e-12 (fails 35) via place_missing noop
|
||||
[251000 evals] best 3.28567e-12 (fails 35) via place_missing noop
|
||||
[251480 evals] best 3.33817e-12 (fails 35) via divide 0/rllr
|
||||
[251640 evals] best 3.41781e-12 (fails 35) via place_missing noop
|
||||
[252680 evals] best 3.44722e-12 (fails 35) via core_undivide noop
|
||||
[255160 evals] best 3.48209e-12 (fails 35) via core_undivide noop
|
||||
[258040 evals] best 3.50923e-12 (fails 35) via crossover rrl<->lrrrlr
|
||||
[258440 evals] best 3.56524e-12 (fails 35) via place_missing noop
|
||||
[259240 evals] best 7.13048e-12 (fails 34) via rotate 0/rllr
|
||||
[261560 evals] best 7.15069e-12 (fails 34) via place_missing noop
|
||||
[263720 evals] best 1.3349e-11 (fails 33) via swap 0/rllr
|
||||
[268200 evals] best 1.33728e-11 (fails 33) via place_missing noop
|
||||
[269560 evals] best 1.33841e-11 (fails 33) via place_missing noop
|
||||
[269720 evals] best 1.35872e-11 (fails 33) via place_missing noop
|
||||
[276360 evals] best 2.722e-11 (fails 32) via swap 0/lrl
|
||||
[277400 evals] best 2.731e-11 (fails 32) via core_undivide noop
|
||||
[278280 evals] best 5.46451e-11 (fails 31) via level_fix st2: lvl0/rllrl → lvl1/rlll
|
||||
[282120 evals] best 5.47747e-11 (fails 31) via place_missing noop
|
||||
[283400 evals] best 5.49101e-11 (fails 31) via retype 0/llllrrl->st2
|
||||
[284360 evals] best 5.49984e-11 (fails 31) via core_undivide noop
|
||||
[287240 evals] best 5.50909e-11 (fails 31) via rotate 0/rlllr
|
||||
[287720 evals] best 5.53032e-11 (fails 31) via place_missing noop
|
||||
[288520 evals] best 5.544e-11 (fails 31) via place_missing noop
|
||||
[289560 evals] best 5.55504e-11 (fails 31) via core_undivide noop
|
||||
[291560 evals] best 5.56508e-11 (fails 31) via rotate 0/lrrrl
|
||||
[291960 evals] best 5.57529e-11 (fails 31) via place_missing noop
|
||||
[294120 evals] best 5.59089e-11 (fails 31) via place_missing noop
|
||||
[296120 evals] best 5.60467e-11 (fails 31) via place_missing noop
|
||||
[300440 evals] best 5.61355e-11 (fails 31) via core_undivide noop
|
||||
[301720 evals] best 5.62247e-11 (fails 31) via place_missing noop
|
||||
[303160 evals] best 5.63495e-11 (fails 31) via place_missing noop
|
||||
[305240 evals] best 6.24375e-11 (fails 30) via rotate 0/rlrr
|
||||
[309560 evals] best 6.2556e-11 (fails 30) via place_missing noop
|
||||
[313080 evals] best 6.27168e-11 (fails 30) via core_undivide noop
|
||||
[315480 evals] best 6.28651e-11 (fails 30) via place_missing noop
|
||||
[317240 evals] best 6.29148e-11 (fails 30) via place_missing noop
|
||||
[317560 evals] best 6.33648e-11 (fails 30) via divide 0/rrl
|
||||
[319800 evals] best 6.48073e-11 (fails 30) via crossover rrll<->rrrrl
|
||||
[335160 evals] best 6.5715e-11 (fails 30) via swap 1/rrrl
|
||||
[355640 evals] best 6.61765e-11 (fails 30) via rotate 0/rr
|
||||
[367240 evals] best 1.41943e-10 (fails 29) via level_retype 0/rrl<->1/lrrrll
|
||||
[369080 evals] best 1.4196e-10 (fails 29) via place_missing noop
|
||||
[378440 evals] best 1.42097e-10 (fails 29) via place_missing noop
|
||||
[380520 evals] best 1.42479e-10 (fails 29) via place_missing noop
|
||||
[381640 evals] best 1.43053e-10 (fails 29) via core_undivide noop
|
||||
[384680 evals] best 1.43342e-10 (fails 29) via core_undivide noop
|
||||
[397960 evals] best 5.77526e-10 (fails 27) via rotate 0/rrr
|
||||
[406600 evals] best 5.77589e-10 (fails 27) via place_missing noop
|
||||
[421160 evals] best 6.00074e-10 (fails 27) via place_missing noop
|
||||
[470040 evals] best 6.03394e-10 (fails 27) via swap 1/llrll
|
||||
[496760 evals] best 6.12296e-10 (fails 27) via crossover llllrr<->rrrrr
|
||||
[513240 evals] best 6.12376e-10 (fails 27) via swap 0/rrrr
|
||||
[541400 evals] best 2.44951e-09 (fails 25) via level_retype 1/rlrlr<->0/llllrl
|
||||
[638920 evals] best 2.44988e-09 (fails 25) via rotate 0/rrrr
|
||||
[641880 evals] best 3.74964e-09 (fails 24) via crossover rrl<->rrrr
|
||||
[649560 evals] best 3.77483e-09 (fails 24) via swap 0/rrl
|
||||
[657240 evals] best 3.7751e-09 (fails 24) via core_undivide noop
|
||||
[660920 evals] best 3.82849e-09 (fails 24) via swap 0/rlllrl
|
||||
[661400 evals] best 3.84511e-09 (fails 24) via core_undivide noop
|
||||
[661880 evals] best 3.84837e-09 (fails 24) via place_missing noop
|
||||
[662680 evals] best 3.84862e-09 (fails 24) via place_missing noop
|
||||
[665960 evals] best 3.84862e-09 (fails 24) via level_retype 1/llrllr<->0/lrlr
|
||||
[670120 evals] best 3.85159e-09 (fails 24) via rotate 0/llllr
|
||||
[671400 evals] best 3.85159e-09 (fails 24) via crossover r<->r
|
||||
[681960 evals] best 3.85482e-09 (fails 24) via swap 0/rrrr
|
||||
[682840 evals] best 3.85582e-09 (fails 24) via place_missing noop
|
||||
[693080 evals] best 3.85764e-09 (fails 24) via rotate 1/lrrlr
|
||||
[701960 evals] best 3.87466e-09 (fails 24) via rotate 0/llllr
|
||||
[708760 evals] best 4.4024e-09 (fails 24) via level_retype 0/rlllrr<->1/lrrrll
|
||||
[709080 evals] best 7.90799e-09 (fails 23) via rotate 0/rlllr
|
||||
[713160 evals] best 7.90837e-09 (fails 23) via core_undivide noop
|
||||
[722600 evals] best 7.90905e-09 (fails 23) via rotate 0/rrrr
|
||||
[734520 evals] best 9.17808e-09 (fails 23) via retype 1/llrllr->O
|
||||
[735000 evals] best 9.18197e-09 (fails 23) via rotate 0/rlr
|
||||
[735800 evals] best 9.18331e-09 (fails 23) via rotate 0/rrrr
|
||||
[809480 evals] best 2.30234e-08 (fails 22) via core_divide lrlr (2 floors)
|
||||
[809960 evals] best 2.34106e-08 (fails 22) via place_missing noop
|
||||
[847320 evals] best 2.46791e-08 (fails 22) via swap 0/llllr
|
||||
[922120 evals] best 2.49586e-08 (fails 22) via swap 0/rrl
|
||||
[974440 evals] best 4.80041e-08 (fails 21) via level_retype 1/llll<->0/llllrr
|
||||
[974760 evals] best 4.80092e-08 (fails 21) via crossover lrrrlr<->lrlrrl
|
||||
[988280 evals] best 4.80353e-08 (fails 21) via retype 0/rllrr->st2
|
||||
[989560 evals] best 4.83453e-08 (fails 21) via place_missing noop
|
||||
[993240 evals] best 4.86695e-08 (fails 21) via place_missing noop
|
||||
[994360 evals] best 4.87958e-08 (fails 21) via level_fix st2: lvl0/rllrr → lvl1/rlll
|
||||
[998200 evals] best 4.89159e-08 (fails 21) via core_undivide noop
|
||||
[1002600 evals] best 4.89367e-08 (fails 21) via place_missing noop
|
||||
[1009720 evals] best 4.8962e-08 (fails 21) via place_missing noop
|
||||
[1011880 evals] best 4.89682e-08 (fails 21) via place_missing noop
|
||||
[1022200 evals] best 4.91525e-08 (fails 21) via place_missing noop
|
||||
[1023080 evals] best 4.92746e-08 (fails 21) via level_fix st2: lvl0/rllrr → lvl1/rlll
|
||||
[1023880 evals] best 4.93868e-08 (fails 21) via core_undivide noop
|
||||
[1028360 evals] best 4.94032e-08 (fails 21) via place_missing noop
|
||||
[1029720 evals] best 4.94208e-08 (fails 21) via place_missing noop
|
||||
[1029960 evals] best 4.94221e-08 (fails 21) via place_missing noop
|
||||
[1058760 evals] best 8.61399e-08 (fails 20) via rotate 0/rlllr
|
||||
[1060200 evals] best 8.62097e-08 (fails 20) via place_missing noop
|
||||
[1063880 evals] best 8.62206e-08 (fails 20) via place_missing noop
|
||||
[1083320 evals] best 8.62206e-08 (fails 20) via undivide 0/rllr
|
||||
[1087160 evals] best 8.62355e-08 (fails 20) via rotate 0/rlllrr
|
||||
[1088040 evals] best 8.62463e-08 (fails 20) via core_undivide noop
|
||||
[1178920 evals] best 8.62463e-08 (fails 20) via undivide 0/rllr
|
||||
[1645640 evals] best 8.64196e-08 (fails 20) via level_retype 1/rlrllr<->0/rrlr
|
||||
[1651080 evals] best 8.66028e-08 (fails 20) via undivide 0/rrl
|
||||
[1783320 evals] best 8.66028e-08 (fails 20) via undivide 0/rllr
|
||||
[1846200 evals] best 8.66287e-08 (fails 20) via rotate 0/rlllrr
|
||||
[1955720 evals] best 8.66287e-08 (fails 20) via undivide 0/rllr
|
||||
[2308920 evals] interrupted — returning best-so-far
|
||||
|
||||
--- interrupted ---
|
||||
elapsed : 210772.1s
|
||||
evals : 2308920 across 28860 topologies
|
||||
best : 8.66287e-08 (20 fails) via undivide 0/rllr
|
||||
|
||||
improvement history:
|
||||
[ 200] 7.13373e-29 (seed)
|
||||
[ 680] 7.13374e-29 (level_fix noop)
|
||||
[ 1800] 1.43878e-28 (place_missing r -> lrrrl)
|
||||
[ 4200] 2.61821e-28 (place_missing t -> rllrr)
|
||||
[ 4360] 1.39503e-27 (core_divide rlrr (2 floors))
|
||||
[ 4440] 2.20221e-27 (divide 0/rllrl)
|
||||
[ 7560] 3.47487e-27 (core_undivide noop)
|
||||
[ 8040] 4.94517e-26 (retype 0/rrl->r)
|
||||
[ 9000] 3.79585e-25 (place_missing r -> lrrrl)
|
||||
[ 9720] 3.93644e-25 (place_missing n -> rllr)
|
||||
[ 10920] 6.00163e-24 (place_missing r -> lrrrl)
|
||||
[ 12120] 6.11587e-24 (level_fix noop)
|
||||
[ 12920] 6.29222e-24 (core_undivide noop)
|
||||
[ 15000] 1.71947e-23 (place_missing m -> lrrl)
|
||||
[ 15480] 1.73099e-23 (level_fix noop)
|
||||
[ 19560] 6.08444e-23 (place_missing n -> rllrrr)
|
||||
[ 27640] 6.14994e-23 (level_fix noop)
|
||||
[ 28520] 6.20043e-23 (level_fix noop)
|
||||
[ 29000] 6.23843e-23 (core_undivide noop)
|
||||
[ 30120] 6.25916e-23 (core_undivide noop)
|
||||
[ 30760] 6.26442e-23 (core_undivide noop)
|
||||
[ 31320] 1.23029e-22 (undivide 0/rllrrr)
|
||||
[ 31640] 1.85407e-21 (crossover rrl<->rlrr)
|
||||
[ 33800] 1.8746e-21 (core_undivide noop)
|
||||
[ 34040] 1.88627e-21 (core_undivide noop)
|
||||
[ 35880] 1.89096e-21 (core_undivide noop)
|
||||
[ 36200] 8.63218e-21 (swap 1/lrrrr)
|
||||
[ 40680] 8.70626e-21 (level_compound_fix noop)
|
||||
[ 41080] 1.67189e-20 (place_missing r -> llrlrl)
|
||||
[ 41640] 1.67761e-20 (level_compound_fix noop)
|
||||
[ 44920] 7.29193e-20 (crossover lrrlr<->rllrl)
|
||||
[ 45960] 7.31576e-20 (level_compound_fix noop)
|
||||
[ 47080] 1.36215e-19 (place_missing t -> rrrr)
|
||||
[ 47480] 1.36247e-19 (level_fix noop)
|
||||
[ 48360] 1.36406e-19 (level_fix noop)
|
||||
[ 48600] 1.36485e-19 (crossover lrrlr<->rllrl)
|
||||
[ 49160] 1.36534e-19 (level_compound_fix noop)
|
||||
[ 50760] 1.36993e-19 (rotate 0/lrlr)
|
||||
[ 57880] 1.37008e-19 (level_fix noop)
|
||||
[ 57960] 1.37024e-19 (core_undivide noop)
|
||||
[ 59320] 1.37041e-19 (level_fix noop)
|
||||
[ 63160] 1.37057e-19 (core_undivide noop)
|
||||
[ 63320] 1.37735e-19 (rotate 0/lrr)
|
||||
[ 66600] 2.94829e-19 (level_retype 1/lrrrlrl<->0/llllrl)
|
||||
[ 71800] 2.94872e-19 (core_undivide noop)
|
||||
[ 74280] 5.90024e-19 (divide 0/rrrrr)
|
||||
[ 75240] 7.62368e-19 (level_retype 0/rlll<->1/rlrlr)
|
||||
[ 81320] 7.69032e-19 (level_retype 1/rlrlll<->0/rrrrl)
|
||||
[ 83160] 1.03682e-18 (level_retype 1/lrlrl<->0/rllrrr)
|
||||
[ 83480] 1.04208e-18 (rotate 0/rrrrr)
|
||||
[ 89320] 1.04721e-18 (core_undivide noop)
|
||||
[ 90760] 1.05258e-18 (core_undivide noop)
|
||||
[ 92040] 1.22112e-18 (rotate 0/rrrr)
|
||||
[ 96200] 1.54735e-18 (crossover lrrrr<->llllrl)
|
||||
[ 98680] 1.54777e-18 (place_missing noop)
|
||||
[ 99640] 1.54818e-18 (core_undivide noop)
|
||||
[100600] 1.54858e-18 (core_undivide noop)
|
||||
[102920] 1.54897e-18 (place_missing noop)
|
||||
[103560] 1.54911e-18 (place_missing noop)
|
||||
[104360] 1.62548e-18 (undivide 0/lrlr)
|
||||
[105800] 1.62563e-18 (level_retype 0/rlrrr<->1/lrrrrl)
|
||||
[106040] 1.62578e-18 (place_missing noop)
|
||||
[109000] 1.62595e-18 (place_missing noop)
|
||||
[109240] 1.62612e-18 (place_missing noop)
|
||||
[109400] 1.6263e-18 (place_missing noop)
|
||||
[110440] 1.62644e-18 (core_undivide noop)
|
||||
[110520] 1.62653e-18 (crossover lrlr<->lrlrl)
|
||||
[111160] 3.25423e-18 (divide 0/rrrrr)
|
||||
[115320] 3.25464e-18 (place_missing noop)
|
||||
[117800] 3.25582e-18 (level_retype 1/lrrrrr<->0/lrrrr)
|
||||
[118360] 3.25868e-18 (place_missing noop)
|
||||
[119640] 3.74625e-18 (place_missing r -> lrrl)
|
||||
[120280] 3.74647e-18 (place_missing noop)
|
||||
[120360] 3.74667e-18 (place_missing noop)
|
||||
[123320] 3.74676e-18 (core_undivide noop)
|
||||
[123720] 6.40395e-18 (divide 1/llrr)
|
||||
[123880] 2.88855e-17 (place_missing r -> lrrl)
|
||||
[124840] 2.89001e-17 (level_retype 0/lrrrr<->1/llrlrll)
|
||||
[126600] 2.89018e-17 (place_missing noop)
|
||||
[127480] 2.89033e-17 (place_missing noop)
|
||||
[128360] 4.59545e-16 (level_compound_fix st1: lvl1 → lvl0/rllr)
|
||||
[129800] 4.59566e-16 (core_undivide noop)
|
||||
[133800] 4.59579e-16 (place_missing noop)
|
||||
[138360] 9.21879e-16 (level_retype 0/lrrll<->1/rlrlr)
|
||||
[138920] 9.21905e-16 (undivide 1/lrrrlr)
|
||||
[177400] 1.02387e-15 (undivide 1/rrl)
|
||||
[179960] 2.0557e-15 (divide 0/rrrrr)
|
||||
[180440] 2.05953e-15 (level_retype 1/rllr<->0/rrrrrr)
|
||||
[180760] 2.0647e-15 (crossover rlllrlrr<->rlllrlrr)
|
||||
[185960] 4.03185e-15 (divide 0/lrrrl)
|
||||
[189560] 4.04284e-15 (core_undivide noop)
|
||||
[191560] 4.26565e-15 (crossover rrl<->rlrrr)
|
||||
[192760] 4.27557e-15 (place_missing noop)
|
||||
[194200] 8.22369e-15 (crossover llllrr<->rrrrr)
|
||||
[194600] 1.65717e-14 (crossover rrrr<->rlllrlr)
|
||||
[197640] 1.66031e-14 (core_undivide noop)
|
||||
[201400] 3.39094e-14 (divide 0/rllr)
|
||||
[205560] 4.33243e-14 (level_fix st2: lvl0/llllrrr → lvl1/rlll)
|
||||
[206200] 8.67874e-14 (core_undivide noop)
|
||||
[208360] 9.28664e-14 (level_fix of: lvl1/lrrll → lvl0/rllr)
|
||||
[209960] 9.86678e-14 (level_fix of: lvl1/lrrll → lvl0/rllr)
|
||||
[211640] 9.89888e-14 (place_missing noop)
|
||||
[212440] 9.93193e-14 (core_undivide noop)
|
||||
[214200] 9.96673e-14 (place_missing noop)
|
||||
[216520] 1.0003e-13 (place_missing noop)
|
||||
[220440] 1.96926e-13 (undivide 1/lrlr)
|
||||
[221720] 1.99592e-13 (undivide 1/lrlr)
|
||||
[222200] 2.00319e-13 (core_undivide noop)
|
||||
[224040] 2.01076e-13 (place_missing noop)
|
||||
[225800] 2.01871e-13 (level_retype 0/llllrrr<->1/lrrlrrr)
|
||||
[228920] 3.94547e-13 (undivide 0/lrrl)
|
||||
[229640] 3.9913e-13 (crossover lrrl<->lrrl)
|
||||
[230600] 1.03507e-12 (place_missing n -> rllr)
|
||||
[232600] 1.0387e-12 (swap 0/rrrr)
|
||||
[232760] 1.03877e-12 (place_missing n -> rllr)
|
||||
[235560] 1.21726e-13 (divide 1/rrrl)
|
||||
[239640] 2.9842e-12 (place_missing noop)
|
||||
[241560] 2.99774e-12 (place_missing noop)
|
||||
[244200] 3.00495e-12 (core_undivide noop)
|
||||
[244920] 3.01614e-12 (level_retype 0/llllrrr<->1/llrlrlr)
|
||||
[245000] 3.16105e-12 (rotate 1/lrrlrr)
|
||||
[245800] 3.21175e-12 (place_missing noop)
|
||||
[248760] 3.21456e-12 (place_missing noop)
|
||||
[250760] 3.2718e-12 (place_missing noop)
|
||||
[251000] 3.28567e-12 (place_missing noop)
|
||||
[251480] 3.33817e-12 (divide 0/rllr)
|
||||
[251640] 3.41781e-12 (place_missing noop)
|
||||
[252680] 3.44722e-12 (core_undivide noop)
|
||||
[255160] 3.48209e-12 (core_undivide noop)
|
||||
[258040] 3.50923e-12 (crossover rrl<->lrrrlr)
|
||||
[258440] 3.56524e-12 (place_missing noop)
|
||||
[259240] 7.13048e-12 (rotate 0/rllr)
|
||||
[261560] 7.15069e-12 (place_missing noop)
|
||||
[263720] 1.3349e-11 (swap 0/rllr)
|
||||
[268200] 1.33728e-11 (place_missing noop)
|
||||
[269560] 1.33841e-11 (place_missing noop)
|
||||
[269720] 1.35872e-11 (place_missing noop)
|
||||
[276360] 2.722e-11 (swap 0/lrl)
|
||||
[277400] 2.731e-11 (core_undivide noop)
|
||||
[278280] 5.46451e-11 (level_fix st2: lvl0/rllrl → lvl1/rlll)
|
||||
[282120] 5.47747e-11 (place_missing noop)
|
||||
[283400] 5.49101e-11 (retype 0/llllrrl->st2)
|
||||
[284360] 5.49984e-11 (core_undivide noop)
|
||||
[287240] 5.50909e-11 (rotate 0/rlllr)
|
||||
[287720] 5.53032e-11 (place_missing noop)
|
||||
[288520] 5.544e-11 (place_missing noop)
|
||||
[289560] 5.55504e-11 (core_undivide noop)
|
||||
[291560] 5.56508e-11 (rotate 0/lrrrl)
|
||||
[291960] 5.57529e-11 (place_missing noop)
|
||||
[294120] 5.59089e-11 (place_missing noop)
|
||||
[296120] 5.60467e-11 (place_missing noop)
|
||||
[300440] 5.61355e-11 (core_undivide noop)
|
||||
[301720] 5.62247e-11 (place_missing noop)
|
||||
[303160] 5.63495e-11 (place_missing noop)
|
||||
[305240] 6.24375e-11 (rotate 0/rlrr)
|
||||
[309560] 6.2556e-11 (place_missing noop)
|
||||
[313080] 6.27168e-11 (core_undivide noop)
|
||||
[315480] 6.28651e-11 (place_missing noop)
|
||||
[317240] 6.29148e-11 (place_missing noop)
|
||||
[317560] 6.33648e-11 (divide 0/rrl)
|
||||
[319800] 6.48073e-11 (crossover rrll<->rrrrl)
|
||||
[335160] 6.5715e-11 (swap 1/rrrl)
|
||||
[355640] 6.61765e-11 (rotate 0/rr)
|
||||
[367240] 1.41943e-10 (level_retype 0/rrl<->1/lrrrll)
|
||||
[369080] 1.4196e-10 (place_missing noop)
|
||||
[378440] 1.42097e-10 (place_missing noop)
|
||||
[380520] 1.42479e-10 (place_missing noop)
|
||||
[381640] 1.43053e-10 (core_undivide noop)
|
||||
[384680] 1.43342e-10 (core_undivide noop)
|
||||
[397960] 5.77526e-10 (rotate 0/rrr)
|
||||
[406600] 5.77589e-10 (place_missing noop)
|
||||
[421160] 6.00074e-10 (place_missing noop)
|
||||
[470040] 6.03394e-10 (swap 1/llrll)
|
||||
[496760] 6.12296e-10 (crossover llllrr<->rrrrr)
|
||||
[513240] 6.12376e-10 (swap 0/rrrr)
|
||||
[541400] 2.44951e-09 (level_retype 1/rlrlr<->0/llllrl)
|
||||
[638920] 2.44988e-09 (rotate 0/rrrr)
|
||||
[641880] 3.74964e-09 (crossover rrl<->rrrr)
|
||||
[649560] 3.77483e-09 (swap 0/rrl)
|
||||
[657240] 3.7751e-09 (core_undivide noop)
|
||||
[660920] 3.82849e-09 (swap 0/rlllrl)
|
||||
[661400] 3.84511e-09 (core_undivide noop)
|
||||
[661880] 3.84837e-09 (place_missing noop)
|
||||
[662680] 3.84862e-09 (place_missing noop)
|
||||
[665960] 3.84862e-09 (level_retype 1/llrllr<->0/lrlr)
|
||||
[670120] 3.85159e-09 (rotate 0/llllr)
|
||||
[671400] 3.85159e-09 (crossover r<->r)
|
||||
[681960] 3.85482e-09 (swap 0/rrrr)
|
||||
[682840] 3.85582e-09 (place_missing noop)
|
||||
[693080] 3.85764e-09 (rotate 1/lrrlr)
|
||||
[701960] 3.87466e-09 (rotate 0/llllr)
|
||||
[708760] 4.4024e-09 (level_retype 0/rlllrr<->1/lrrrll)
|
||||
[709080] 7.90799e-09 (rotate 0/rlllr)
|
||||
[713160] 7.90837e-09 (core_undivide noop)
|
||||
[722600] 7.90905e-09 (rotate 0/rrrr)
|
||||
[734520] 9.17808e-09 (retype 1/llrllr->O)
|
||||
[735000] 9.18197e-09 (rotate 0/rlr)
|
||||
[735800] 9.18331e-09 (rotate 0/rrrr)
|
||||
[809480] 2.30234e-08 (core_divide lrlr (2 floors))
|
||||
[809960] 2.34106e-08 (place_missing noop)
|
||||
[847320] 2.46791e-08 (swap 0/llllr)
|
||||
[922120] 2.49586e-08 (swap 0/rrl)
|
||||
[974440] 4.80041e-08 (level_retype 1/llll<->0/llllrr)
|
||||
[974760] 4.80092e-08 (crossover lrrrlr<->lrlrrl)
|
||||
[988280] 4.80353e-08 (retype 0/rllrr->st2)
|
||||
[989560] 4.83453e-08 (place_missing noop)
|
||||
[993240] 4.86695e-08 (place_missing noop)
|
||||
[994360] 4.87958e-08 (level_fix st2: lvl0/rllrr → lvl1/rlll)
|
||||
[998200] 4.89159e-08 (core_undivide noop)
|
||||
[1002600] 4.89367e-08 (place_missing noop)
|
||||
[1009720] 4.8962e-08 (place_missing noop)
|
||||
[1011880] 4.89682e-08 (place_missing noop)
|
||||
[1022200] 4.91525e-08 (place_missing noop)
|
||||
[1023080] 4.92746e-08 (level_fix st2: lvl0/rllrr → lvl1/rlll)
|
||||
[1023880] 4.93868e-08 (core_undivide noop)
|
||||
[1028360] 4.94032e-08 (place_missing noop)
|
||||
[1029720] 4.94208e-08 (place_missing noop)
|
||||
[1029960] 4.94221e-08 (place_missing noop)
|
||||
[1058760] 8.61399e-08 (rotate 0/rlllr)
|
||||
[1060200] 8.62097e-08 (place_missing noop)
|
||||
[1063880] 8.62206e-08 (place_missing noop)
|
||||
[1083320] 8.62206e-08 (undivide 0/rllr)
|
||||
[1087160] 8.62355e-08 (rotate 0/rlllrr)
|
||||
[1088040] 8.62463e-08 (core_undivide noop)
|
||||
[1178920] 8.62463e-08 (undivide 0/rllr)
|
||||
[1645640] 8.64196e-08 (level_retype 1/rlrllr<->0/rrlr)
|
||||
[1651080] 8.66028e-08 (undivide 0/rrl)
|
||||
[1783320] 8.66028e-08 (undivide 0/rllr)
|
||||
[1846200] 8.66287e-08 (rotate 0/rlllrr)
|
||||
[1955720] 8.66287e-08 (undivide 0/rllr)
|
||||
written : /home/bruno/src/homemaker-layout/examples/harbor-house/evolved-warmshare.dom
|
||||
616
examples/harbor-house/evolved-3M-nols-2.dom
Normal file
616
examples/harbor-house/evolved-3M-nols-2.dom
Normal file
|
|
@ -0,0 +1,616 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5453707551767608
|
||||
- 0.5453707551767608
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5522887920141253
|
||||
- 0.5522887920141253
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5422240475759911
|
||||
- 0.5422240475759911
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5884031332206187
|
||||
- 0.5884031332206187
|
||||
l:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4351188444584838
|
||||
- 0.4351188444584838
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5858843654327277
|
||||
- 0.5858843654327277
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6692443578136734
|
||||
- 0.6692443578136734
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7222802898935807
|
||||
- 0.7222802898935807
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5791570312500001
|
||||
- 0.5791570312500001
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: cr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: cr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 1
|
||||
r:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6234470574437853
|
||||
- 0.6234470574437853
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5902842616284559
|
||||
- 0.5902842616284559
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7339337357234825
|
||||
- 0.7339337357234825
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7824086560875603
|
||||
- 0.7824086560875603
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7039689912158207
|
||||
- 0.7039689912158207
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5936359570312502
|
||||
- 0.5936359570312502
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: cr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6570350194962238
|
||||
- 0.6570350194962238
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.38409579126711796
|
||||
- 0.38409579126711796
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7722513353285644
|
||||
- 0.7722513353285644
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5566301900554915
|
||||
- 0.5566301900554915
|
||||
l:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.41924682120742435
|
||||
- 0.41924682120742435
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5923752795527412
|
||||
- 0.5923752795527412
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.8429374722623478
|
||||
- 0.8429374722623478
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6090773265385678
|
||||
- 0.6090773265385678
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7764295659905632
|
||||
- 0.7764295659905632
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6385206269531251
|
||||
- 0.6385206269531251
|
||||
l:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6421146395641212
|
||||
- 0.6421146395641212
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.22974356566741397
|
||||
- 0.22974356566741397
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6084768559570314
|
||||
- 0.6084768559570314
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.968265351741025
|
||||
- 0.968265351741025
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8784173200136786
|
||||
- 0.8784173200136786
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4059970339301521
|
||||
- 0.4059970339301521
|
||||
l:
|
||||
type: m
|
||||
rotation: 1
|
||||
r:
|
||||
type: C
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5326764625682993
|
||||
- 0.5326764625682993
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5536579163160164
|
||||
- 0.5536579163160164
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4853471066909839
|
||||
- 0.4853471066909839
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7987297048921393
|
||||
- 0.7987297048921393
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7297117619482362
|
||||
- 0.7297117619482362
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7579431477526928
|
||||
- 0.7579431477526928
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6236887773559573
|
||||
- 0.6236887773559573
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.551578125
|
||||
- 0.551578125
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.43356671101589384
|
||||
- 0.43356671101589384
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.13133577297899704
|
||||
- 0.13133577297899704
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5797285677939966
|
||||
- 0.5797285677939966
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.551578125
|
||||
- 0.551578125
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.670845733692627
|
||||
- 0.670845733692627
|
||||
l:
|
||||
type: li1
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.781888627381648
|
||||
- 0.781888627381648
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.38499157916891213
|
||||
- 0.38499157916891213
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2012702951078606
|
||||
- 0.2012702951078606
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4444444444444444
|
||||
- 0.4444444444444444
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.9730225242044375
|
||||
- 0.9730225242044375
|
||||
l:
|
||||
type: r
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5004934210526315
|
||||
- 0.5004934210526315
|
||||
l:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5945754854305073
|
||||
- 0.5945754854305073
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4902664331159802
|
||||
- 0.4902664331159802
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6499007975748095
|
||||
- 0.6499007975748095
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5193481864706366
|
||||
- 0.5193481864706366
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.26078324488789595
|
||||
- 0.26078324488789595
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5010799367804276
|
||||
- 0.5010799367804276
|
||||
l:
|
||||
type: ut1
|
||||
rotation: 3
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7987297048921393
|
||||
- 0.7987297048921393
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2873334582149999
|
||||
- 0.2873334582149999
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.375
|
||||
- 0.375
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4595786624530838
|
||||
- 0.4595786624530838
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.9210526315789473
|
||||
- 0.9210526315789473
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7294856269372924
|
||||
- 0.7294856269372924
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7039689912158207
|
||||
- 0.7039689912158207
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5559478988311726
|
||||
- 0.5559478988311726
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2012702951078606
|
||||
- 0.2012702951078606
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5936359570312502
|
||||
- 0.5936359570312502
|
||||
l:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
type: t
|
||||
rotation: 1
|
||||
r:
|
||||
type: O
|
||||
rotation: 2
|
||||
600
examples/harbor-house/evolved-3M-nols-3.collapsed.dom
Normal file
600
examples/harbor-house/evolved-3M-nols-3.collapsed.dom
Normal file
|
|
@ -0,0 +1,600 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5453707551767608
|
||||
- 0.5453707551767608
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5522887920141253
|
||||
- 0.5522887920141253
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5422240475759911
|
||||
- 0.5422240475759911
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5884031332206187
|
||||
- 0.5884031332206187
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4351188444584838
|
||||
- 0.4351188444584838
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 3
|
||||
r:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5858843654327277
|
||||
- 0.5858843654327277
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6692443578136734
|
||||
- 0.6692443578136734
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7222802898935807
|
||||
- 0.7222802898935807
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5791570312500001
|
||||
- 0.5791570312500001
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: cr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: cr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 1
|
||||
r:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6234470574437853
|
||||
- 0.6234470574437853
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5902842616284559
|
||||
- 0.5902842616284559
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7385208215717542
|
||||
- 0.7385208215717542
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7824086560875603
|
||||
- 0.7824086560875603
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7215682159962162
|
||||
- 0.7215682159962162
|
||||
l:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5936359570312502
|
||||
- 0.5936359570312502
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: cr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6570350194962238
|
||||
- 0.6570350194962238
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.38409579126711796
|
||||
- 0.38409579126711796
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7722513353285644
|
||||
- 0.7722513353285644
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.629026904149584
|
||||
- 0.629026904149584
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
type: ef1
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5923752795527412
|
||||
- 0.5923752795527412
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.8429374722623478
|
||||
- 0.8429374722623478
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6090773265385678
|
||||
- 0.6090773265385678
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.9561064910184571
|
||||
- 0.9561064910184571
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6385206269531251
|
||||
- 0.6385206269531251
|
||||
l:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.646127856061397
|
||||
- 0.646127856061397
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.23548715480909932
|
||||
- 0.23548715480909932
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6084768559570314
|
||||
- 0.6084768559570314
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.9564169654832019
|
||||
- 0.9564169654832019
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8784173200136786
|
||||
- 0.8784173200136786
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4161469597784059
|
||||
- 0.4161469597784059
|
||||
l:
|
||||
type: m
|
||||
rotation: 1
|
||||
r:
|
||||
type: C
|
||||
rotation: 1
|
||||
r:
|
||||
type: O
|
||||
rotation: 1
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5326764625682993
|
||||
- 0.5326764625682993
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5536579163160164
|
||||
- 0.5536579163160164
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4853471066909839
|
||||
- 0.4853471066909839
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7987297048921393
|
||||
- 0.7987297048921393
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7297117619482362
|
||||
- 0.7297117619482362
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7579431477526928
|
||||
- 0.7579431477526928
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6236887773559573
|
||||
- 0.6236887773559573
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5650312500000001
|
||||
- 0.5650312500000001
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.551578125
|
||||
- 0.551578125
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.43356671101589384
|
||||
- 0.43356671101589384
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.13133577297899704
|
||||
- 0.13133577297899704
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5797285677939966
|
||||
- 0.5797285677939966
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.551578125
|
||||
- 0.551578125
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.670845733692627
|
||||
- 0.670845733692627
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.781888627381648
|
||||
- 0.781888627381648
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.38499157916891213
|
||||
- 0.38499157916891213
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2012702951078606
|
||||
- 0.2012702951078606
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4444444444444444
|
||||
- 0.4444444444444444
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.9730225242044375
|
||||
- 0.9730225242044375
|
||||
l:
|
||||
type: r
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5004934210526315
|
||||
- 0.5004934210526315
|
||||
l:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5945754854305073
|
||||
- 0.5945754854305073
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4902664331159802
|
||||
- 0.4902664331159802
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6499007975748095
|
||||
- 0.6499007975748095
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5193481864706366
|
||||
- 0.5193481864706366
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.26078324488789595
|
||||
- 0.26078324488789595
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5136069351999384
|
||||
- 0.5136069351999384
|
||||
l:
|
||||
type: ut1
|
||||
rotation: 3
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: li1
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2873334582149999
|
||||
- 0.2873334582149999
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.375
|
||||
- 0.375
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4595786624530838
|
||||
- 0.4595786624530838
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.9210526315789473
|
||||
- 0.9210526315789473
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7294856269372924
|
||||
- 0.7294856269372924
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7039689912158207
|
||||
- 0.7039689912158207
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5559478988311726
|
||||
- 0.5559478988311726
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2012702951078606
|
||||
- 0.2012702951078606
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5936359570312502
|
||||
- 0.5936359570312502
|
||||
l:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
type: r
|
||||
rotation: 1
|
||||
r:
|
||||
type: O
|
||||
rotation: 2
|
||||
600
examples/harbor-house/evolved-3M-nols-3.dom
Normal file
600
examples/harbor-house/evolved-3M-nols-3.dom
Normal file
|
|
@ -0,0 +1,600 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5453707551767608
|
||||
- 0.5453707551767608
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5522887920141253
|
||||
- 0.5522887920141253
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5422240475759911
|
||||
- 0.5422240475759911
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5884031332206187
|
||||
- 0.5884031332206187
|
||||
l:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4351188444584838
|
||||
- 0.4351188444584838
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 3
|
||||
r:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5858843654327277
|
||||
- 0.5858843654327277
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6692443578136734
|
||||
- 0.6692443578136734
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7222802898935807
|
||||
- 0.7222802898935807
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5791570312500001
|
||||
- 0.5791570312500001
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: cr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: cr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 1
|
||||
r:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6234470574437853
|
||||
- 0.6234470574437853
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5902842616284559
|
||||
- 0.5902842616284559
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7385208215717542
|
||||
- 0.7385208215717542
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7824086560875603
|
||||
- 0.7824086560875603
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7215682159962162
|
||||
- 0.7215682159962162
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5936359570312502
|
||||
- 0.5936359570312502
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: cr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6570350194962238
|
||||
- 0.6570350194962238
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.38409579126711796
|
||||
- 0.38409579126711796
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7722513353285644
|
||||
- 0.7722513353285644
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.629026904149584
|
||||
- 0.629026904149584
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
type: ef1
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5923752795527412
|
||||
- 0.5923752795527412
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.8429374722623478
|
||||
- 0.8429374722623478
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6090773265385678
|
||||
- 0.6090773265385678
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.9561064910184571
|
||||
- 0.9561064910184571
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6385206269531251
|
||||
- 0.6385206269531251
|
||||
l:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.646127856061397
|
||||
- 0.646127856061397
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.23548715480909932
|
||||
- 0.23548715480909932
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6084768559570314
|
||||
- 0.6084768559570314
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.9564169654832019
|
||||
- 0.9564169654832019
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8784173200136786
|
||||
- 0.8784173200136786
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4161469597784059
|
||||
- 0.4161469597784059
|
||||
l:
|
||||
type: m
|
||||
rotation: 1
|
||||
r:
|
||||
type: C
|
||||
rotation: 1
|
||||
r:
|
||||
type: O
|
||||
rotation: 1
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5326764625682993
|
||||
- 0.5326764625682993
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5536579163160164
|
||||
- 0.5536579163160164
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4853471066909839
|
||||
- 0.4853471066909839
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7987297048921393
|
||||
- 0.7987297048921393
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7297117619482362
|
||||
- 0.7297117619482362
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7579431477526928
|
||||
- 0.7579431477526928
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6236887773559573
|
||||
- 0.6236887773559573
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5650312500000001
|
||||
- 0.5650312500000001
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.551578125
|
||||
- 0.551578125
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.43356671101589384
|
||||
- 0.43356671101589384
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.13133577297899704
|
||||
- 0.13133577297899704
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5797285677939966
|
||||
- 0.5797285677939966
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.551578125
|
||||
- 0.551578125
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.670845733692627
|
||||
- 0.670845733692627
|
||||
l:
|
||||
type: li1
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.781888627381648
|
||||
- 0.781888627381648
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.38499157916891213
|
||||
- 0.38499157916891213
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2012702951078606
|
||||
- 0.2012702951078606
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4444444444444444
|
||||
- 0.4444444444444444
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.9730225242044375
|
||||
- 0.9730225242044375
|
||||
l:
|
||||
type: r
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5004934210526315
|
||||
- 0.5004934210526315
|
||||
l:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5945754854305073
|
||||
- 0.5945754854305073
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4902664331159802
|
||||
- 0.4902664331159802
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6499007975748095
|
||||
- 0.6499007975748095
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5193481864706366
|
||||
- 0.5193481864706366
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.26078324488789595
|
||||
- 0.26078324488789595
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5136069351999384
|
||||
- 0.5136069351999384
|
||||
l:
|
||||
type: ut1
|
||||
rotation: 3
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: me1
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2873334582149999
|
||||
- 0.2873334582149999
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.375
|
||||
- 0.375
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4595786624530838
|
||||
- 0.4595786624530838
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.9210526315789473
|
||||
- 0.9210526315789473
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7294856269372924
|
||||
- 0.7294856269372924
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7039689912158207
|
||||
- 0.7039689912158207
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5559478988311726
|
||||
- 0.5559478988311726
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2012702951078606
|
||||
- 0.2012702951078606
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5936359570312502
|
||||
- 0.5936359570312502
|
||||
l:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
type: t
|
||||
rotation: 1
|
||||
r:
|
||||
type: O
|
||||
rotation: 2
|
||||
42378
examples/harbor-house/evolved-3M-nols-3.dom.dae
Normal file
42378
examples/harbor-house/evolved-3M-nols-3.dom.dae
Normal file
File diff suppressed because one or more lines are too long
507986
examples/harbor-house/evolved-3M-nols-3.dom.dxf
Normal file
507986
examples/harbor-house/evolved-3M-nols-3.dom.dxf
Normal file
File diff suppressed because it is too large
Load diff
48726
examples/harbor-house/evolved-3M-nols-3.dom.ifc
Normal file
48726
examples/harbor-house/evolved-3M-nols-3.dom.ifc
Normal file
File diff suppressed because it is too large
Load diff
536
examples/harbor-house/evolved-3M-nols.dom
Normal file
536
examples/harbor-house/evolved-3M-nols.dom
Normal file
|
|
@ -0,0 +1,536 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5386377828906278
|
||||
- 0.5386377828906278
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5517443075001449
|
||||
- 0.5517443075001449
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5158947481748943
|
||||
- 0.5158947481748943
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5878230446896753
|
||||
- 0.5878230446896753
|
||||
l:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.43468987418790384
|
||||
- 0.43468987418790384
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5179419369082577
|
||||
- 0.5179419369082577
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6367472099130139
|
||||
- 0.6367472099130139
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7039689912158207
|
||||
- 0.7039689912158207
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: cr1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7035502113281252
|
||||
- 0.7035502113281252
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5139609239961543
|
||||
- 0.5139609239961543
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5931737335114493
|
||||
- 0.5931737335114493
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5616212557627989
|
||||
- 0.5616212557627989
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7153269981002015
|
||||
- 0.7153269981002015
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7258279395694767
|
||||
- 0.7258279395694767
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6563872689019125
|
||||
- 0.6563872689019125
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3837171230535781
|
||||
- 0.3837171230535781
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7714899965162132
|
||||
- 0.7714899965162132
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5543490846014826
|
||||
- 0.5543490846014826
|
||||
l:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.4188334986758365
|
||||
- 0.4188334986758365
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5917912750050387
|
||||
- 0.5917912750050387
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8215672645503999
|
||||
- 0.8215672645503999
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6105714203573651
|
||||
- 0.6105714203573651
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.13738512099882866
|
||||
- 0.13738512099882866
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8352659754204284
|
||||
- 0.8352659754204284
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3860528485005146
|
||||
- 0.3860528485005146
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6121720340397159
|
||||
- 0.6121720340397159
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5125
|
||||
- 0.5125
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5326764625682993
|
||||
- 0.5326764625682993
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5536579163160164
|
||||
- 0.5536579163160164
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4853471066909839
|
||||
- 0.4853471066909839
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7987297048921393
|
||||
- 0.7987297048921393
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5993870419844443
|
||||
- 0.5993870419844443
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7571959149418948
|
||||
- 0.7571959149418948
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7211389666113284
|
||||
- 0.7211389666113284
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.43356671101589384
|
||||
- 0.43356671101589384
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.13133577297899704
|
||||
- 0.13133577297899704
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5791570312500001
|
||||
- 0.5791570312500001
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3350957664191451
|
||||
- 0.3350957664191451
|
||||
l:
|
||||
type: li1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.781888627381648
|
||||
- 0.781888627381648
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.38499157916891213
|
||||
- 0.38499157916891213
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2012702951078606
|
||||
- 0.2012702951078606
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4444444444444444
|
||||
- 0.4444444444444444
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7997188424651172
|
||||
- 0.7997188424651172
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.538125
|
||||
- 0.538125
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4902664331159802
|
||||
- 0.4902664331159802
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6499007975748095
|
||||
- 0.6499007975748095
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5193481864706366
|
||||
- 0.5193481864706366
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.26078324488789595
|
||||
- 0.26078324488789595
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5005859374999999
|
||||
- 0.5005859374999999
|
||||
l:
|
||||
type: ut1
|
||||
rotation: 3
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7987297048921393
|
||||
- 0.7987297048921393
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2873334582149999
|
||||
- 0.2873334582149999
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.375
|
||||
- 0.375
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4595786624530838
|
||||
- 0.4595786624530838
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.9210526315789473
|
||||
- 0.9210526315789473
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6233177548828126
|
||||
- 0.6233177548828126
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5559478988311726
|
||||
- 0.5559478988311726
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2012702951078606
|
||||
- 0.2012702951078606
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 3
|
||||
r:
|
||||
type: O
|
||||
rotation: 2
|
||||
42708
examples/harbor-house/evolved-3M-nols.dom.dae
Normal file
42708
examples/harbor-house/evolved-3M-nols.dom.dae
Normal file
File diff suppressed because one or more lines are too long
467658
examples/harbor-house/evolved-3M-nols.dom.dxf
Normal file
467658
examples/harbor-house/evolved-3M-nols.dom.dxf
Normal file
File diff suppressed because it is too large
Load diff
44548
examples/harbor-house/evolved-3M-nols.dom.ifc
Normal file
44548
examples/harbor-house/evolved-3M-nols.dom.ifc
Normal file
File diff suppressed because one or more lines are too long
336
examples/harbor-house/evolved-3M.dom
Normal file
336
examples/harbor-house/evolved-3M.dom
Normal file
|
|
@ -0,0 +1,336 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4888900105484264
|
||||
- 0.4888900105484264
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5938247521970288
|
||||
- 0.5938247521970288
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5472887522186323
|
||||
- 0.5472887522186323
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7482565199547276
|
||||
- 0.7482565199547276
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.7634740326506355
|
||||
- 0.7634740326506355
|
||||
l:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.48227518337297415
|
||||
- 0.48227518337297415
|
||||
l:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.2876274429075646
|
||||
- 0.2876274429075646
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4977615341676925
|
||||
- 0.4977615341676925
|
||||
l:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5260108852851195
|
||||
- 0.5260108852851195
|
||||
l:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6397932334327496
|
||||
- 0.6397932334327496
|
||||
l:
|
||||
type: t
|
||||
share: 3
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.554484404426573
|
||||
- 0.554484404426573
|
||||
l:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8502200490349778
|
||||
- 0.8502200490349778
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8442580239222437
|
||||
- 0.8442580239222437
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3758880797422988
|
||||
- 0.3758880797422988
|
||||
l:
|
||||
type: n
|
||||
share: 3
|
||||
rotation: 0
|
||||
r:
|
||||
type: of
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5154341184740678
|
||||
- 0.5154341184740678
|
||||
l:
|
||||
type: m
|
||||
share: 3
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.2616194760651602
|
||||
- 0.2616194760651602
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5989008688013605
|
||||
- 0.5989008688013605
|
||||
l:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5662620679201393
|
||||
- 0.5662620679201393
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5300569106355991
|
||||
- 0.5300569106355991
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.0863852684329759
|
||||
- 0.0863852684329759
|
||||
l:
|
||||
type: t
|
||||
share: 3
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.369644807975687
|
||||
- 0.369644807975687
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5125
|
||||
- 0.5125
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6910915096691898
|
||||
- 0.6910915096691898
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
share: 2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4566953630047795
|
||||
- 0.4566953630047795
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.16593799911395812
|
||||
- 0.16593799911395812
|
||||
l:
|
||||
type: ut1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.525234375
|
||||
- 0.525234375
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2988974834269737
|
||||
- 0.2988974834269737
|
||||
l:
|
||||
type: r
|
||||
share: 3
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5670341721910087
|
||||
- 0.5670341721910087
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5878540477469637
|
||||
- 0.5878540477469637
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2988974834269737
|
||||
- 0.2988974834269737
|
||||
l:
|
||||
type: r
|
||||
share: 3
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6580826806640626
|
||||
- 0.6580826806640626
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6164728327412322
|
||||
- 0.6164728327412322
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6
|
||||
- 0.6
|
||||
l:
|
||||
type: r
|
||||
share: 3
|
||||
rotation: 0
|
||||
r:
|
||||
type: li1
|
||||
rotation: 0
|
||||
30687
examples/harbor-house/evolved-3M.dom.dae
Normal file
30687
examples/harbor-house/evolved-3M.dom.dae
Normal file
File diff suppressed because one or more lines are too long
326514
examples/harbor-house/evolved-3M.dom.dxf
Normal file
326514
examples/harbor-house/evolved-3M.dom.dxf
Normal file
File diff suppressed because it is too large
Load diff
29984
examples/harbor-house/evolved-3M.dom.ifc
Normal file
29984
examples/harbor-house/evolved-3M.dom.ifc
Normal file
File diff suppressed because one or more lines are too long
464
examples/harbor-house/evolved-anneal-3M.dom
Normal file
464
examples/harbor-house/evolved-anneal-3M.dom
Normal file
|
|
@ -0,0 +1,464 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6286425603099974
|
||||
- 0.6286425603099974
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6961787241446729
|
||||
- 0.6961787241446729
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6961137205157485
|
||||
- 0.6961137205157485
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8000952839254911
|
||||
- 0.8000952839254911
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.34228096821276366
|
||||
- 0.34228096821276366
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5134228458906376
|
||||
- 0.5134228458906376
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7589264352872361
|
||||
- 0.7589264352872361
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6715791695479109
|
||||
- 0.6715791695479109
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5008445945945945
|
||||
- 0.5008445945945945
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: da1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6306097307187415
|
||||
- 0.6306097307187415
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6050962605989646
|
||||
- 0.6050962605989646
|
||||
l:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.41604578538190495
|
||||
- 0.41604578538190495
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5801999047842895
|
||||
- 0.5801999047842895
|
||||
l:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5554214466016547
|
||||
- 0.5554214466016547
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6634630133762056
|
||||
- 0.6634630133762056
|
||||
l:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3183073798142892
|
||||
- 0.3183073798142892
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7288929527865818
|
||||
- 0.7288929527865818
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6129209569176637
|
||||
- 0.6129209569176637
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: me1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7246951206523857
|
||||
- 0.7246951206523857
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5017094185511319
|
||||
- 0.5017094185511319
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.30105918664949827
|
||||
- 0.30105918664949827
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6638579318365495
|
||||
- 0.6638579318365495
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5009003374542805
|
||||
- 0.5009003374542805
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6870827721339403
|
||||
- 0.6870827721339403
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6682526461519316
|
||||
- 0.6682526461519316
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5327773503483957
|
||||
- 0.5327773503483957
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4214065690013669
|
||||
- 0.4214065690013669
|
||||
l:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.745677282404668
|
||||
- 0.745677282404668
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6917928468541735
|
||||
- 0.6917928468541735
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5861099820713479
|
||||
- 0.5861099820713479
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8082997680406668
|
||||
- 0.8082997680406668
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.513508155522566
|
||||
- 0.513508155522566
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8221134914602137
|
||||
- 0.8221134914602137
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5801999047842894
|
||||
- 0.5801999047842894
|
||||
l:
|
||||
type: st2
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.723190234494442
|
||||
- 0.723190234494442
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5910581976888503
|
||||
- 0.5910581976888503
|
||||
l:
|
||||
type: r
|
||||
rotation: 2
|
||||
r:
|
||||
type: ut1
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.48717948717948717
|
||||
- 0.48717948717948717
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5263157894736842
|
||||
- 0.5263157894736842
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5804589225989242
|
||||
- 0.5804589225989242
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5797902238175673
|
||||
- 0.5797902238175673
|
||||
l:
|
||||
type: li1
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
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: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5660486875944284
|
||||
- 0.5660486875944284
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3426142512905777
|
||||
- 0.3426142512905777
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.14221480598659772
|
||||
- 0.14221480598659772
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4470578082838084
|
||||
- 0.4470578082838084
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5008445945945945
|
||||
- 0.5008445945945945
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.19149268227071817
|
||||
- 0.19149268227071817
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
448
examples/harbor-house/evolved-unfold-chain0.dom
Normal file
448
examples/harbor-house/evolved-unfold-chain0.dom
Normal file
|
|
@ -0,0 +1,448 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5002414199166638
|
||||
- 0.5002414199166638
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6198201272472108
|
||||
- 0.6198201272472108
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5217605220117958
|
||||
- 0.5217605220117958
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7590430919985613
|
||||
- 0.7590430919985613
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.7938419737388742
|
||||
- 0.7938419737388742
|
||||
l:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7498144387419106
|
||||
- 0.7498144387419106
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.2911433327061006
|
||||
- 0.2911433327061006
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5088642132269535
|
||||
- 0.5088642132269535
|
||||
l:
|
||||
type: t
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5335936515673456
|
||||
- 0.5335936515673456
|
||||
l:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6472234492470668
|
||||
- 0.6472234492470668
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.43747481716202774
|
||||
- 0.43747481716202774
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6165142552980367
|
||||
- 0.6165142552980367
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6134920533416099
|
||||
- 0.6134920533416099
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5765395746194787
|
||||
- 0.5765395746194787
|
||||
l:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8472678521275332
|
||||
- 0.8472678521275332
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8550118963253994
|
||||
- 0.8550118963253994
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3775424828064208
|
||||
- 0.3775424828064208
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.47923829168651655
|
||||
- 0.47923829168651655
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7502693114328789
|
||||
- 0.7502693114328789
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6229469531250001
|
||||
- 0.6229469531250001
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: of
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5326035404958387
|
||||
- 0.5326035404958387
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5011097383268266
|
||||
- 0.5011097383268266
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.25132830102773074
|
||||
- 0.25132830102773074
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7173370258933403
|
||||
- 0.7173370258933403
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2593642963194206
|
||||
- 0.2593642963194206
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5662620679201393
|
||||
- 0.5662620679201393
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5300569106355991
|
||||
- 0.5300569106355991
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.0863852684329759
|
||||
- 0.0863852684329759
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3333333333333333
|
||||
- 0.3333333333333333
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5060943172283778
|
||||
- 0.5060943172283778
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5599478567102678
|
||||
- 0.5599478567102678
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7232561306495806
|
||||
- 0.7232561306495806
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7185803637162013
|
||||
- 0.7185803637162013
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4566953630047795
|
||||
- 0.4566953630047795
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.16593799911395812
|
||||
- 0.16593799911395812
|
||||
l:
|
||||
type: ut1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.525234375
|
||||
- 0.525234375
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2988974834269737
|
||||
- 0.2988974834269737
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3333333333333333
|
||||
- 0.3333333333333333
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.54782581409007
|
||||
- 0.54782581409007
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5670341721910087
|
||||
- 0.5670341721910087
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5878540477469637
|
||||
- 0.5878540477469637
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2988974834269737
|
||||
- 0.2988974834269737
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3333333333333333
|
||||
- 0.3333333333333333
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6580826806640626
|
||||
- 0.6580826806640626
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6164728327412322
|
||||
- 0.6164728327412322
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6
|
||||
- 0.6
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.33824255258409636
|
||||
- 0.33824255258409636
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5072078035781677
|
||||
- 0.5072078035781677
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: li1
|
||||
rotation: 0
|
||||
488
examples/harbor-house/evolved-unfold.dom
Normal file
488
examples/harbor-house/evolved-unfold.dom
Normal file
|
|
@ -0,0 +1,488 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5066158952271099
|
||||
- 0.5066158952271099
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6277119594295387
|
||||
- 0.6277119594295387
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5217907300660787
|
||||
- 0.5217907300660787
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7976448943474054
|
||||
- 0.7976448943474054
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.8143512774678288
|
||||
- 0.8143512774678288
|
||||
l:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7504256284125047
|
||||
- 0.7504256284125047
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.26287034668662324
|
||||
- 0.26287034668662324
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5004075606170104
|
||||
- 0.5004075606170104
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.6077531250000001
|
||||
- 0.6077531250000001
|
||||
l:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.29138064981873296
|
||||
- 0.29138064981873296
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5092789992523881
|
||||
- 0.5092789992523881
|
||||
l:
|
||||
type: t
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5473793099601537
|
||||
- 0.5473793099601537
|
||||
l:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6477510148237042
|
||||
- 0.6477510148237042
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4599966274161975
|
||||
- 0.4599966274161975
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6170167891586066
|
||||
- 0.6170167891586066
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6608090231764574
|
||||
- 0.6608090231764574
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6058600004824546
|
||||
- 0.6058600004824546
|
||||
l:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8476974185476288
|
||||
- 0.8476974185476288
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8549420379712187
|
||||
- 0.8549420379712187
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3825733535221625
|
||||
- 0.3825733535221625
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.47962892899422604
|
||||
- 0.47962892899422604
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7508808718798621
|
||||
- 0.7508808718798621
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6234547304141608
|
||||
- 0.6234547304141608
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5330376769510112
|
||||
- 0.5330376769510112
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.514056158602989
|
||||
- 0.514056158602989
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.25153316406260884
|
||||
- 0.25153316406260884
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.772781059439281
|
||||
- 0.772781059439281
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3007138460938997
|
||||
- 0.3007138460938997
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5662620679201393
|
||||
- 0.5662620679201393
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5300569106355991
|
||||
- 0.5300569106355991
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.0863852684329759
|
||||
- 0.0863852684329759
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3333333333333333
|
||||
- 0.3333333333333333
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5060943172283778
|
||||
- 0.5060943172283778
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5604042820982167
|
||||
- 0.5604042820982167
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7238456720793089
|
||||
- 0.7238456720793089
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2502037803085052
|
||||
- 0.2502037803085052
|
||||
l:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 1
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7551243985204674
|
||||
- 0.7551243985204674
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 1
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4566953630047795
|
||||
- 0.4566953630047795
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.16593799911395812
|
||||
- 0.16593799911395812
|
||||
l:
|
||||
type: ut1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.525234375
|
||||
- 0.525234375
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2988974834269737
|
||||
- 0.2988974834269737
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3333333333333333
|
||||
- 0.3333333333333333
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: li1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5482723585436795
|
||||
- 0.5482723585436795
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5670341721910087
|
||||
- 0.5670341721910087
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5878540477469637
|
||||
- 0.5878540477469637
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2988974834269737
|
||||
- 0.2988974834269737
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3333333333333333
|
||||
- 0.3333333333333333
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6580826806640626
|
||||
- 0.6580826806640626
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6164728327412322
|
||||
- 0.6164728327412322
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6
|
||||
- 0.6
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.33824255258409636
|
||||
- 0.33824255258409636
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5076212394289253
|
||||
- 0.5076212394289253
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
459
examples/harbor-house/evolved-warmshare.dom
Normal file
459
examples/harbor-house/evolved-warmshare.dom
Normal file
|
|
@ -0,0 +1,459 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4768163386613117
|
||||
- 0.4768163386613117
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5944126599075639
|
||||
- 0.5944126599075639
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5472804939816485
|
||||
- 0.5472804939816485
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7402807143631926
|
||||
- 0.7402807143631926
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.7843005082023522
|
||||
- 0.7843005082023522
|
||||
l:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6889510427688464
|
||||
- 0.6889510427688464
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5333081519606917
|
||||
- 0.5333081519606917
|
||||
l:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.2885286993072057
|
||||
- 0.2885286993072057
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4993212280676509
|
||||
- 0.4993212280676509
|
||||
l:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5131825417010754
|
||||
- 0.5131825417010754
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7080034437357043
|
||||
- 0.7080034437357043
|
||||
l:
|
||||
type: n
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6139648311552325
|
||||
- 0.6139648311552325
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5013591397304015
|
||||
- 0.5013591397304015
|
||||
l:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8722311548278028
|
||||
- 0.8722311548278028
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8869957889673794
|
||||
- 0.8869957889673794
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5312823722636988
|
||||
- 0.5312823722636988
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.44509745921579624
|
||||
- 0.44509745921579624
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5617079338312922
|
||||
- 0.5617079338312922
|
||||
l:
|
||||
type: st1
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6898964202090871
|
||||
- 0.6898964202090871
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5669044052004197
|
||||
- 0.5669044052004197
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
share: 3
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6363875026179511
|
||||
- 0.6363875026179511
|
||||
l:
|
||||
type: m
|
||||
share: 3
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5269585225340474
|
||||
- 0.5269585225340474
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.29672041388757975
|
||||
- 0.29672041388757975
|
||||
l:
|
||||
type: C
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6007774742994366
|
||||
- 0.6007774742994366
|
||||
l:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5278913421225281
|
||||
- 0.5278913421225281
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5662620679201393
|
||||
- 0.5662620679201393
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5300569106355991
|
||||
- 0.5300569106355991
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.0863852684329759
|
||||
- 0.0863852684329759
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.369644807975687
|
||||
- 0.369644807975687
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5141058756429728
|
||||
- 0.5141058756429728
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5745701513392769
|
||||
- 0.5745701513392769
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7647707778293122
|
||||
- 0.7647707778293122
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5156049090595325
|
||||
- 0.5156049090595325
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
share: 2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4566953630047795
|
||||
- 0.4566953630047795
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.16593799911395812
|
||||
- 0.16593799911395812
|
||||
l:
|
||||
type: ut1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2988974834269737
|
||||
- 0.2988974834269737
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5952496254604416
|
||||
- 0.5952496254604416
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.36607851965817206
|
||||
- 0.36607851965817206
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.46749737177241624
|
||||
- 0.46749737177241624
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3650199894489847
|
||||
- 0.3650199894489847
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.32003090758775143
|
||||
- 0.32003090758775143
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5670341721910087
|
||||
- 0.5670341721910087
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5878540477469637
|
||||
- 0.5878540477469637
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2988974834269737
|
||||
- 0.2988974834269737
|
||||
l:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
type: st2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7022341111436592
|
||||
- 0.7022341111436592
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5954960653711328
|
||||
- 0.5954960653711328
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6164728327412322
|
||||
- 0.6164728327412322
|
||||
l:
|
||||
type: r
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6
|
||||
- 0.6
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.553406681267078
|
||||
- 0.553406681267078
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: li1
|
||||
rotation: 0
|
||||
448
examples/harbor-house/materialised-3M.dom
Normal file
448
examples/harbor-house/materialised-3M.dom
Normal file
|
|
@ -0,0 +1,448 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 25.0
|
||||
- 2.0
|
||||
- - 23.0
|
||||
- 31.0
|
||||
- - 0.0
|
||||
- 31.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4888900105484264
|
||||
- 0.4888900105484264
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5938247521970288
|
||||
- 0.5938247521970288
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5472887522186323
|
||||
- 0.5472887522186323
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7482565199547276
|
||||
- 0.7482565199547276
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.7634740326506355
|
||||
- 0.7634740326506355
|
||||
l:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.48227518337297415
|
||||
- 0.48227518337297415
|
||||
l:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.2876274429075646
|
||||
- 0.2876274429075646
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4977615341676925
|
||||
- 0.4977615341676925
|
||||
l:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5260108852851195
|
||||
- 0.5260108852851195
|
||||
l:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6397932334327496
|
||||
- 0.6397932334327496
|
||||
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.554484404426573
|
||||
- 0.554484404426573
|
||||
l:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8502200490349778
|
||||
- 0.8502200490349778
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8442580239222437
|
||||
- 0.8442580239222437
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3758880797422988
|
||||
- 0.3758880797422988
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3333333333333333
|
||||
- 0.3333333333333333
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: of
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5154341184740678
|
||||
- 0.5154341184740678
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3333333333333333
|
||||
- 0.3333333333333333
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.2616194760651602
|
||||
- 0.2616194760651602
|
||||
l:
|
||||
type: st1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5989008688013605
|
||||
- 0.5989008688013605
|
||||
l:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5662620679201393
|
||||
- 0.5662620679201393
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5300569106355991
|
||||
- 0.5300569106355991
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.0863852684329759
|
||||
- 0.0863852684329759
|
||||
l:
|
||||
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.369644807975687
|
||||
- 0.369644807975687
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5125
|
||||
- 0.5125
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6910915096691898
|
||||
- 0.6910915096691898
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4566953630047795
|
||||
- 0.4566953630047795
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.16593799911395812
|
||||
- 0.16593799911395812
|
||||
l:
|
||||
type: ut1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.525234375
|
||||
- 0.525234375
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2988974834269737
|
||||
- 0.2988974834269737
|
||||
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:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5670341721910087
|
||||
- 0.5670341721910087
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5878540477469637
|
||||
- 0.5878540477469637
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2988974834269737
|
||||
- 0.2988974834269737
|
||||
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: st2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6580826806640626
|
||||
- 0.6580826806640626
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6164728327412322
|
||||
- 0.6164728327412322
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6
|
||||
- 0.6
|
||||
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: li1
|
||||
rotation: 0
|
||||
|
|
@ -7,6 +7,7 @@
|
|||
spaces:
|
||||
# GROUND FLOOR - Main Community Areas
|
||||
cr1:
|
||||
usage: living
|
||||
name: Common Room with Fireplace
|
||||
size:
|
||||
- 80.0
|
||||
|
|
@ -23,6 +24,7 @@ spaces:
|
|||
- o
|
||||
|
||||
ef1:
|
||||
usage: none
|
||||
name: Entrance Foyer
|
||||
size:
|
||||
- 15.0
|
||||
|
|
@ -40,6 +42,7 @@ spaces:
|
|||
- m
|
||||
|
||||
da1:
|
||||
usage: living
|
||||
name: Dining Area
|
||||
size:
|
||||
- 60.0
|
||||
|
|
@ -57,6 +60,7 @@ spaces:
|
|||
- o
|
||||
|
||||
k1:
|
||||
usage: kitchen
|
||||
name: Kitchen
|
||||
size:
|
||||
- 30.0
|
||||
|
|
@ -71,6 +75,7 @@ spaces:
|
|||
|
||||
# SLEEPING AREAS - Anonymous neighborhoods (5 total, 2 ground + 3 first)
|
||||
n:
|
||||
usage: bedroom
|
||||
name: Neighborhood
|
||||
size:
|
||||
- 60.0
|
||||
|
|
@ -87,6 +92,7 @@ spaces:
|
|||
|
||||
# GROUND FLOOR - Activity Spaces
|
||||
ws1:
|
||||
usage: living
|
||||
name: Workshop Space
|
||||
size:
|
||||
- 40.0
|
||||
|
|
@ -104,6 +110,7 @@ spaces:
|
|||
|
||||
# MEETING ROOMS - Anonymous interchangeable (3 total)
|
||||
m:
|
||||
usage: living
|
||||
name: Meeting Room
|
||||
size:
|
||||
- 10.0
|
||||
|
|
@ -121,6 +128,7 @@ spaces:
|
|||
# GROUND FLOOR - Service Areas
|
||||
# BATHROOMS - Ground floor (3 total)
|
||||
t:
|
||||
usage: toilet
|
||||
name: Bathroom
|
||||
size:
|
||||
- 6.0
|
||||
|
|
@ -130,9 +138,11 @@ spaces:
|
|||
- 0.5
|
||||
adjacency:
|
||||
- c
|
||||
- n # Brand: a WC beside sleeping space can be knocked through later
|
||||
count: 6 # 3 ground + 3 first floor
|
||||
|
||||
la1:
|
||||
usage: utility
|
||||
name: Laundry Room
|
||||
size:
|
||||
- 20.0
|
||||
|
|
@ -149,6 +159,8 @@ spaces:
|
|||
- me1
|
||||
|
||||
st1:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: Ground Floor Storage
|
||||
size:
|
||||
- 22.0
|
||||
|
|
@ -161,6 +173,8 @@ spaces:
|
|||
- c
|
||||
|
||||
me1:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: Mechanical/Electrical Room
|
||||
size:
|
||||
- 25.0
|
||||
|
|
@ -176,6 +190,7 @@ spaces:
|
|||
|
||||
# STAFF OFFICES - Anonymous (2 total)
|
||||
of:
|
||||
usage: bedroom
|
||||
name: Staff Office
|
||||
size:
|
||||
- 12.5
|
||||
|
|
@ -190,6 +205,7 @@ spaces:
|
|||
|
||||
# FIRST FLOOR - Community Areas
|
||||
li1:
|
||||
usage: living
|
||||
name: Library Corner
|
||||
size:
|
||||
- 20.0
|
||||
|
|
@ -203,6 +219,7 @@ spaces:
|
|||
|
||||
# FIRST FLOOR - Individual Rooms (10 anonymous rooms)
|
||||
r:
|
||||
usage: bedroom
|
||||
name: Individual Room
|
||||
size:
|
||||
- 10.0
|
||||
|
|
@ -217,6 +234,8 @@ spaces:
|
|||
|
||||
# FIRST FLOOR - Storage
|
||||
st2:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: First Floor Storage
|
||||
size:
|
||||
- 18.0
|
||||
|
|
@ -229,6 +248,8 @@ spaces:
|
|||
- c
|
||||
|
||||
ut1:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: Utilities Closet
|
||||
size:
|
||||
- 14.0
|
||||
|
|
@ -243,17 +264,28 @@ spaces:
|
|||
# Building constraints
|
||||
storey_minimum: 2
|
||||
storey_limit: 3
|
||||
force_roof_garden: 0
|
||||
# homemaker-py-hxi (DESIGN.md §39.25): ENABLED. Fails a level that has no
|
||||
# outdoor space at all -- Alexander's actual requirement, per level and with no
|
||||
# quantity attached. It had been off in every corpus config, so the only thing
|
||||
# expressing outdoor space was ratio_outside's arbitrary fraction.
|
||||
force_roof_garden: 1
|
||||
|
||||
# Circulation ratio (allow more circulation for larger building)
|
||||
# homemaker-py-hxi (DESIGN.md §39.24): disabled. The score is value/cost, a
|
||||
# ratio, so the per-m2 economics (circulation worth 50 against a build cost of
|
||||
# 200) is ALREADY a proportional pressure against circulation -- this said the
|
||||
# same thing a second time, and with a curve where twice the corridor is far
|
||||
# more than twice as bad. Its other side, "a building needs some circulation",
|
||||
# was worth at most 13% here and is enforced structurally anyway by the access
|
||||
# and connectivity checks. Set a [target, sigma] pair to re-enable.
|
||||
ratio_circulation:
|
||||
- 0.08
|
||||
- 0.15
|
||||
|
||||
# Outside space ratio (courtyard requirement)
|
||||
# homemaker-py-hxi (DESIGN.md §39.25): disabled. Alexander says every level
|
||||
# should have accessible outside space; he does not say how much. The
|
||||
# qualitative requirement is force_roof_garden below. Set a [target, sigma]
|
||||
# pair to re-enable this quantitative one.
|
||||
ratio_outside:
|
||||
- 0.15
|
||||
- 0.10
|
||||
|
||||
# Staircase requirements (main + secondary)
|
||||
staircase_min: 2
|
||||
|
|
@ -263,4 +295,9 @@ staircase_max: 2
|
|||
value_inside: 300.0
|
||||
value_circulation: 50.0
|
||||
value_outside: 100.0
|
||||
value_supported: 300.0
|
||||
# homemaker-py-ecx (DESIGN.md §39.19): an upper-level terrace is worth what
|
||||
# outdoor space is worth (value_outside); it is the COST that differs by level
|
||||
# (outside 10.0 vs outside_supported 110.0), not the value. At 300.0 -- the
|
||||
# `value_inside` rate -- a terrace was worth more per square metre than a real
|
||||
# internal room, which the owner ruled out.
|
||||
value_supported: 100.0
|
||||
|
|
|
|||
292
examples/health-centre/coldstart-500000-s0.dom
Normal file
292
examples/health-centre/coldstart-500000-s0.dom
Normal file
|
|
@ -0,0 +1,292 @@
|
|||
node:
|
||||
- - -2.499098
|
||||
- 3.896165
|
||||
- - 16.284033
|
||||
- 8.678435
|
||||
- - 11.155808
|
||||
- 29.106947
|
||||
- - -8.073955
|
||||
- 25.262724
|
||||
perimeter:
|
||||
a: private
|
||||
b: null
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5286180805540397
|
||||
- 0.5286180805540397
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5548181096225262
|
||||
- 0.5548181096225262
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4910959187486891
|
||||
- 0.4910959187486891
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.39165065346821715
|
||||
- 0.39165065346821715
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5286747953765261
|
||||
- 0.5286747953765261
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5073915709272532
|
||||
- 0.5073915709272532
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t9
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6789833554643051
|
||||
- 0.6789833554643051
|
||||
l:
|
||||
type: wa1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.37936865556483007
|
||||
- 0.37936865556483007
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5751518803895523
|
||||
- 0.5751518803895523
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3434916386608414
|
||||
- 0.3434916386608414
|
||||
l:
|
||||
type: ph1
|
||||
rotation: 0
|
||||
r:
|
||||
type: pt1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5472482550512459
|
||||
- 0.5472482550512459
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5717924171555203
|
||||
- 0.5717924171555203
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4409813747940315
|
||||
- 0.4409813747940315
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: br1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.41364489805177573
|
||||
- 0.41364489805177573
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5482954695086615
|
||||
- 0.5482954695086615
|
||||
l:
|
||||
type: mo1
|
||||
rotation: 0
|
||||
r:
|
||||
type: dp1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5212170858325074
|
||||
- 0.5212170858325074
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.46373341702925686
|
||||
- 0.46373341702925686
|
||||
l:
|
||||
type: t9
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4407559182834302
|
||||
- 0.4407559182834302
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4417442809854565
|
||||
- 0.4417442809854565
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7274378846643093
|
||||
- 0.7274378846643093
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6618005954237105
|
||||
- 0.6618005954237105
|
||||
l:
|
||||
type: tr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.31747964545355944
|
||||
- 0.31747964545355944
|
||||
l:
|
||||
type: t10
|
||||
rotation: 0
|
||||
r:
|
||||
type: re1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5771110251494367
|
||||
- 0.5771110251494367
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.44296062164922595
|
||||
- 0.44296062164922595
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5024066201491242
|
||||
- 0.5024066201491242
|
||||
l:
|
||||
type: zt1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: ao1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6268769335384348
|
||||
- 0.6268769335384348
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5125
|
||||
- 0.5125
|
||||
l:
|
||||
type: qr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: rc1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.6240746638398098
|
||||
- 0.6240746638398098
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5496871290519072
|
||||
- 0.5496871290519072
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4840187454075916
|
||||
- 0.4840187454075916
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.505063907726268
|
||||
- 0.505063907726268
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: kt1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7274159015455219
|
||||
- 0.7274159015455219
|
||||
l:
|
||||
type: ms1
|
||||
rotation: 0
|
||||
r:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7182885358197997
|
||||
- 0.7182885358197997
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7129912566129764
|
||||
- 0.7129912566129764
|
||||
l:
|
||||
type: de1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: gp1
|
||||
rotation: 3
|
||||
86
examples/health-centre/coldstart-500000-s0.log
Normal file
86
examples/health-centre/coldstart-500000-s0.log
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/health-centre/init.dom
|
||||
programme : health-centre
|
||||
budget : 500000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 1
|
||||
rng seed : 0
|
||||
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/health-centre/coldstart-500000-s0.dom
|
||||
[ 80 evals] best 8.18513e-10 (fails 22) via construct/0
|
||||
[ 1920 evals] best 1.44035e-09 (fails 21) via level_compound_fix noop
|
||||
[ 2720 evals] best 2.97297e-09 (fails 21) via place_missing t9 -> rlrll
|
||||
[ 2880 evals] best 3.17196e-09 (fails 21) via crossover rrlrr<->llrrl
|
||||
[ 2960 evals] best 3.38093e-09 (fails 21) via level_retype noop
|
||||
[ 3280 evals] best 3.95337e-08 (fails 18) via place_missing me1 -> lrrrr
|
||||
[ 3440 evals] best 1.55555e-07 (fails 16) via place_missing mo1 -> lrrrr
|
||||
[ 4480 evals] best 1.63054e-07 (fails 16) via level_delete noop
|
||||
[ 4960 evals] best 1.68058e-07 (fails 16) via core_divide noop
|
||||
[ 5200 evals] best 1.73172e-07 (fails 16) via level_compound_fix noop
|
||||
[ 6480 evals] best 1.32598e-05 (fails 9) via crossover rrll<->lllr
|
||||
[ 8160 evals] best 1.5086e-05 (fails 9) via core_divide noop
|
||||
[ 8800 evals] best 1.59072e-05 (fails 9) via swap 0/rrlr
|
||||
[ 9280 evals] best 1.68254e-05 (fails 9) via core_divide noop
|
||||
[ 9360 evals] best 1.79867e-05 (fails 9) via swap 0/rllr
|
||||
[ 11280 evals] best 1.9237e-05 (fails 8) via level_delete noop
|
||||
[ 12800 evals] best 3.78619e-05 (fails 8) via retype 0/rrlrr->tr1
|
||||
[ 13040 evals] best 0.000117921 (fails 6) via swap 0/llll
|
||||
[ 13360 evals] best 0.000135727 (fails 6) via level_compound_fix noop
|
||||
[ 14080 evals] best 0.0002732 (fails 5) via crossover rrrr<->rllr
|
||||
[ 15040 evals] best 0.000306904 (fails 5) via level_retype noop
|
||||
[ 15840 evals] best 0.000324217 (fails 5) via retype 0/lllrl->qr1
|
||||
[ 16160 evals] best 0.000342695 (fails 5) via level_fix noop
|
||||
[ 20400 evals] best 0.000360157 (fails 5) via level_delete noop
|
||||
[ 20960 evals] best 0.000378411 (fails 5) via level_compound_fix noop
|
||||
[ 21360 evals] best 0.000141908 (fails 4) via crossover rrll<->llll
|
||||
[ 22080 evals] best 0.000169723 (fails 4) via core_undivide noop
|
||||
[ 22400 evals] best 0.000170498 (fails 4) via rotate 0/lrrrr
|
||||
[ 23200 evals] best 0.000181366 (fails 4) via level_compound_fix noop
|
||||
[ 26560 evals] best 0.000182185 (fails 4) via level_compound_fix noop
|
||||
[ 27520 evals] best 0.000194431 (fails 4) via level_fix noop
|
||||
[ 28320 evals] best 0.000206958 (fails 4) via core_divide noop
|
||||
[ 29120 evals] best 0.000220107 (fails 4) via level_retype noop
|
||||
[ 31760 evals] best 0.000230833 (fails 4) via core_divide noop
|
||||
[ 32000 evals] best 0.000395146 (fails 3) via crossover rllrl<->rrlrr
|
||||
[ 32320 evals] best 0.000420102 (fails 3) via swap 0/rrlr
|
||||
[ 32960 evals] best 0.000439878 (fails 3) via crossover rrrrr<->llllrr
|
||||
[ 33120 evals] best 0.000458971 (fails 3) via level_fix noop
|
||||
[ 34160 evals] best 0.000478749 (fails 3) via level_fix noop
|
||||
[ 34640 evals] best 0.000744 (fails 3) via undivide 0/lrlr
|
||||
[ 39280 evals] best 0.000770381 (fails 3) via level_fix noop
|
||||
[ 40800 evals] best 0.00079688 (fails 3) via level_compound_fix noop
|
||||
[ 40880 evals] best 0.000821741 (fails 3) via core_undivide noop
|
||||
[ 41200 evals] best 0.000841435 (fails 3) via core_undivide noop
|
||||
[ 46480 evals] best 0.000867499 (fails 3) via level_delete noop
|
||||
[ 47360 evals] best 0.00127332 (fails 3) via crossover rlrrr<->rrllrl
|
||||
[ 50880 evals] best 0.00131277 (fails 3) via crossover rrrlr<->rrllrl
|
||||
[ 52240 evals] best 0.0013505 (fails 3) via core_undivide noop
|
||||
[ 53120 evals] best 0.00137937 (fails 3) via level_retype noop
|
||||
[ 53840 evals] best 0.00139966 (fails 3) via level_retype noop
|
||||
[ 57040 evals] best 0.00142768 (fails 3) via core_divide noop
|
||||
[ 59920 evals] best 0.00145592 (fails 3) via level_compound_fix noop
|
||||
[ 60080 evals] best 0.00148344 (fails 3) via level_fix noop
|
||||
[ 65920 evals] best 0.00151078 (fails 3) via level_retype noop
|
||||
[ 68720 evals] best 0.00154496 (fails 3) via core_undivide noop
|
||||
[ 68880 evals] best 0.00157101 (fails 3) via retype 0/rrrrr->dp1
|
||||
[ 70480 evals] best 0.00159557 (fails 3) via crossover lrlll<->lrlll
|
||||
[ 70640 evals] best 0.00161909 (fails 3) via level_fix noop
|
||||
[ 70880 evals] best 0.00164187 (fails 3) via core_divide noop
|
||||
[ 75200 evals] best 0.0016633 (fails 3) via crossover rlrlr<->rlrlr
|
||||
[ 75760 evals] best 0.00168434 (fails 3) via core_undivide noop
|
||||
[ 76080 evals] best 0.00172043 (fails 3) via level_compound_fix noop
|
||||
[ 77360 evals] best 0.00174777 (fails 3) via level_fix noop
|
||||
[ 77440 evals] best 0.00175949 (fails 3) via core_undivide noop
|
||||
[ 81360 evals] best 0.00178352 (fails 3) via crossover rrll<->llll
|
||||
[ 81440 evals] best 0.00181117 (fails 3) via level_fix noop
|
||||
[ 84000 evals] best 0.00181757 (fails 3) via crossover lllll<->llrlr
|
||||
[ 87920 evals] best 0.00181815 (fails 3) via core_divide noop
|
||||
260
examples/health-centre/coldstart-500000-s1.dom
Normal file
260
examples/health-centre/coldstart-500000-s1.dom
Normal file
|
|
@ -0,0 +1,260 @@
|
|||
node:
|
||||
- - -2.499098
|
||||
- 3.896165
|
||||
- - 16.284033
|
||||
- 8.678435
|
||||
- - 11.155808
|
||||
- 29.106947
|
||||
- - -8.073955
|
||||
- 25.262724
|
||||
perimeter:
|
||||
a: private
|
||||
b: null
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5701666606862493
|
||||
- 0.5701666606862493
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4840271488806444
|
||||
- 0.4840271488806444
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5354807534159516
|
||||
- 0.5354807534159516
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5244535547136123
|
||||
- 0.5244535547136123
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5266921686935456
|
||||
- 0.5266921686935456
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.509959364564228
|
||||
- 0.509959364564228
|
||||
l:
|
||||
type: re1
|
||||
rotation: 1
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: pt1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.51615828542533
|
||||
- 0.51615828542533
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5156401493228953
|
||||
- 0.5156401493228953
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: mo1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.61768114817708
|
||||
- 0.61768114817708
|
||||
l:
|
||||
type: gp1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6584193216875921
|
||||
- 0.6584193216875921
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7950283540618827
|
||||
- 0.7950283540618827
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.702320213548134
|
||||
- 0.702320213548134
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5150591948587837
|
||||
- 0.5150591948587837
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6462482590826826
|
||||
- 0.6462482590826826
|
||||
l:
|
||||
type: rc1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: br1
|
||||
rotation: 0
|
||||
r:
|
||||
type: ph1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.49713045553185103
|
||||
- 0.49713045553185103
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: wa1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6427828114917011
|
||||
- 0.6427828114917011
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7223946504418148
|
||||
- 0.7223946504418148
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7230237530995272
|
||||
- 0.7230237530995272
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.556601514753792
|
||||
- 0.556601514753792
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6903707936703987
|
||||
- 0.6903707936703987
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5424393697846557
|
||||
- 0.5424393697846557
|
||||
l:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
type: dp1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: ms1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7762930779409527
|
||||
- 0.7762930779409527
|
||||
l:
|
||||
type: ao1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6699089068785757
|
||||
- 0.6699089068785757
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.548549015630394
|
||||
- 0.548549015630394
|
||||
l:
|
||||
type: qr1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: t9
|
||||
rotation: 0
|
||||
r:
|
||||
type: t9
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 2
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.49413504987498297
|
||||
- 0.49413504987498297
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5753083563813634
|
||||
- 0.5753083563813634
|
||||
l:
|
||||
type: tr1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8047412705277578
|
||||
- 0.8047412705277578
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t10
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.629162144943071
|
||||
- 0.629162144943071
|
||||
l:
|
||||
type: de1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6632706380144355
|
||||
- 0.6632706380144355
|
||||
l:
|
||||
type: kt1
|
||||
rotation: 0
|
||||
r:
|
||||
type: zt1
|
||||
rotation: 0
|
||||
312
examples/health-centre/coldstart-500000-s1.log
Normal file
312
examples/health-centre/coldstart-500000-s1.log
Normal file
|
|
@ -0,0 +1,312 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/health-centre/init.dom
|
||||
programme : health-centre
|
||||
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/health-centre/coldstart-500000-s1.dom
|
||||
[ 80 evals] best 3.1736e-10 (fails 22) via construct/0
|
||||
[ 1680 evals] best 3.50032e-10 (fails 22) via divide 0/rrrlr
|
||||
[ 1760 evals] best 7.19233e-10 (fails 21) via crossover llrrl<->lrllr
|
||||
[ 3280 evals] best 1.03739e-09 (fails 21) via divide 0/rrllr
|
||||
[ 4960 evals] best 1.22255e-09 (fails 21) via level_compound_fix noop
|
||||
[ 5280 evals] best 4.22556e-09 (fails 21) via core_divide noop
|
||||
[ 5600 evals] best 5.51514e-09 (fails 21) via undivide 0/lrrl
|
||||
[ 5680 evals] best 8.91318e-09 (fails 20) via core_divide noop
|
||||
[ 6160 evals] best 9.30404e-09 (fails 20) via swap 0/rllr
|
||||
[ 6240 evals] best 9.84227e-09 (fails 20) via level_fix noop
|
||||
[ 6880 evals] best 3.11282e-08 (fails 18) via swap 0/lllr
|
||||
[ 7920 evals] best 3.54361e-08 (fails 18) via core_undivide noop
|
||||
[ 8720 evals] best 3.87738e-08 (fails 18) via level_retype noop
|
||||
[ 9440 evals] best 4.0316e-08 (fails 18) via core_undivide noop
|
||||
[ 10160 evals] best 4.28614e-08 (fails 18) via level_retype noop
|
||||
[ 11280 evals] best 4.44456e-08 (fails 18) via level_retype noop
|
||||
[ 11680 evals] best 4.57955e-08 (fails 18) via core_divide noop
|
||||
[ 11760 evals] best 4.70161e-08 (fails 18) via level_fix noop
|
||||
[ 12080 evals] best 4.80406e-08 (fails 18) via core_divide noop
|
||||
[ 12480 evals] best 4.88839e-08 (fails 18) via crossover llll<->llrr
|
||||
[ 13680 evals] best 5.00536e-08 (fails 18) via core_undivide noop
|
||||
[ 13920 evals] best 5.1903e-08 (fails 18) via core_divide noop
|
||||
[ 15360 evals] best 1.07206e-07 (fails 17) via rotate 0/lrll
|
||||
[ 16000 evals] best 1.11145e-07 (fails 17) via level_retype noop
|
||||
[ 16960 evals] best 1.15107e-07 (fails 17) via level_compound_fix noop
|
||||
[ 20160 evals] best 1.18837e-07 (fails 17) via level_compound_fix noop
|
||||
[ 20720 evals] best 1.23415e-07 (fails 17) via core_divide noop
|
||||
[ 21600 evals] best 1.28355e-07 (fails 17) via core_undivide noop
|
||||
[ 22640 evals] best 1.45451e-07 (fails 17) via crossover rllrr<->rrlll
|
||||
[ 22720 evals] best 2.11935e-07 (fails 15) via divide 0/rllll
|
||||
[ 23360 evals] best 2.59099e-07 (fails 15) via level_compound_fix noop
|
||||
[ 24560 evals] best 2.70734e-07 (fails 15) via level_retype noop
|
||||
[ 24880 evals] best 2.831e-07 (fails 15) via crossover rlrll<->rrrrl
|
||||
[ 26640 evals] best 2.96078e-07 (fails 15) via level_fix noop
|
||||
[ 29360 evals] best 2.23985e-07 (fails 12) via crossover llllr<->llrll
|
||||
[ 30640 evals] best 3.33889e-07 (fails 12) via retype 0/lllrr->qr1
|
||||
[ 30880 evals] best 7.38785e-07 (fails 12) via undivide 0/lllr
|
||||
[ 32400 evals] best 8.40919e-07 (fails 12) via core_undivide noop
|
||||
[ 32800 evals] best 9.27558e-07 (fails 12) via level_retype noop
|
||||
[ 33520 evals] best 9.64174e-07 (fails 12) via level_compound_fix noop
|
||||
[ 34480 evals] best 1.00228e-06 (fails 12) via level_compound_fix noop
|
||||
[ 35200 evals] best 2.78977e-06 (fails 11) via crossover rllr<->lrlr
|
||||
[ 35920 evals] best 2.85975e-06 (fails 11) via core_undivide noop
|
||||
[ 36960 evals] best 2.92802e-06 (fails 11) via crossover rrlll<->lrrrl
|
||||
[ 40160 evals] best 2.99391e-06 (fails 11) via core_undivide noop
|
||||
[ 42240 evals] best 3.05636e-06 (fails 11) via core_undivide noop
|
||||
[ 43520 evals] best 3.79692e-06 (fails 11) via level_fix noop
|
||||
[ 44000 evals] best 3.86939e-06 (fails 11) via level_compound_fix noop
|
||||
[ 44560 evals] best 3.92184e-06 (fails 11) via core_divide noop
|
||||
[ 45200 evals] best 4.00078e-06 (fails 11) via level_retype noop
|
||||
[ 46640 evals] best 4.07573e-06 (fails 11) via crossover lrrll<->rrrll
|
||||
[ 49120 evals] best 4.1134e-06 (fails 11) via core_undivide noop
|
||||
[ 49520 evals] best 4.13763e-06 (fails 11) via level_compound_fix noop
|
||||
[ 49920 evals] best 4.14563e-06 (fails 11) via core_divide noop
|
||||
[ 50240 evals] best 4.14854e-06 (fails 11) via level_fix noop
|
||||
[ 50720 evals] best 4.28298e-06 (fails 11) via level_fix noop
|
||||
[ 51280 evals] best 4.28373e-06 (fails 11) via retype 0/lrlll->me1
|
||||
[ 55120 evals] best 9.85033e-07 (fails 10) via crossover lrlll<->llll
|
||||
[ 55360 evals] best 1.01968e-06 (fails 10) via level_compound_fix noop
|
||||
[ 57280 evals] best 1.4741e-06 (fails 10) via undivide 0/lrrr
|
||||
[ 58640 evals] best 1.50576e-06 (fails 10) via level_fix noop
|
||||
[ 59040 evals] best 1.54157e-06 (fails 10) via level_retype noop
|
||||
[ 60320 evals] best 1.58245e-06 (fails 10) via core_undivide noop
|
||||
[ 62080 evals] best 1.60981e-06 (fails 10) via crossover lrr<->lrr
|
||||
[ 63840 evals] best 2.74194e-06 (fails 9) via retype 0/rrrrr->mo1
|
||||
[ 64400 evals] best 2.81093e-06 (fails 9) via core_divide noop
|
||||
[ 64560 evals] best 2.89773e-06 (fails 9) via core_divide noop
|
||||
[ 66080 evals] best 1.42037e-05 (fails 8) via crossover lrr<->rrll
|
||||
[ 66880 evals] best 1.48441e-05 (fails 8) via rotate 0/rlrr
|
||||
[ 68080 evals] best 1.52409e-05 (fails 8) via level_fix noop
|
||||
[ 68560 evals] best 1.56119e-05 (fails 8) via level_retype noop
|
||||
[ 69120 evals] best 1.59331e-05 (fails 8) via level_compound_fix noop
|
||||
[ 70880 evals] best 1.61441e-05 (fails 8) via level_compound_fix noop
|
||||
[ 71120 evals] best 3.42507e-05 (fails 7) via undivide 0/rrrl
|
||||
[ 72640 evals] best 3.47537e-05 (fails 7) via core_undivide noop
|
||||
[ 75840 evals] best 3.49427e-05 (fails 7) via level_retype noop
|
||||
[ 77040 evals] best 3.49682e-05 (fails 7) via core_divide noop
|
||||
[ 77520 evals] best 3.50353e-05 (fails 7) via retype 0/rrrl->qr1
|
||||
[ 78800 evals] best 3.64925e-05 (fails 7) via level_fix noop
|
||||
[ 81280 evals] best 3.7884e-05 (fails 7) via core_undivide noop
|
||||
[ 81520 evals] best 3.89932e-05 (fails 7) via core_divide noop
|
||||
[ 82640 evals] best 3.98419e-05 (fails 7) via core_divide noop
|
||||
[ 85360 evals] best 4.05998e-05 (fails 7) via level_retype noop
|
||||
[ 87440 evals] best 4.128e-05 (fails 7) via level_retype noop
|
||||
[ 88160 evals] best 4.17275e-05 (fails 7) via core_undivide noop
|
||||
[ 90080 evals] best 4.20007e-05 (fails 7) via level_retype noop
|
||||
[ 92560 evals] best 4.21287e-05 (fails 7) via level_compound_fix noop
|
||||
[ 92960 evals] best 4.22968e-05 (fails 7) via level_delete noop
|
||||
[ 97360 evals] best 4.24328e-05 (fails 7) via level_compound_fix noop
|
||||
[102000 evals] best 4.24811e-05 (fails 7) via level_retype noop
|
||||
[105200 evals] best 4.25673e-05 (fails 7) via core_divide noop
|
||||
[106080 evals] best 4.29149e-05 (fails 7) via crossover rlrl<->rrrr
|
||||
[107200 evals] best 4.32068e-05 (fails 7) via retype 0/rrllr->qr1
|
||||
[107520 evals] best 4.32209e-05 (fails 7) via retype 0/rrrl->dp1
|
||||
[113520 evals] best 4.32209e-05 (fails 7) via crossover lrrr<->rrrl
|
||||
[122880 evals] best 9.30692e-05 (fails 7) via undivide 0/rlrr
|
||||
[123520 evals] best 9.32949e-05 (fails 7) via level_fix noop
|
||||
[124480 evals] best 9.33002e-05 (fails 7) via level_fix noop
|
||||
[144400 evals] best 0.000107422 (fails 7) via undivide 0/rlrr
|
||||
[148560 evals] best 0.000113564 (fails 7) via retype 0/lrlllrl->t10
|
||||
[150640 evals] best 0.000117071 (fails 7) via level_compound_fix noop
|
||||
[151040 evals] best 0.000121829 (fails 7) via level_retype noop
|
||||
[153040 evals] best 0.000124879 (fails 7) via level_retype noop
|
||||
[157680 evals] best 0.000126775 (fails 7) via crossover lrlllrr<->llrll
|
||||
[158800 evals] best 0.000240095 (fails 7) via undivide 0/rrll
|
||||
[163680 evals] best 0.000499652 (fails 6) via level_retype noop
|
||||
[164640 evals] best 0.000508459 (fails 6) via core_undivide noop
|
||||
[165440 evals] best 0.00050947 (fails 6) via level_retype noop
|
||||
[174400 evals] best 0.000510996 (fails 6) via core_undivide noop
|
||||
[201200 evals] best 0.000521531 (fails 6) via rotate 0/rrrr
|
||||
[202800 evals] best 0.000524554 (fails 6) via level_compound_fix noop
|
||||
[216400 evals] best 0.000524554 (fails 6) via crossover rlllr<->rrll
|
||||
[231680 evals] best 0.000581588 (fails 6) via crossover llrr<->rllr
|
||||
[232800 evals] best 0.000631983 (fails 6) via crossover rllllr<->rllllr
|
||||
[233600 evals] best 0.000663972 (fails 6) via rotate 0/rlllll
|
||||
[234400 evals] best 0.000679543 (fails 6) via rotate 0/lr
|
||||
[235120 evals] best 0.000680799 (fails 6) via level_compound_fix noop
|
||||
[235280 evals] best 0.000704214 (fails 6) via level_fix noop
|
||||
[235360 evals] best 0.00070883 (fails 6) via level_compound_fix noop
|
||||
[235600 evals] best 0.000710322 (fails 6) via level_fix noop
|
||||
[282720 evals] best 0.000710418 (fails 6) via level_retype noop
|
||||
[283200 evals] best 0.000710928 (fails 6) via core_divide noop
|
||||
[288800 evals] best 0.000783033 (fails 6) via swap 0/llllr
|
||||
[299600 evals] best 0.000806961 (fails 6) via undivide 0/lrlr
|
||||
[405760 evals] best 0.00148576 (fails 5) via level_compound_fix noop
|
||||
[405840 evals] best 0.00148617 (fails 5) via core_divide noop
|
||||
|
||||
--- finishing (homemaker-py-3l6): unfold + polish 250000 evals ---
|
||||
[finish] unfold: materialised 2 shared-leaf copies
|
||||
[ 200 evals] best 1.47634e-06 (fails 15) via seed
|
||||
[ 280 evals] best 1.49152e-06 (fails 15) via level_retype noop
|
||||
[ 600 evals] best 1.50542e-06 (fails 15) via level_compound_fix noop
|
||||
[ 680 evals] best 1.51829e-06 (fails 15) via level_fix noop
|
||||
[ 840 evals] best 4.82862e-05 (fails 10) via undivide 0/rrrrr
|
||||
[ 1880 evals] best 4.84983e-05 (fails 10) via crossover rlrlrr<->llllrl
|
||||
[ 38440 evals] best 8.15165e-05 (fails 9) via swap 0/rlrlr
|
||||
[ 41960 evals] best 8.32787e-05 (fails 9) via core_undivide noop
|
||||
[ 42120 evals] best 9.93915e-05 (fails 9) via crossover rrrr<->rlrlr
|
||||
[114680 evals] best 0.000100561 (fails 9) via retype 0/rrrrr->zt1
|
||||
[182760 evals] best 0.000100577 (fails 9) via crossover rlllllr<->llrrl
|
||||
[184200 evals] best 0.000101129 (fails 9) via core_undivide noop
|
||||
[186920 evals] best 0.000101234 (fails 9) via level_fix noop
|
||||
[187160 evals] best 0.000101292 (fails 9) via retype 0/rllllll->dp1
|
||||
|
||||
--- collapse (homemaker-py-94g): finish-time cell→room relabel ---
|
||||
[finish] collapse: 97 → 9 fails (applied)
|
||||
|
||||
--- done ---
|
||||
elapsed : 124897.0s
|
||||
evals : 750040 across 9374 topologies
|
||||
best : 0.000101292 (9 fails) via retype 0/rllllll->dp1+collapse
|
||||
|
||||
improvement history:
|
||||
[ 80] 3.1736e-10 (share:construct/0)
|
||||
[ 1680] 3.50032e-10 (share:divide 0/rrrlr)
|
||||
[ 1760] 7.19233e-10 (share:crossover llrrl<->lrllr)
|
||||
[ 3280] 1.03739e-09 (share:divide 0/rrllr)
|
||||
[ 4960] 1.22255e-09 (share:level_compound_fix noop)
|
||||
[ 5280] 4.22556e-09 (share:core_divide noop)
|
||||
[ 5600] 5.51514e-09 (share:undivide 0/lrrl)
|
||||
[ 5680] 8.91318e-09 (share:core_divide noop)
|
||||
[ 6160] 9.30404e-09 (share:swap 0/rllr)
|
||||
[ 6240] 9.84227e-09 (share:level_fix noop)
|
||||
[ 6880] 3.11282e-08 (share:swap 0/lllr)
|
||||
[ 7920] 3.54361e-08 (share:core_undivide noop)
|
||||
[ 8720] 3.87738e-08 (share:level_retype noop)
|
||||
[ 9440] 4.0316e-08 (share:core_undivide noop)
|
||||
[ 10160] 4.28614e-08 (share:level_retype noop)
|
||||
[ 11280] 4.44456e-08 (share:level_retype noop)
|
||||
[ 11680] 4.57955e-08 (share:core_divide noop)
|
||||
[ 11760] 4.70161e-08 (share:level_fix noop)
|
||||
[ 12080] 4.80406e-08 (share:core_divide noop)
|
||||
[ 12480] 4.88839e-08 (share:crossover llll<->llrr)
|
||||
[ 13680] 5.00536e-08 (share:core_undivide noop)
|
||||
[ 13920] 5.1903e-08 (share:core_divide noop)
|
||||
[ 15360] 1.07206e-07 (share:rotate 0/lrll)
|
||||
[ 16000] 1.11145e-07 (share:level_retype noop)
|
||||
[ 16960] 1.15107e-07 (share:level_compound_fix noop)
|
||||
[ 20160] 1.18837e-07 (share:level_compound_fix noop)
|
||||
[ 20720] 1.23415e-07 (share:core_divide noop)
|
||||
[ 21600] 1.28355e-07 (share:core_undivide noop)
|
||||
[ 22640] 1.45451e-07 (share:crossover rllrr<->rrlll)
|
||||
[ 22720] 2.11935e-07 (share:divide 0/rllll)
|
||||
[ 23360] 2.59099e-07 (share:level_compound_fix noop)
|
||||
[ 24560] 2.70734e-07 (share:level_retype noop)
|
||||
[ 24880] 2.831e-07 (share:crossover rlrll<->rrrrl)
|
||||
[ 26640] 2.96078e-07 (share:level_fix noop)
|
||||
[ 29360] 2.23985e-07 (share:crossover llllr<->llrll)
|
||||
[ 30640] 3.33889e-07 (share:retype 0/lllrr->qr1)
|
||||
[ 30880] 7.38785e-07 (share:undivide 0/lllr)
|
||||
[ 32400] 8.40919e-07 (share:core_undivide noop)
|
||||
[ 32800] 9.27558e-07 (share:level_retype noop)
|
||||
[ 33520] 9.64174e-07 (share:level_compound_fix noop)
|
||||
[ 34480] 1.00228e-06 (share:level_compound_fix noop)
|
||||
[ 35200] 2.78977e-06 (share:crossover rllr<->lrlr)
|
||||
[ 35920] 2.85975e-06 (share:core_undivide noop)
|
||||
[ 36960] 2.92802e-06 (share:crossover rrlll<->lrrrl)
|
||||
[ 40160] 2.99391e-06 (share:core_undivide noop)
|
||||
[ 42240] 3.05636e-06 (share:core_undivide noop)
|
||||
[ 43520] 3.79692e-06 (share:level_fix noop)
|
||||
[ 44000] 3.86939e-06 (share:level_compound_fix noop)
|
||||
[ 44560] 3.92184e-06 (share:core_divide noop)
|
||||
[ 45200] 4.00078e-06 (share:level_retype noop)
|
||||
[ 46640] 4.07573e-06 (share:crossover lrrll<->rrrll)
|
||||
[ 49120] 4.1134e-06 (share:core_undivide noop)
|
||||
[ 49520] 4.13763e-06 (share:level_compound_fix noop)
|
||||
[ 49920] 4.14563e-06 (share:core_divide noop)
|
||||
[ 50240] 4.14854e-06 (share:level_fix noop)
|
||||
[ 50720] 4.28298e-06 (share:level_fix noop)
|
||||
[ 51280] 4.28373e-06 (share:retype 0/lrlll->me1)
|
||||
[ 55120] 9.85033e-07 (share:crossover lrlll<->llll)
|
||||
[ 55360] 1.01968e-06 (share:level_compound_fix noop)
|
||||
[ 57280] 1.4741e-06 (share:undivide 0/lrrr)
|
||||
[ 58640] 1.50576e-06 (share:level_fix noop)
|
||||
[ 59040] 1.54157e-06 (share:level_retype noop)
|
||||
[ 60320] 1.58245e-06 (share:core_undivide noop)
|
||||
[ 62080] 1.60981e-06 (share:crossover lrr<->lrr)
|
||||
[ 63840] 2.74194e-06 (share:retype 0/rrrrr->mo1)
|
||||
[ 64400] 2.81093e-06 (share:core_divide noop)
|
||||
[ 64560] 2.89773e-06 (share:core_divide noop)
|
||||
[ 66080] 1.42037e-05 (share:crossover lrr<->rrll)
|
||||
[ 66880] 1.48441e-05 (share:rotate 0/rlrr)
|
||||
[ 68080] 1.52409e-05 (share:level_fix noop)
|
||||
[ 68560] 1.56119e-05 (share:level_retype noop)
|
||||
[ 69120] 1.59331e-05 (share:level_compound_fix noop)
|
||||
[ 70880] 1.61441e-05 (share:level_compound_fix noop)
|
||||
[ 71120] 3.42507e-05 (share:undivide 0/rrrl)
|
||||
[ 72640] 3.47537e-05 (share:core_undivide noop)
|
||||
[ 75840] 3.49427e-05 (share:level_retype noop)
|
||||
[ 77040] 3.49682e-05 (share:core_divide noop)
|
||||
[ 77520] 3.50353e-05 (share:retype 0/rrrl->qr1)
|
||||
[ 78800] 3.64925e-05 (share:level_fix noop)
|
||||
[ 81280] 3.7884e-05 (share:core_undivide noop)
|
||||
[ 81520] 3.89932e-05 (share:core_divide noop)
|
||||
[ 82640] 3.98419e-05 (share:core_divide noop)
|
||||
[ 85360] 4.05998e-05 (share:level_retype noop)
|
||||
[ 87440] 4.128e-05 (share:level_retype noop)
|
||||
[ 88160] 4.17275e-05 (share:core_undivide noop)
|
||||
[ 90080] 4.20007e-05 (share:level_retype noop)
|
||||
[ 92560] 4.21287e-05 (share:level_compound_fix noop)
|
||||
[ 92960] 4.22968e-05 (share:level_delete noop)
|
||||
[ 97360] 4.24328e-05 (share:level_compound_fix noop)
|
||||
[102000] 4.24811e-05 (share:level_retype noop)
|
||||
[105200] 4.25673e-05 (share:core_divide noop)
|
||||
[106080] 4.29149e-05 (share:crossover rlrl<->rrrr)
|
||||
[107200] 4.32068e-05 (share:retype 0/rrllr->qr1)
|
||||
[107520] 4.32209e-05 (share:retype 0/rrrl->dp1)
|
||||
[113520] 4.32209e-05 (share:crossover lrrr<->rrrl)
|
||||
[122880] 9.30692e-05 (share:undivide 0/rlrr)
|
||||
[123520] 9.32949e-05 (share:level_fix noop)
|
||||
[124480] 9.33002e-05 (share:level_fix noop)
|
||||
[144400] 0.000107422 (share:undivide 0/rlrr)
|
||||
[148560] 0.000113564 (share:retype 0/lrlllrl->t10)
|
||||
[150640] 0.000117071 (share:level_compound_fix noop)
|
||||
[151040] 0.000121829 (share:level_retype noop)
|
||||
[153040] 0.000124879 (share:level_retype noop)
|
||||
[157680] 0.000126775 (share:crossover lrlllrr<->llrll)
|
||||
[158800] 0.000240095 (share:undivide 0/rrll)
|
||||
[163680] 0.000499652 (share:level_retype noop)
|
||||
[164640] 0.000508459 (share:core_undivide noop)
|
||||
[165440] 0.00050947 (share:level_retype noop)
|
||||
[174400] 0.000510996 (share:core_undivide noop)
|
||||
[201200] 0.000521531 (share:rotate 0/rrrr)
|
||||
[202800] 0.000524554 (share:level_compound_fix noop)
|
||||
[216400] 0.000524554 (share:crossover rlllr<->rrll)
|
||||
[231680] 0.000581588 (share:crossover llrr<->rllr)
|
||||
[232800] 0.000631983 (share:crossover rllllr<->rllllr)
|
||||
[233600] 0.000663972 (share:rotate 0/rlllll)
|
||||
[234400] 0.000679543 (share:rotate 0/lr)
|
||||
[235120] 0.000680799 (share:level_compound_fix noop)
|
||||
[235280] 0.000704214 (share:level_fix noop)
|
||||
[235360] 0.00070883 (share:level_compound_fix noop)
|
||||
[235600] 0.000710322 (share:level_fix noop)
|
||||
[282720] 0.000710418 (share:level_retype noop)
|
||||
[283200] 0.000710928 (share:core_divide noop)
|
||||
[288800] 0.000783033 (share:swap 0/llllr)
|
||||
[299600] 0.000806961 (share:undivide 0/lrlr)
|
||||
[405760] 0.00148576 (share:level_compound_fix noop)
|
||||
[405840] 0.00148617 (share:core_divide noop)
|
||||
[500200] 1.47634e-06 (polish:seed)
|
||||
[500280] 1.49152e-06 (polish:level_retype noop)
|
||||
[500600] 1.50542e-06 (polish:level_compound_fix noop)
|
||||
[500680] 1.51829e-06 (polish:level_fix noop)
|
||||
[500840] 4.82862e-05 (polish:undivide 0/rrrrr)
|
||||
[501880] 4.84983e-05 (polish:crossover rlrlrr<->llllrl)
|
||||
[538440] 8.15165e-05 (polish:swap 0/rlrlr)
|
||||
[541960] 8.32787e-05 (polish:core_undivide noop)
|
||||
[542120] 9.93915e-05 (polish:crossover rrrr<->rlrlr)
|
||||
[614680] 0.000100561 (polish:retype 0/rrrrr->zt1)
|
||||
[682760] 0.000100577 (polish:crossover rlllllr<->llrrl)
|
||||
[684200] 0.000101129 (polish:core_undivide noop)
|
||||
[686920] 0.000101234 (polish:level_fix noop)
|
||||
[687160] 0.000101292 (polish:retype 0/rllllll->dp1)
|
||||
written : /home/bruno/src/homemaker-layout/examples/health-centre/coldstart-500000-s1.dom
|
||||
292
examples/health-centre/coldstart-500000-s2.dom
Normal file
292
examples/health-centre/coldstart-500000-s2.dom
Normal file
|
|
@ -0,0 +1,292 @@
|
|||
node:
|
||||
- - -2.499098
|
||||
- 3.896165
|
||||
- - 16.284033
|
||||
- 8.678435
|
||||
- - 11.155808
|
||||
- 29.106947
|
||||
- - -8.073955
|
||||
- 25.262724
|
||||
perimeter:
|
||||
a: private
|
||||
b: null
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.48350786040303545
|
||||
- 0.48350786040303545
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.49887946927642934
|
||||
- 0.49887946927642934
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4414323695000621
|
||||
- 0.4414323695000621
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5656219609158839
|
||||
- 0.5656219609158839
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5575995303769351
|
||||
- 0.5575995303769351
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5008275645532423
|
||||
- 0.5008275645532423
|
||||
l:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
type: dp1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4272816108227617
|
||||
- 0.4272816108227617
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7517694036847098
|
||||
- 0.7517694036847098
|
||||
l:
|
||||
type: ao1
|
||||
rotation: 0
|
||||
r:
|
||||
type: re1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.622114173808394
|
||||
- 0.622114173808394
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5581406250000001
|
||||
- 0.5581406250000001
|
||||
l:
|
||||
type: mo1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6444996495996157
|
||||
- 0.6444996495996157
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5477557605024861
|
||||
- 0.5477557605024861
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5334309189072651
|
||||
- 0.5334309189072651
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6385206269531251
|
||||
- 0.6385206269531251
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5353212004316293
|
||||
- 0.5353212004316293
|
||||
l:
|
||||
type: qr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7162671590109604
|
||||
- 0.7162671590109604
|
||||
l:
|
||||
type: de1
|
||||
rotation: 0
|
||||
r:
|
||||
type: zt1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7184141335179154
|
||||
- 0.7184141335179154
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.6239648658741919
|
||||
- 0.6239648658741919
|
||||
l:
|
||||
type: gp1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5115649835368756
|
||||
- 0.5115649835368756
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4270312669479709
|
||||
- 0.4270312669479709
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7430403014990321
|
||||
- 0.7430403014990321
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6663937131288937
|
||||
- 0.6663937131288937
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.4754643090679284
|
||||
- 0.4754643090679284
|
||||
l:
|
||||
type: t9
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.64403101149484
|
||||
- 0.64403101149484
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t9
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.28890429372955984
|
||||
- 0.28890429372955984
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.615434093952136
|
||||
- 0.615434093952136
|
||||
l:
|
||||
type: rc1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.429760652966943
|
||||
- 0.429760652966943
|
||||
l:
|
||||
type: tr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: pt1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.536560684331618
|
||||
- 0.536560684331618
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.24759832579856278
|
||||
- 0.24759832579856278
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7787526870507764
|
||||
- 0.7787526870507764
|
||||
l:
|
||||
type: kt1
|
||||
rotation: 0
|
||||
r:
|
||||
type: t10
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4685508896253494
|
||||
- 0.4685508896253494
|
||||
l:
|
||||
type: br1
|
||||
rotation: 0
|
||||
r:
|
||||
type: ms1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4340907678745429
|
||||
- 0.4340907678745429
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6014012954809093
|
||||
- 0.6014012954809093
|
||||
l:
|
||||
type: ph1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.9768278199443412
|
||||
- 0.9768278199443412
|
||||
l:
|
||||
type: wa1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
418
examples/health-centre/coldstart-500000-s2.log
Normal file
418
examples/health-centre/coldstart-500000-s2.log
Normal file
|
|
@ -0,0 +1,418 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/health-centre/init.dom
|
||||
programme : health-centre
|
||||
budget : 500000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 1
|
||||
rng seed : 2
|
||||
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/health-centre/coldstart-500000-s2.dom
|
||||
[ 80 evals] best 3.04007e-12 (fails 28) via construct/0
|
||||
[ 160 evals] best 7.74528e-12 (fails 28) via construct/1
|
||||
[ 240 evals] best 1.27278e-10 (fails 25) via construct/2
|
||||
[ 1040 evals] best 2.05075e-09 (fails 19) via construct/12
|
||||
[ 2080 evals] best 4.22403e-09 (fails 18) via rotate 0/lrrl
|
||||
[ 3120 evals] best 1.23776e-08 (fails 18) via undivide 0/lrrr
|
||||
[ 3760 evals] best 1.39455e-08 (fails 18) via level_retype noop
|
||||
[ 4800 evals] best 1.59195e-08 (fails 18) via level_fix noop
|
||||
[ 4880 evals] best 1.78293e-08 (fails 18) via undivide 0/lrll
|
||||
[ 4960 evals] best 2.07039e-08 (fails 18) via core_divide noop
|
||||
[ 5440 evals] best 2.26527e-08 (fails 18) via rotate 0/rlrr
|
||||
[ 6160 evals] best 2.28963e-08 (fails 18) via core_undivide noop
|
||||
[ 7280 evals] best 2.60466e-08 (fails 18) via level_compound_fix noop
|
||||
[ 8000 evals] best 2.66315e-08 (fails 18) via core_undivide noop
|
||||
[ 8640 evals] best 4.07528e-08 (fails 16) via crossover rlrrr<->rrrl
|
||||
[ 9840 evals] best 4.73414e-08 (fails 16) via core_undivide noop
|
||||
[ 9920 evals] best 4.98649e-08 (fails 16) via core_undivide noop
|
||||
[ 11280 evals] best 5.22342e-08 (fails 16) via core_undivide noop
|
||||
[ 11760 evals] best 5.44617e-08 (fails 16) via core_undivide noop
|
||||
[ 13760 evals] best 2.18035e-07 (fails 14) via rotate 0/lllr
|
||||
[ 14000 evals] best 2.27326e-07 (fails 14) via level_retype noop
|
||||
[ 15840 evals] best 2.37305e-07 (fails 14) via rotate 0/lrll
|
||||
[ 16320 evals] best 2.47589e-07 (fails 14) via rotate 0/lrrl
|
||||
[ 16640 evals] best 2.57045e-07 (fails 14) via level_fix noop
|
||||
[ 17600 evals] best 2.66584e-07 (fails 14) via core_undivide noop
|
||||
[ 17760 evals] best 2.75666e-07 (fails 14) via crossover rrrll<->lllrr
|
||||
[ 18000 evals] best 2.85305e-07 (fails 14) via level_fix noop
|
||||
[ 18080 evals] best 2.95039e-07 (fails 14) via swap 0/lllr
|
||||
[ 19520 evals] best 3.04447e-07 (fails 14) via core_undivide noop
|
||||
[ 20160 evals] best 3.1362e-07 (fails 14) via crossover lllrl<->rrlll
|
||||
[ 21760 evals] best 2.18239e-07 (fails 13) via retype 0/lrllr->O
|
||||
[ 22080 evals] best 2.49021e-07 (fails 13) via swap 0/lllr
|
||||
[ 22240 evals] best 2.73668e-07 (fails 13) via level_fix noop
|
||||
[ 23120 evals] best 2.86925e-07 (fails 13) via core_undivide noop
|
||||
[ 23520 evals] best 2.9861e-07 (fails 13) via core_divide noop
|
||||
[ 25600 evals] best 5.65963e-07 (fails 12) via core_undivide noop
|
||||
[ 25840 evals] best 5.91044e-07 (fails 12) via core_divide noop
|
||||
[ 26880 evals] best 6.19759e-07 (fails 12) via core_divide noop
|
||||
[ 28560 evals] best 6.49777e-07 (fails 12) via retype 0/lllrl->re1
|
||||
[ 29680 evals] best 6.73724e-07 (fails 12) via core_undivide noop
|
||||
[ 30160 evals] best 6.91667e-07 (fails 12) via core_undivide noop
|
||||
[ 32240 evals] best 7.05032e-07 (fails 12) via core_divide noop
|
||||
[ 35440 evals] best 7.20936e-07 (fails 12) via level_retype noop
|
||||
[ 36400 evals] best 7.36371e-07 (fails 12) via level_compound_fix noop
|
||||
[ 37760 evals] best 7.50241e-07 (fails 12) via crossover llrr<->llrr
|
||||
[ 38560 evals] best 7.86556e-07 (fails 12) via level_fix noop
|
||||
[ 40880 evals] best 8.21898e-07 (fails 12) via crossover lllrl<->lrrlr
|
||||
[ 41120 evals] best 8.45967e-07 (fails 12) via swap 0/llrl
|
||||
[ 41280 evals] best 8.48915e-07 (fails 12) via core_undivide noop
|
||||
[ 41600 evals] best 2.19176e-06 (fails 12) via crossover lrrl<->rlrrr
|
||||
[ 41760 evals] best 2.22064e-06 (fails 12) via core_undivide noop
|
||||
[ 42800 evals] best 2.24919e-06 (fails 12) via crossover rlrll<->rlrll
|
||||
[ 44160 evals] best 2.25054e-06 (fails 12) via level_fix noop
|
||||
[ 44320 evals] best 2.26364e-06 (fails 12) via level_retype noop
|
||||
[ 45840 evals] best 2.31398e-06 (fails 12) via level_compound_fix noop
|
||||
[ 46080 evals] best 2.39771e-06 (fails 12) via level_compound_fix noop
|
||||
[ 46400 evals] best 2.40706e-06 (fails 12) via level_compound_fix noop
|
||||
[ 47120 evals] best 2.42409e-06 (fails 12) via swap 0/rlrl
|
||||
[ 52720 evals] best 2.46086e-06 (fails 12) via level_retype noop
|
||||
[ 53520 evals] best 2.46716e-06 (fails 12) via core_divide noop
|
||||
[ 56720 evals] best 3.3283e-06 (fails 12) via crossover rllrl<->llrrr
|
||||
[ 58320 evals] best 3.33649e-06 (fails 12) via swap 0/lrlr
|
||||
[ 59280 evals] best 3.36563e-06 (fails 12) via core_undivide noop
|
||||
[ 59920 evals] best 3.37434e-06 (fails 12) via level_retype noop
|
||||
[ 61520 evals] best 3.37454e-06 (fails 12) via level_retype noop
|
||||
[ 73520 evals] best 3.54736e-06 (fails 12) via crossover rrlll<->lrlrl
|
||||
[ 75760 evals] best 3.7656e-06 (fails 12) via core_divide noop
|
||||
[ 76880 evals] best 3.83549e-06 (fails 12) via retype 0/lrlrr->mo1
|
||||
[ 77600 evals] best 3.88306e-06 (fails 12) via level_compound_fix noop
|
||||
[ 82480 evals] best 5.2071e-06 (fails 12) via undivide 0/rlrrr
|
||||
[ 83280 evals] best 5.26703e-06 (fails 12) via level_fix noop
|
||||
[ 86800 evals] best 5.30023e-06 (fails 12) via level_fix noop
|
||||
[ 90320 evals] best 5.30798e-06 (fails 12) via level_retype noop
|
||||
[122160 evals] best 3.21459e-05 (fails 9) via rotate 0/rrll
|
||||
[146560 evals] best 3.24042e-05 (fails 9) via crossover r<->r
|
||||
[162000 evals] best 3.26798e-05 (fails 9) via rotate 0/lrrl
|
||||
[166880 evals] best 3.93491e-05 (fails 9) via undivide 0/rlrrr
|
||||
[167840 evals] best 3.97222e-05 (fails 9) via level_compound_fix noop
|
||||
[169760 evals] best 3.99788e-05 (fails 9) via retype 0/rrlrr->kt1
|
||||
[172240 evals] best 4.05111e-05 (fails 9) via retype 0/llrlr->me1
|
||||
[174560 evals] best 4.05659e-05 (fails 9) via level_compound_fix noop
|
||||
[175520 evals] best 4.0576e-05 (fails 9) via crossover rrrrl<->llrll
|
||||
[176240 evals] best 4.05784e-05 (fails 9) via level_retype noop
|
||||
[180640 evals] best 4.55645e-05 (fails 9) via rotate 0/lrrl
|
||||
[182800 evals] best 4.72012e-05 (fails 9) via core_divide noop
|
||||
[184080 evals] best 4.7299e-05 (fails 9) via level_fix noop
|
||||
[184160 evals] best 4.73067e-05 (fails 9) via core_undivide noop
|
||||
[184800 evals] best 4.88281e-05 (fails 9) via level_retype noop
|
||||
[185200 evals] best 4.88309e-05 (fails 9) via level_compound_fix noop
|
||||
[194880 evals] best 4.88309e-05 (fails 9) via crossover rlrr<->llrl
|
||||
[199760 evals] best 4.88662e-05 (fails 9) via level_retype noop
|
||||
[201440 evals] best 4.88717e-05 (fails 9) via level_compound_fix noop
|
||||
[202240 evals] best 4.88744e-05 (fails 9) via core_undivide noop
|
||||
[208960 evals] best 4.91615e-05 (fails 9) via rotate 0/lllr
|
||||
[209840 evals] best 4.9167e-05 (fails 9) via retype 0/rlrlr->br1
|
||||
[209920 evals] best 4.94457e-05 (fails 9) via level_compound_fix noop
|
||||
[212640 evals] best 5.03271e-05 (fails 9) via core_divide noop
|
||||
[212880 evals] best 5.03298e-05 (fails 9) via core_undivide noop
|
||||
[215200 evals] best 5.82446e-05 (fails 9) via place_missing ph1 -> lrllr
|
||||
[216320 evals] best 5.85273e-05 (fails 9) via level_fix noop
|
||||
[216960 evals] best 5.87137e-05 (fails 9) via level_retype noop
|
||||
[217760 evals] best 6.01725e-05 (fails 9) via level_fix noop
|
||||
[221760 evals] best 6.05548e-05 (fails 9) via crossover rllrr<->rlrlr
|
||||
[224080 evals] best 6.07621e-05 (fails 9) via level_compound_fix noop
|
||||
[225920 evals] best 6.22317e-05 (fails 9) via crossover lrrlr<->rlrrl
|
||||
[277520 evals] best 9.80017e-05 (fails 8) via crossover rlll<->llll
|
||||
[278160 evals] best 9.94913e-05 (fails 8) via crossover rrrlr<->rrrlr
|
||||
[290880 evals] best 0.000119142 (fails 8) via place_missing ao1 -> rlllr
|
||||
[294240 evals] best 0.000120131 (fails 8) via level_compound_fix noop
|
||||
[296240 evals] best 0.000136504 (fails 8) via level_retype noop
|
||||
[296400 evals] best 0.000144238 (fails 8) via core_divide noop
|
||||
[297600 evals] best 0.000148308 (fails 8) via core_divide noop
|
||||
[298160 evals] best 0.000153088 (fails 8) via retype 0/rrlrl->wa1
|
||||
[298400 evals] best 0.00015708 (fails 8) via level_fix noop
|
||||
[298960 evals] best 0.00016023 (fails 8) via level_retype noop
|
||||
[299120 evals] best 0.000164088 (fails 8) via core_divide noop
|
||||
[300480 evals] best 0.000161836 (fails 7) via crossover rlrll<->rllrl
|
||||
[301200 evals] best 0.000165874 (fails 7) via level_compound_fix noop
|
||||
[304320 evals] best 0.000175611 (fails 7) via retype 0/lllrr->qr1
|
||||
[306080 evals] best 0.000179641 (fails 7) via core_divide noop
|
||||
[310880 evals] best 0.000183423 (fails 7) via level_retype noop
|
||||
[311600 evals] best 0.00020186 (fails 7) via core_undivide noop
|
||||
[314080 evals] best 0.000206088 (fails 7) via core_undivide noop
|
||||
[314320 evals] best 0.00020928 (fails 7) via level_fix noop
|
||||
[315920 evals] best 0.000212285 (fails 7) via core_undivide noop
|
||||
[316080 evals] best 0.000215156 (fails 7) via core_undivide noop
|
||||
[316880 evals] best 0.000217485 (fails 7) via crossover rlrll<->lrrlr
|
||||
[320000 evals] best 0.00021922 (fails 7) via core_divide noop
|
||||
[321760 evals] best 0.000221004 (fails 7) via crossover rrrll<->llrll
|
||||
[322480 evals] best 0.000221908 (fails 7) via level_retype noop
|
||||
[334560 evals] best 0.000222939 (fails 7) via core_divide noop
|
||||
[336560 evals] best 0.000224675 (fails 7) via level_compound_fix noop
|
||||
[336720 evals] best 0.000226466 (fails 7) via core_undivide noop
|
||||
[353600 evals] best 0.000226721 (fails 7) via level_fix noop
|
||||
[358240 evals] best 0.000228547 (fails 7) via level_fix noop
|
||||
[358320 evals] best 0.000229603 (fails 7) via level_compound_fix noop
|
||||
[362480 evals] best 0.000230019 (fails 7) via core_undivide noop
|
||||
[363920 evals] best 0.000231184 (fails 7) via core_undivide noop
|
||||
[387040 evals] best 0.000246099 (fails 7) via rotate 0/rrrr
|
||||
[387120 evals] best 0.000262652 (fails 7) via core_undivide noop
|
||||
[387200 evals] best 0.000280293 (fails 7) via core_divide noop
|
||||
[388160 evals] best 0.000298055 (fails 7) via level_compound_fix noop
|
||||
[389040 evals] best 0.000319938 (fails 7) via core_divide noop
|
||||
[396640 evals] best 0.000321628 (fails 7) via level_fix noop
|
||||
[398320 evals] best 0.000323351 (fails 7) via core_divide noop
|
||||
[406160 evals] best 0.000364098 (fails 7) via undivide 0/rlrl
|
||||
[406880 evals] best 0.000371359 (fails 7) via undivide 0/rlrl
|
||||
[407040 evals] best 0.000386031 (fails 7) via level_fix noop
|
||||
[409520 evals] best 0.000390844 (fails 7) via level_fix noop
|
||||
[410160 evals] best 0.000533031 (fails 6) via crossover rlrl<->lrllr
|
||||
[410800 evals] best 0.000594646 (fails 6) via core_divide noop
|
||||
[411840 evals] best 0.000606993 (fails 6) via level_fix noop
|
||||
[412480 evals] best 0.000624444 (fails 6) via level_fix noop
|
||||
[412720 evals] best 0.000639509 (fails 6) via retype 0/rlrrr->ph1
|
||||
[413680 evals] best 0.000646054 (fails 6) via core_undivide noop
|
||||
[421040 evals] best 0.000662382 (fails 6) via retype 0/rlllrl->gp1
|
||||
[421120 evals] best 0.000679955 (fails 6) via level_fix noop
|
||||
[423120 evals] best 0.000692401 (fails 6) via core_divide noop
|
||||
[424400 evals] best 0.000694282 (fails 6) via core_undivide noop
|
||||
[425360 evals] best 0.000710894 (fails 6) via level_compound_fix noop
|
||||
[426160 evals] best 0.00075164 (fails 6) via core_divide noop
|
||||
[427760 evals] best 0.00076103 (fails 6) via level_retype noop
|
||||
[429600 evals] best 0.000769686 (fails 6) via level_fix noop
|
||||
[430320 evals] best 0.00078154 (fails 6) via core_divide noop
|
||||
[431440 evals] best 0.00078639 (fails 6) via level_compound_fix noop
|
||||
[433680 evals] best 0.000793532 (fails 6) via crossover lrlrl<->rlrrl
|
||||
[433760 evals] best 0.000793974 (fails 6) via level_delete noop
|
||||
[435280 evals] best 0.000796904 (fails 6) via level_compound_fix noop
|
||||
[439520 evals] best 0.000798566 (fails 6) via level_fix noop
|
||||
[440320 evals] best 0.000807961 (fails 6) via level_delete noop
|
||||
[440800 evals] best 0.000814519 (fails 6) via level_fix noop
|
||||
[440960 evals] best 0.000818432 (fails 6) via level_fix noop
|
||||
[442080 evals] best 0.000823555 (fails 6) via level_fix noop
|
||||
[444320 evals] best 0.000824738 (fails 6) via core_undivide noop
|
||||
[446640 evals] best 0.000824751 (fails 6) via core_undivide noop
|
||||
[446960 evals] best 0.000826176 (fails 6) via level_retype noop
|
||||
[478400 evals] best 0.000846488 (fails 6) via retype 0/llrll->re1
|
||||
[478480 evals] best 0.000854724 (fails 6) via retype 0/lllrr->t9
|
||||
[478640 evals] best 0.000869142 (fails 6) via level_fix noop
|
||||
[479200 evals] best 0.000889042 (fails 6) via core_undivide noop
|
||||
[479520 evals] best 0.000905278 (fails 6) via crossover llrll<->rrlrr
|
||||
[483040 evals] best 0.000908676 (fails 6) via level_fix noop
|
||||
|
||||
--- finishing (homemaker-py-3l6): unfold + polish 250000 evals ---
|
||||
[finish] unfold: materialised 0 shared-leaf copies
|
||||
[ 200 evals] best 0.000921035 (fails 6) via seed
|
||||
[ 55320 evals] best 0.00143789 (fails 5) via swap 0/lrrl
|
||||
[ 56600 evals] best 0.0014446 (fails 5) via level_fix noop
|
||||
[ 57240 evals] best 0.00145004 (fails 5) via swap 0/llrl
|
||||
[120440 evals] best 0.00145004 (fails 5) via crossover lrrr<->rlrlr
|
||||
[157480 evals] best 0.00146631 (fails 5) via divide 0/lrlll
|
||||
[160760 evals] best 0.00146672 (fails 5) via level_compound_fix noop
|
||||
[161000 evals] best 0.00146707 (fails 5) via retype 0/lrlrr->de1
|
||||
[161080 evals] best 0.00146735 (fails 5) via level_fix noop
|
||||
[161880 evals] best 0.00146754 (fails 5) via level_retype noop
|
||||
[162440 evals] best 0.00146757 (fails 5) via level_fix noop
|
||||
|
||||
--- collapse (homemaker-py-94g): finish-time cell→room relabel ---
|
||||
[finish] collapse: 91 → 5 fails (applied)
|
||||
|
||||
--- done ---
|
||||
elapsed : 112525.3s
|
||||
evals : 750040 across 9374 topologies
|
||||
best : 0.00146757 (5 fails) via level_fix noop+collapse
|
||||
|
||||
improvement history:
|
||||
[ 80] 3.04007e-12 (share:construct/0)
|
||||
[ 160] 7.74528e-12 (share:construct/1)
|
||||
[ 240] 1.27278e-10 (share:construct/2)
|
||||
[ 1040] 2.05075e-09 (share:construct/12)
|
||||
[ 2080] 4.22403e-09 (share:rotate 0/lrrl)
|
||||
[ 3120] 1.23776e-08 (share:undivide 0/lrrr)
|
||||
[ 3760] 1.39455e-08 (share:level_retype noop)
|
||||
[ 4800] 1.59195e-08 (share:level_fix noop)
|
||||
[ 4880] 1.78293e-08 (share:undivide 0/lrll)
|
||||
[ 4960] 2.07039e-08 (share:core_divide noop)
|
||||
[ 5440] 2.26527e-08 (share:rotate 0/rlrr)
|
||||
[ 6160] 2.28963e-08 (share:core_undivide noop)
|
||||
[ 7280] 2.60466e-08 (share:level_compound_fix noop)
|
||||
[ 8000] 2.66315e-08 (share:core_undivide noop)
|
||||
[ 8640] 4.07528e-08 (share:crossover rlrrr<->rrrl)
|
||||
[ 9840] 4.73414e-08 (share:core_undivide noop)
|
||||
[ 9920] 4.98649e-08 (share:core_undivide noop)
|
||||
[ 11280] 5.22342e-08 (share:core_undivide noop)
|
||||
[ 11760] 5.44617e-08 (share:core_undivide noop)
|
||||
[ 13760] 2.18035e-07 (share:rotate 0/lllr)
|
||||
[ 14000] 2.27326e-07 (share:level_retype noop)
|
||||
[ 15840] 2.37305e-07 (share:rotate 0/lrll)
|
||||
[ 16320] 2.47589e-07 (share:rotate 0/lrrl)
|
||||
[ 16640] 2.57045e-07 (share:level_fix noop)
|
||||
[ 17600] 2.66584e-07 (share:core_undivide noop)
|
||||
[ 17760] 2.75666e-07 (share:crossover rrrll<->lllrr)
|
||||
[ 18000] 2.85305e-07 (share:level_fix noop)
|
||||
[ 18080] 2.95039e-07 (share:swap 0/lllr)
|
||||
[ 19520] 3.04447e-07 (share:core_undivide noop)
|
||||
[ 20160] 3.1362e-07 (share:crossover lllrl<->rrlll)
|
||||
[ 21760] 2.18239e-07 (share:retype 0/lrllr->O)
|
||||
[ 22080] 2.49021e-07 (share:swap 0/lllr)
|
||||
[ 22240] 2.73668e-07 (share:level_fix noop)
|
||||
[ 23120] 2.86925e-07 (share:core_undivide noop)
|
||||
[ 23520] 2.9861e-07 (share:core_divide noop)
|
||||
[ 25600] 5.65963e-07 (share:core_undivide noop)
|
||||
[ 25840] 5.91044e-07 (share:core_divide noop)
|
||||
[ 26880] 6.19759e-07 (share:core_divide noop)
|
||||
[ 28560] 6.49777e-07 (share:retype 0/lllrl->re1)
|
||||
[ 29680] 6.73724e-07 (share:core_undivide noop)
|
||||
[ 30160] 6.91667e-07 (share:core_undivide noop)
|
||||
[ 32240] 7.05032e-07 (share:core_divide noop)
|
||||
[ 35440] 7.20936e-07 (share:level_retype noop)
|
||||
[ 36400] 7.36371e-07 (share:level_compound_fix noop)
|
||||
[ 37760] 7.50241e-07 (share:crossover llrr<->llrr)
|
||||
[ 38560] 7.86556e-07 (share:level_fix noop)
|
||||
[ 40880] 8.21898e-07 (share:crossover lllrl<->lrrlr)
|
||||
[ 41120] 8.45967e-07 (share:swap 0/llrl)
|
||||
[ 41280] 8.48915e-07 (share:core_undivide noop)
|
||||
[ 41600] 2.19176e-06 (share:crossover lrrl<->rlrrr)
|
||||
[ 41760] 2.22064e-06 (share:core_undivide noop)
|
||||
[ 42800] 2.24919e-06 (share:crossover rlrll<->rlrll)
|
||||
[ 44160] 2.25054e-06 (share:level_fix noop)
|
||||
[ 44320] 2.26364e-06 (share:level_retype noop)
|
||||
[ 45840] 2.31398e-06 (share:level_compound_fix noop)
|
||||
[ 46080] 2.39771e-06 (share:level_compound_fix noop)
|
||||
[ 46400] 2.40706e-06 (share:level_compound_fix noop)
|
||||
[ 47120] 2.42409e-06 (share:swap 0/rlrl)
|
||||
[ 52720] 2.46086e-06 (share:level_retype noop)
|
||||
[ 53520] 2.46716e-06 (share:core_divide noop)
|
||||
[ 56720] 3.3283e-06 (share:crossover rllrl<->llrrr)
|
||||
[ 58320] 3.33649e-06 (share:swap 0/lrlr)
|
||||
[ 59280] 3.36563e-06 (share:core_undivide noop)
|
||||
[ 59920] 3.37434e-06 (share:level_retype noop)
|
||||
[ 61520] 3.37454e-06 (share:level_retype noop)
|
||||
[ 73520] 3.54736e-06 (share:crossover rrlll<->lrlrl)
|
||||
[ 75760] 3.7656e-06 (share:core_divide noop)
|
||||
[ 76880] 3.83549e-06 (share:retype 0/lrlrr->mo1)
|
||||
[ 77600] 3.88306e-06 (share:level_compound_fix noop)
|
||||
[ 82480] 5.2071e-06 (share:undivide 0/rlrrr)
|
||||
[ 83280] 5.26703e-06 (share:level_fix noop)
|
||||
[ 86800] 5.30023e-06 (share:level_fix noop)
|
||||
[ 90320] 5.30798e-06 (share:level_retype noop)
|
||||
[122160] 3.21459e-05 (share:rotate 0/rrll)
|
||||
[146560] 3.24042e-05 (share:crossover r<->r)
|
||||
[162000] 3.26798e-05 (share:rotate 0/lrrl)
|
||||
[166880] 3.93491e-05 (share:undivide 0/rlrrr)
|
||||
[167840] 3.97222e-05 (share:level_compound_fix noop)
|
||||
[169760] 3.99788e-05 (share:retype 0/rrlrr->kt1)
|
||||
[172240] 4.05111e-05 (share:retype 0/llrlr->me1)
|
||||
[174560] 4.05659e-05 (share:level_compound_fix noop)
|
||||
[175520] 4.0576e-05 (share:crossover rrrrl<->llrll)
|
||||
[176240] 4.05784e-05 (share:level_retype noop)
|
||||
[180640] 4.55645e-05 (share:rotate 0/lrrl)
|
||||
[182800] 4.72012e-05 (share:core_divide noop)
|
||||
[184080] 4.7299e-05 (share:level_fix noop)
|
||||
[184160] 4.73067e-05 (share:core_undivide noop)
|
||||
[184800] 4.88281e-05 (share:level_retype noop)
|
||||
[185200] 4.88309e-05 (share:level_compound_fix noop)
|
||||
[194880] 4.88309e-05 (share:crossover rlrr<->llrl)
|
||||
[199760] 4.88662e-05 (share:level_retype noop)
|
||||
[201440] 4.88717e-05 (share:level_compound_fix noop)
|
||||
[202240] 4.88744e-05 (share:core_undivide noop)
|
||||
[208960] 4.91615e-05 (share:rotate 0/lllr)
|
||||
[209840] 4.9167e-05 (share:retype 0/rlrlr->br1)
|
||||
[209920] 4.94457e-05 (share:level_compound_fix noop)
|
||||
[212640] 5.03271e-05 (share:core_divide noop)
|
||||
[212880] 5.03298e-05 (share:core_undivide noop)
|
||||
[215200] 5.82446e-05 (share:place_missing ph1 -> lrllr)
|
||||
[216320] 5.85273e-05 (share:level_fix noop)
|
||||
[216960] 5.87137e-05 (share:level_retype noop)
|
||||
[217760] 6.01725e-05 (share:level_fix noop)
|
||||
[221760] 6.05548e-05 (share:crossover rllrr<->rlrlr)
|
||||
[224080] 6.07621e-05 (share:level_compound_fix noop)
|
||||
[225920] 6.22317e-05 (share:crossover lrrlr<->rlrrl)
|
||||
[277520] 9.80017e-05 (share:crossover rlll<->llll)
|
||||
[278160] 9.94913e-05 (share:crossover rrrlr<->rrrlr)
|
||||
[290880] 0.000119142 (share:place_missing ao1 -> rlllr)
|
||||
[294240] 0.000120131 (share:level_compound_fix noop)
|
||||
[296240] 0.000136504 (share:level_retype noop)
|
||||
[296400] 0.000144238 (share:core_divide noop)
|
||||
[297600] 0.000148308 (share:core_divide noop)
|
||||
[298160] 0.000153088 (share:retype 0/rrlrl->wa1)
|
||||
[298400] 0.00015708 (share:level_fix noop)
|
||||
[298960] 0.00016023 (share:level_retype noop)
|
||||
[299120] 0.000164088 (share:core_divide noop)
|
||||
[300480] 0.000161836 (share:crossover rlrll<->rllrl)
|
||||
[301200] 0.000165874 (share:level_compound_fix noop)
|
||||
[304320] 0.000175611 (share:retype 0/lllrr->qr1)
|
||||
[306080] 0.000179641 (share:core_divide noop)
|
||||
[310880] 0.000183423 (share:level_retype noop)
|
||||
[311600] 0.00020186 (share:core_undivide noop)
|
||||
[314080] 0.000206088 (share:core_undivide noop)
|
||||
[314320] 0.00020928 (share:level_fix noop)
|
||||
[315920] 0.000212285 (share:core_undivide noop)
|
||||
[316080] 0.000215156 (share:core_undivide noop)
|
||||
[316880] 0.000217485 (share:crossover rlrll<->lrrlr)
|
||||
[320000] 0.00021922 (share:core_divide noop)
|
||||
[321760] 0.000221004 (share:crossover rrrll<->llrll)
|
||||
[322480] 0.000221908 (share:level_retype noop)
|
||||
[334560] 0.000222939 (share:core_divide noop)
|
||||
[336560] 0.000224675 (share:level_compound_fix noop)
|
||||
[336720] 0.000226466 (share:core_undivide noop)
|
||||
[353600] 0.000226721 (share:level_fix noop)
|
||||
[358240] 0.000228547 (share:level_fix noop)
|
||||
[358320] 0.000229603 (share:level_compound_fix noop)
|
||||
[362480] 0.000230019 (share:core_undivide noop)
|
||||
[363920] 0.000231184 (share:core_undivide noop)
|
||||
[387040] 0.000246099 (share:rotate 0/rrrr)
|
||||
[387120] 0.000262652 (share:core_undivide noop)
|
||||
[387200] 0.000280293 (share:core_divide noop)
|
||||
[388160] 0.000298055 (share:level_compound_fix noop)
|
||||
[389040] 0.000319938 (share:core_divide noop)
|
||||
[396640] 0.000321628 (share:level_fix noop)
|
||||
[398320] 0.000323351 (share:core_divide noop)
|
||||
[406160] 0.000364098 (share:undivide 0/rlrl)
|
||||
[406880] 0.000371359 (share:undivide 0/rlrl)
|
||||
[407040] 0.000386031 (share:level_fix noop)
|
||||
[409520] 0.000390844 (share:level_fix noop)
|
||||
[410160] 0.000533031 (share:crossover rlrl<->lrllr)
|
||||
[410800] 0.000594646 (share:core_divide noop)
|
||||
[411840] 0.000606993 (share:level_fix noop)
|
||||
[412480] 0.000624444 (share:level_fix noop)
|
||||
[412720] 0.000639509 (share:retype 0/rlrrr->ph1)
|
||||
[413680] 0.000646054 (share:core_undivide noop)
|
||||
[421040] 0.000662382 (share:retype 0/rlllrl->gp1)
|
||||
[421120] 0.000679955 (share:level_fix noop)
|
||||
[423120] 0.000692401 (share:core_divide noop)
|
||||
[424400] 0.000694282 (share:core_undivide noop)
|
||||
[425360] 0.000710894 (share:level_compound_fix noop)
|
||||
[426160] 0.00075164 (share:core_divide noop)
|
||||
[427760] 0.00076103 (share:level_retype noop)
|
||||
[429600] 0.000769686 (share:level_fix noop)
|
||||
[430320] 0.00078154 (share:core_divide noop)
|
||||
[431440] 0.00078639 (share:level_compound_fix noop)
|
||||
[433680] 0.000793532 (share:crossover lrlrl<->rlrrl)
|
||||
[433760] 0.000793974 (share:level_delete noop)
|
||||
[435280] 0.000796904 (share:level_compound_fix noop)
|
||||
[439520] 0.000798566 (share:level_fix noop)
|
||||
[440320] 0.000807961 (share:level_delete noop)
|
||||
[440800] 0.000814519 (share:level_fix noop)
|
||||
[440960] 0.000818432 (share:level_fix noop)
|
||||
[442080] 0.000823555 (share:level_fix noop)
|
||||
[444320] 0.000824738 (share:core_undivide noop)
|
||||
[446640] 0.000824751 (share:core_undivide noop)
|
||||
[446960] 0.000826176 (share:level_retype noop)
|
||||
[478400] 0.000846488 (share:retype 0/llrll->re1)
|
||||
[478480] 0.000854724 (share:retype 0/lllrr->t9)
|
||||
[478640] 0.000869142 (share:level_fix noop)
|
||||
[479200] 0.000889042 (share:core_undivide noop)
|
||||
[479520] 0.000905278 (share:crossover llrll<->rrlrr)
|
||||
[483040] 0.000908676 (share:level_fix noop)
|
||||
[500200] 0.000921035 (polish:seed)
|
||||
[555320] 0.00143789 (polish:swap 0/lrrl)
|
||||
[556600] 0.0014446 (polish:level_fix noop)
|
||||
[557240] 0.00145004 (polish:swap 0/llrl)
|
||||
[620440] 0.00145004 (polish:crossover lrrr<->rlrlr)
|
||||
[657480] 0.00146631 (polish:divide 0/lrlll)
|
||||
[660760] 0.00146672 (polish:level_compound_fix noop)
|
||||
[661000] 0.00146707 (polish:retype 0/lrlrr->de1)
|
||||
[661080] 0.00146735 (polish:level_fix noop)
|
||||
[661880] 0.00146754 (polish:level_retype noop)
|
||||
[662440] 0.00146757 (polish:level_fix noop)
|
||||
written : /home/bruno/src/homemaker-layout/examples/health-centre/coldstart-500000-s2.dom
|
||||
|
|
@ -1,18 +1,17 @@
|
|||
---
|
||||
node:
|
||||
- - -0.40619466787232916
|
||||
- 7.945534625317068
|
||||
- - 12.453678259018824
|
||||
- 11.219717050727425
|
||||
- - 8.942638574000743
|
||||
- 25.206100654545047
|
||||
- - -4.223021280218349
|
||||
- 22.57415280833146
|
||||
- - -2.499098
|
||||
- 3.896165
|
||||
- - 16.284033
|
||||
- 8.678435
|
||||
- - 11.155808
|
||||
- 29.106947
|
||||
- - -8.073955
|
||||
- 25.262724
|
||||
perimeter:
|
||||
a: private
|
||||
b: ~
|
||||
c: ~
|
||||
d: ~
|
||||
b: null
|
||||
c: null
|
||||
d: null
|
||||
type: O
|
||||
rotation: 0
|
||||
height: 3
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@
|
|||
spaces:
|
||||
# ---- PUBLIC / RECEPTION ----
|
||||
rc1:
|
||||
usage: none
|
||||
name: Reception
|
||||
size:
|
||||
- 10.0
|
||||
|
|
@ -40,6 +41,7 @@ spaces:
|
|||
- o
|
||||
|
||||
wa1:
|
||||
usage: none
|
||||
name: Waiting Room
|
||||
size:
|
||||
- 28.0
|
||||
|
|
@ -57,6 +59,7 @@ spaces:
|
|||
- rc1
|
||||
|
||||
ph1:
|
||||
usage: bedroom
|
||||
name: Pharmacy / Dispensary
|
||||
size:
|
||||
- 12.0
|
||||
|
|
@ -75,6 +78,7 @@ spaces:
|
|||
|
||||
# ---- CLINICAL ----
|
||||
gp1:
|
||||
usage: bedroom
|
||||
name: GP Consulting Room
|
||||
size:
|
||||
- 14.0
|
||||
|
|
@ -89,6 +93,7 @@ spaces:
|
|||
- c
|
||||
|
||||
ms1:
|
||||
usage: bedroom
|
||||
name: Minor Surgery Room
|
||||
size:
|
||||
- 20.0
|
||||
|
|
@ -107,6 +112,7 @@ spaces:
|
|||
- de1
|
||||
|
||||
de1:
|
||||
usage: bedroom
|
||||
name: Dental Surgery
|
||||
size:
|
||||
- 18.0
|
||||
|
|
@ -124,6 +130,7 @@ spaces:
|
|||
- ms1
|
||||
|
||||
zt1:
|
||||
usage: utility
|
||||
name: Sterilisation Room
|
||||
size:
|
||||
- 6.0
|
||||
|
|
@ -139,6 +146,7 @@ spaces:
|
|||
- de1
|
||||
|
||||
pt1:
|
||||
usage: bedroom
|
||||
name: Physiotherapy Room
|
||||
size:
|
||||
- 24.0
|
||||
|
|
@ -153,6 +161,7 @@ spaces:
|
|||
- c
|
||||
|
||||
qr1:
|
||||
usage: bedroom
|
||||
name: Counselling Room
|
||||
size:
|
||||
- 9.0
|
||||
|
|
@ -167,6 +176,7 @@ spaces:
|
|||
- c
|
||||
|
||||
tr1:
|
||||
usage: bedroom
|
||||
name: Treatment Room
|
||||
size:
|
||||
- 16.0
|
||||
|
|
@ -182,6 +192,7 @@ spaces:
|
|||
|
||||
# ---- ADMIN / STAFF ----
|
||||
mo1:
|
||||
usage: bedroom
|
||||
name: Manager's Office
|
||||
size:
|
||||
- 10.0
|
||||
|
|
@ -200,6 +211,7 @@ spaces:
|
|||
- ao1
|
||||
|
||||
ao1:
|
||||
usage: bedroom
|
||||
name: Admin Office
|
||||
size:
|
||||
- 14.0
|
||||
|
|
@ -217,6 +229,8 @@ spaces:
|
|||
- br1
|
||||
|
||||
re1:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: Records Room
|
||||
size:
|
||||
- 7.0
|
||||
|
|
@ -234,6 +248,7 @@ spaces:
|
|||
- dp1
|
||||
|
||||
br1:
|
||||
usage: living
|
||||
name: Staff Room
|
||||
size:
|
||||
- 16.0
|
||||
|
|
@ -250,6 +265,7 @@ spaces:
|
|||
- ao1
|
||||
|
||||
kt1:
|
||||
usage: kitchen
|
||||
name: Staff Kitchenette
|
||||
size:
|
||||
- 8.0
|
||||
|
|
@ -266,6 +282,8 @@ spaces:
|
|||
|
||||
# ---- SERVICE ----
|
||||
me1:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: Plant / Mechanical Room
|
||||
size:
|
||||
- 9.0
|
||||
|
|
@ -280,6 +298,8 @@ spaces:
|
|||
- c
|
||||
|
||||
dp1:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: General Storage
|
||||
size:
|
||||
- 8.0
|
||||
|
|
@ -296,6 +316,7 @@ spaces:
|
|||
- re1
|
||||
|
||||
t9:
|
||||
usage: toilet
|
||||
name: Public WC
|
||||
size:
|
||||
- 4.0
|
||||
|
|
@ -311,6 +332,7 @@ spaces:
|
|||
count: 2
|
||||
|
||||
t10:
|
||||
usage: toilet
|
||||
name: Staff WC
|
||||
size:
|
||||
- 3.0
|
||||
|
|
@ -327,15 +349,26 @@ spaces:
|
|||
# Building constraints
|
||||
storey_minimum: 1
|
||||
storey_limit: 2
|
||||
force_roof_garden: 0
|
||||
# homemaker-py-hxi (DESIGN.md §39.25): ENABLED. Fails a level that has no
|
||||
# outdoor space at all -- Alexander's actual requirement, per level and with no
|
||||
# quantity attached. It had been off in every corpus config, so the only thing
|
||||
# expressing outdoor space was ratio_outside's arbitrary fraction.
|
||||
force_roof_garden: 1
|
||||
|
||||
# homemaker-py-hxi (DESIGN.md §39.24): disabled. The score is value/cost, a
|
||||
# ratio, so the per-m2 economics (circulation worth 50 against a build cost of
|
||||
# 200) is ALREADY a proportional pressure against circulation -- this said the
|
||||
# same thing a second time, and with a curve where twice the corridor is far
|
||||
# more than twice as bad. Its other side, "a building needs some circulation",
|
||||
# was worth at most 13% here and is enforced structurally anyway by the access
|
||||
# and connectivity checks. Set a [target, sigma] pair to re-enable.
|
||||
ratio_circulation:
|
||||
- 0.10
|
||||
- 0.12
|
||||
|
||||
# homemaker-py-hxi (DESIGN.md §39.25): disabled. Alexander says every level
|
||||
# should have accessible outside space; he does not say how much. The
|
||||
# qualitative requirement is force_roof_garden below. Set a [target, sigma]
|
||||
# pair to re-enable this quantitative one.
|
||||
ratio_outside:
|
||||
- 0.06
|
||||
- 0.05
|
||||
|
||||
staircase_min: 1
|
||||
staircase_max: 2
|
||||
|
|
@ -343,4 +376,9 @@ staircase_max: 2
|
|||
value_inside: 300.0
|
||||
value_circulation: 50.0
|
||||
value_outside: 100.0
|
||||
value_supported: 300.0
|
||||
# homemaker-py-ecx (DESIGN.md §39.19): an upper-level terrace is worth what
|
||||
# outdoor space is worth (value_outside); it is the COST that differs by level
|
||||
# (outside 10.0 vs outside_supported 110.0), not the value. At 300.0 -- the
|
||||
# `value_inside` rate -- a terrace was worth more per square metre than a real
|
||||
# internal room, which the owner ruled out.
|
||||
value_supported: 100.0
|
||||
|
|
|
|||
660
examples/maple-court/coldstart-500000-s0.dom
Normal file
660
examples/maple-court/coldstart-500000-s0.dom
Normal file
|
|
@ -0,0 +1,660 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 30.0
|
||||
- 1.5
|
||||
- - 29.0
|
||||
- 28.0
|
||||
- - 0.0
|
||||
- 27.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5464598645587564
|
||||
- 0.5464598645587564
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.45299793782128434
|
||||
- 0.45299793782128434
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5070312495911672
|
||||
- 0.5070312495911672
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5033641421290929
|
||||
- 0.5033641421290929
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6010610183987953
|
||||
- 0.6010610183987953
|
||||
l:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.416309216883104
|
||||
- 0.416309216883104
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.501217497085463
|
||||
- 0.501217497085463
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5023793410843957
|
||||
- 0.5023793410843957
|
||||
l:
|
||||
type: ur1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.46235803879777526
|
||||
- 0.46235803879777526
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7112823022024215
|
||||
- 0.7112823022024215
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5297305616953958
|
||||
- 0.5297305616953958
|
||||
l:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.46080415559703575
|
||||
- 0.46080415559703575
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7855477410849808
|
||||
- 0.7855477410849808
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7755916235918977
|
||||
- 0.7755916235918977
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3598376157982003
|
||||
- 0.3598376157982003
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5394353312382297
|
||||
- 0.5394353312382297
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.41991934342105464
|
||||
- 0.41991934342105464
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.33955324217012417
|
||||
- 0.33955324217012417
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: ws1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.530948242932189
|
||||
- 0.530948242932189
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6139595936852689
|
||||
- 0.6139595936852689
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: rc1
|
||||
rotation: 0
|
||||
r:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4294138772787426
|
||||
- 0.4294138772787426
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5882291917680589
|
||||
- 0.5882291917680589
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7118312482034173
|
||||
- 0.7118312482034173
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.551578125
|
||||
- 0.551578125
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7197887008888686
|
||||
- 0.7197887008888686
|
||||
l:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7419831333522663
|
||||
- 0.7419831333522663
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6937168238978216
|
||||
- 0.6937168238978216
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7276257285510321
|
||||
- 0.7276257285510321
|
||||
l:
|
||||
type: lr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6330880335881911
|
||||
- 0.6330880335881911
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.553345914363554
|
||||
- 0.553345914363554
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: ph1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5281099669161189
|
||||
- 0.5281099669161189
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: gh1
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4238388578453006
|
||||
- 0.4238388578453006
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.46438575333518434
|
||||
- 0.46438575333518434
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4166401264441752
|
||||
- 0.4166401264441752
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7142077220782733
|
||||
- 0.7142077220782733
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5009062001080014
|
||||
- 0.5009062001080014
|
||||
l:
|
||||
type: lo1
|
||||
rotation: 0
|
||||
r:
|
||||
type: en1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.722466738677041
|
||||
- 0.722466738677041
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: li1
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.375
|
||||
- 0.375
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5057497794729796
|
||||
- 0.5057497794729796
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.9009009009009009
|
||||
- 0.9009009009009009
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.9
|
||||
- 0.9
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: ur2
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5759435403447517
|
||||
- 0.5759435403447517
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.3
|
||||
- 0.3
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: py
|
||||
rotation: 0
|
||||
r:
|
||||
type: py
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6521739130434783
|
||||
- 0.6521739130434783
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.501217497085463
|
||||
- 0.501217497085463
|
||||
l:
|
||||
type: em
|
||||
rotation: 0
|
||||
r:
|
||||
type: em
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4630736037244258
|
||||
- 0.4630736037244258
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.39191302769825365
|
||||
- 0.39191302769825365
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6962360322921977
|
||||
- 0.6962360322921977
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8262218507206094
|
||||
- 0.8262218507206094
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6244638253246562
|
||||
- 0.6244638253246562
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5802219050635611
|
||||
- 0.5802219050635611
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: tt
|
||||
rotation: 0
|
||||
r:
|
||||
type: tt
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7142857142857143
|
||||
- 0.7142857142857143
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4480527946704407
|
||||
- 0.4480527946704407
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5262783719397363
|
||||
- 0.5262783719397363
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7296421643247618
|
||||
- 0.7296421643247618
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.36486892968750007
|
||||
- 0.36486892968750007
|
||||
l:
|
||||
type: gy1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5172413793103449
|
||||
- 0.5172413793103449
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.36861414301279055
|
||||
- 0.36861414301279055
|
||||
l:
|
||||
type: ur3
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5667442448821649
|
||||
- 0.5667442448821649
|
||||
l:
|
||||
type: ut1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5048892464944565
|
||||
- 0.5048892464944565
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2420950004581947
|
||||
- 0.2420950004581947
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4
|
||||
- 0.4
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7124538661857902
|
||||
- 0.7124538661857902
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6099584935544302
|
||||
- 0.6099584935544302
|
||||
l:
|
||||
type: tt
|
||||
rotation: 0
|
||||
r:
|
||||
type: tt
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5964611517116011
|
||||
- 0.5964611517116011
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7728737084050409
|
||||
- 0.7728737084050409
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.30217800720576415
|
||||
- 0.30217800720576415
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: q1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.34782608695652173
|
||||
- 0.34782608695652173
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3333333333333333
|
||||
- 0.3333333333333333
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
BIN
examples/maple-court/coldstart-500000-s0.log
Normal file
BIN
examples/maple-court/coldstart-500000-s0.log
Normal file
Binary file not shown.
628
examples/maple-court/coldstart-500000-s1.dom
Normal file
628
examples/maple-court/coldstart-500000-s1.dom
Normal file
|
|
@ -0,0 +1,628 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 30.0
|
||||
- 1.5
|
||||
- - 29.0
|
||||
- 28.0
|
||||
- - 0.0
|
||||
- 27.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4217954377679881
|
||||
- 0.4217954377679881
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6532494109246466
|
||||
- 0.6532494109246466
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.44711624955524865
|
||||
- 0.44711624955524865
|
||||
l:
|
||||
type: lr1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7493166529948532
|
||||
- 0.7493166529948532
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3863510884777275
|
||||
- 0.3863510884777275
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5821724940175944
|
||||
- 0.5821724940175944
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.793622065044247
|
||||
- 0.793622065044247
|
||||
l:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5627507124161697
|
||||
- 0.5627507124161697
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7176946455382021
|
||||
- 0.7176946455382021
|
||||
l:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.8411548172275364
|
||||
- 0.8411548172275364
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5441129737239778
|
||||
- 0.5441129737239778
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7336405346012067
|
||||
- 0.7336405346012067
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8147640010719923
|
||||
- 0.8147640010719923
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7370554352753373
|
||||
- 0.7370554352753373
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5516324878760346
|
||||
- 0.5516324878760346
|
||||
l:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5253642741676521
|
||||
- 0.5253642741676521
|
||||
l:
|
||||
type: gh1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.4385942026805069
|
||||
- 0.4385942026805069
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5280476136214016
|
||||
- 0.5280476136214016
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.43281488988313327
|
||||
- 0.43281488988313327
|
||||
l:
|
||||
type: me1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5029024891632398
|
||||
- 0.5029024891632398
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7169837502876616
|
||||
- 0.7169837502876616
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.37098199882002875
|
||||
- 0.37098199882002875
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5586244518828078
|
||||
- 0.5586244518828078
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3790996831083391
|
||||
- 0.3790996831083391
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5029024891632397
|
||||
- 0.5029024891632397
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3352683261088271
|
||||
- 0.3352683261088271
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: rc1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.7358470481881225
|
||||
- 0.7358470481881225
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7846898094392847
|
||||
- 0.7846898094392847
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3855657020783567
|
||||
- 0.3855657020783567
|
||||
l:
|
||||
type: ph1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4468629575793792
|
||||
- 0.4468629575793792
|
||||
l:
|
||||
type: ur1
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.37008565034413465
|
||||
- 0.37008565034413465
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3989190519783494
|
||||
- 0.3989190519783494
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4445387996631358
|
||||
- 0.4445387996631358
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5029024891632397
|
||||
- 0.5029024891632397
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.498454417675536
|
||||
- 0.498454417675536
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5262522543849433
|
||||
- 0.5262522543849433
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5235229688700246
|
||||
- 0.5235229688700246
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5686495246625086
|
||||
- 0.5686495246625086
|
||||
l:
|
||||
type: py
|
||||
rotation: 0
|
||||
r:
|
||||
type: em
|
||||
rotation: 0
|
||||
r:
|
||||
type: en1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.457233409542185
|
||||
- 0.457233409542185
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.43055564736619417
|
||||
- 0.43055564736619417
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6612900749499223
|
||||
- 0.6612900749499223
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3
|
||||
- 0.3
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5821724940175945
|
||||
- 0.5821724940175945
|
||||
l:
|
||||
type: li1
|
||||
rotation: 0
|
||||
r:
|
||||
type: ur2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7601464538562697
|
||||
- 0.7601464538562697
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.9090909090909091
|
||||
- 0.9090909090909091
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3333333333333333
|
||||
- 0.3333333333333333
|
||||
l:
|
||||
type: lo1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: em
|
||||
rotation: 0
|
||||
r:
|
||||
type: py
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3892208111732773
|
||||
- 0.3892208111732773
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.43255331098925165
|
||||
- 0.43255331098925165
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.28066838730628463
|
||||
- 0.28066838730628463
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.16666666666666666
|
||||
- 0.16666666666666666
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.34155460722336733
|
||||
- 0.34155460722336733
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5029024891632397
|
||||
- 0.5029024891632397
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8447025420273533
|
||||
- 0.8447025420273533
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7009836427732035
|
||||
- 0.7009836427732035
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: tt
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6434201292371758
|
||||
- 0.6434201292371758
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.27709722975684414
|
||||
- 0.27709722975684414
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4082488946798416
|
||||
- 0.4082488946798416
|
||||
l:
|
||||
type: ut1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6120090509180269
|
||||
- 0.6120090509180269
|
||||
l:
|
||||
type: ur3
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3333333333333333
|
||||
- 0.3333333333333333
|
||||
l:
|
||||
type: q1
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3352683261088271
|
||||
- 0.3352683261088271
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5974374068485503
|
||||
- 0.5974374068485503
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5690539691736006
|
||||
- 0.5690539691736006
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.34088632491204374
|
||||
- 0.34088632491204374
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8670584703450476
|
||||
- 0.8670584703450476
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4484330800758139
|
||||
- 0.4484330800758139
|
||||
l:
|
||||
type: gy1
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7327434282057801
|
||||
- 0.7327434282057801
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3352683261088271
|
||||
- 0.3352683261088271
|
||||
l:
|
||||
type: tt
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5060456297205106
|
||||
- 0.5060456297205106
|
||||
l:
|
||||
type: tt
|
||||
rotation: 0
|
||||
r:
|
||||
type: tt
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.21941800051545024
|
||||
- 0.21941800051545024
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.36363636363636365
|
||||
- 0.36363636363636365
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5442952443728626
|
||||
- 0.5442952443728626
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.4671703321376224
|
||||
- 0.4671703321376224
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
543
examples/maple-court/coldstart-500000-s1.log
Normal file
543
examples/maple-court/coldstart-500000-s1.log
Normal file
|
|
@ -0,0 +1,543 @@
|
|||
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
|
||||
[120080 evals] best 9.62542e-23 (fails 64) via core_undivide noop
|
||||
[120160 evals] best 3.45118e-22 (fails 62) via crossover rrlrl<->rlrrr
|
||||
[120400 evals] best 3.4623e-22 (fails 62) via core_divide noop
|
||||
[121280 evals] best 3.47395e-22 (fails 62) via core_divide noop
|
||||
[127040 evals] best 3.48617e-22 (fails 62) via crossover llrrr<->lrlr
|
||||
[130400 evals] best 3.49897e-22 (fails 62) via crossover ll<->ll
|
||||
[141760 evals] best 6.80652e-22 (fails 61) via swap 0/lrl
|
||||
[143680 evals] best 9.54701e-22 (fails 61) via crossover rlrrl<->lrll
|
||||
[151440 evals] best 9.57869e-22 (fails 61) via level_retype 2/rllr<->1/lrll
|
||||
[153120 evals] best 9.61188e-22 (fails 61) via retype 0/llrll->n
|
||||
[157360 evals] best 9.64666e-22 (fails 61) via retype 0/rlrlr->tt
|
||||
[159680 evals] best 1.85943e-21 (fails 60) via undivide 0/rlrr
|
||||
[161040 evals] best 1.86564e-21 (fails 60) via core_undivide noop
|
||||
[161440 evals] best 1.87142e-21 (fails 60) via retype 1/lrrr->gh1
|
||||
[170240 evals] best 2.15038e-21 (fails 60) via swap 0/llrr
|
||||
[172160 evals] best 2.16303e-21 (fails 60) via core_undivide noop
|
||||
[180800 evals] best 2.17437e-21 (fails 60) via swap 0/rlrl
|
||||
[188640 evals] best 2.18483e-21 (fails 60) via core_undivide noop
|
||||
[192560 evals] best 2.1924e-21 (fails 60) via core_undivide noop
|
||||
[197280 evals] best 2.19779e-21 (fails 60) via crossover rlrlr<->rlrlr
|
||||
[199040 evals] best 2.20487e-21 (fails 60) via swap 0/lrl
|
||||
[205040 evals] best 2.21102e-21 (fails 60) via crossover rrr<->rrr
|
||||
[206480 evals] best 2.21103e-21 (fails 60) via retype 0/rrlrll->gh1
|
||||
[212000 evals] best 2.21402e-21 (fails 60) via core_undivide noop
|
||||
[215760 evals] best 2.21403e-21 (fails 60) via retype 2/llrrl->tt
|
||||
[215920 evals] best 2.21422e-21 (fails 60) via retype 0/rrlrll->gh1
|
||||
[225600 evals] best 2.21422e-21 (fails 60) via rotate 2/llrr
|
||||
[227200 evals] best 2.21441e-21 (fails 60) via rotate 2/llrr
|
||||
[230720 evals] best 2.21445e-21 (fails 60) via core_undivide noop
|
||||
[234720 evals] best 2.21445e-21 (fails 60) via swap 0/rrll
|
||||
[240240 evals] best 2.7509e-20 (fails 56) via level_fix ws1: lvl1/rllll → lvl0/rllll
|
||||
[268800 evals] best 6.17587e-20 (fails 55) via swap 0/lr
|
||||
[271440 evals] best 6.21537e-20 (fails 55) via rotate 2/llrr
|
||||
[272480 evals] best 6.21597e-20 (fails 55) via swap 0/lrr
|
||||
[275920 evals] best 6.23221e-20 (fails 55) via core_undivide noop
|
||||
[279920 evals] best 6.23222e-20 (fails 55) via core_undivide noop
|
||||
[290320 evals] best 2.47209e-19 (fails 53) via undivide 0/lrr
|
||||
[290640 evals] best 2.47209e-19 (fails 53) via level_retype 2/rrrrl<->0/llrlr
|
||||
[338880 evals] best 2.54027e-19 (fails 53) via undivide 0/llrll
|
||||
[344000 evals] best 2.54987e-19 (fails 53) via core_undivide noop
|
||||
[345120 evals] best 2.54991e-19 (fails 53) via core_undivide noop
|
||||
[365760 evals] best 2.54992e-19 (fails 53) via rotate 0/rrll
|
||||
|
||||
--- finishing (homemaker-py-3l6): unfold + polish 250000 evals ---
|
||||
[finish] unfold: materialised 20 shared-leaf copies
|
||||
[ 200 evals] best 5.2212e-35 (fails 105) via seed
|
||||
[ 600 evals] best 5.31288e-35 (fails 105) via core_undivide noop
|
||||
[ 4600 evals] best 5.34535e-35 (fails 105) via swap 0/rlrl
|
||||
[ 5480 evals] best 5.50561e-35 (fails 105) via core_undivide noop
|
||||
[ 8600 evals] best 5.91954e-35 (fails 105) via core_undivide noop
|
||||
[ 11640 evals] best 5.95296e-35 (fails 105) via crossover lrlr<->lrlr
|
||||
[ 12120 evals] best 1.08246e-34 (fails 104) via core_undivide noop
|
||||
[ 12280 evals] best 2.18762e-34 (fails 103) via core_undivide noop
|
||||
[ 13480 evals] best 4.4404e-34 (fails 102) via swap 2/lllr
|
||||
[ 15720 evals] best 4.49169e-34 (fails 102) via crossover rlrlr<->rlllrl
|
||||
[ 18120 evals] best 9.17439e-34 (fails 101) via divide 2/rlrl
|
||||
[ 18200 evals] best 9.24149e-34 (fails 101) via core_undivide noop
|
||||
[ 18360 evals] best 1.01588e-33 (fails 101) via undivide 2/rlrl
|
||||
[ 20040 evals] best 1.02041e-33 (fails 101) via crossover rrllrr<->rrllrr
|
||||
[ 20440 evals] best 1.09867e-33 (fails 101) via swap 0/rlrl
|
||||
[ 23080 evals] best 1.10286e-33 (fails 101) via swap 0/rrr
|
||||
[ 24920 evals] best 1.10506e-33 (fails 101) via level_retype 0/rllll<->1/lrrr
|
||||
[ 28920 evals] best 1.11142e-33 (fails 101) via core_undivide noop
|
||||
[ 29560 evals] best 1.11302e-33 (fails 101) via crossover rrlll<->rrlll
|
||||
[ 30760 evals] best 2.88758e-33 (fails 100) via undivide 0/lll
|
||||
[ 31640 evals] best 2.91448e-33 (fails 100) via core_undivide noop
|
||||
[ 32680 evals] best 5.24826e-33 (fails 99) via crossover llrll<->rrlrl
|
||||
[ 35560 evals] best 5.54405e-33 (fails 99) via retype 0/rlllrrr->rc1
|
||||
[ 39080 evals] best 5.5603e-33 (fails 99) via rotate 0/rrlll
|
||||
[ 39160 evals] best 5.57739e-33 (fails 99) via core_undivide noop
|
||||
[ 42600 evals] best 5.5943e-33 (fails 99) via retype 0/rlrlr->li1
|
||||
[ 42760 evals] best 5.69106e-33 (fails 99) via crossover rrllrr<->rrlllr
|
||||
[ 42920 evals] best 6.73164e-33 (fails 99) via rotate 0/llrl
|
||||
[ 51480 evals] best 6.83512e-33 (fails 99) via rotate 0/rlllr
|
||||
[ 52200 evals] best 6.87955e-33 (fails 99) via core_undivide noop
|
||||
[ 52680 evals] best 6.88824e-33 (fails 99) via core_undivide noop
|
||||
[ 53080 evals] best 6.89371e-33 (fails 99) via retype 2/rlrrrl->lr1
|
||||
[ 57160 evals] best 1.20103e-32 (fails 98) via rotate 0/rrl
|
||||
[ 57480 evals] best 1.29e-32 (fails 98) via crossover llrlr<->rrlrll
|
||||
[ 58280 evals] best 1.85811e-31 (fails 94) via rotate 0/rrllrr
|
||||
[ 59560 evals] best 1.86354e-31 (fails 94) via crossover rrllrrr<->rrllrrr
|
||||
[ 60360 evals] best 1.86497e-31 (fails 94) via retype 1/lllr->k1
|
||||
[ 63000 evals] best 4.31216e-31 (fails 93) via crossover rrlll<->rrllr
|
||||
[ 66120 evals] best 4.44199e-31 (fails 93) via level_retype 2/rlrrrrr<->1/rlllr
|
||||
[ 66760 evals] best 4.51891e-31 (fails 93) via level_retype 2/llrrl<->0/rrllll
|
||||
[ 67320 evals] best 8.4029e-31 (fails 92) via crossover rlrlr<->rrlrr
|
||||
[ 69160 evals] best 8.60511e-31 (fails 92) via swap 0/rrlrl
|
||||
[ 71400 evals] best 8.63911e-31 (fails 92) via core_undivide noop
|
||||
[ 72600 evals] best 8.79881e-31 (fails 92) via crossover rrlll<->rrllrr
|
||||
[ 73080 evals] best 8.83116e-31 (fails 92) via core_undivide noop
|
||||
[ 74200 evals] best 8.85642e-31 (fails 92) via retype 1/rllrl->em
|
||||
[ 75800 evals] best 8.87862e-31 (fails 92) via core_undivide noop
|
||||
[ 76760 evals] best 8.8989e-31 (fails 92) via level_retype 0/rlrlr<->2/lrrrrl
|
||||
[ 82040 evals] best 8.91395e-31 (fails 92) via crossover rrlllr<->rlrlr
|
||||
[ 82120 evals] best 1.73329e-30 (fails 91) via undivide 0/rlrl
|
||||
[ 83000 evals] best 1.77156e-30 (fails 91) via core_undivide noop
|
||||
[ 83080 evals] best 1.78496e-30 (fails 91) via retype 0/llrll->me1
|
||||
[ 83480 evals] best 3.57354e-30 (fails 90) via swap 2/lrrrr
|
||||
[ 83960 evals] best 3.57541e-30 (fails 90) via crossover lr<->lr
|
||||
[ 84120 evals] best 4.01301e-30 (fails 90) via divide 0/rlrr
|
||||
[ 87400 evals] best 8.58213e-30 (fails 89) via crossover llrll<->lrlr
|
||||
[ 88760 evals] best 9.11271e-30 (fails 89) via undivide 0/rrlll
|
||||
[ 89320 evals] best 1.41927e-29 (fails 88) via rotate 0/rrlrl
|
||||
[ 89720 evals] best 6.87803e-29 (fails 86) via undivide 0/rlrl
|
||||
[ 93640 evals] best 6.98647e-29 (fails 86) via crossover rrllrrl<->rlrlr
|
||||
[ 94280 evals] best 7.1026e-29 (fails 86) via level_retype 0/lrr<->1/rrr
|
||||
[ 97800 evals] best 7.14826e-29 (fails 86) via retype 0/llrllr->m
|
||||
[100760 evals] best 7.2509e-29 (fails 86) via rotate 2/rlrrrr
|
||||
[101320 evals] best 7.2509e-29 (fails 86) via retype 2/llrrl->la1
|
||||
[101640 evals] best 7.28113e-29 (fails 86) via level_retype 1/lrrll<->2/lrrrrl
|
||||
[101960 evals] best 7.30664e-29 (fails 86) via level_retype 2/lllrlr<->1/rllrl
|
||||
[106280 evals] best 7.34119e-29 (fails 86) via level_retype 1/llll<->0/rrllrrr
|
||||
[111560 evals] best 7.34119e-29 (fails 86) via retype 1/rrllrl->lr1
|
||||
[115320 evals] best 7.38547e-29 (fails 86) via core_undivide noop
|
||||
[116040 evals] best 7.42718e-29 (fails 86) via crossover rlllrrl<->rrllll
|
||||
[116760 evals] best 7.42718e-29 (fails 86) via retype 1/rllrl->ur2
|
||||
[117080 evals] best 8.03623e-29 (fails 86) via retype 2/lllrrr->ws1
|
||||
[118120 evals] best 8.09228e-29 (fails 86) via level_retype 0/rrlrlr<->2/rlrl
|
||||
[118760 evals] best 8.1446e-29 (fails 86) via retype 1/rrlll->ws1
|
||||
[121000 evals] best 3.02477e-28 (fails 84) via rotate 0/rl
|
||||
[121480 evals] best 3.08711e-28 (fails 84) via retype 2/lrrrrr->ws1
|
||||
[122760 evals] best 3.38962e-28 (fails 84) via retype 0/rrrr->ws1
|
||||
[123400 evals] best 3.38962e-28 (fails 84) via crossover rlrl<->lrll
|
||||
[123640 evals] best 3.50344e-28 (fails 84) via crossover lrr<->lrr
|
||||
[124520 evals] best 3.52045e-28 (fails 84) via retype 2/rlrrrrl->me1
|
||||
[124600 evals] best 3.56494e-28 (fails 84) via core_undivide noop
|
||||
[125800 evals] best 6.73688e-28 (fails 83) via undivide 0/rlrr
|
||||
[126760 evals] best 6.77494e-28 (fails 83) via crossover rrlll<->rrlll
|
||||
[130280 evals] best 7.25183e-28 (fails 83) via rotate 2/rlrrrr
|
||||
[131800 evals] best 1.43538e-27 (fails 82) via core_undivide noop
|
||||
[132840 evals] best 1.43967e-27 (fails 82) via level_retype 2/rlrl<->1/rllrr
|
||||
[134200 evals] best 1.44785e-27 (fails 82) via crossover rrllrrl<->rlllrrr
|
||||
[143320 evals] best 1.45449e-27 (fails 82) via retype 2/lrrrl->la1
|
||||
[143560 evals] best 1.45909e-27 (fails 82) via swap 0/rrr
|
||||
[146120 evals] best 1.46026e-27 (fails 82) via retype 1/lrrr->rc1
|
||||
[148520 evals] best 1.48466e-27 (fails 82) via retype 1/rllrr->q1
|
||||
[150600 evals] best 3.27114e-27 (fails 80) via crossover rllll<->lr
|
||||
[153800 evals] best 3.32861e-27 (fails 80) via retype 0/rrlrlll->py
|
||||
[155640 evals] best 3.33504e-27 (fails 80) via retype 0/rrllll->la1
|
||||
[159160 evals] best 2.55427e-26 (fails 77) via crossover rllllrr<->llrlll
|
||||
[161720 evals] best 2.56973e-26 (fails 77) via level_retype 2/rrrrl<->0/rllllrl
|
||||
[161800 evals] best 2.58293e-26 (fails 77) via core_undivide noop
|
||||
[166040 evals] best 2.59423e-26 (fails 77) via core_undivide noop
|
||||
[172440 evals] best 2.60068e-26 (fails 77) via core_undivide noop
|
||||
[173960 evals] best 2.60902e-26 (fails 77) via crossover llrrl<->llrllr
|
||||
[175080 evals] best 2.64008e-26 (fails 77) via rotate 2/lrrrr
|
||||
[177240 evals] best 2.64316e-26 (fails 77) via retype 2/llll->rc1
|
||||
[177400 evals] best 2.70036e-26 (fails 77) via level_retype 2/rlrrrrr<->0/rrlllr
|
||||
[178040 evals] best 2.70318e-26 (fails 77) via level_retype 1/llll<->2/llrrl
|
||||
[178920 evals] best 4.94916e-26 (fails 76) via swap 0/rlllr
|
||||
[182120 evals] best 5.18746e-26 (fails 76) via core_undivide noop
|
||||
[185240 evals] best 5.26932e-26 (fails 76) via swap 1/lll
|
||||
[190120 evals] best 9.41818e-26 (fails 75) via core_undivide noop
|
||||
[194760 evals] best 9.45567e-26 (fails 75) via swap 0/rlllrl
|
||||
[197240 evals] best 9.49813e-26 (fails 75) via core_undivide noop
|
||||
[201960 evals] best 9.55548e-26 (fails 75) via crossover llrrl<->rrrl
|
||||
[202280 evals] best 9.62796e-26 (fails 75) via level_retype 2/rlrl<->0/rlllrll
|
||||
[207320 evals] best 9.7119e-26 (fails 75) via core_undivide noop
|
||||
[207800 evals] best 9.80185e-26 (fails 75) via swap 2/lrrrr
|
||||
[213480 evals] best 9.83175e-26 (fails 75) via core_undivide noop
|
||||
[220440 evals] best 9.8571e-26 (fails 75) via core_undivide noop
|
||||
[222680 evals] best 9.93164e-26 (fails 75) via swap 0/rrll
|
||||
[226360 evals] best 9.97687e-26 (fails 75) via rotate 2/llrr
|
||||
[227080 evals] best 9.98918e-26 (fails 75) via swap 2/lrrrr
|
||||
[228040 evals] best 1.02173e-25 (fails 75) via crossover rrllll<->rrllrl
|
||||
[232200 evals] best 1.03412e-25 (fails 75) via core_undivide noop
|
||||
[232920 evals] best 1.03464e-25 (fails 75) via crossover rrlrlll<->rrlrlll
|
||||
[235160 evals] best 1.03475e-25 (fails 75) via crossover lrll<->lrll
|
||||
[239320 evals] best 1.03698e-25 (fails 75) via core_undivide noop
|
||||
[240040 evals] best 1.037e-25 (fails 75) via retype 1/lrrr->q1
|
||||
[246760 evals] best 1.03703e-25 (fails 75) via level_retype 0/llrlr<->2/lrrrl
|
||||
[249560 evals] best 4.61196e-25 (fails 73) via level_retype 0/rlrrr<->2/lrrrl
|
||||
|
||||
--- collapse (homemaker-py-94g): finish-time cell→room relabel ---
|
||||
[finish] collapse: 227 → 73 fails (applied)
|
||||
|
||||
--- done ---
|
||||
elapsed : 207109.5s
|
||||
evals : 750040 across 9374 topologies
|
||||
best : 4.61196e-25 (73 fails) via level_retype 0/rlrrr<->2/lrrrl+collapse
|
||||
|
||||
improvement history:
|
||||
[ 80] 7.48546e-46 (share:construct/0)
|
||||
[ 160] 4.82423e-42 (share:construct/1)
|
||||
[ 480] 8.67067e-42 (share:construct/5)
|
||||
[ 800] 4.80398e-39 (share:construct/9)
|
||||
[ 1440] 6.36848e-40 (share:place_missing r -> rrrr)
|
||||
[ 2160] 1.32118e-39 (share:level_fix noop)
|
||||
[ 2400] 1.60106e-38 (share:place_missing em -> rlll)
|
||||
[ 3040] 3.2838e-38 (share:rotate 0/rrll)
|
||||
[ 3760] 3.65129e-38 (share:core_undivide noop)
|
||||
[ 4320] 5.79431e-37 (share:place_missing r -> rrrl)
|
||||
[ 4400] 5.8784e-37 (share:core_undivide noop)
|
||||
[ 4640] 2.78722e-36 (share:retype 1/rlllr->py)
|
||||
[ 5760] 4.90785e-34 (share:crossover lrrl<->rrrl)
|
||||
[ 8480] 5.06412e-34 (share:level_retype 2/rrlr<->0/rrrl)
|
||||
[ 8960] 1.00937e-33 (share:retype 1/rrlr->O)
|
||||
[ 9840] 2.11427e-33 (share:swap 0/lrr)
|
||||
[ 10480] 2.17495e-33 (share:swap 0/rlrl)
|
||||
[ 11040] 2.25388e-33 (share:core_divide noop)
|
||||
[ 12480] 4.78668e-33 (share:undivide 2/llr)
|
||||
[ 12720] 4.80876e-33 (share:core_divide noop)
|
||||
[ 13760] 9.1709e-33 (share:divide 2/llrr)
|
||||
[ 14560] 1.84586e-32 (share:core_undivide noop)
|
||||
[ 16880] 1.85284e-32 (share:crossover llrlr<->rlllr)
|
||||
[ 19840] 7.42595e-32 (share:core_undivide noop)
|
||||
[ 20800] 1.48504e-31 (share:core_undivide noop)
|
||||
[ 23680] 1.48739e-31 (share:core_undivide noop)
|
||||
[ 24560] 1.55172e-31 (share:core_divide noop)
|
||||
[ 25680] 1.56264e-31 (share:core_undivide noop)
|
||||
[ 26080] 6.36171e-31 (share:swap 2/rrr)
|
||||
[ 27040] 6.41788e-31 (share:level_retype 0/rrrl<->2/rllr)
|
||||
[ 28240] 1.02644e-30 (share:crossover lrl<->lrr)
|
||||
[ 29200] 1.04874e-30 (share:crossover llrrr<->llrrr)
|
||||
[ 30320] 3.66451e-30 (share:level_compound_fix k1: lvl2 → lvl0/rllll + insert lr1 into lrlr/lvl0)
|
||||
[ 30960] 1.09242e-29 (share:crossover rrlrr<->llrrl)
|
||||
[ 33120] 3.5356e-29 (share:crossover llrll<->lrll)
|
||||
[ 36160] 3.56494e-29 (share:level_retype 0/lrrr<->2/rllr)
|
||||
[ 40320] 4.93101e-29 (share:crossover lr<->lr)
|
||||
[ 40960] 4.96131e-29 (share:crossover rlrrr<->rlrrr)
|
||||
[ 42240] 8.67773e-29 (share:retype 2/rrrrr->t)
|
||||
[ 43920] 1.52112e-28 (share:crossover lllr<->rlrr)
|
||||
[ 46480] 1.52992e-28 (share:crossover lrr<->lrr)
|
||||
[ 48720] 3.06138e-28 (share:level_retype 2/lllr<->0/rlrlr)
|
||||
[ 51120] 3.07068e-28 (share:swap 2/llrr)
|
||||
[ 53440] 3.07434e-28 (share:swap 0/rlrr)
|
||||
[ 54560] 3.44534e-28 (share:crossover lrrl<->lllrl)
|
||||
[ 57600] 3.45695e-28 (share:core_divide noop)
|
||||
[ 58240] 3.46141e-28 (share:core_undivide noop)
|
||||
[ 61440] 3.46205e-28 (share:core_divide noop)
|
||||
[ 61840] 3.4624e-28 (share:core_divide noop)
|
||||
[ 62720] 3.46265e-28 (share:core_divide noop)
|
||||
[ 62800] 3.46265e-28 (share:core_undivide noop)
|
||||
[ 64880] 3.51879e-28 (share:level_fix k1: lvl2/rrlr → lvl0/rllll)
|
||||
[ 66240] 3.53264e-28 (share:retype 1/lrll->gh1)
|
||||
[ 66480] 3.55549e-28 (share:core_divide noop)
|
||||
[ 66800] 3.57445e-28 (share:crossover llrll<->llrll)
|
||||
[ 68000] 2.06412e-27 (share:level_fix k1: lvl2/rrlr → lvl0/rllll)
|
||||
[ 69120] 2.06883e-27 (share:core_divide noop)
|
||||
[ 71520] 2.76174e-27 (share:rotate 0/lr)
|
||||
[ 72640] 2.76227e-27 (share:core_undivide noop)
|
||||
[ 73520] 2.76276e-27 (share:core_divide noop)
|
||||
[ 75600] 2.7632e-27 (share:core_divide noop)
|
||||
[ 76320] 2.76358e-27 (share:core_undivide noop)
|
||||
[ 76960] 2.76389e-27 (share:core_undivide noop)
|
||||
[ 78880] 1.83174e-26 (share:level_retype 0/rrlrlr<->2/rlll)
|
||||
[ 78960] 1.87802e-26 (share:core_divide noop)
|
||||
[ 79360] 3.90146e-26 (share:swap 0/rlrl)
|
||||
[ 79520] 3.95859e-26 (share:rotate 0/llrr)
|
||||
[ 79600] 3.96056e-26 (share:crossover lrrl<->lllrl)
|
||||
[ 82720] 3.98751e-26 (share:core_undivide noop)
|
||||
[ 84240] 8.37192e-26 (share:crossover llrl<->lrr)
|
||||
[ 84640] 8.42852e-26 (share:rotate 2/rrrr)
|
||||
[ 84800] 3.5634e-25 (share:crossover rllr<->lrrl)
|
||||
[ 87040] 3.59072e-25 (share:rotate 0/rrll)
|
||||
[ 89120] 3.61957e-25 (share:retype 1/rlllr->lr1)
|
||||
[ 90800] 1.19078e-24 (share:crossover rlrrl<->rrlrr)
|
||||
[ 97680] 5.2661e-24 (share:rotate 0/lrl)
|
||||
[ 98560] 5.54831e-24 (share:retype 0/rlrlr->ur3)
|
||||
[103360] 5.61335e-24 (share:level_retype 2/llll<->1/rllll)
|
||||
[104400] 5.65917e-24 (share:core_divide noop)
|
||||
[106240] 5.68365e-24 (share:core_undivide noop)
|
||||
[108800] 1.16147e-23 (share:core_divide noop)
|
||||
[109760] 2.26647e-23 (share:swap 0/lrl)
|
||||
[112160] 2.27596e-23 (share:core_undivide noop)
|
||||
[112800] 9.05097e-23 (share:level_retype 0/llrll<->2/rrll)
|
||||
[115920] 9.55098e-23 (share:core_undivide noop)
|
||||
[117200] 9.59197e-23 (share:rotate 0/rlrl)
|
||||
[120080] 9.62542e-23 (share:core_undivide noop)
|
||||
[120160] 3.45118e-22 (share:crossover rrlrl<->rlrrr)
|
||||
[120400] 3.4623e-22 (share:core_divide noop)
|
||||
[121280] 3.47395e-22 (share:core_divide noop)
|
||||
[127040] 3.48617e-22 (share:crossover llrrr<->lrlr)
|
||||
[130400] 3.49897e-22 (share:crossover ll<->ll)
|
||||
[141760] 6.80652e-22 (share:swap 0/lrl)
|
||||
[143680] 9.54701e-22 (share:crossover rlrrl<->lrll)
|
||||
[151440] 9.57869e-22 (share:level_retype 2/rllr<->1/lrll)
|
||||
[153120] 9.61188e-22 (share:retype 0/llrll->n)
|
||||
[157360] 9.64666e-22 (share:retype 0/rlrlr->tt)
|
||||
[159680] 1.85943e-21 (share:undivide 0/rlrr)
|
||||
[161040] 1.86564e-21 (share:core_undivide noop)
|
||||
[161440] 1.87142e-21 (share:retype 1/lrrr->gh1)
|
||||
[170240] 2.15038e-21 (share:swap 0/llrr)
|
||||
[172160] 2.16303e-21 (share:core_undivide noop)
|
||||
[180800] 2.17437e-21 (share:swap 0/rlrl)
|
||||
[188640] 2.18483e-21 (share:core_undivide noop)
|
||||
[192560] 2.1924e-21 (share:core_undivide noop)
|
||||
[197280] 2.19779e-21 (share:crossover rlrlr<->rlrlr)
|
||||
[199040] 2.20487e-21 (share:swap 0/lrl)
|
||||
[205040] 2.21102e-21 (share:crossover rrr<->rrr)
|
||||
[206480] 2.21103e-21 (share:retype 0/rrlrll->gh1)
|
||||
[212000] 2.21402e-21 (share:core_undivide noop)
|
||||
[215760] 2.21403e-21 (share:retype 2/llrrl->tt)
|
||||
[215920] 2.21422e-21 (share:retype 0/rrlrll->gh1)
|
||||
[225600] 2.21422e-21 (share:rotate 2/llrr)
|
||||
[227200] 2.21441e-21 (share:rotate 2/llrr)
|
||||
[230720] 2.21445e-21 (share:core_undivide noop)
|
||||
[234720] 2.21445e-21 (share:swap 0/rrll)
|
||||
[240240] 2.7509e-20 (share:level_fix ws1: lvl1/rllll → lvl0/rllll)
|
||||
[268800] 6.17587e-20 (share:swap 0/lr)
|
||||
[271440] 6.21537e-20 (share:rotate 2/llrr)
|
||||
[272480] 6.21597e-20 (share:swap 0/lrr)
|
||||
[275920] 6.23221e-20 (share:core_undivide noop)
|
||||
[279920] 6.23222e-20 (share:core_undivide noop)
|
||||
[290320] 2.47209e-19 (share:undivide 0/lrr)
|
||||
[290640] 2.47209e-19 (share:level_retype 2/rrrrl<->0/llrlr)
|
||||
[338880] 2.54027e-19 (share:undivide 0/llrll)
|
||||
[344000] 2.54987e-19 (share:core_undivide noop)
|
||||
[345120] 2.54991e-19 (share:core_undivide noop)
|
||||
[365760] 2.54992e-19 (share:rotate 0/rrll)
|
||||
[500200] 5.2212e-35 (polish:seed)
|
||||
[500600] 5.31288e-35 (polish:core_undivide noop)
|
||||
[504600] 5.34535e-35 (polish:swap 0/rlrl)
|
||||
[505480] 5.50561e-35 (polish:core_undivide noop)
|
||||
[508600] 5.91954e-35 (polish:core_undivide noop)
|
||||
[511640] 5.95296e-35 (polish:crossover lrlr<->lrlr)
|
||||
[512120] 1.08246e-34 (polish:core_undivide noop)
|
||||
[512280] 2.18762e-34 (polish:core_undivide noop)
|
||||
[513480] 4.4404e-34 (polish:swap 2/lllr)
|
||||
[515720] 4.49169e-34 (polish:crossover rlrlr<->rlllrl)
|
||||
[518120] 9.17439e-34 (polish:divide 2/rlrl)
|
||||
[518200] 9.24149e-34 (polish:core_undivide noop)
|
||||
[518360] 1.01588e-33 (polish:undivide 2/rlrl)
|
||||
[520040] 1.02041e-33 (polish:crossover rrllrr<->rrllrr)
|
||||
[520440] 1.09867e-33 (polish:swap 0/rlrl)
|
||||
[523080] 1.10286e-33 (polish:swap 0/rrr)
|
||||
[524920] 1.10506e-33 (polish:level_retype 0/rllll<->1/lrrr)
|
||||
[528920] 1.11142e-33 (polish:core_undivide noop)
|
||||
[529560] 1.11302e-33 (polish:crossover rrlll<->rrlll)
|
||||
[530760] 2.88758e-33 (polish:undivide 0/lll)
|
||||
[531640] 2.91448e-33 (polish:core_undivide noop)
|
||||
[532680] 5.24826e-33 (polish:crossover llrll<->rrlrl)
|
||||
[535560] 5.54405e-33 (polish:retype 0/rlllrrr->rc1)
|
||||
[539080] 5.5603e-33 (polish:rotate 0/rrlll)
|
||||
[539160] 5.57739e-33 (polish:core_undivide noop)
|
||||
[542600] 5.5943e-33 (polish:retype 0/rlrlr->li1)
|
||||
[542760] 5.69106e-33 (polish:crossover rrllrr<->rrlllr)
|
||||
[542920] 6.73164e-33 (polish:rotate 0/llrl)
|
||||
[551480] 6.83512e-33 (polish:rotate 0/rlllr)
|
||||
[552200] 6.87955e-33 (polish:core_undivide noop)
|
||||
[552680] 6.88824e-33 (polish:core_undivide noop)
|
||||
[553080] 6.89371e-33 (polish:retype 2/rlrrrl->lr1)
|
||||
[557160] 1.20103e-32 (polish:rotate 0/rrl)
|
||||
[557480] 1.29e-32 (polish:crossover llrlr<->rrlrll)
|
||||
[558280] 1.85811e-31 (polish:rotate 0/rrllrr)
|
||||
[559560] 1.86354e-31 (polish:crossover rrllrrr<->rrllrrr)
|
||||
[560360] 1.86497e-31 (polish:retype 1/lllr->k1)
|
||||
[563000] 4.31216e-31 (polish:crossover rrlll<->rrllr)
|
||||
[566120] 4.44199e-31 (polish:level_retype 2/rlrrrrr<->1/rlllr)
|
||||
[566760] 4.51891e-31 (polish:level_retype 2/llrrl<->0/rrllll)
|
||||
[567320] 8.4029e-31 (polish:crossover rlrlr<->rrlrr)
|
||||
[569160] 8.60511e-31 (polish:swap 0/rrlrl)
|
||||
[571400] 8.63911e-31 (polish:core_undivide noop)
|
||||
[572600] 8.79881e-31 (polish:crossover rrlll<->rrllrr)
|
||||
[573080] 8.83116e-31 (polish:core_undivide noop)
|
||||
[574200] 8.85642e-31 (polish:retype 1/rllrl->em)
|
||||
[575800] 8.87862e-31 (polish:core_undivide noop)
|
||||
[576760] 8.8989e-31 (polish:level_retype 0/rlrlr<->2/lrrrrl)
|
||||
[582040] 8.91395e-31 (polish:crossover rrlllr<->rlrlr)
|
||||
[582120] 1.73329e-30 (polish:undivide 0/rlrl)
|
||||
[583000] 1.77156e-30 (polish:core_undivide noop)
|
||||
[583080] 1.78496e-30 (polish:retype 0/llrll->me1)
|
||||
[583480] 3.57354e-30 (polish:swap 2/lrrrr)
|
||||
[583960] 3.57541e-30 (polish:crossover lr<->lr)
|
||||
[584120] 4.01301e-30 (polish:divide 0/rlrr)
|
||||
[587400] 8.58213e-30 (polish:crossover llrll<->lrlr)
|
||||
[588760] 9.11271e-30 (polish:undivide 0/rrlll)
|
||||
[589320] 1.41927e-29 (polish:rotate 0/rrlrl)
|
||||
[589720] 6.87803e-29 (polish:undivide 0/rlrl)
|
||||
[593640] 6.98647e-29 (polish:crossover rrllrrl<->rlrlr)
|
||||
[594280] 7.1026e-29 (polish:level_retype 0/lrr<->1/rrr)
|
||||
[597800] 7.14826e-29 (polish:retype 0/llrllr->m)
|
||||
[600760] 7.2509e-29 (polish:rotate 2/rlrrrr)
|
||||
[601320] 7.2509e-29 (polish:retype 2/llrrl->la1)
|
||||
[601640] 7.28113e-29 (polish:level_retype 1/lrrll<->2/lrrrrl)
|
||||
[601960] 7.30664e-29 (polish:level_retype 2/lllrlr<->1/rllrl)
|
||||
[606280] 7.34119e-29 (polish:level_retype 1/llll<->0/rrllrrr)
|
||||
[611560] 7.34119e-29 (polish:retype 1/rrllrl->lr1)
|
||||
[615320] 7.38547e-29 (polish:core_undivide noop)
|
||||
[616040] 7.42718e-29 (polish:crossover rlllrrl<->rrllll)
|
||||
[616760] 7.42718e-29 (polish:retype 1/rllrl->ur2)
|
||||
[617080] 8.03623e-29 (polish:retype 2/lllrrr->ws1)
|
||||
[618120] 8.09228e-29 (polish:level_retype 0/rrlrlr<->2/rlrl)
|
||||
[618760] 8.1446e-29 (polish:retype 1/rrlll->ws1)
|
||||
[621000] 3.02477e-28 (polish:rotate 0/rl)
|
||||
[621480] 3.08711e-28 (polish:retype 2/lrrrrr->ws1)
|
||||
[622760] 3.38962e-28 (polish:retype 0/rrrr->ws1)
|
||||
[623400] 3.38962e-28 (polish:crossover rlrl<->lrll)
|
||||
[623640] 3.50344e-28 (polish:crossover lrr<->lrr)
|
||||
[624520] 3.52045e-28 (polish:retype 2/rlrrrrl->me1)
|
||||
[624600] 3.56494e-28 (polish:core_undivide noop)
|
||||
[625800] 6.73688e-28 (polish:undivide 0/rlrr)
|
||||
[626760] 6.77494e-28 (polish:crossover rrlll<->rrlll)
|
||||
[630280] 7.25183e-28 (polish:rotate 2/rlrrrr)
|
||||
[631800] 1.43538e-27 (polish:core_undivide noop)
|
||||
[632840] 1.43967e-27 (polish:level_retype 2/rlrl<->1/rllrr)
|
||||
[634200] 1.44785e-27 (polish:crossover rrllrrl<->rlllrrr)
|
||||
[643320] 1.45449e-27 (polish:retype 2/lrrrl->la1)
|
||||
[643560] 1.45909e-27 (polish:swap 0/rrr)
|
||||
[646120] 1.46026e-27 (polish:retype 1/lrrr->rc1)
|
||||
[648520] 1.48466e-27 (polish:retype 1/rllrr->q1)
|
||||
[650600] 3.27114e-27 (polish:crossover rllll<->lr)
|
||||
[653800] 3.32861e-27 (polish:retype 0/rrlrlll->py)
|
||||
[655640] 3.33504e-27 (polish:retype 0/rrllll->la1)
|
||||
[659160] 2.55427e-26 (polish:crossover rllllrr<->llrlll)
|
||||
[661720] 2.56973e-26 (polish:level_retype 2/rrrrl<->0/rllllrl)
|
||||
[661800] 2.58293e-26 (polish:core_undivide noop)
|
||||
[666040] 2.59423e-26 (polish:core_undivide noop)
|
||||
[672440] 2.60068e-26 (polish:core_undivide noop)
|
||||
[673960] 2.60902e-26 (polish:crossover llrrl<->llrllr)
|
||||
[675080] 2.64008e-26 (polish:rotate 2/lrrrr)
|
||||
[677240] 2.64316e-26 (polish:retype 2/llll->rc1)
|
||||
[677400] 2.70036e-26 (polish:level_retype 2/rlrrrrr<->0/rrlllr)
|
||||
[678040] 2.70318e-26 (polish:level_retype 1/llll<->2/llrrl)
|
||||
[678920] 4.94916e-26 (polish:swap 0/rlllr)
|
||||
[682120] 5.18746e-26 (polish:core_undivide noop)
|
||||
[685240] 5.26932e-26 (polish:swap 1/lll)
|
||||
[690120] 9.41818e-26 (polish:core_undivide noop)
|
||||
[694760] 9.45567e-26 (polish:swap 0/rlllrl)
|
||||
[697240] 9.49813e-26 (polish:core_undivide noop)
|
||||
[701960] 9.55548e-26 (polish:crossover llrrl<->rrrl)
|
||||
[702280] 9.62796e-26 (polish:level_retype 2/rlrl<->0/rlllrll)
|
||||
[707320] 9.7119e-26 (polish:core_undivide noop)
|
||||
[707800] 9.80185e-26 (polish:swap 2/lrrrr)
|
||||
[713480] 9.83175e-26 (polish:core_undivide noop)
|
||||
[720440] 9.8571e-26 (polish:core_undivide noop)
|
||||
[722680] 9.93164e-26 (polish:swap 0/rrll)
|
||||
[726360] 9.97687e-26 (polish:rotate 2/llrr)
|
||||
[727080] 9.98918e-26 (polish:swap 2/lrrrr)
|
||||
[728040] 1.02173e-25 (polish:crossover rrllll<->rrllrl)
|
||||
[732200] 1.03412e-25 (polish:core_undivide noop)
|
||||
[732920] 1.03464e-25 (polish:crossover rrlrlll<->rrlrlll)
|
||||
[735160] 1.03475e-25 (polish:crossover lrll<->lrll)
|
||||
[739320] 1.03698e-25 (polish:core_undivide noop)
|
||||
[740040] 1.037e-25 (polish:retype 1/lrrr->q1)
|
||||
[746760] 1.03703e-25 (polish:level_retype 0/llrlr<->2/lrrrl)
|
||||
[749560] 4.61196e-25 (polish:level_retype 0/rlrrr<->2/lrrrl)
|
||||
written : /home/bruno/src/homemaker-layout/examples/maple-court/coldstart-500000-s1.dom
|
||||
660
examples/maple-court/coldstart-500000-s2.dom
Normal file
660
examples/maple-court/coldstart-500000-s2.dom
Normal file
|
|
@ -0,0 +1,660 @@
|
|||
node:
|
||||
- - 0.0
|
||||
- 0.0
|
||||
- - 30.0
|
||||
- 1.5
|
||||
- - 29.0
|
||||
- 28.0
|
||||
- - 0.0
|
||||
- 27.0
|
||||
perimeter:
|
||||
a: private
|
||||
b: private
|
||||
c: null
|
||||
d: null
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.495698600316231
|
||||
- 0.495698600316231
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5683709666370568
|
||||
- 0.5683709666370568
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.46215929132095285
|
||||
- 0.46215929132095285
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7471387331846713
|
||||
- 0.7471387331846713
|
||||
l:
|
||||
type: lr1
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5304544217540867
|
||||
- 0.5304544217540867
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6993298617044272
|
||||
- 0.6993298617044272
|
||||
l:
|
||||
type: ws1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7877828260442032
|
||||
- 0.7877828260442032
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: da1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.2568045109603507
|
||||
- 0.2568045109603507
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.43406506895086583
|
||||
- 0.43406506895086583
|
||||
l:
|
||||
type: ph1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5074640705726834
|
||||
- 0.5074640705726834
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: k1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7412499070689885
|
||||
- 0.7412499070689885
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.727687073818417
|
||||
- 0.727687073818417
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5103475723684812
|
||||
- 0.5103475723684812
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5585575406250274
|
||||
- 0.5585575406250274
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.6111449714698093
|
||||
- 0.6111449714698093
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.48669281705872525
|
||||
- 0.48669281705872525
|
||||
l:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5059079614653703
|
||||
- 0.5059079614653703
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: gh1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5565594979517862
|
||||
- 0.5565594979517862
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.44353147517713065
|
||||
- 0.44353147517713065
|
||||
l:
|
||||
type: la1
|
||||
rotation: 0
|
||||
r:
|
||||
type: me1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6680420876810539
|
||||
- 0.6680420876810539
|
||||
l:
|
||||
type: ur1
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5957265680465451
|
||||
- 0.5957265680465451
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5559722706874881
|
||||
- 0.5559722706874881
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.717257064976556
|
||||
- 0.717257064976556
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.7437776174633095
|
||||
- 0.7437776174633095
|
||||
l:
|
||||
type: ef1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: rc1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5733232068406672
|
||||
- 0.5733232068406672
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.33542653619771207
|
||||
- 0.33542653619771207
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5059792656599588
|
||||
- 0.5059792656599588
|
||||
l:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: t
|
||||
rotation: 0
|
||||
r:
|
||||
type: m
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6279974814441083
|
||||
- 0.6279974814441083
|
||||
l:
|
||||
type: O
|
||||
rotation: 3
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3470841095800587
|
||||
- 0.3470841095800587
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3308121716241943
|
||||
- 0.3308121716241943
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7142077220782733
|
||||
- 0.7142077220782733
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: ur2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5226049692080454
|
||||
- 0.5226049692080454
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3244080692865534
|
||||
- 0.3244080692865534
|
||||
l:
|
||||
type: py
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5311431206405173
|
||||
- 0.5311431206405173
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.3089291397165622
|
||||
- 0.3089291397165622
|
||||
l:
|
||||
type: em
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.35573412281977423
|
||||
- 0.35573412281977423
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.2938645997045906
|
||||
- 0.2938645997045906
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.38461538461538464
|
||||
- 0.38461538461538464
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5229240775023966
|
||||
- 0.5229240775023966
|
||||
l:
|
||||
type: n
|
||||
rotation: 0
|
||||
r:
|
||||
type: em
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.3
|
||||
- 0.3
|
||||
l:
|
||||
type: py
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.7488857483298845
|
||||
- 0.7488857483298845
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.25
|
||||
- 0.25
|
||||
l:
|
||||
type: lo1
|
||||
rotation: 0
|
||||
r:
|
||||
type: li1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.22366883102487625
|
||||
- 0.22366883102487625
|
||||
l:
|
||||
type: en1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.47357426572751193
|
||||
- 0.47357426572751193
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4441993871185282
|
||||
- 0.4441993871185282
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.6006620198037802
|
||||
- 0.6006620198037802
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8159341477596873
|
||||
- 0.8159341477596873
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4311802854294584
|
||||
- 0.4311802854294584
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5187523557449092
|
||||
- 0.5187523557449092
|
||||
l:
|
||||
type: tt
|
||||
rotation: 0
|
||||
r:
|
||||
type: tt
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5013640478121326
|
||||
- 0.5013640478121326
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5252799507324595
|
||||
- 0.5252799507324595
|
||||
l:
|
||||
type: O
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.3680417219349658
|
||||
- 0.3680417219349658
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5194148364333797
|
||||
- 0.5194148364333797
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.46010581808809997
|
||||
- 0.46010581808809997
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.1517364388825379
|
||||
- 0.1517364388825379
|
||||
l:
|
||||
type: ur3
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.27709722975684414
|
||||
- 0.27709722975684414
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.34577528339320307
|
||||
- 0.34577528339320307
|
||||
l:
|
||||
type: tt
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6621162517562142
|
||||
- 0.6621162517562142
|
||||
l:
|
||||
type: gy1
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 3
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.46010581808809997
|
||||
- 0.46010581808809997
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4891616829369616
|
||||
- 0.4891616829369616
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.13294152965495246
|
||||
- 0.13294152965495246
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.8326531307680889
|
||||
- 0.8326531307680889
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6320128817423628
|
||||
- 0.6320128817423628
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4581335263739215
|
||||
- 0.4581335263739215
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.16973381519774997
|
||||
- 0.16973381519774997
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.27709722975684414
|
||||
- 0.27709722975684414
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.46514955816425135
|
||||
- 0.46514955816425135
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: ut1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.6585943771196408
|
||||
- 0.6585943771196408
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5386344295901344
|
||||
- 0.5386344295901344
|
||||
l:
|
||||
type: r
|
||||
rotation: 0
|
||||
r:
|
||||
type: tt
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 3
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.27709722975684414
|
||||
- 0.27709722975684414
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5516021415935491
|
||||
- 0.5516021415935491
|
||||
l:
|
||||
type: q1
|
||||
rotation: 0
|
||||
r:
|
||||
type: r
|
||||
rotation: 1
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
537
examples/maple-court/coldstart-500000-s2.log
Normal file
537
examples/maple-court/coldstart-500000-s2.log
Normal file
|
|
@ -0,0 +1,537 @@
|
|||
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 : 2
|
||||
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-s2.dom
|
||||
[ 80 evals] best 4.31031e-40 (fails 120) via construct/0
|
||||
[ 1360 evals] best 5.82834e-38 (fails 118) via core_undivide noop
|
||||
[ 1520 evals] best 1.66001e-37 (fails 117) via place_missing n -> rlrl
|
||||
[ 1840 evals] best 3.62731e-36 (fails 107) via crossover rlll<->llrll
|
||||
[ 2800 evals] best 3.14742e-35 (fails 104) via swap 0/llrr
|
||||
[ 3600 evals] best 4.59088e-33 (fails 102) via place_missing tt -> rllr
|
||||
[ 4160 evals] best 9.2155e-33 (fails 101) via swap 2/llrl
|
||||
[ 4320 evals] best 9.28173e-33 (fails 101) via crossover lllll<->rlrll
|
||||
[ 4400 evals] best 2.12991e-31 (fails 97) via level_retype 2/rlrl<->0/lrrll
|
||||
[ 7440 evals] best 4.82473e-31 (fails 97) via core_divide rrrr (3 floors)
|
||||
[ 8240 evals] best 8.3715e-31 (fails 95) via place_missing py -> rlrl
|
||||
[ 10320 evals] best 1.73553e-29 (fails 90) via crossover rllll<->llrlr
|
||||
[ 15120 evals] best 5.50371e-29 (fails 89) via swap 0/rrl
|
||||
[ 16560 evals] best 1.36527e-28 (fails 87) via divide 1/rlrr
|
||||
[ 17360 evals] best 1.3874e-28 (fails 87) via level_retype 0/lrrlr<->2/llrll
|
||||
[ 18240 evals] best 4.52246e-26 (fails 80) via core_divide lrlr (3 floors)
|
||||
[ 23200 evals] best 5.93841e-26 (fails 80) via divide 1/lll
|
||||
[ 23360 evals] best 1.7257e-25 (fails 78) via place_missing py -> lrrr
|
||||
[ 23760 evals] best 2.23563e-25 (fails 78) via crossover rlrrl<->lllll
|
||||
[ 24240 evals] best 9.34508e-25 (fails 76) via crossover rlrrl<->rrlrr
|
||||
[ 25920 evals] best 2.26323e-24 (fails 75) via crossover llllr<->rrrl
|
||||
[ 27760 evals] best 2.14476e-24 (fails 74) via swap 0/rrll
|
||||
[ 29520 evals] best 5.22955e-24 (fails 74) via level_fix ut1: lvl0/lrlrr → lvl2/rlll
|
||||
[ 30320 evals] best 1.66122e-23 (fails 72) via place_missing n -> lrrr
|
||||
[ 30560 evals] best 1.6949e-23 (fails 72) via rotate 0/rll
|
||||
[ 31120 evals] best 1.92888e-23 (fails 72) via level_retype 0/lllr<->2/lrrr
|
||||
[ 31840 evals] best 3.88073e-23 (fails 71) via rotate 2/llrl
|
||||
[ 33520 evals] best 3.98572e-23 (fails 71) via undivide 0/rlrl
|
||||
[ 35920 evals] best 7.53511e-23 (fails 70) via swap 0/llll
|
||||
[ 36560 evals] best 7.94808e-23 (fails 70) via retype 1/rrlr->rc1
|
||||
[ 37520 evals] best 8.1121e-23 (fails 70) via core_undivide noop
|
||||
[ 37600 evals] best 1.56464e-22 (fails 69) via crossover rllrl<->rlrrr
|
||||
[ 38160 evals] best 1.63217e-22 (fails 69) via divide 1/rllr
|
||||
[ 39040 evals] best 1.64548e-22 (fails 69) via retype 1/rrrl->tt
|
||||
[ 40400 evals] best 1.65094e-22 (fails 69) via retype 1/rrlr->O
|
||||
[ 42400 evals] best 1.65488e-22 (fails 69) via level_retype 1/llll<->2/lrlr
|
||||
[ 42560 evals] best 1.66645e-22 (fails 69) via rotate 0/rlr
|
||||
[ 46320 evals] best 3.19675e-22 (fails 68) via undivide 2/llrl
|
||||
[ 48240 evals] best 6.91742e-22 (fails 67) via crossover llll<->llrll
|
||||
[ 48320 evals] best 6.95777e-22 (fails 67) via core_undivide noop
|
||||
[ 48480 evals] best 7.14958e-22 (fails 67) via crossover rrlrr<->rlrrr
|
||||
[ 48800 evals] best 7.16285e-22 (fails 67) via core_undivide noop
|
||||
[ 50480 evals] best 7.17477e-22 (fails 67) via core_undivide noop
|
||||
[ 50640 evals] best 1.39355e-21 (fails 66) via level_fix ph1: lvl2/rrlrlr → lvl0/lrr
|
||||
[ 53200 evals] best 5.77265e-21 (fails 64) via rotate 0/rlr
|
||||
[ 55600 evals] best 5.79924e-21 (fails 64) via crossover rlrll<->rlrrl
|
||||
[ 58400 evals] best 5.81883e-21 (fails 64) via retype 1/rlrll->ur1
|
||||
[ 62400 evals] best 9.76592e-21 (fails 63) via core_undivide noop
|
||||
[ 63280 evals] best 1.07501e-20 (fails 63) via crossover rlrll<->rllrl
|
||||
[ 65680 evals] best 1.15706e-20 (fails 63) via swap 0/rllr
|
||||
[ 66320 evals] best 1.1586e-20 (fails 63) via level_retype 0/llll<->1/lrrl
|
||||
[ 69680 evals] best 1.20599e-20 (fails 63) via core_undivide noop
|
||||
[ 70800 evals] best 1.28103e-20 (fails 63) via retype 1/rlrlr->t
|
||||
[ 71760 evals] best 1.82742e-20 (fails 62) via undivide 2/rllr
|
||||
[ 73040 evals] best 2.56638e-20 (fails 62) via level_fix ur1: lvl1/rlrll → lvl0/lrr
|
||||
[ 74000 evals] best 2.63265e-20 (fails 62) via swap 0/rrl
|
||||
[ 74480 evals] best 6.24895e-20 (fails 61) via divide 2/rlll
|
||||
[ 78960 evals] best 6.26967e-20 (fails 61) via swap 0/rlrl
|
||||
[ 80560 evals] best 6.26967e-20 (fails 61) via core_undivide noop
|
||||
[ 88560 evals] best 2.11893e-19 (fails 59) via crossover r<->r
|
||||
[ 95840 evals] best 2.13379e-19 (fails 59) via crossover rrllr<->rrllr
|
||||
[ 97360 evals] best 2.14849e-19 (fails 59) via core_undivide noop
|
||||
[102080 evals] best 4.89088e-19 (fails 58) via swap 2/rllr
|
||||
[115920 evals] best 5.35652e-19 (fails 58) via core_undivide noop
|
||||
[116240 evals] best 5.39906e-19 (fails 58) via core_undivide noop
|
||||
[117920 evals] best 5.40548e-19 (fails 58) via crossover llrr<->llrll
|
||||
[125760 evals] best 8.66067e-19 (fails 57) via rotate 0/rlrl
|
||||
[144640 evals] best 2.83792e-18 (fails 55) via crossover llrr<->lrl
|
||||
[153040 evals] best 2.85323e-18 (fails 55) via core_undivide noop
|
||||
[155600 evals] best 2.86486e-18 (fails 55) via core_undivide noop
|
||||
[157760 evals] best 3.22807e-18 (fails 55) via divide 0/llrlr
|
||||
[158400 evals] best 5.72902e-18 (fails 54) via undivide 2/rrlrl
|
||||
[163600 evals] best 7.12352e-18 (fails 54) via swap 2/rllr
|
||||
[164000 evals] best 7.23944e-18 (fails 54) via rotate 0/rlrr
|
||||
[165680 evals] best 7.27269e-18 (fails 54) via level_retype 0/lrll<->2/llrl
|
||||
[167840 evals] best 7.30749e-18 (fails 54) via swap 0/rrr
|
||||
[168720 evals] best 7.3439e-18 (fails 54) via retype 0/rlrlr->ef1
|
||||
[188800 evals] best 1.43357e-17 (fails 53) via swap 0/llrl
|
||||
[193840 evals] best 3.11483e-17 (fails 52) via rotate 0/lr
|
||||
[194080 evals] best 3.13028e-17 (fails 52) via level_retype 0/lrr<->2/rllrl
|
||||
[196800 evals] best 3.13837e-17 (fails 52) via core_undivide noop
|
||||
[207920 evals] best 3.1393e-17 (fails 52) via core_undivide noop
|
||||
[208160 evals] best 3.17987e-17 (fails 52) via crossover rrll<->rrll
|
||||
[222320 evals] best 3.72977e-17 (fails 52) via core_divide lrlr (3 floors)
|
||||
[223920 evals] best 6.33334e-17 (fails 51) via swap 0/llrl
|
||||
[227280 evals] best 7.07114e-17 (fails 51) via level_fix k1: lvl1/lrlrr → lvl0/lrr
|
||||
[233200 evals] best 7.61239e-17 (fails 51) via retype 2/rrlrr->O
|
||||
[239680 evals] best 1.33703e-16 (fails 50) via level_fix rc1: lvl2/lrlrr → lvl0/lrr
|
||||
[255520 evals] best 1.34474e-16 (fails 50) via level_fix rc1: lvl2/lrlrr → lvl0/lrr
|
||||
[255920 evals] best 1.34475e-16 (fails 50) via retype 1/lllr->ph1
|
||||
[267200 evals] best 1.43929e-16 (fails 50) via level_fix k1: lvl1/lrlrr → lvl0/lrr
|
||||
[280880 evals] best 1.44209e-16 (fails 50) via swap 0/rlrl
|
||||
[285760 evals] best 1.44897e-16 (fails 50) via crossover rlr<->rlr
|
||||
[290640 evals] best 1.46495e-16 (fails 50) via rotate 0/rlrr
|
||||
[294800 evals] best 1.4687e-16 (fails 50) via swap 2/rrlr
|
||||
[302240 evals] best 1.47593e-16 (fails 50) via core_undivide noop
|
||||
[303200 evals] best 1.51095e-16 (fails 50) via crossover rrrl<->llrlr
|
||||
[308400 evals] best 1.51414e-16 (fails 50) via crossover lrll<->rrlrr
|
||||
[310560 evals] best 1.51745e-16 (fails 50) via retype 1/rrlr->m
|
||||
[313120 evals] best 1.52084e-16 (fails 50) via retype 1/rrll->ur2
|
||||
[314960 evals] best 1.52441e-16 (fails 50) via level_retype 1/rrll<->0/rlrrr
|
||||
[316240 evals] best 1.5514e-16 (fails 50) via core_undivide noop
|
||||
[316400 evals] best 2.98902e-16 (fails 49) via core_undivide noop
|
||||
[319440 evals] best 3.04842e-16 (fails 49) via level_retype 0/rrllll<->1/lrrrl
|
||||
[320800 evals] best 3.06083e-16 (fails 49) via swap 0/rlrl
|
||||
[323040 evals] best 3.07396e-16 (fails 49) via core_undivide noop
|
||||
[324320 evals] best 3.17316e-16 (fails 49) via undivide 0/rrrl
|
||||
[326800 evals] best 3.18549e-16 (fails 49) via crossover rlrll<->lrll
|
||||
[327600 evals] best 3.19798e-16 (fails 49) via crossover rrllll<->rlllrr
|
||||
[333040 evals] best 3.22121e-16 (fails 49) via core_undivide noop
|
||||
[334400 evals] best 3.29134e-16 (fails 49) via crossover rrrr<->lrlrl
|
||||
[337200 evals] best 3.29777e-16 (fails 49) via level_retype 1/rrrr<->0/rllll
|
||||
[349760 evals] best 3.30314e-16 (fails 49) via core_undivide noop
|
||||
[353440 evals] best 3.34503e-16 (fails 49) via undivide 0/rrrl
|
||||
[353680 evals] best 5.9728e-16 (fails 48) via rotate 0/rrl
|
||||
[369600 evals] best 5.98058e-16 (fails 48) via core_undivide noop
|
||||
[371920 evals] best 5.98874e-16 (fails 48) via retype 0/rllr->gh1
|
||||
[377520 evals] best 5.99301e-16 (fails 48) via core_undivide noop
|
||||
[381760 evals] best 5.99551e-16 (fails 48) via crossover rllr<->rllr
|
||||
[390160 evals] best 6.19047e-16 (fails 48) via crossover rlrl<->rlrr
|
||||
[403440 evals] best 6.54129e-16 (fails 48) via swap 2/rrlr
|
||||
[408960 evals] best 6.55008e-16 (fails 48) via retype 0/rlrll->n
|
||||
[413440 evals] best 6.55469e-16 (fails 48) via crossover rrllll<->rrllr
|
||||
[413680 evals] best 6.55739e-16 (fails 48) via core_undivide noop
|
||||
[445280 evals] best 6.56519e-16 (fails 48) via core_undivide noop
|
||||
[446960 evals] best 6.57378e-16 (fails 48) via retype 2/llrl->k1
|
||||
[447840 evals] best 6.57828e-16 (fails 48) via retype 0/rlrll->ut1
|
||||
[451040 evals] best 6.58047e-16 (fails 48) via core_undivide noop
|
||||
[471120 evals] best 6.81318e-16 (fails 48) via rotate 0/rlrl
|
||||
[471840 evals] best 6.81796e-16 (fails 48) via crossover rrlrl<->rrlrl
|
||||
[472960 evals] best 6.83308e-16 (fails 48) via swap 0/rlllr
|
||||
[488880 evals] best 2.62087e-15 (fails 46) via retype 2/rlllrr->C
|
||||
|
||||
--- finishing (homemaker-py-3l6): unfold + polish 250000 evals ---
|
||||
[finish] unfold: materialised 16 shared-leaf copies
|
||||
[ 200 evals] best 1.97032e-30 (fails 96) via seed
|
||||
[ 520 evals] best 2.08938e-30 (fails 96) via level_fix lo1: lvl2/rrlrl → lvl1/rlll
|
||||
[ 2680 evals] best 8.05781e-30 (fails 94) via core_undivide noop
|
||||
[ 4600 evals] best 1.67532e-29 (fails 93) via undivide 2/rrrlr
|
||||
[ 5080 evals] best 6.36782e-29 (fails 91) via core_undivide noop
|
||||
[ 7240 evals] best 6.69626e-29 (fails 91) via rotate 0/rrlr
|
||||
[ 8040 evals] best 1.28594e-28 (fails 90) via core_undivide noop
|
||||
[ 8760 evals] best 2.58909e-28 (fails 89) via crossover rrlrll<->rlrrr
|
||||
[ 9400 evals] best 2.63823e-28 (fails 89) via crossover rlllrrl<->rlllrrl
|
||||
[ 10520 evals] best 2.68237e-28 (fails 89) via level_retype 0/llrll<->1/rrrl
|
||||
[ 11240 evals] best 2.70487e-28 (fails 89) via retype 0/rlllrl->ut1
|
||||
[ 12120 evals] best 2.83799e-28 (fails 89) via level_fix k1: lvl2/llrl → lvl0/lrr
|
||||
[ 12680 evals] best 2.15148e-27 (fails 86) via divide 2/lllrrr
|
||||
[ 14600 evals] best 2.15702e-27 (fails 86) via core_undivide noop
|
||||
[ 15720 evals] best 2.16177e-27 (fails 86) via retype 2/rrlll->gh1
|
||||
[ 18440 evals] best 2.16617e-27 (fails 86) via level_retype 0/rlrll<->1/rllrl
|
||||
[ 20680 evals] best 9.04856e-27 (fails 84) via level_retype 2/rrlrl<->1/rlll
|
||||
[ 21960 evals] best 9.08795e-27 (fails 84) via retype 2/lrll->ef1
|
||||
[ 23080 evals] best 9.09323e-27 (fails 84) via rotate 0/rlllr
|
||||
[ 25000 evals] best 9.09677e-27 (fails 84) via retype 1/lrrrl->r
|
||||
[ 26360 evals] best 9.09918e-27 (fails 84) via crossover rrlrr<->rrlrr
|
||||
[ 26520 evals] best 1.81375e-26 (fails 83) via rotate 2/rrllr
|
||||
[ 27240 evals] best 1.81551e-26 (fails 83) via crossover rrlrll<->rrlrr
|
||||
[ 29000 evals] best 1.81633e-26 (fails 83) via core_undivide noop
|
||||
[ 31880 evals] best 1.81666e-26 (fails 83) via retype 0/rllr->t
|
||||
[ 32280 evals] best 3.6551e-26 (fails 82) via swap 2/llrr
|
||||
[ 32520 evals] best 3.77014e-26 (fails 82) via core_undivide noop
|
||||
[ 36120 evals] best 3.79918e-26 (fails 82) via level_retype 0/rlllrrrl<->2/llrrll
|
||||
[ 36600 evals] best 3.80959e-26 (fails 82) via rotate 0/rlllrr
|
||||
[ 38760 evals] best 3.81721e-26 (fails 82) via core_undivide noop
|
||||
[ 39400 evals] best 3.82451e-26 (fails 82) via crossover llr<->llr
|
||||
[ 40200 evals] best 3.83189e-26 (fails 82) via retype 0/rlrrl->tt
|
||||
[ 40360 evals] best 3.83775e-26 (fails 82) via core_undivide noop
|
||||
[ 43720 evals] best 7.93753e-26 (fails 81) via swap 2/lllr
|
||||
[ 44360 evals] best 2.94032e-25 (fails 79) via rotate 0/llr
|
||||
[ 46040 evals] best 2.94247e-25 (fails 79) via swap 0/rlr
|
||||
[ 49880 evals] best 2.9432e-25 (fails 79) via retype 0/rlrll->py
|
||||
[ 51720 evals] best 2.97242e-25 (fails 79) via level_retype 2/rrlll<->0/llrll
|
||||
[ 53480 evals] best 6.13057e-25 (fails 78) via swap 2/lllr
|
||||
[ 56120 evals] best 1.17142e-24 (fails 77) via swap 0/rlllr
|
||||
[ 58360 evals] best 1.17179e-24 (fails 77) via swap 0/rrlrlr
|
||||
[ 60200 evals] best 1.2077e-24 (fails 77) via divide 2/lllrr
|
||||
[ 65640 evals] best 1.21155e-24 (fails 77) via rotate 0/rlllr
|
||||
[ 66760 evals] best 1.21184e-24 (fails 77) via level_retype 2/rrlrl<->0/rlllrl
|
||||
[ 67560 evals] best 1.2148e-24 (fails 77) via retype 0/rrllll->ws1
|
||||
[ 68200 evals] best 2.453e-24 (fails 76) via divide 2/lllrl
|
||||
[ 70040 evals] best 4.72814e-24 (fails 75) via crossover rlrrl<->rlrrr
|
||||
[ 73480 evals] best 1.84713e-23 (fails 73) via divide 2/rrlrl
|
||||
[ 74280 evals] best 3.49568e-23 (fails 72) via level_fix t: lvl2/llrrll → lvl0/lrr
|
||||
[ 74360 evals] best 3.71306e-23 (fails 72) via level_retype 1/rrll<->0/rlrrr
|
||||
[ 74440 evals] best 3.73449e-23 (fails 72) via core_undivide noop
|
||||
[ 76200 evals] best 7.31239e-23 (fails 71) via swap 0/rlrl
|
||||
[ 76600 evals] best 7.47722e-23 (fails 71) via rotate 0/rrll
|
||||
[ 82520 evals] best 7.51045e-23 (fails 71) via divide 2/lrrr
|
||||
[ 83400 evals] best 7.52013e-23 (fails 71) via level_retype 2/rlrr<->0/lrlrr
|
||||
[ 83800 evals] best 7.55416e-23 (fails 71) via retype 2/llrrlr->la1
|
||||
[ 85960 evals] best 7.58616e-23 (fails 71) via core_undivide noop
|
||||
[ 86280 evals] best 2.33507e-21 (fails 66) via crossover llrlrl<->rlrrr
|
||||
[ 88920 evals] best 2.34342e-21 (fails 66) via swap 0/rrlrlr
|
||||
[ 91240 evals] best 2.3512e-21 (fails 66) via level_retype 1/llrl<->0/rlrlr
|
||||
[ 93560 evals] best 4.27125e-21 (fails 65) via rotate 0/llrlr
|
||||
[ 95240 evals] best 4.2813e-21 (fails 65) via retype 1/llrl->q1
|
||||
[ 96840 evals] best 4.29019e-21 (fails 65) via crossover rrlrll<->rrllr
|
||||
[ 97000 evals] best 8.2752e-21 (fails 64) via core_undivide noop
|
||||
[103560 evals] best 1.69921e-20 (fails 63) via level_retype 2/rrlll<->1/rlll
|
||||
[103640 evals] best 1.70564e-20 (fails 63) via core_undivide noop
|
||||
[104440 evals] best 1.70857e-20 (fails 63) via retype 2/llrrll->k1
|
||||
[106840 evals] best 3.11621e-20 (fails 62) via level_fix k1: lvl1/rrrl → lvl0/lrr
|
||||
[107640 evals] best 3.12166e-20 (fails 62) via core_undivide noop
|
||||
[111400 evals] best 6.83341e-20 (fails 61) via undivide 2/lrrlrr
|
||||
[113960 evals] best 6.85765e-20 (fails 61) via crossover rrlrll<->rrlrll
|
||||
[118360 evals] best 6.88217e-20 (fails 61) via crossover lr<->lr
|
||||
[122120 evals] best 6.94995e-20 (fails 61) via retype 1/rrll->rc1
|
||||
[122440 evals] best 6.96038e-20 (fails 61) via core_undivide noop
|
||||
[127640 evals] best 1.37224e-19 (fails 60) via rotate 2/rrlrl
|
||||
[128040 evals] best 1.37417e-19 (fails 60) via core_undivide noop
|
||||
[128200 evals] best 1.37589e-19 (fails 60) via crossover rrlrlrr<->rrlrlrl
|
||||
[128520 evals] best 1.37737e-19 (fails 60) via retype 0/rlllrrl->me1
|
||||
[129240 evals] best 1.37857e-19 (fails 60) via core_undivide noop
|
||||
[133320 evals] best 1.39644e-19 (fails 60) via retype 2/llrrll->en1
|
||||
[139320 evals] best 2.68968e-19 (fails 59) via swap 0/llrlr
|
||||
[140040 evals] best 2.69157e-19 (fails 59) via retype 0/rrlrr->n
|
||||
[141080 evals] best 2.69496e-19 (fails 59) via retype 2/lllrll->em
|
||||
[145240 evals] best 2.70023e-19 (fails 59) via retype 2/lllrrl->ph1
|
||||
[145800 evals] best 2.7045e-19 (fails 59) via crossover rlllrrrr<->rlllrrrr
|
||||
[146600 evals] best 5.91845e-19 (fails 58) via swap 0/lll
|
||||
[146840 evals] best 5.92808e-19 (fails 58) via core_undivide noop
|
||||
[148360 evals] best 5.93267e-19 (fails 58) via crossover rlllrrl<->rrlrlrr
|
||||
[149320 evals] best 5.93688e-19 (fails 58) via core_undivide noop
|
||||
[153160 evals] best 5.94023e-19 (fails 58) via crossover rrlrll<->rrlrlrl
|
||||
[156440 evals] best 6.27259e-19 (fails 58) via crossover rllll<->lrlr
|
||||
[159720 evals] best 6.27401e-19 (fails 58) via level_retype 0/lrll<->2/lrrll
|
||||
[162840 evals] best 6.27428e-19 (fails 58) via core_undivide noop
|
||||
[168760 evals] best 6.27429e-19 (fails 58) via level_retype 0/llrlrr<->2/llrrr
|
||||
[169080 evals] best 6.27429e-19 (fails 58) via retype 0/rlrlr->me1
|
||||
[170040 evals] best 6.2743e-19 (fails 58) via core_undivide noop
|
||||
[170200 evals] best 6.2743e-19 (fails 58) via retype 2/rllrl->la1
|
||||
[170840 evals] best 6.2743e-19 (fails 58) via level_retype 2/rrlrll<->0/rlrrl
|
||||
[185960 evals] best 6.30704e-19 (fails 58) via undivide 2/rrllr
|
||||
[186280 evals] best 6.31736e-19 (fails 58) via core_undivide noop
|
||||
[188760 evals] best 6.32694e-19 (fails 58) via retype 0/rlrlr->ef1
|
||||
[189160 evals] best 6.33027e-19 (fails 58) via swap 2/llrrl
|
||||
[192040 evals] best 2.52641e-18 (fails 56) via rotate 0/rrlll
|
||||
[199000 evals] best 2.53262e-18 (fails 56) via core_undivide noop
|
||||
[203400 evals] best 2.5385e-18 (fails 56) via core_undivide noop
|
||||
[204840 evals] best 2.54413e-18 (fails 56) via retype 0/lrr->tt
|
||||
[205320 evals] best 2.54413e-18 (fails 56) via core_undivide noop
|
||||
[205640 evals] best 2.54413e-18 (fails 56) via level_retype 2/llrrlr<->1/rlll
|
||||
[209560 evals] best 2.54413e-18 (fails 56) via level_retype 2/rrlrll<->1/rlrll
|
||||
[210680 evals] best 2.54413e-18 (fails 56) via core_undivide noop
|
||||
[211400 evals] best 2.54413e-18 (fails 56) via core_undivide noop
|
||||
[215560 evals] best 2.54413e-18 (fails 56) via core_undivide noop
|
||||
[224360 evals] best 2.54414e-18 (fails 56) via core_undivide noop
|
||||
[226840 evals] best 2.59039e-18 (fails 56) via divide 2/rrllr
|
||||
[227400 evals] best 2.59059e-18 (fails 56) via swap 2/llrrl
|
||||
[232680 evals] best 2.59124e-18 (fails 56) via core_undivide noop
|
||||
[234120 evals] best 2.59193e-18 (fails 56) via rotate 0/rlllr
|
||||
[235320 evals] best 1.79054e-17 (fails 53) via level_compound_fix r: lvl1 → lvl2/rllll
|
||||
[235800 evals] best 1.79122e-17 (fails 53) via swap 2/lllr
|
||||
[239880 evals] best 1.7918e-17 (fails 53) via swap 0/rlrr
|
||||
|
||||
--- collapse (homemaker-py-94g): finish-time cell→room relabel ---
|
||||
[finish] collapse: 181 → 55 fails (applied)
|
||||
|
||||
--- done ---
|
||||
elapsed : 197085.4s
|
||||
evals : 750040 across 9374 topologies
|
||||
best : 4.66229e-18 (55 fails) via swap 0/rlrr+collapse
|
||||
|
||||
improvement history:
|
||||
[ 80] 4.31031e-40 (share:construct/0)
|
||||
[ 1360] 5.82834e-38 (share:core_undivide noop)
|
||||
[ 1520] 1.66001e-37 (share:place_missing n -> rlrl)
|
||||
[ 1840] 3.62731e-36 (share:crossover rlll<->llrll)
|
||||
[ 2800] 3.14742e-35 (share:swap 0/llrr)
|
||||
[ 3600] 4.59088e-33 (share:place_missing tt -> rllr)
|
||||
[ 4160] 9.2155e-33 (share:swap 2/llrl)
|
||||
[ 4320] 9.28173e-33 (share:crossover lllll<->rlrll)
|
||||
[ 4400] 2.12991e-31 (share:level_retype 2/rlrl<->0/lrrll)
|
||||
[ 7440] 4.82473e-31 (share:core_divide rrrr (3 floors))
|
||||
[ 8240] 8.3715e-31 (share:place_missing py -> rlrl)
|
||||
[ 10320] 1.73553e-29 (share:crossover rllll<->llrlr)
|
||||
[ 15120] 5.50371e-29 (share:swap 0/rrl)
|
||||
[ 16560] 1.36527e-28 (share:divide 1/rlrr)
|
||||
[ 17360] 1.3874e-28 (share:level_retype 0/lrrlr<->2/llrll)
|
||||
[ 18240] 4.52246e-26 (share:core_divide lrlr (3 floors))
|
||||
[ 23200] 5.93841e-26 (share:divide 1/lll)
|
||||
[ 23360] 1.7257e-25 (share:place_missing py -> lrrr)
|
||||
[ 23760] 2.23563e-25 (share:crossover rlrrl<->lllll)
|
||||
[ 24240] 9.34508e-25 (share:crossover rlrrl<->rrlrr)
|
||||
[ 25920] 2.26323e-24 (share:crossover llllr<->rrrl)
|
||||
[ 27760] 2.14476e-24 (share:swap 0/rrll)
|
||||
[ 29520] 5.22955e-24 (share:level_fix ut1: lvl0/lrlrr → lvl2/rlll)
|
||||
[ 30320] 1.66122e-23 (share:place_missing n -> lrrr)
|
||||
[ 30560] 1.6949e-23 (share:rotate 0/rll)
|
||||
[ 31120] 1.92888e-23 (share:level_retype 0/lllr<->2/lrrr)
|
||||
[ 31840] 3.88073e-23 (share:rotate 2/llrl)
|
||||
[ 33520] 3.98572e-23 (share:undivide 0/rlrl)
|
||||
[ 35920] 7.53511e-23 (share:swap 0/llll)
|
||||
[ 36560] 7.94808e-23 (share:retype 1/rrlr->rc1)
|
||||
[ 37520] 8.1121e-23 (share:core_undivide noop)
|
||||
[ 37600] 1.56464e-22 (share:crossover rllrl<->rlrrr)
|
||||
[ 38160] 1.63217e-22 (share:divide 1/rllr)
|
||||
[ 39040] 1.64548e-22 (share:retype 1/rrrl->tt)
|
||||
[ 40400] 1.65094e-22 (share:retype 1/rrlr->O)
|
||||
[ 42400] 1.65488e-22 (share:level_retype 1/llll<->2/lrlr)
|
||||
[ 42560] 1.66645e-22 (share:rotate 0/rlr)
|
||||
[ 46320] 3.19675e-22 (share:undivide 2/llrl)
|
||||
[ 48240] 6.91742e-22 (share:crossover llll<->llrll)
|
||||
[ 48320] 6.95777e-22 (share:core_undivide noop)
|
||||
[ 48480] 7.14958e-22 (share:crossover rrlrr<->rlrrr)
|
||||
[ 48800] 7.16285e-22 (share:core_undivide noop)
|
||||
[ 50480] 7.17477e-22 (share:core_undivide noop)
|
||||
[ 50640] 1.39355e-21 (share:level_fix ph1: lvl2/rrlrlr → lvl0/lrr)
|
||||
[ 53200] 5.77265e-21 (share:rotate 0/rlr)
|
||||
[ 55600] 5.79924e-21 (share:crossover rlrll<->rlrrl)
|
||||
[ 58400] 5.81883e-21 (share:retype 1/rlrll->ur1)
|
||||
[ 62400] 9.76592e-21 (share:core_undivide noop)
|
||||
[ 63280] 1.07501e-20 (share:crossover rlrll<->rllrl)
|
||||
[ 65680] 1.15706e-20 (share:swap 0/rllr)
|
||||
[ 66320] 1.1586e-20 (share:level_retype 0/llll<->1/lrrl)
|
||||
[ 69680] 1.20599e-20 (share:core_undivide noop)
|
||||
[ 70800] 1.28103e-20 (share:retype 1/rlrlr->t)
|
||||
[ 71760] 1.82742e-20 (share:undivide 2/rllr)
|
||||
[ 73040] 2.56638e-20 (share:level_fix ur1: lvl1/rlrll → lvl0/lrr)
|
||||
[ 74000] 2.63265e-20 (share:swap 0/rrl)
|
||||
[ 74480] 6.24895e-20 (share:divide 2/rlll)
|
||||
[ 78960] 6.26967e-20 (share:swap 0/rlrl)
|
||||
[ 80560] 6.26967e-20 (share:core_undivide noop)
|
||||
[ 88560] 2.11893e-19 (share:crossover r<->r)
|
||||
[ 95840] 2.13379e-19 (share:crossover rrllr<->rrllr)
|
||||
[ 97360] 2.14849e-19 (share:core_undivide noop)
|
||||
[102080] 4.89088e-19 (share:swap 2/rllr)
|
||||
[115920] 5.35652e-19 (share:core_undivide noop)
|
||||
[116240] 5.39906e-19 (share:core_undivide noop)
|
||||
[117920] 5.40548e-19 (share:crossover llrr<->llrll)
|
||||
[125760] 8.66067e-19 (share:rotate 0/rlrl)
|
||||
[144640] 2.83792e-18 (share:crossover llrr<->lrl)
|
||||
[153040] 2.85323e-18 (share:core_undivide noop)
|
||||
[155600] 2.86486e-18 (share:core_undivide noop)
|
||||
[157760] 3.22807e-18 (share:divide 0/llrlr)
|
||||
[158400] 5.72902e-18 (share:undivide 2/rrlrl)
|
||||
[163600] 7.12352e-18 (share:swap 2/rllr)
|
||||
[164000] 7.23944e-18 (share:rotate 0/rlrr)
|
||||
[165680] 7.27269e-18 (share:level_retype 0/lrll<->2/llrl)
|
||||
[167840] 7.30749e-18 (share:swap 0/rrr)
|
||||
[168720] 7.3439e-18 (share:retype 0/rlrlr->ef1)
|
||||
[188800] 1.43357e-17 (share:swap 0/llrl)
|
||||
[193840] 3.11483e-17 (share:rotate 0/lr)
|
||||
[194080] 3.13028e-17 (share:level_retype 0/lrr<->2/rllrl)
|
||||
[196800] 3.13837e-17 (share:core_undivide noop)
|
||||
[207920] 3.1393e-17 (share:core_undivide noop)
|
||||
[208160] 3.17987e-17 (share:crossover rrll<->rrll)
|
||||
[222320] 3.72977e-17 (share:core_divide lrlr (3 floors))
|
||||
[223920] 6.33334e-17 (share:swap 0/llrl)
|
||||
[227280] 7.07114e-17 (share:level_fix k1: lvl1/lrlrr → lvl0/lrr)
|
||||
[233200] 7.61239e-17 (share:retype 2/rrlrr->O)
|
||||
[239680] 1.33703e-16 (share:level_fix rc1: lvl2/lrlrr → lvl0/lrr)
|
||||
[255520] 1.34474e-16 (share:level_fix rc1: lvl2/lrlrr → lvl0/lrr)
|
||||
[255920] 1.34475e-16 (share:retype 1/lllr->ph1)
|
||||
[267200] 1.43929e-16 (share:level_fix k1: lvl1/lrlrr → lvl0/lrr)
|
||||
[280880] 1.44209e-16 (share:swap 0/rlrl)
|
||||
[285760] 1.44897e-16 (share:crossover rlr<->rlr)
|
||||
[290640] 1.46495e-16 (share:rotate 0/rlrr)
|
||||
[294800] 1.4687e-16 (share:swap 2/rrlr)
|
||||
[302240] 1.47593e-16 (share:core_undivide noop)
|
||||
[303200] 1.51095e-16 (share:crossover rrrl<->llrlr)
|
||||
[308400] 1.51414e-16 (share:crossover lrll<->rrlrr)
|
||||
[310560] 1.51745e-16 (share:retype 1/rrlr->m)
|
||||
[313120] 1.52084e-16 (share:retype 1/rrll->ur2)
|
||||
[314960] 1.52441e-16 (share:level_retype 1/rrll<->0/rlrrr)
|
||||
[316240] 1.5514e-16 (share:core_undivide noop)
|
||||
[316400] 2.98902e-16 (share:core_undivide noop)
|
||||
[319440] 3.04842e-16 (share:level_retype 0/rrllll<->1/lrrrl)
|
||||
[320800] 3.06083e-16 (share:swap 0/rlrl)
|
||||
[323040] 3.07396e-16 (share:core_undivide noop)
|
||||
[324320] 3.17316e-16 (share:undivide 0/rrrl)
|
||||
[326800] 3.18549e-16 (share:crossover rlrll<->lrll)
|
||||
[327600] 3.19798e-16 (share:crossover rrllll<->rlllrr)
|
||||
[333040] 3.22121e-16 (share:core_undivide noop)
|
||||
[334400] 3.29134e-16 (share:crossover rrrr<->lrlrl)
|
||||
[337200] 3.29777e-16 (share:level_retype 1/rrrr<->0/rllll)
|
||||
[349760] 3.30314e-16 (share:core_undivide noop)
|
||||
[353440] 3.34503e-16 (share:undivide 0/rrrl)
|
||||
[353680] 5.9728e-16 (share:rotate 0/rrl)
|
||||
[369600] 5.98058e-16 (share:core_undivide noop)
|
||||
[371920] 5.98874e-16 (share:retype 0/rllr->gh1)
|
||||
[377520] 5.99301e-16 (share:core_undivide noop)
|
||||
[381760] 5.99551e-16 (share:crossover rllr<->rllr)
|
||||
[390160] 6.19047e-16 (share:crossover rlrl<->rlrr)
|
||||
[403440] 6.54129e-16 (share:swap 2/rrlr)
|
||||
[408960] 6.55008e-16 (share:retype 0/rlrll->n)
|
||||
[413440] 6.55469e-16 (share:crossover rrllll<->rrllr)
|
||||
[413680] 6.55739e-16 (share:core_undivide noop)
|
||||
[445280] 6.56519e-16 (share:core_undivide noop)
|
||||
[446960] 6.57378e-16 (share:retype 2/llrl->k1)
|
||||
[447840] 6.57828e-16 (share:retype 0/rlrll->ut1)
|
||||
[451040] 6.58047e-16 (share:core_undivide noop)
|
||||
[471120] 6.81318e-16 (share:rotate 0/rlrl)
|
||||
[471840] 6.81796e-16 (share:crossover rrlrl<->rrlrl)
|
||||
[472960] 6.83308e-16 (share:swap 0/rlllr)
|
||||
[488880] 2.62087e-15 (share:retype 2/rlllrr->C)
|
||||
[500200] 1.97032e-30 (polish:seed)
|
||||
[500520] 2.08938e-30 (polish:level_fix lo1: lvl2/rrlrl → lvl1/rlll)
|
||||
[502680] 8.05781e-30 (polish:core_undivide noop)
|
||||
[504600] 1.67532e-29 (polish:undivide 2/rrrlr)
|
||||
[505080] 6.36782e-29 (polish:core_undivide noop)
|
||||
[507240] 6.69626e-29 (polish:rotate 0/rrlr)
|
||||
[508040] 1.28594e-28 (polish:core_undivide noop)
|
||||
[508760] 2.58909e-28 (polish:crossover rrlrll<->rlrrr)
|
||||
[509400] 2.63823e-28 (polish:crossover rlllrrl<->rlllrrl)
|
||||
[510520] 2.68237e-28 (polish:level_retype 0/llrll<->1/rrrl)
|
||||
[511240] 2.70487e-28 (polish:retype 0/rlllrl->ut1)
|
||||
[512120] 2.83799e-28 (polish:level_fix k1: lvl2/llrl → lvl0/lrr)
|
||||
[512680] 2.15148e-27 (polish:divide 2/lllrrr)
|
||||
[514600] 2.15702e-27 (polish:core_undivide noop)
|
||||
[515720] 2.16177e-27 (polish:retype 2/rrlll->gh1)
|
||||
[518440] 2.16617e-27 (polish:level_retype 0/rlrll<->1/rllrl)
|
||||
[520680] 9.04856e-27 (polish:level_retype 2/rrlrl<->1/rlll)
|
||||
[521960] 9.08795e-27 (polish:retype 2/lrll->ef1)
|
||||
[523080] 9.09323e-27 (polish:rotate 0/rlllr)
|
||||
[525000] 9.09677e-27 (polish:retype 1/lrrrl->r)
|
||||
[526360] 9.09918e-27 (polish:crossover rrlrr<->rrlrr)
|
||||
[526520] 1.81375e-26 (polish:rotate 2/rrllr)
|
||||
[527240] 1.81551e-26 (polish:crossover rrlrll<->rrlrr)
|
||||
[529000] 1.81633e-26 (polish:core_undivide noop)
|
||||
[531880] 1.81666e-26 (polish:retype 0/rllr->t)
|
||||
[532280] 3.6551e-26 (polish:swap 2/llrr)
|
||||
[532520] 3.77014e-26 (polish:core_undivide noop)
|
||||
[536120] 3.79918e-26 (polish:level_retype 0/rlllrrrl<->2/llrrll)
|
||||
[536600] 3.80959e-26 (polish:rotate 0/rlllrr)
|
||||
[538760] 3.81721e-26 (polish:core_undivide noop)
|
||||
[539400] 3.82451e-26 (polish:crossover llr<->llr)
|
||||
[540200] 3.83189e-26 (polish:retype 0/rlrrl->tt)
|
||||
[540360] 3.83775e-26 (polish:core_undivide noop)
|
||||
[543720] 7.93753e-26 (polish:swap 2/lllr)
|
||||
[544360] 2.94032e-25 (polish:rotate 0/llr)
|
||||
[546040] 2.94247e-25 (polish:swap 0/rlr)
|
||||
[549880] 2.9432e-25 (polish:retype 0/rlrll->py)
|
||||
[551720] 2.97242e-25 (polish:level_retype 2/rrlll<->0/llrll)
|
||||
[553480] 6.13057e-25 (polish:swap 2/lllr)
|
||||
[556120] 1.17142e-24 (polish:swap 0/rlllr)
|
||||
[558360] 1.17179e-24 (polish:swap 0/rrlrlr)
|
||||
[560200] 1.2077e-24 (polish:divide 2/lllrr)
|
||||
[565640] 1.21155e-24 (polish:rotate 0/rlllr)
|
||||
[566760] 1.21184e-24 (polish:level_retype 2/rrlrl<->0/rlllrl)
|
||||
[567560] 1.2148e-24 (polish:retype 0/rrllll->ws1)
|
||||
[568200] 2.453e-24 (polish:divide 2/lllrl)
|
||||
[570040] 4.72814e-24 (polish:crossover rlrrl<->rlrrr)
|
||||
[573480] 1.84713e-23 (polish:divide 2/rrlrl)
|
||||
[574280] 3.49568e-23 (polish:level_fix t: lvl2/llrrll → lvl0/lrr)
|
||||
[574360] 3.71306e-23 (polish:level_retype 1/rrll<->0/rlrrr)
|
||||
[574440] 3.73449e-23 (polish:core_undivide noop)
|
||||
[576200] 7.31239e-23 (polish:swap 0/rlrl)
|
||||
[576600] 7.47722e-23 (polish:rotate 0/rrll)
|
||||
[582520] 7.51045e-23 (polish:divide 2/lrrr)
|
||||
[583400] 7.52013e-23 (polish:level_retype 2/rlrr<->0/lrlrr)
|
||||
[583800] 7.55416e-23 (polish:retype 2/llrrlr->la1)
|
||||
[585960] 7.58616e-23 (polish:core_undivide noop)
|
||||
[586280] 2.33507e-21 (polish:crossover llrlrl<->rlrrr)
|
||||
[588920] 2.34342e-21 (polish:swap 0/rrlrlr)
|
||||
[591240] 2.3512e-21 (polish:level_retype 1/llrl<->0/rlrlr)
|
||||
[593560] 4.27125e-21 (polish:rotate 0/llrlr)
|
||||
[595240] 4.2813e-21 (polish:retype 1/llrl->q1)
|
||||
[596840] 4.29019e-21 (polish:crossover rrlrll<->rrllr)
|
||||
[597000] 8.2752e-21 (polish:core_undivide noop)
|
||||
[603560] 1.69921e-20 (polish:level_retype 2/rrlll<->1/rlll)
|
||||
[603640] 1.70564e-20 (polish:core_undivide noop)
|
||||
[604440] 1.70857e-20 (polish:retype 2/llrrll->k1)
|
||||
[606840] 3.11621e-20 (polish:level_fix k1: lvl1/rrrl → lvl0/lrr)
|
||||
[607640] 3.12166e-20 (polish:core_undivide noop)
|
||||
[611400] 6.83341e-20 (polish:undivide 2/lrrlrr)
|
||||
[613960] 6.85765e-20 (polish:crossover rrlrll<->rrlrll)
|
||||
[618360] 6.88217e-20 (polish:crossover lr<->lr)
|
||||
[622120] 6.94995e-20 (polish:retype 1/rrll->rc1)
|
||||
[622440] 6.96038e-20 (polish:core_undivide noop)
|
||||
[627640] 1.37224e-19 (polish:rotate 2/rrlrl)
|
||||
[628040] 1.37417e-19 (polish:core_undivide noop)
|
||||
[628200] 1.37589e-19 (polish:crossover rrlrlrr<->rrlrlrl)
|
||||
[628520] 1.37737e-19 (polish:retype 0/rlllrrl->me1)
|
||||
[629240] 1.37857e-19 (polish:core_undivide noop)
|
||||
[633320] 1.39644e-19 (polish:retype 2/llrrll->en1)
|
||||
[639320] 2.68968e-19 (polish:swap 0/llrlr)
|
||||
[640040] 2.69157e-19 (polish:retype 0/rrlrr->n)
|
||||
[641080] 2.69496e-19 (polish:retype 2/lllrll->em)
|
||||
[645240] 2.70023e-19 (polish:retype 2/lllrrl->ph1)
|
||||
[645800] 2.7045e-19 (polish:crossover rlllrrrr<->rlllrrrr)
|
||||
[646600] 5.91845e-19 (polish:swap 0/lll)
|
||||
[646840] 5.92808e-19 (polish:core_undivide noop)
|
||||
[648360] 5.93267e-19 (polish:crossover rlllrrl<->rrlrlrr)
|
||||
[649320] 5.93688e-19 (polish:core_undivide noop)
|
||||
[653160] 5.94023e-19 (polish:crossover rrlrll<->rrlrlrl)
|
||||
[656440] 6.27259e-19 (polish:crossover rllll<->lrlr)
|
||||
[659720] 6.27401e-19 (polish:level_retype 0/lrll<->2/lrrll)
|
||||
[662840] 6.27428e-19 (polish:core_undivide noop)
|
||||
[668760] 6.27429e-19 (polish:level_retype 0/llrlrr<->2/llrrr)
|
||||
[669080] 6.27429e-19 (polish:retype 0/rlrlr->me1)
|
||||
[670040] 6.2743e-19 (polish:core_undivide noop)
|
||||
[670200] 6.2743e-19 (polish:retype 2/rllrl->la1)
|
||||
[670840] 6.2743e-19 (polish:level_retype 2/rrlrll<->0/rlrrl)
|
||||
[685960] 6.30704e-19 (polish:undivide 2/rrllr)
|
||||
[686280] 6.31736e-19 (polish:core_undivide noop)
|
||||
[688760] 6.32694e-19 (polish:retype 0/rlrlr->ef1)
|
||||
[689160] 6.33027e-19 (polish:swap 2/llrrl)
|
||||
[692040] 2.52641e-18 (polish:rotate 0/rrlll)
|
||||
[699000] 2.53262e-18 (polish:core_undivide noop)
|
||||
[703400] 2.5385e-18 (polish:core_undivide noop)
|
||||
[704840] 2.54413e-18 (polish:retype 0/lrr->tt)
|
||||
[705320] 2.54413e-18 (polish:core_undivide noop)
|
||||
[705640] 2.54413e-18 (polish:level_retype 2/llrrlr<->1/rlll)
|
||||
[709560] 2.54413e-18 (polish:level_retype 2/rrlrll<->1/rlrll)
|
||||
[710680] 2.54413e-18 (polish:core_undivide noop)
|
||||
[711400] 2.54413e-18 (polish:core_undivide noop)
|
||||
[715560] 2.54413e-18 (polish:core_undivide noop)
|
||||
[724360] 2.54414e-18 (polish:core_undivide noop)
|
||||
[726840] 2.59039e-18 (polish:divide 2/rrllr)
|
||||
[727400] 2.59059e-18 (polish:swap 2/llrrl)
|
||||
[732680] 2.59124e-18 (polish:core_undivide noop)
|
||||
[734120] 2.59193e-18 (polish:rotate 0/rlllr)
|
||||
[735320] 1.79054e-17 (polish:level_compound_fix r: lvl1 → lvl2/rllll)
|
||||
[735800] 1.79122e-17 (polish:swap 2/lllr)
|
||||
[739880] 1.7918e-17 (polish:swap 0/rlrr)
|
||||
written : /home/bruno/src/homemaker-layout/examples/maple-court/coldstart-500000-s2.dom
|
||||
|
|
@ -15,6 +15,7 @@
|
|||
spaces:
|
||||
# ---- GROUND FLOOR (level 0): community + service ----
|
||||
lr1:
|
||||
usage: living
|
||||
name: Common Living Room
|
||||
size:
|
||||
- 80.0
|
||||
|
|
@ -31,6 +32,7 @@ spaces:
|
|||
- o
|
||||
|
||||
ef1:
|
||||
usage: none
|
||||
name: Entrance Foyer
|
||||
size:
|
||||
- 15.0
|
||||
|
|
@ -43,6 +45,7 @@ spaces:
|
|||
- c
|
||||
|
||||
da1:
|
||||
usage: living
|
||||
name: Dining Area
|
||||
size:
|
||||
- 60.0
|
||||
|
|
@ -60,6 +63,7 @@ spaces:
|
|||
- o
|
||||
|
||||
k1:
|
||||
usage: kitchen
|
||||
name: Kitchen
|
||||
size:
|
||||
- 30.0
|
||||
|
|
@ -73,6 +77,7 @@ spaces:
|
|||
- c
|
||||
|
||||
ws1:
|
||||
usage: living
|
||||
name: Workshop Space
|
||||
size:
|
||||
- 40.0
|
||||
|
|
@ -89,6 +94,7 @@ spaces:
|
|||
- o
|
||||
|
||||
la1:
|
||||
usage: utility
|
||||
name: Laundry Room
|
||||
size:
|
||||
- 20.0
|
||||
|
|
@ -101,6 +107,8 @@ spaces:
|
|||
- c
|
||||
|
||||
me1:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: Mechanical/Electrical Room
|
||||
size:
|
||||
- 25.0
|
||||
|
|
@ -113,6 +121,8 @@ spaces:
|
|||
- c
|
||||
|
||||
ur1:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: Ground Floor Storage
|
||||
size:
|
||||
- 22.0
|
||||
|
|
@ -125,6 +135,7 @@ spaces:
|
|||
- c
|
||||
|
||||
rc1:
|
||||
usage: none
|
||||
name: Reception Office
|
||||
size:
|
||||
- 14.0
|
||||
|
|
@ -137,6 +148,7 @@ spaces:
|
|||
- c
|
||||
|
||||
ph1:
|
||||
usage: bedroom
|
||||
name: Clinic Room
|
||||
size:
|
||||
- 18.0
|
||||
|
|
@ -149,6 +161,7 @@ spaces:
|
|||
- c
|
||||
|
||||
gh1:
|
||||
usage: living
|
||||
name: Greenhouse
|
||||
size:
|
||||
- 24.0
|
||||
|
|
@ -163,6 +176,7 @@ spaces:
|
|||
|
||||
# Meeting rooms - anonymous interchangeable (3 total, ground floor)
|
||||
m:
|
||||
usage: living
|
||||
name: Meeting Room
|
||||
size:
|
||||
- 10.0
|
||||
|
|
@ -177,6 +191,7 @@ spaces:
|
|||
|
||||
# Ground-floor bathrooms (6 total)
|
||||
t:
|
||||
usage: toilet
|
||||
name: Bathroom
|
||||
size:
|
||||
- 6.0
|
||||
|
|
@ -191,6 +206,7 @@ spaces:
|
|||
|
||||
# ---- FIRST FLOOR (level 1): residents' shared + neighborhoods ----
|
||||
li1:
|
||||
usage: living
|
||||
name: Library Corner
|
||||
size:
|
||||
- 20.0
|
||||
|
|
@ -203,6 +219,7 @@ spaces:
|
|||
- c
|
||||
|
||||
lo1:
|
||||
usage: living
|
||||
name: Lounge
|
||||
size:
|
||||
- 30.0
|
||||
|
|
@ -220,6 +237,7 @@ spaces:
|
|||
|
||||
# Staff offices - anonymous (2 total)
|
||||
em:
|
||||
usage: bedroom
|
||||
name: Staff Office
|
||||
size:
|
||||
- 12.5
|
||||
|
|
@ -234,6 +252,7 @@ spaces:
|
|||
|
||||
# Sleeping neighborhoods - anonymous interchangeable (4 total)
|
||||
n:
|
||||
usage: bedroom
|
||||
name: Neighborhood
|
||||
size:
|
||||
- 60.0
|
||||
|
|
@ -250,6 +269,8 @@ spaces:
|
|||
count: 4
|
||||
|
||||
ur2:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: First Floor Storage
|
||||
size:
|
||||
- 18.0
|
||||
|
|
@ -262,6 +283,7 @@ spaces:
|
|||
- c
|
||||
|
||||
en1:
|
||||
usage: living
|
||||
name: TV / Media Room
|
||||
size:
|
||||
- 22.0
|
||||
|
|
@ -275,6 +297,7 @@ spaces:
|
|||
|
||||
# Therapy rooms - anonymous (2 total)
|
||||
py:
|
||||
usage: bedroom
|
||||
name: Therapy Room
|
||||
size:
|
||||
- 16.0
|
||||
|
|
@ -290,6 +313,7 @@ spaces:
|
|||
# ---- SECOND FLOOR (level 2): individual rooms + amenity ----
|
||||
# Individual resident rooms - anonymous (12 total)
|
||||
r:
|
||||
usage: bedroom
|
||||
name: Individual Room
|
||||
size:
|
||||
- 10.0
|
||||
|
|
@ -303,6 +327,7 @@ spaces:
|
|||
count: 12
|
||||
|
||||
gy1:
|
||||
usage: living
|
||||
name: Exercise Room
|
||||
size:
|
||||
- 28.0
|
||||
|
|
@ -319,6 +344,8 @@ spaces:
|
|||
- o
|
||||
|
||||
ut1:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: Utilities Closet
|
||||
size:
|
||||
- 14.0
|
||||
|
|
@ -331,6 +358,8 @@ spaces:
|
|||
- c
|
||||
|
||||
ur3:
|
||||
crinkliness: none # no window needed
|
||||
usage: utility
|
||||
name: Second Floor Storage
|
||||
size:
|
||||
- 16.0
|
||||
|
|
@ -344,6 +373,7 @@ spaces:
|
|||
|
||||
# Second-floor bathrooms (4 total)
|
||||
tt:
|
||||
usage: toilet
|
||||
name: Upper Bathroom
|
||||
size:
|
||||
- 6.0
|
||||
|
|
@ -354,9 +384,11 @@ spaces:
|
|||
level: 2
|
||||
adjacency:
|
||||
- c
|
||||
- r # Brand: a WC beside sleeping space can be knocked through later
|
||||
count: 4
|
||||
|
||||
q1:
|
||||
usage: bedroom
|
||||
name: Quiet Room
|
||||
size:
|
||||
- 12.0
|
||||
|
|
@ -371,17 +403,28 @@ spaces:
|
|||
# Building constraints
|
||||
storey_minimum: 3
|
||||
storey_limit: 4
|
||||
force_roof_garden: 0
|
||||
# homemaker-py-hxi (DESIGN.md §39.25): ENABLED. Fails a level that has no
|
||||
# outdoor space at all -- Alexander's actual requirement, per level and with no
|
||||
# quantity attached. It had been off in every corpus config, so the only thing
|
||||
# expressing outdoor space was ratio_outside's arbitrary fraction.
|
||||
force_roof_garden: 1
|
||||
|
||||
# Circulation ratio (allow more circulation for larger building)
|
||||
# homemaker-py-hxi (DESIGN.md §39.24): disabled. The score is value/cost, a
|
||||
# ratio, so the per-m2 economics (circulation worth 50 against a build cost of
|
||||
# 200) is ALREADY a proportional pressure against circulation -- this said the
|
||||
# same thing a second time, and with a curve where twice the corridor is far
|
||||
# more than twice as bad. Its other side, "a building needs some circulation",
|
||||
# was worth at most 13% here and is enforced structurally anyway by the access
|
||||
# and connectivity checks. Set a [target, sigma] pair to re-enable.
|
||||
ratio_circulation:
|
||||
- 0.08
|
||||
- 0.15
|
||||
|
||||
# Outside space ratio (courtyard requirement)
|
||||
# homemaker-py-hxi (DESIGN.md §39.25): disabled. Alexander says every level
|
||||
# should have accessible outside space; he does not say how much. The
|
||||
# qualitative requirement is force_roof_garden below. Set a [target, sigma]
|
||||
# pair to re-enable this quantitative one.
|
||||
ratio_outside:
|
||||
- 0.15
|
||||
- 0.10
|
||||
|
||||
# Staircase requirements (main + secondary)
|
||||
staircase_min: 2
|
||||
|
|
@ -391,4 +434,9 @@ staircase_max: 2
|
|||
value_inside: 300.0
|
||||
value_circulation: 50.0
|
||||
value_outside: 100.0
|
||||
value_supported: 300.0
|
||||
# homemaker-py-ecx (DESIGN.md §39.19): an upper-level terrace is worth what
|
||||
# outdoor space is worth (value_outside); it is the COST that differs by level
|
||||
# (outside 10.0 vs outside_supported 110.0), not the value. At 300.0 -- the
|
||||
# `value_inside` rate -- a terrace was worth more per square metre than a real
|
||||
# internal room, which the owner ruled out.
|
||||
value_supported: 100.0
|
||||
|
|
|
|||
96
examples/programme-house/coldstart-500000-s0.dom
Normal file
96
examples/programme-house/coldstart-500000-s0.dom
Normal file
|
|
@ -0,0 +1,96 @@
|
|||
node:
|
||||
- - 1.67100188077385
|
||||
- 11.9169190395339
|
||||
- - 8.72124918939699
|
||||
- 13.7119442286569
|
||||
- - 6.79637028658874
|
||||
- 21.3797854212389
|
||||
- - -0.42152047183069
|
||||
- 19.9368564494913
|
||||
perimeter:
|
||||
a: private
|
||||
b: null
|
||||
c: null
|
||||
d: null
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.4404714364553455
|
||||
- 0.4404714364553455
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.7110151156970064
|
||||
- 0.7110151156970064
|
||||
l:
|
||||
type: b2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6031384135803968
|
||||
- 0.6031384135803968
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t3
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6798158021111778
|
||||
- 0.6798158021111778
|
||||
l:
|
||||
type: l1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5251755040884536
|
||||
- 0.5251755040884536
|
||||
l:
|
||||
type: t2
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.61355312064873
|
||||
- 0.61355312064873
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8
|
||||
- 0.8
|
||||
l:
|
||||
type: b1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: t1
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
134
examples/programme-house/coldstart-500000-s0.log
Normal file
134
examples/programme-house/coldstart-500000-s0.log
Normal file
|
|
@ -0,0 +1,134 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/programme-house/init.dom
|
||||
programme : programme-house
|
||||
budget : 500000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 1
|
||||
rng seed : 0
|
||||
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/programme-house/coldstart-500000-s0.dom
|
||||
[ 80 evals] best 9.96032e-11 (fails 17) via construct/0
|
||||
[ 160 evals] best 5.18243e-09 (fails 16) via construct/1
|
||||
[ 320 evals] best 9.65534e-06 (fails 7) via construct/3
|
||||
[ 1920 evals] best 1.96478e-05 (fails 7) via place_missing noop
|
||||
[ 2480 evals] best 1.9751e-05 (fails 7) via place_missing noop
|
||||
[ 3360 evals] best 1.99208e-05 (fails 7) via core_undivide noop
|
||||
[ 3600 evals] best 7.04674e-05 (fails 5) via undivide 0/rl
|
||||
[ 5200 evals] best 0.000116027 (fails 5) via undivide 0/rr
|
||||
[ 6480 evals] best 0.000116602 (fails 5) via place_missing noop
|
||||
[ 6720 evals] best 1.52309e-05 (fails 4) via level_fix l1: lvl1/lr → lvl0/ll
|
||||
[ 7440 evals] best 1.67782e-05 (fails 4) via place_missing noop
|
||||
[ 9520 evals] best 1.80279e-05 (fails 4) via retype 1/rr->b2
|
||||
[ 13600 evals] best 4.43351e-05 (fails 2) via undivide 0/rl
|
||||
[ 13680 evals] best 4.4362e-05 (fails 2) via level_fix noop
|
||||
[ 15280 evals] best 4.43676e-05 (fails 2) via level_fix noop
|
||||
[ 17840 evals] best 4.43679e-05 (fails 2) via crossover rl<->ll
|
||||
[ 17920 evals] best 4.67272e-05 (fails 2) via level_add (3 storeys)
|
||||
[ 20000 evals] best 4.93528e-05 (fails 2) via retype 0/ll->t2
|
||||
[ 21360 evals] best 5.11016e-05 (fails 2) via crossover rl<->ll
|
||||
[ 21600 evals] best 5.12228e-05 (fails 2) via core_undivide noop
|
||||
[ 23040 evals] best 5.13069e-05 (fails 2) via crossover lr<->lr
|
||||
[ 24320 evals] best 5.13735e-05 (fails 2) via core_undivide noop
|
||||
[ 25280 evals] best 0.000434895 (fails 2) via retype 2/ll->O
|
||||
[ 25920 evals] best 0.000435111 (fails 2) via core_undivide noop
|
||||
[ 26480 evals] best 0.000435218 (fails 2) via level_fix noop
|
||||
[ 34240 evals] best 0.000435236 (fails 2) via crossover root<->root
|
||||
[ 34480 evals] best 0.000435344 (fails 2) via level_compound_fix noop
|
||||
[ 35600 evals] best 0.000435397 (fails 2) via crossover rr<->rr
|
||||
[ 65840 evals] best 0.000460088 (fails 2) via level_fix noop
|
||||
[ 66400 evals] best 0.000462499 (fails 2) via core_undivide noop
|
||||
[ 67200 evals] best 0.000462633 (fails 2) via level_fix noop
|
||||
[ 70160 evals] best 0.00195825 (fails 2) via retype 1/ll->O
|
||||
[ 70400 evals] best 6.42152e-05 (fails 1) via level_delete (2 storeys)
|
||||
[ 77040 evals] best 6.45477e-05 (fails 1) via level_delete (2 storeys)
|
||||
[ 80960 evals] best 6.45918e-05 (fails 1) via level_retype 1/rl<->0/rrl
|
||||
[ 86320 evals] best 6.45969e-05 (fails 1) via crossover rrl<->rrl
|
||||
[105200 evals] best 6.4915e-05 (fails 1) via level_delete (2 storeys)
|
||||
[106400 evals] best 6.49234e-05 (fails 1) via crossover lrl<->rrr
|
||||
[107200 evals] best 6.49603e-05 (fails 1) via level_delete (2 storeys)
|
||||
[154720 evals] best 0.0022262 (fails 1) via retype 1/ll->O
|
||||
[160240 evals] best 0.00223095 (fails 1) via crossover r<->r
|
||||
[167520 evals] best 0.00223373 (fails 1) via crossover lrr<->lrr
|
||||
[169280 evals] best 0.0022349 (fails 1) via core_undivide noop
|
||||
[173200 evals] best 0.00223525 (fails 1) via crossover ll<->ll
|
||||
[174160 evals] best 0.00223545 (fails 1) via crossover lrl<->rrr
|
||||
[177760 evals] best 0.00223574 (fails 1) via core_undivide noop
|
||||
[233840 evals] best 0.00511709 (fails 1) via retype 1/lr->O
|
||||
[238560 evals] best 0.00578375 (fails 1) via core_undivide noop
|
||||
[243040 evals] best 0.00587257 (fails 1) via level_retype 0/rrr<->1/rrr
|
||||
[243920 evals] best 0.00587423 (fails 1) via crossover root<->root
|
||||
|
||||
--- finishing (homemaker-py-3l6): unfold + polish 250000 evals ---
|
||||
[finish] unfold: materialised 0 shared-leaf copies
|
||||
[ 200 evals] best 0.00587685 (fails 1) via seed
|
||||
|
||||
--- collapse (homemaker-py-94g): finish-time cell→room relabel ---
|
||||
[finish] collapse: 28 → 1 fails (applied)
|
||||
|
||||
--- done ---
|
||||
elapsed : 19387.7s
|
||||
evals : 750040 across 9374 topologies
|
||||
best : 0.00587685 (1 fails) via seed+collapse
|
||||
|
||||
improvement history:
|
||||
[ 80] 9.96032e-11 (share:construct/0)
|
||||
[ 160] 5.18243e-09 (share:construct/1)
|
||||
[ 320] 9.65534e-06 (share:construct/3)
|
||||
[ 1920] 1.96478e-05 (share:place_missing noop)
|
||||
[ 2480] 1.9751e-05 (share:place_missing noop)
|
||||
[ 3360] 1.99208e-05 (share:core_undivide noop)
|
||||
[ 3600] 7.04674e-05 (share:undivide 0/rl)
|
||||
[ 5200] 0.000116027 (share:undivide 0/rr)
|
||||
[ 6480] 0.000116602 (share:place_missing noop)
|
||||
[ 6720] 1.52309e-05 (share:level_fix l1: lvl1/lr → lvl0/ll)
|
||||
[ 7440] 1.67782e-05 (share:place_missing noop)
|
||||
[ 9520] 1.80279e-05 (share:retype 1/rr->b2)
|
||||
[ 13600] 4.43351e-05 (share:undivide 0/rl)
|
||||
[ 13680] 4.4362e-05 (share:level_fix noop)
|
||||
[ 15280] 4.43676e-05 (share:level_fix noop)
|
||||
[ 17840] 4.43679e-05 (share:crossover rl<->ll)
|
||||
[ 17920] 4.67272e-05 (share:level_add (3 storeys))
|
||||
[ 20000] 4.93528e-05 (share:retype 0/ll->t2)
|
||||
[ 21360] 5.11016e-05 (share:crossover rl<->ll)
|
||||
[ 21600] 5.12228e-05 (share:core_undivide noop)
|
||||
[ 23040] 5.13069e-05 (share:crossover lr<->lr)
|
||||
[ 24320] 5.13735e-05 (share:core_undivide noop)
|
||||
[ 25280] 0.000434895 (share:retype 2/ll->O)
|
||||
[ 25920] 0.000435111 (share:core_undivide noop)
|
||||
[ 26480] 0.000435218 (share:level_fix noop)
|
||||
[ 34240] 0.000435236 (share:crossover root<->root)
|
||||
[ 34480] 0.000435344 (share:level_compound_fix noop)
|
||||
[ 35600] 0.000435397 (share:crossover rr<->rr)
|
||||
[ 65840] 0.000460088 (share:level_fix noop)
|
||||
[ 66400] 0.000462499 (share:core_undivide noop)
|
||||
[ 67200] 0.000462633 (share:level_fix noop)
|
||||
[ 70160] 0.00195825 (share:retype 1/ll->O)
|
||||
[ 70400] 6.42152e-05 (share:level_delete (2 storeys))
|
||||
[ 77040] 6.45477e-05 (share:level_delete (2 storeys))
|
||||
[ 80960] 6.45918e-05 (share:level_retype 1/rl<->0/rrl)
|
||||
[ 86320] 6.45969e-05 (share:crossover rrl<->rrl)
|
||||
[105200] 6.4915e-05 (share:level_delete (2 storeys))
|
||||
[106400] 6.49234e-05 (share:crossover lrl<->rrr)
|
||||
[107200] 6.49603e-05 (share:level_delete (2 storeys))
|
||||
[154720] 0.0022262 (share:retype 1/ll->O)
|
||||
[160240] 0.00223095 (share:crossover r<->r)
|
||||
[167520] 0.00223373 (share:crossover lrr<->lrr)
|
||||
[169280] 0.0022349 (share:core_undivide noop)
|
||||
[173200] 0.00223525 (share:crossover ll<->ll)
|
||||
[174160] 0.00223545 (share:crossover lrl<->rrr)
|
||||
[177760] 0.00223574 (share:core_undivide noop)
|
||||
[233840] 0.00511709 (share:retype 1/lr->O)
|
||||
[238560] 0.00578375 (share:core_undivide noop)
|
||||
[243040] 0.00587257 (share:level_retype 0/rrr<->1/rrr)
|
||||
[243920] 0.00587423 (share:crossover root<->root)
|
||||
[500200] 0.00587685 (polish:seed)
|
||||
written : /home/bruno/src/homemaker-layout/examples/programme-house/coldstart-500000-s0.dom
|
||||
96
examples/programme-house/coldstart-500000-s1.dom
Normal file
96
examples/programme-house/coldstart-500000-s1.dom
Normal file
|
|
@ -0,0 +1,96 @@
|
|||
node:
|
||||
- - 1.67100188077385
|
||||
- 11.9169190395339
|
||||
- - 8.72124918939699
|
||||
- 13.7119442286569
|
||||
- - 6.79637028658874
|
||||
- 21.3797854212389
|
||||
- - -0.42152047183069
|
||||
- 19.9368564494913
|
||||
perimeter:
|
||||
a: private
|
||||
b: null
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.678520486748628
|
||||
- 0.678520486748628
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4857106780525208
|
||||
- 0.4857106780525208
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.6020205699844519
|
||||
- 0.6020205699844519
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: l1
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.30659045622347697
|
||||
- 0.30659045622347697
|
||||
l:
|
||||
type: t3
|
||||
rotation: 0
|
||||
r:
|
||||
type: b2
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.5096611719837818
|
||||
- 0.5096611719837818
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.810439317043183
|
||||
- 0.810439317043183
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: b1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.15762442509997923
|
||||
- 0.15762442509997923
|
||||
l:
|
||||
type: t2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.4162714156244671
|
||||
- 0.4162714156244671
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t1
|
||||
rotation: 0
|
||||
122
examples/programme-house/coldstart-500000-s1.log
Normal file
122
examples/programme-house/coldstart-500000-s1.log
Normal file
|
|
@ -0,0 +1,122 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/programme-house/init.dom
|
||||
programme : programme-house
|
||||
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/programme-house/coldstart-500000-s1.dom
|
||||
[ 80 evals] best 4.73547e-07 (fails 11) via construct/0
|
||||
[ 160 evals] best 9.37107e-07 (fails 9) via construct/1
|
||||
[ 2720 evals] best 2.72402e-05 (fails 7) via swap 0/ll
|
||||
[ 2800 evals] best 1.02861e-05 (fails 6) via crossover llr<->llr
|
||||
[ 3040 evals] best 1.08389e-05 (fails 6) via level_fix noop
|
||||
[ 3600 evals] best 2.65188e-05 (fails 5) via undivide 0/ll
|
||||
[ 3920 evals] best 2.68577e-05 (fails 5) via retype 1/rl->b2
|
||||
[ 6960 evals] best 2.71134e-05 (fails 5) via level_compound_fix noop
|
||||
[ 8080 evals] best 0.000534598 (fails 3) via swap 0/rr
|
||||
[ 9520 evals] best 0.000552787 (fails 3) via retype 1/rl->t3
|
||||
[ 11760 evals] best 0.000562919 (fails 3) via core_undivide noop
|
||||
[ 18080 evals] best 0.000614306 (fails 3) via place_missing t2 -> ll
|
||||
[ 18400 evals] best 0.000650367 (fails 3) via level_retype 1/lll<->0/rl
|
||||
[ 22400 evals] best 0.00094194 (fails 3) via divide 1/rr
|
||||
[ 23440 evals] best 0.000998712 (fails 3) via crossover llr<->llr
|
||||
[ 23920 evals] best 0.00117838 (fails 3) via core_undivide noop
|
||||
[ 24080 evals] best 0.00122788 (fails 3) via core_divide noop
|
||||
[ 24720 evals] best 0.00123449 (fails 3) via place_missing noop
|
||||
[ 26560 evals] best 0.00124116 (fails 3) via crossover l<->l
|
||||
[ 26800 evals] best 0.00125494 (fails 3) via level_compound_fix noop
|
||||
[ 27200 evals] best 0.000596296 (fails 2) via crossover llr<->rrr
|
||||
[ 27520 evals] best 0.000664798 (fails 2) via retype 0/llr->C
|
||||
[ 28160 evals] best 0.000764779 (fails 2) via level_retype 0/rr<->1/lr
|
||||
[ 28240 evals] best 0.00077279 (fails 2) via core_divide noop
|
||||
[ 29520 evals] best 0.000806654 (fails 2) via rotate 0/root
|
||||
[ 29680 evals] best 0.000834624 (fails 2) via level_compound_fix noop
|
||||
[ 30720 evals] best 0.000844674 (fails 2) via swap 0/r
|
||||
[ 31120 evals] best 0.000845753 (fails 2) via core_divide noop
|
||||
[ 32240 evals] best 0.00085792 (fails 2) via undivide 0/ll
|
||||
[ 32560 evals] best 0.000858981 (fails 2) via place_missing noop
|
||||
[ 38560 evals] best 0.000859059 (fails 2) via level_compound_fix noop
|
||||
[176480 evals] best 0.00412056 (fails 1) via divide 1/ll
|
||||
[178160 evals] best 0.00427693 (fails 1) via level_retype 1/lr<->0/rl
|
||||
[184640 evals] best 0.00436811 (fails 1) via place_missing noop
|
||||
[185280 evals] best 0.00439571 (fails 1) via level_fix noop
|
||||
[185360 evals] best 0.00440821 (fails 1) via level_compound_fix noop
|
||||
[212320 evals] best 0.00518807 (fails 1) via rotate 0/ll
|
||||
[212960 evals] best 0.00526235 (fails 1) via crossover r<->r
|
||||
[213040 evals] best 0.00526441 (fails 1) via place_missing noop
|
||||
[214080 evals] best 0.00526462 (fails 1) via place_missing noop
|
||||
[215600 evals] best 0.00526787 (fails 1) via swap 0/r
|
||||
[217440 evals] best 0.00527131 (fails 1) via swap 0/ll
|
||||
[279840 evals] best 0.00533313 (fails 1) via crossover lr<->lr
|
||||
[280720 evals] best 0.00534008 (fails 1) via level_retype 0/rl<->1/lr
|
||||
|
||||
--- finishing (homemaker-py-3l6): unfold + polish 250000 evals ---
|
||||
[finish] unfold: materialised 0 shared-leaf copies
|
||||
[ 200 evals] best 0.0053408 (fails 1) via seed
|
||||
|
||||
--- collapse (homemaker-py-94g): finish-time cell→room relabel ---
|
||||
[finish] collapse: 5 → 1 fails (applied)
|
||||
|
||||
--- done ---
|
||||
elapsed : 17963.6s
|
||||
evals : 750040 across 9374 topologies
|
||||
best : 0.0053408 (1 fails) via seed+collapse
|
||||
|
||||
improvement history:
|
||||
[ 80] 4.73547e-07 (share:construct/0)
|
||||
[ 160] 9.37107e-07 (share:construct/1)
|
||||
[ 2720] 2.72402e-05 (share:swap 0/ll)
|
||||
[ 2800] 1.02861e-05 (share:crossover llr<->llr)
|
||||
[ 3040] 1.08389e-05 (share:level_fix noop)
|
||||
[ 3600] 2.65188e-05 (share:undivide 0/ll)
|
||||
[ 3920] 2.68577e-05 (share:retype 1/rl->b2)
|
||||
[ 6960] 2.71134e-05 (share:level_compound_fix noop)
|
||||
[ 8080] 0.000534598 (share:swap 0/rr)
|
||||
[ 9520] 0.000552787 (share:retype 1/rl->t3)
|
||||
[ 11760] 0.000562919 (share:core_undivide noop)
|
||||
[ 18080] 0.000614306 (share:place_missing t2 -> ll)
|
||||
[ 18400] 0.000650367 (share:level_retype 1/lll<->0/rl)
|
||||
[ 22400] 0.00094194 (share:divide 1/rr)
|
||||
[ 23440] 0.000998712 (share:crossover llr<->llr)
|
||||
[ 23920] 0.00117838 (share:core_undivide noop)
|
||||
[ 24080] 0.00122788 (share:core_divide noop)
|
||||
[ 24720] 0.00123449 (share:place_missing noop)
|
||||
[ 26560] 0.00124116 (share:crossover l<->l)
|
||||
[ 26800] 0.00125494 (share:level_compound_fix noop)
|
||||
[ 27200] 0.000596296 (share:crossover llr<->rrr)
|
||||
[ 27520] 0.000664798 (share:retype 0/llr->C)
|
||||
[ 28160] 0.000764779 (share:level_retype 0/rr<->1/lr)
|
||||
[ 28240] 0.00077279 (share:core_divide noop)
|
||||
[ 29520] 0.000806654 (share:rotate 0/root)
|
||||
[ 29680] 0.000834624 (share:level_compound_fix noop)
|
||||
[ 30720] 0.000844674 (share:swap 0/r)
|
||||
[ 31120] 0.000845753 (share:core_divide noop)
|
||||
[ 32240] 0.00085792 (share:undivide 0/ll)
|
||||
[ 32560] 0.000858981 (share:place_missing noop)
|
||||
[ 38560] 0.000859059 (share:level_compound_fix noop)
|
||||
[176480] 0.00412056 (share:divide 1/ll)
|
||||
[178160] 0.00427693 (share:level_retype 1/lr<->0/rl)
|
||||
[184640] 0.00436811 (share:place_missing noop)
|
||||
[185280] 0.00439571 (share:level_fix noop)
|
||||
[185360] 0.00440821 (share:level_compound_fix noop)
|
||||
[212320] 0.00518807 (share:rotate 0/ll)
|
||||
[212960] 0.00526235 (share:crossover r<->r)
|
||||
[213040] 0.00526441 (share:place_missing noop)
|
||||
[214080] 0.00526462 (share:place_missing noop)
|
||||
[215600] 0.00526787 (share:swap 0/r)
|
||||
[217440] 0.00527131 (share:swap 0/ll)
|
||||
[279840] 0.00533313 (share:crossover lr<->lr)
|
||||
[280720] 0.00534008 (share:level_retype 0/rl<->1/lr)
|
||||
[500200] 0.0053408 (polish:seed)
|
||||
written : /home/bruno/src/homemaker-layout/examples/programme-house/coldstart-500000-s1.dom
|
||||
148
examples/programme-house/coldstart-500000-s2.dom
Normal file
148
examples/programme-house/coldstart-500000-s2.dom
Normal file
|
|
@ -0,0 +1,148 @@
|
|||
node:
|
||||
- - 1.67100188077385
|
||||
- 11.9169190395339
|
||||
- - 8.72124918939699
|
||||
- 13.7119442286569
|
||||
- - 6.79637028658874
|
||||
- 21.3797854212389
|
||||
- - -0.42152047183069
|
||||
- 19.9368564494913
|
||||
perimeter:
|
||||
a: private
|
||||
b: null
|
||||
c: null
|
||||
d: null
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5356815548737125
|
||||
- 0.5356815548737125
|
||||
height: 3.0
|
||||
elevation: 0.0
|
||||
wall_inner: 0.08
|
||||
wall_outer: 0.25
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.48744474801155124
|
||||
- 0.48744474801155124
|
||||
l:
|
||||
rotation: 3
|
||||
division:
|
||||
- 0.5040666628633002
|
||||
- 0.5040666628633002
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: C
|
||||
rotation: 1
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5430891656879034
|
||||
- 0.5430891656879034
|
||||
l:
|
||||
rotation: 2
|
||||
division:
|
||||
- 0.6357435711673266
|
||||
- 0.6357435711673266
|
||||
l:
|
||||
type: l1
|
||||
rotation: 0
|
||||
r:
|
||||
type: t3
|
||||
rotation: 0
|
||||
r:
|
||||
type: b2
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.422710624129746
|
||||
- 0.422710624129746
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8171577162760618
|
||||
- 0.8171577162760618
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t1
|
||||
rotation: 0
|
||||
r:
|
||||
type: b1
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4016497398054913
|
||||
- 0.4016497398054913
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
above:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.422710624129746
|
||||
- 0.422710624129746
|
||||
height: 3.0
|
||||
l:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.8171577162760618
|
||||
- 0.8171577162760618
|
||||
l:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5
|
||||
- 0.5
|
||||
l:
|
||||
type: C
|
||||
rotation: 0
|
||||
r:
|
||||
type: t2
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5002825736306157
|
||||
- 0.5002825736306157
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 0
|
||||
division:
|
||||
- 0.4016497398054913
|
||||
- 0.4016497398054913
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
rotation: 1
|
||||
division:
|
||||
- 0.5020331882778841
|
||||
- 0.5020331882778841
|
||||
l:
|
||||
type: O
|
||||
rotation: 0
|
||||
r:
|
||||
type: O
|
||||
rotation: 0
|
||||
168
examples/programme-house/coldstart-500000-s2.log
Normal file
168
examples/programme-house/coldstart-500000-s2.log
Normal file
|
|
@ -0,0 +1,168 @@
|
|||
seed : /home/bruno/src/homemaker-layout/examples/programme-house/init.dom
|
||||
programme : programme-house
|
||||
budget : 500000
|
||||
pop : 16
|
||||
child_budget : 80
|
||||
workers : 1
|
||||
rng seed : 2
|
||||
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/programme-house/coldstart-500000-s2.dom
|
||||
[ 80 evals] best 8.34088e-08 (fails 14) via construct/0
|
||||
[ 160 evals] best 3.25056e-07 (fails 13) via construct/1
|
||||
[ 480 evals] best 4.05065e-07 (fails 8) via construct/5
|
||||
[ 2320 evals] best 4.76094e-07 (fails 8) via core_divide noop
|
||||
[ 2640 evals] best 4.87216e-07 (fails 8) via core_divide noop
|
||||
[ 4800 evals] best 5.01285e-07 (fails 8) via swap 0/lr
|
||||
[ 5040 evals] best 1.05925e-06 (fails 7) via swap 0/ll
|
||||
[ 5200 evals] best 1.15811e-06 (fails 7) via place_missing noop
|
||||
[ 6080 evals] best 1.15978e-06 (fails 7) via place_missing noop
|
||||
[ 6480 evals] best 1.15987e-06 (fails 7) via place_missing noop
|
||||
[ 6720 evals] best 4.22518e-06 (fails 4) via level_retype 2/rl<->0/lll
|
||||
[ 7200 evals] best 7.78334e-06 (fails 4) via retype 0/rrr->t2
|
||||
[ 7360 evals] best 4.89625e-05 (fails 4) via level_retype 0/rl<->1/rr
|
||||
[ 8400 evals] best 3.13343e-05 (fails 3) via crossover llr<->lll
|
||||
[ 9120 evals] best 5.70453e-05 (fails 3) via core_undivide noop
|
||||
[ 11040 evals] best 7.50021e-05 (fails 3) via level_fix noop
|
||||
[ 11360 evals] best 2.80185e-05 (fails 2) via level_retype 0/llr<->2/lrl
|
||||
[ 11600 evals] best 3.37736e-05 (fails 2) via retype 1/lr->l1
|
||||
[ 12480 evals] best 0.000635808 (fails 2) via undivide 2/lr
|
||||
[ 13760 evals] best 0.0007325 (fails 2) via level_compound_fix noop
|
||||
[ 14800 evals] best 0.000782161 (fails 2) via crossover rrr<->rrr
|
||||
[ 15280 evals] best 0.000823097 (fails 2) via level_retype 2/rr<->0/rrl
|
||||
[ 15760 evals] best 0.000825665 (fails 2) via core_undivide noop
|
||||
[ 16480 evals] best 0.000826726 (fails 2) via level_fix noop
|
||||
[ 16800 evals] best 0.00082769 (fails 2) via crossover rl<->rl
|
||||
[ 16960 evals] best 0.000846272 (fails 2) via swap 0/ll
|
||||
[ 17040 evals] best 0.000862002 (fails 2) via crossover llr<->llr
|
||||
[ 19680 evals] best 0.000879214 (fails 2) via level_fix noop
|
||||
[ 21600 evals] best 0.00127147 (fails 1) via retype 2/rl->O
|
||||
[ 27280 evals] best 0.00127374 (fails 1) via crossover rrr<->rrr
|
||||
[ 29200 evals] best 0.00127915 (fails 1) via level_fix noop
|
||||
[ 38320 evals] best 0.00131908 (fails 1) via undivide 0/lr
|
||||
[ 39200 evals] best 0.00131972 (fails 1) via level_fix noop
|
||||
[ 49280 evals] best 0.00133897 (fails 1) via swap 0/ll
|
||||
[ 68720 evals] best 0.00136878 (fails 1) via rotate 0/rr
|
||||
[ 68880 evals] best 0.00144686 (fails 1) via undivide 0/lr
|
||||
[ 71840 evals] best 0.00151517 (fails 1) via level_fix noop
|
||||
[ 72000 evals] best 0.00153784 (fails 1) via crossover rl<->rl
|
||||
[ 72960 evals] best 0.00154496 (fails 1) via level_fix noop
|
||||
[ 80400 evals] best 0.00158092 (fails 1) via divide 2/rr
|
||||
[ 81040 evals] best 0.00162435 (fails 1) via level_retype 0/llr<->2/lll
|
||||
[ 84960 evals] best 0.00162755 (fails 1) via core_undivide noop
|
||||
[ 85440 evals] best 0.00165285 (fails 1) via level_fix noop
|
||||
[ 94640 evals] best 0.00165285 (fails 1) via undivide 0/lr
|
||||
[ 95920 evals] best 0.00166211 (fails 1) via swap 2/rr
|
||||
[103200 evals] best 0.00178978 (fails 1) via level_retype 1/rl<->0/rrl
|
||||
[103440 evals] best 0.00182512 (fails 1) via level_retype 0/rrr<->1/lr
|
||||
[103600 evals] best 0.00183656 (fails 1) via crossover rrr<->rrr
|
||||
[111120 evals] best 0.00184342 (fails 1) via level_fix noop
|
||||
[119680 evals] best 0.00200171 (fails 1) via rotate 0/ll
|
||||
[120320 evals] best 0.00201261 (fails 1) via core_undivide noop
|
||||
[121040 evals] best 0.00201391 (fails 1) via retype 0/rl->t1
|
||||
[122640 evals] best 0.00203552 (fails 1) via rotate 0/ll
|
||||
[122880 evals] best 0.00204467 (fails 1) via level_fix noop
|
||||
[152160 evals] best 0.00216646 (fails 1) via level_fix noop
|
||||
[154880 evals] best 0.00221636 (fails 1) via level_fix noop
|
||||
[174080 evals] best 0.00222694 (fails 1) via level_compound_fix noop
|
||||
[182480 evals] best 0.00222773 (fails 1) via retype 0/rlr->b2
|
||||
[184160 evals] best 0.00225027 (fails 1) via crossover l<->l
|
||||
[185120 evals] best 0.00225822 (fails 1) via level_fix noop
|
||||
[206640 evals] best 0.00225918 (fails 1) via crossover llr<->lll
|
||||
[208240 evals] best 0.00226116 (fails 1) via crossover r<->r
|
||||
[211760 evals] best 0.00226381 (fails 1) via level_retype 2/lll<->1/lll
|
||||
[224560 evals] best 0.00226381 (fails 1) via crossover l<->l
|
||||
[281520 evals] best 0.00226563 (fails 1) via divide 2/rr
|
||||
[346400 evals] best 0.00226631 (fails 1) via divide 1/rr
|
||||
[480000 evals] best 0.00226655 (fails 1) via divide 2/lr
|
||||
|
||||
--- finishing (homemaker-py-3l6): unfold + polish 250000 evals ---
|
||||
[finish] unfold: materialised 0 shared-leaf copies
|
||||
[ 200 evals] best 0.00226757 (fails 1) via seed
|
||||
|
||||
--- collapse (homemaker-py-94g): finish-time cell→room relabel ---
|
||||
[finish] collapse: 13 → 1 fails (applied)
|
||||
|
||||
--- done ---
|
||||
elapsed : 26218.8s
|
||||
evals : 750040 across 9374 topologies
|
||||
best : 0.00226757 (1 fails) via seed+collapse
|
||||
|
||||
improvement history:
|
||||
[ 80] 8.34088e-08 (share:construct/0)
|
||||
[ 160] 3.25056e-07 (share:construct/1)
|
||||
[ 480] 4.05065e-07 (share:construct/5)
|
||||
[ 2320] 4.76094e-07 (share:core_divide noop)
|
||||
[ 2640] 4.87216e-07 (share:core_divide noop)
|
||||
[ 4800] 5.01285e-07 (share:swap 0/lr)
|
||||
[ 5040] 1.05925e-06 (share:swap 0/ll)
|
||||
[ 5200] 1.15811e-06 (share:place_missing noop)
|
||||
[ 6080] 1.15978e-06 (share:place_missing noop)
|
||||
[ 6480] 1.15987e-06 (share:place_missing noop)
|
||||
[ 6720] 4.22518e-06 (share:level_retype 2/rl<->0/lll)
|
||||
[ 7200] 7.78334e-06 (share:retype 0/rrr->t2)
|
||||
[ 7360] 4.89625e-05 (share:level_retype 0/rl<->1/rr)
|
||||
[ 8400] 3.13343e-05 (share:crossover llr<->lll)
|
||||
[ 9120] 5.70453e-05 (share:core_undivide noop)
|
||||
[ 11040] 7.50021e-05 (share:level_fix noop)
|
||||
[ 11360] 2.80185e-05 (share:level_retype 0/llr<->2/lrl)
|
||||
[ 11600] 3.37736e-05 (share:retype 1/lr->l1)
|
||||
[ 12480] 0.000635808 (share:undivide 2/lr)
|
||||
[ 13760] 0.0007325 (share:level_compound_fix noop)
|
||||
[ 14800] 0.000782161 (share:crossover rrr<->rrr)
|
||||
[ 15280] 0.000823097 (share:level_retype 2/rr<->0/rrl)
|
||||
[ 15760] 0.000825665 (share:core_undivide noop)
|
||||
[ 16480] 0.000826726 (share:level_fix noop)
|
||||
[ 16800] 0.00082769 (share:crossover rl<->rl)
|
||||
[ 16960] 0.000846272 (share:swap 0/ll)
|
||||
[ 17040] 0.000862002 (share:crossover llr<->llr)
|
||||
[ 19680] 0.000879214 (share:level_fix noop)
|
||||
[ 21600] 0.00127147 (share:retype 2/rl->O)
|
||||
[ 27280] 0.00127374 (share:crossover rrr<->rrr)
|
||||
[ 29200] 0.00127915 (share:level_fix noop)
|
||||
[ 38320] 0.00131908 (share:undivide 0/lr)
|
||||
[ 39200] 0.00131972 (share:level_fix noop)
|
||||
[ 49280] 0.00133897 (share:swap 0/ll)
|
||||
[ 68720] 0.00136878 (share:rotate 0/rr)
|
||||
[ 68880] 0.00144686 (share:undivide 0/lr)
|
||||
[ 71840] 0.00151517 (share:level_fix noop)
|
||||
[ 72000] 0.00153784 (share:crossover rl<->rl)
|
||||
[ 72960] 0.00154496 (share:level_fix noop)
|
||||
[ 80400] 0.00158092 (share:divide 2/rr)
|
||||
[ 81040] 0.00162435 (share:level_retype 0/llr<->2/lll)
|
||||
[ 84960] 0.00162755 (share:core_undivide noop)
|
||||
[ 85440] 0.00165285 (share:level_fix noop)
|
||||
[ 94640] 0.00165285 (share:undivide 0/lr)
|
||||
[ 95920] 0.00166211 (share:swap 2/rr)
|
||||
[103200] 0.00178978 (share:level_retype 1/rl<->0/rrl)
|
||||
[103440] 0.00182512 (share:level_retype 0/rrr<->1/lr)
|
||||
[103600] 0.00183656 (share:crossover rrr<->rrr)
|
||||
[111120] 0.00184342 (share:level_fix noop)
|
||||
[119680] 0.00200171 (share:rotate 0/ll)
|
||||
[120320] 0.00201261 (share:core_undivide noop)
|
||||
[121040] 0.00201391 (share:retype 0/rl->t1)
|
||||
[122640] 0.00203552 (share:rotate 0/ll)
|
||||
[122880] 0.00204467 (share:level_fix noop)
|
||||
[152160] 0.00216646 (share:level_fix noop)
|
||||
[154880] 0.00221636 (share:level_fix noop)
|
||||
[174080] 0.00222694 (share:level_compound_fix noop)
|
||||
[182480] 0.00222773 (share:retype 0/rlr->b2)
|
||||
[184160] 0.00225027 (share:crossover l<->l)
|
||||
[185120] 0.00225822 (share:level_fix noop)
|
||||
[206640] 0.00225918 (share:crossover llr<->lll)
|
||||
[208240] 0.00226116 (share:crossover r<->r)
|
||||
[211760] 0.00226381 (share:level_retype 2/lll<->1/lll)
|
||||
[224560] 0.00226381 (share:crossover l<->l)
|
||||
[281520] 0.00226563 (share:divide 2/rr)
|
||||
[346400] 0.00226631 (share:divide 1/rr)
|
||||
[480000] 0.00226655 (share:divide 2/lr)
|
||||
[500200] 0.00226757 (polish:seed)
|
||||
written : /home/bruno/src/homemaker-layout/examples/programme-house/coldstart-500000-s2.dom
|
||||
|
|
@ -8,6 +8,7 @@
|
|||
# Building programme: 2-bedroom house with ensuite
|
||||
spaces:
|
||||
b1:
|
||||
usage: bedroom
|
||||
name: Master Bedroom
|
||||
size:
|
||||
- 16.0
|
||||
|
|
@ -21,6 +22,7 @@ spaces:
|
|||
adjacency:
|
||||
- c
|
||||
t1:
|
||||
usage: toilet
|
||||
name: Ensuite Bathroom
|
||||
size:
|
||||
- 5.0
|
||||
|
|
@ -31,6 +33,7 @@ spaces:
|
|||
adjacency:
|
||||
- b1
|
||||
b2:
|
||||
usage: bedroom
|
||||
name: Second Bedroom
|
||||
size:
|
||||
- 12.0
|
||||
|
|
@ -41,6 +44,7 @@ spaces:
|
|||
adjacency:
|
||||
- c
|
||||
t2:
|
||||
usage: toilet
|
||||
name: Guest Bathroom
|
||||
size:
|
||||
- 4.0
|
||||
|
|
@ -48,6 +52,7 @@ spaces:
|
|||
adjacency:
|
||||
- c
|
||||
l1:
|
||||
usage: living
|
||||
name: Living/Dining/Kitchen
|
||||
size:
|
||||
- 35.0
|
||||
|
|
@ -62,6 +67,7 @@ spaces:
|
|||
adjacency:
|
||||
- c
|
||||
t3:
|
||||
usage: toilet
|
||||
name: Ground Floor WC
|
||||
size:
|
||||
- 3.0
|
||||
|
|
@ -73,17 +79,28 @@ spaces:
|
|||
# Building constraints
|
||||
storey_minimum: 2
|
||||
storey_limit: 5
|
||||
force_roof_garden: 0
|
||||
# homemaker-py-hxi (DESIGN.md §39.25): ENABLED. Fails a level that has no
|
||||
# outdoor space at all -- Alexander's actual requirement, per level and with no
|
||||
# quantity attached. It had been off in every corpus config, so the only thing
|
||||
# expressing outdoor space was ratio_outside's arbitrary fraction.
|
||||
force_roof_garden: 1
|
||||
|
||||
# Circulation ratio (penalise excessive corridors)
|
||||
# homemaker-py-hxi (DESIGN.md §39.24): disabled. The score is value/cost, a
|
||||
# ratio, so the per-m2 economics (circulation worth 50 against a build cost of
|
||||
# 200) is ALREADY a proportional pressure against circulation -- this said the
|
||||
# same thing a second time, and with a curve where twice the corridor is far
|
||||
# more than twice as bad. Its other side, "a building needs some circulation",
|
||||
# was worth at most 13% here and is enforced structurally anyway by the access
|
||||
# and connectivity checks. Set a [target, sigma] pair to re-enable.
|
||||
ratio_circulation:
|
||||
- 0.00
|
||||
- 0.15
|
||||
|
||||
# Outside space ratio
|
||||
# homemaker-py-hxi (DESIGN.md §39.25): disabled. Alexander says every level
|
||||
# should have accessible outside space; he does not say how much. The
|
||||
# qualitative requirement is force_roof_garden below. Set a [target, sigma]
|
||||
# pair to re-enable this quantitative one.
|
||||
ratio_outside:
|
||||
- 0.30
|
||||
- 0.15
|
||||
|
||||
# Staircase requirements
|
||||
staircase_min: 1
|
||||
|
|
@ -93,4 +110,9 @@ staircase_max: 1
|
|||
value_inside: 300.0
|
||||
value_circulation: 50.0
|
||||
value_outside: 100.0
|
||||
value_supported: 300.0
|
||||
# homemaker-py-ecx (DESIGN.md §39.19): an upper-level terrace is worth what
|
||||
# outdoor space is worth (value_outside); it is the COST that differs by level
|
||||
# (outside 10.0 vs outside_supported 110.0), not the value. At 300.0 -- the
|
||||
# `value_inside` rate -- a terrace was worth more per square metre than a real
|
||||
# internal room, which the owner ruled out.
|
||||
value_supported: 100.0
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@
|
|||
# Building programme: 2-bedroom house with ensuite
|
||||
spaces:
|
||||
b1:
|
||||
usage: bedroom
|
||||
name: Master Bedroom
|
||||
size:
|
||||
- 16.0
|
||||
|
|
@ -25,6 +26,7 @@ spaces:
|
|||
adjacency:
|
||||
- c
|
||||
t1:
|
||||
usage: toilet
|
||||
name: Ensuite Bathroom
|
||||
size:
|
||||
- 5.0
|
||||
|
|
@ -35,6 +37,7 @@ spaces:
|
|||
adjacency:
|
||||
- b1
|
||||
b2:
|
||||
usage: bedroom
|
||||
name: Second Bedroom
|
||||
size:
|
||||
- 12.0
|
||||
|
|
@ -45,6 +48,7 @@ spaces:
|
|||
adjacency:
|
||||
- c
|
||||
t2:
|
||||
usage: toilet
|
||||
name: Guest Bathroom
|
||||
size:
|
||||
- 4.0
|
||||
|
|
@ -52,6 +56,7 @@ spaces:
|
|||
adjacency:
|
||||
- c
|
||||
l1:
|
||||
usage: living
|
||||
name: Living/Dining/Kitchen
|
||||
size:
|
||||
- 25.0
|
||||
|
|
@ -65,6 +70,7 @@ spaces:
|
|||
adjacency:
|
||||
- c
|
||||
t3:
|
||||
usage: toilet
|
||||
name: Ground Floor WC
|
||||
size:
|
||||
- 3.0
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
# parameters (storey limits, ratios, adjacency, room-type mix) unchanged.
|
||||
spaces:
|
||||
b1:
|
||||
usage: bedroom
|
||||
name: Master Bedroom
|
||||
size:
|
||||
- 16.0
|
||||
|
|
@ -19,6 +20,7 @@ spaces:
|
|||
- c
|
||||
count: 2
|
||||
t1:
|
||||
usage: toilet
|
||||
name: Ensuite Bathroom
|
||||
size:
|
||||
- 5.0
|
||||
|
|
@ -30,6 +32,7 @@ spaces:
|
|||
- b1
|
||||
count: 2
|
||||
b2:
|
||||
usage: bedroom
|
||||
name: Second Bedroom
|
||||
size:
|
||||
- 12.0
|
||||
|
|
@ -41,6 +44,7 @@ spaces:
|
|||
- c
|
||||
count: 2
|
||||
t2:
|
||||
usage: toilet
|
||||
name: Guest Bathroom
|
||||
size:
|
||||
- 4.0
|
||||
|
|
@ -49,6 +53,7 @@ spaces:
|
|||
- c
|
||||
count: 2
|
||||
l1:
|
||||
usage: living
|
||||
name: Living/Dining/Kitchen
|
||||
size:
|
||||
- 35.0
|
||||
|
|
@ -63,6 +68,7 @@ spaces:
|
|||
adjacency:
|
||||
- c
|
||||
t3:
|
||||
usage: toilet
|
||||
name: Ground Floor WC
|
||||
size:
|
||||
- 3.0
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
# parameters (storey limits, ratios, adjacency, room-type mix) unchanged.
|
||||
spaces:
|
||||
b1:
|
||||
usage: bedroom
|
||||
name: Master Bedroom
|
||||
size:
|
||||
- 16.0
|
||||
|
|
@ -19,6 +20,7 @@ spaces:
|
|||
- c
|
||||
count: 3
|
||||
t1:
|
||||
usage: toilet
|
||||
name: Ensuite Bathroom
|
||||
size:
|
||||
- 5.0
|
||||
|
|
@ -30,6 +32,7 @@ spaces:
|
|||
- b1
|
||||
count: 3
|
||||
b2:
|
||||
usage: bedroom
|
||||
name: Second Bedroom
|
||||
size:
|
||||
- 12.0
|
||||
|
|
@ -41,6 +44,7 @@ spaces:
|
|||
- c
|
||||
count: 3
|
||||
t2:
|
||||
usage: toilet
|
||||
name: Guest Bathroom
|
||||
size:
|
||||
- 4.0
|
||||
|
|
@ -49,6 +53,7 @@ spaces:
|
|||
- c
|
||||
count: 3
|
||||
l1:
|
||||
usage: living
|
||||
name: Living/Dining/Kitchen
|
||||
size:
|
||||
- 35.0
|
||||
|
|
@ -63,6 +68,7 @@ spaces:
|
|||
adjacency:
|
||||
- c
|
||||
t3:
|
||||
usage: toilet
|
||||
name: Ground Floor WC
|
||||
size:
|
||||
- 3.0
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
# parameters (storey limits, ratios, adjacency, room-type mix) unchanged.
|
||||
spaces:
|
||||
b1:
|
||||
usage: bedroom
|
||||
name: Master Bedroom
|
||||
size:
|
||||
- 16.0
|
||||
|
|
@ -19,6 +20,7 @@ spaces:
|
|||
- c
|
||||
count: 4
|
||||
t1:
|
||||
usage: toilet
|
||||
name: Ensuite Bathroom
|
||||
size:
|
||||
- 5.0
|
||||
|
|
@ -30,6 +32,7 @@ spaces:
|
|||
- b1
|
||||
count: 4
|
||||
b2:
|
||||
usage: bedroom
|
||||
name: Second Bedroom
|
||||
size:
|
||||
- 12.0
|
||||
|
|
@ -41,6 +44,7 @@ spaces:
|
|||
- c
|
||||
count: 4
|
||||
t2:
|
||||
usage: toilet
|
||||
name: Guest Bathroom
|
||||
size:
|
||||
- 4.0
|
||||
|
|
@ -49,6 +53,7 @@ spaces:
|
|||
- c
|
||||
count: 4
|
||||
l1:
|
||||
usage: living
|
||||
name: Living/Dining/Kitchen
|
||||
size:
|
||||
- 35.0
|
||||
|
|
@ -63,6 +68,7 @@ spaces:
|
|||
adjacency:
|
||||
- c
|
||||
t3:
|
||||
usage: toilet
|
||||
name: Ground Floor WC
|
||||
size:
|
||||
- 3.0
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
# parameters (storey limits, ratios, adjacency, room-type mix) unchanged.
|
||||
spaces:
|
||||
b1:
|
||||
usage: bedroom
|
||||
name: Master Bedroom
|
||||
size:
|
||||
- 16.0
|
||||
|
|
@ -19,6 +20,7 @@ spaces:
|
|||
- c
|
||||
count: 5
|
||||
t1:
|
||||
usage: toilet
|
||||
name: Ensuite Bathroom
|
||||
size:
|
||||
- 5.0
|
||||
|
|
@ -30,6 +32,7 @@ spaces:
|
|||
- b1
|
||||
count: 5
|
||||
b2:
|
||||
usage: bedroom
|
||||
name: Second Bedroom
|
||||
size:
|
||||
- 12.0
|
||||
|
|
@ -41,6 +44,7 @@ spaces:
|
|||
- c
|
||||
count: 5
|
||||
t2:
|
||||
usage: toilet
|
||||
name: Guest Bathroom
|
||||
size:
|
||||
- 4.0
|
||||
|
|
@ -49,6 +53,7 @@ spaces:
|
|||
- c
|
||||
count: 5
|
||||
l1:
|
||||
usage: living
|
||||
name: Living/Dining/Kitchen
|
||||
size:
|
||||
- 35.0
|
||||
|
|
@ -63,6 +68,7 @@ spaces:
|
|||
adjacency:
|
||||
- c
|
||||
t3:
|
||||
usage: toilet
|
||||
name: Ground Floor WC
|
||||
size:
|
||||
- 3.0
|
||||
|
|
|
|||
271
experiments/ab_9gj_crinkliness.py
Normal file
271
experiments/ab_9gj_crinkliness.py
Normal file
|
|
@ -0,0 +1,271 @@
|
|||
"""Search A/B for the crinkliness reformulation (`homemaker-py-9gj`).
|
||||
|
||||
Two independent changes to `quality_uncrinkliness`, either or both:
|
||||
|
||||
crinkliness_tail="ramp" below FAIL_THRESHOLD. The factor evaluates a
|
||||
gaussian at `x = 1/crink`, whose exponent
|
||||
grows like 1/crink^2, so the failing tail
|
||||
spans quality 1e-300..1e-1 -- all of it
|
||||
numerically zero beside a passing leaf's ~1.
|
||||
The ramp makes that tail a straight line in
|
||||
crinkliness. (DESIGN.md §39.13. Measured a
|
||||
complete null on its own: 12 of 12 pairs
|
||||
byte-identical.)
|
||||
crinkliness_shape="daylight" above it. `1/crink` is the room's mean depth
|
||||
from its daylit wall in storey-heights, and
|
||||
the stock gaussian is TWO-sided on it, so a
|
||||
room with more daylight than target is
|
||||
penalised for it -- while the cost model
|
||||
already charges that wall via
|
||||
`exterior_wall`/`boundary_wall`. "daylight"
|
||||
clips that side to 1.0. (DESIGN.md §39.14.)
|
||||
|
||||
**Why stock scoring is valid here** (the §38.9 trap, and the one case the
|
||||
`9gj` bead flags as exempt): the ramp is continuous at FAIL_THRESHOLD and
|
||||
strictly below it, so no leaf changes which side of the threshold it is on.
|
||||
The fail set is byte-identical on every corpus artefact -- asserted in
|
||||
`tests/test_fitness_crinkliness_tail.py`, not assumed here. An arm therefore
|
||||
cannot win by deleting a fail category, and both arms are scored under stock.
|
||||
|
||||
**Two experiment shapes**, because they answer different questions:
|
||||
|
||||
--start plateau (default) seed each run from that programme's
|
||||
`coldstart-500000-s<k>.dom`. This is the ESCAPE
|
||||
test the bead asks for: the ramp has signal only
|
||||
where a search has already built partially-lit
|
||||
rooms, and the corpus `init.dom` files show a
|
||||
+0.000% score delta -- there is nothing for it to
|
||||
grade at the start of a search.
|
||||
--start init cold start, for comparison.
|
||||
|
||||
Pairing is on (starting layout, RNG seed), so `--seeds N` over `--starts M`
|
||||
gives N*M paired samples per programme.
|
||||
|
||||
Usage::
|
||||
|
||||
python experiments/ab_9gj_crinkliness.py --budget 8000 --seeds 2 --starts 3
|
||||
python experiments/ab_9gj_crinkliness.py --start init --budget 8000 --seeds 6
|
||||
|
||||
Sharding, because one run is minutes and the job list is 4x that. Each shard
|
||||
keeps BOTH arms of a pair together, so the two halves of a comparison never
|
||||
land on differently-loaded processes::
|
||||
|
||||
for i in 0 1 2 3; do
|
||||
python experiments/ab_9gj_crinkliness.py --budget 8000 --seeds 2 --starts 3 \
|
||||
--shard $i --nshards 4 &
|
||||
done; wait
|
||||
python experiments/ab_9gj_crinkliness.py --report
|
||||
|
||||
A POWERED run needs more than the in-session pilot could afford. §39.12 puts
|
||||
harbor's minimum detectable difference at n=3 at 13.7 fails; the plateau-escape
|
||||
deltas here are single-digit, so budget for n >= 8 pairs per programme
|
||||
(`--seeds 3 --starts 3` gives 9) and a budget large enough for either arm to
|
||||
move at all -- the pilot's 8000 evals is 1.6% of what produced the plateau::
|
||||
|
||||
for i in $(seq 0 3); do
|
||||
python experiments/ab_9gj_crinkliness.py --budget 100000 --seeds 3 --starts 3 \
|
||||
--shard $i --nshards 4 &
|
||||
done; wait
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import argparse
|
||||
import collections
|
||||
import copy
|
||||
import csv
|
||||
import time
|
||||
from pathlib import Path
|
||||
|
||||
from homemaker_layout import dom as dom_mod
|
||||
from homemaker_layout import driver, fitness
|
||||
|
||||
CORPUS = ["examples/harbor-house", "examples/maple-court"]
|
||||
|
||||
# Each arm names a crinkliness configuration. "stock" must stay first: it is
|
||||
# the baseline every other arm is paired against, and the yardstick all arms
|
||||
# are SCORED under.
|
||||
ARM_CONF = {
|
||||
"stock": {},
|
||||
"ramp": {"crinkliness_tail": "ramp"},
|
||||
"daylight": {"crinkliness_shape": "daylight"},
|
||||
"daylight+ramp": {"crinkliness_shape": "daylight",
|
||||
"crinkliness_tail": "ramp"},
|
||||
# homemaker-py-ecx (§39.18): orthogonal to the crinkliness arms -- it
|
||||
# changes how the factors are COMBINED, not what any of them says.
|
||||
"geomean": {"quality_aggregate": "geometric_mean"},
|
||||
"geomean+daylight": {"quality_aggregate": "geometric_mean",
|
||||
"crinkliness_shape": "daylight",
|
||||
"crinkliness_tail": "ramp"},
|
||||
}
|
||||
ARMS = ["stock", "daylight", "daylight+ramp"]
|
||||
|
||||
|
||||
def _with_arm(arm: str):
|
||||
"""Patch `fitness.load_config` so every evaluator built during the run --
|
||||
the driver's, the inner loop's, the seeder's -- sees the arm's overrides.
|
||||
|
||||
`driver.search` has no parameter for them and `driver._fitness_for` is
|
||||
lru_cached, so the cache is cleared around the patch (see ab_ssz_search).
|
||||
"""
|
||||
orig = fitness.load_config
|
||||
arm_ov = ARM_CONF[arm]
|
||||
|
||||
def patched(directory, overrides=None):
|
||||
ov = dict(overrides or {})
|
||||
ov.update(arm_ov)
|
||||
return orig(directory, overrides=ov)
|
||||
|
||||
return orig, patched
|
||||
|
||||
|
||||
def tiers(fails) -> tuple[int, int]:
|
||||
c = collections.Counter(fitness.classify_fail_tier(f) for f in fails)
|
||||
return c["hard"], c["soft"]
|
||||
|
||||
|
||||
def run_arm(progdir: str, start: Path, seed: int, tail: str, budget: int,
|
||||
child_budget: int) -> dict:
|
||||
orig, patched = _with_arm(tail)
|
||||
fitness.load_config = patched
|
||||
driver._fitness_for.cache_clear()
|
||||
t0 = time.perf_counter()
|
||||
try:
|
||||
res = driver.search(dom_mod.load(str(start)), progdir, budget=budget,
|
||||
seed=seed, child_budget=child_budget, n_workers=1)
|
||||
root = copy.deepcopy(res.best.root)
|
||||
finally:
|
||||
fitness.load_config = orig
|
||||
driver._fitness_for.cache_clear()
|
||||
|
||||
conf, cost = orig(progdir, overrides={"leaf_sharing": True,
|
||||
"collapse_insearch": True})
|
||||
score, fails = fitness.Fitness(conf, cost).score_with_fails(copy.deepcopy(root))
|
||||
h, s = tiers(fails)
|
||||
return dict(programme=Path(progdir).name, start=start.name, seed=seed,
|
||||
tail=tail, hard=h, soft=s, total=h + s, score=score,
|
||||
elapsed_s=round(time.perf_counter() - t0, 1))
|
||||
|
||||
|
||||
def starting_points(progdir: str, kind: str, n: int) -> list[Path]:
|
||||
"""The distinct layouts to start from.
|
||||
|
||||
`--starts` applies to plateau mode only: there is exactly one `init.dom`,
|
||||
and repeating it would give several jobs the same (start, seed) pairing key,
|
||||
which `_report` would silently collapse to one. In init mode the RNG seed
|
||||
is the only sampling dimension, so use `--seeds`.
|
||||
"""
|
||||
d = Path(progdir)
|
||||
if kind == "init":
|
||||
return [d / "init.dom"]
|
||||
found = sorted(d.glob("coldstart-500000-s*.dom"))[:n]
|
||||
if not found:
|
||||
raise SystemExit(f"no coldstart-500000-s*.dom in {d} for --start plateau")
|
||||
return found
|
||||
|
||||
|
||||
def main() -> None:
|
||||
ap = argparse.ArgumentParser(description=__doc__,
|
||||
formatter_class=argparse.RawDescriptionHelpFormatter)
|
||||
ap.add_argument("--budget", type=int, default=8000)
|
||||
ap.add_argument("--child-budget", type=int, default=80)
|
||||
ap.add_argument("--seeds", type=int, default=2, help="RNG seeds per start")
|
||||
ap.add_argument("--starts", type=int, default=3,
|
||||
help="plateau layouts to start from (plateau mode only)")
|
||||
ap.add_argument("--start", choices=("plateau", "init"), default="plateau")
|
||||
ap.add_argument("--corpus", nargs="+", default=CORPUS)
|
||||
ap.add_argument("--arms", nargs="+", default=ARMS,
|
||||
choices=sorted(ARM_CONF), help="first arm is the baseline")
|
||||
ap.add_argument("--out", default="experiments/results/ab_9gj_crinkliness.csv")
|
||||
ap.add_argument("--shard", type=int, default=0,
|
||||
help="run only jobs i where i %% nshards == shard")
|
||||
ap.add_argument("--nshards", type=int, default=1,
|
||||
help="split the job list across N processes; each writes "
|
||||
"<out>.shard<i>. Use --report to merge and analyse.")
|
||||
ap.add_argument("--report", action="store_true",
|
||||
help="merge <out>.shard* (or <out>) and print the analysis "
|
||||
"only -- runs nothing")
|
||||
args = ap.parse_args()
|
||||
|
||||
out = Path(args.out)
|
||||
out.parent.mkdir(parents=True, exist_ok=True)
|
||||
|
||||
if args.report:
|
||||
rows = []
|
||||
shards = sorted(out.parent.glob(out.name + ".shard*")) or (
|
||||
[out] if out.exists() else [])
|
||||
for sh in shards:
|
||||
with sh.open() as fh:
|
||||
for r in csv.DictReader(fh):
|
||||
for k in ("total", "hard", "soft", "seed"):
|
||||
r[k] = int(r[k])
|
||||
r["score"] = float(r["score"])
|
||||
rows.append(r)
|
||||
if len(shards) > 1:
|
||||
with out.open("w", newline="") as fh:
|
||||
w = csv.DictWriter(fh, fieldnames=list(rows[0]))
|
||||
w.writeheader()
|
||||
w.writerows(rows)
|
||||
_report(rows, args.corpus, args.arms)
|
||||
print(f"\nmerged {len(rows)} runs from {len(shards)} file(s) into {out}")
|
||||
return
|
||||
|
||||
# Build the whole job list first so sharding is deterministic and every
|
||||
# (start, seed) pair keeps BOTH arms in the same shard -- the comparison is
|
||||
# paired, and splitting a pair across processes would let machine load
|
||||
# differ between the two halves of one pair.
|
||||
jobs = []
|
||||
for progdir in args.corpus:
|
||||
for start in starting_points(progdir, args.start, args.starts):
|
||||
for seed in range(args.seeds):
|
||||
jobs.append((progdir, start, seed))
|
||||
|
||||
rows: list[dict] = []
|
||||
dest = (out if args.nshards == 1
|
||||
else out.with_name(out.name + f".shard{args.shard}"))
|
||||
for i, (progdir, start, seed) in enumerate(jobs):
|
||||
if i % args.nshards != args.shard:
|
||||
continue
|
||||
for tail in args.arms:
|
||||
r = run_arm(progdir, start, seed, tail, args.budget,
|
||||
args.child_budget)
|
||||
rows.append(r)
|
||||
print(f" {r['programme']:<14} {start.name:<26} seed={seed} "
|
||||
f"{tail:<9} {r['hard']}h/{r['soft']}s = {r['total']:3d} "
|
||||
f"score {r['score']:.4g} {r['elapsed_s']}s", flush=True)
|
||||
with dest.open("w", newline="") as fh:
|
||||
w = csv.DictWriter(fh, fieldnames=list(rows[0]))
|
||||
w.writeheader()
|
||||
w.writerows(rows)
|
||||
if args.nshards == 1:
|
||||
_report(rows, args.corpus, args.arms)
|
||||
print(f"\nwrote {dest}")
|
||||
|
||||
|
||||
def _report(rows, corpus, arms=None) -> None:
|
||||
"""homemaker-py-tco: state what this N could resolve, beside the result."""
|
||||
from ab_report import format_report, paired_report
|
||||
seen = []
|
||||
for r in rows:
|
||||
if r["tail"] not in seen:
|
||||
seen.append(r["tail"])
|
||||
arms = [a for a in (arms or seen) if a in seen] or seen
|
||||
base = arms[0]
|
||||
for progdir in corpus:
|
||||
name = Path(progdir).name
|
||||
by: dict[tuple, dict] = {}
|
||||
for r in rows:
|
||||
if r["programme"] == name:
|
||||
by.setdefault((r["start"], r["seed"]), {})[r["tail"]] = r["total"]
|
||||
for arm in arms[1:]:
|
||||
keys = sorted(k for k, v in by.items() if base in v and arm in v)
|
||||
if len(keys) < 2:
|
||||
continue
|
||||
print(f"\n--- {name}: {arm} vs {base} (stock-scored total fails) ---")
|
||||
print(format_report(paired_report(
|
||||
[by[k][base] for k in keys], [by[k][arm] for k in keys],
|
||||
base, arm)))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
167
experiments/ab_crinkliness_mode_ssz.py
Normal file
167
experiments/ab_crinkliness_mode_ssz.py
Normal file
|
|
@ -0,0 +1,167 @@
|
|||
"""A/B the `crinkliness_mode` repairs against the circulation-deletion incentive.
|
||||
|
||||
Evidence for `homemaker-py-ssz` / `homemaker-py-2v1` (DESIGN.md §38.6). The
|
||||
test: on a constructed layout, delete each unpinned circulation/outside leaf
|
||||
(by undividing its parent, which merges it into its sibling) and re-score. A
|
||||
healthy objective should not pay you to do that.
|
||||
|
||||
Reports the count of deletions that still improve the score, and the median
|
||||
score ratio, per mode. Splitting the rows by whether the deleted leaf was
|
||||
buried or lit is what separates the two mechanisms:
|
||||
|
||||
* buried leaves are rewarded because ``quality_uncrinkliness`` returns a hard
|
||||
0.0, so they contribute zero value (§38.1);
|
||||
* **lit** leaves are rewarded because ``value_circulation`` (50) is one sixth
|
||||
of ``value_inside`` (300), so merging corridor into room is a flat ×6 gain
|
||||
against a ×0.5 connectivity penalty (§38.2 refinement) — which no
|
||||
``crinkliness_mode`` can touch.
|
||||
|
||||
.. warning::
|
||||
|
||||
**The premise of this test is RETRACTED — see §38.2 and §38.8.** The ×6-vs-
|
||||
×0.5 arithmetic assumed severing the spine costs one connectivity fail;
|
||||
measured, the connectivity count is unchanged in every rewarded deletion, so
|
||||
this script is not measuring what its docstring says. It is kept because the
|
||||
per-mode buried/lit split is still a useful description of what each mode
|
||||
touches, but a mode does **not** pass or fail on these numbers. The A/B that
|
||||
decides `ssz` is ``experiments/ab_ssz_search.py`` (fixed-budget search,
|
||||
scored under the stock objective).
|
||||
|
||||
Usage::
|
||||
|
||||
python experiments/ab_crinkliness_mode_ssz.py
|
||||
python experiments/ab_crinkliness_mode_ssz.py --seeds 5 --progdir examples/maple-court
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import argparse
|
||||
import copy
|
||||
|
||||
import numpy as np
|
||||
|
||||
from homemaker_layout import dom as dom_mod
|
||||
from homemaker_layout import driver, fitness, geometry
|
||||
from homemaker_layout import graph as graph_mod
|
||||
from homemaker_layout import operators, programme
|
||||
|
||||
MODES = ("urb", "floor", "compact_ok", "exempt_circulation")
|
||||
|
||||
|
||||
def make_fitness(progdir: str, mode: str) -> fitness.Fitness:
|
||||
"""Evaluator matching ``driver.search``'s defaults, with one mode override."""
|
||||
overrides = dict(driver._overrides_for(
|
||||
leaf_sharing=True, superpose=False, max_share=None, conn_grade=False,
|
||||
collapse_insearch=True, multi_use=False) or {})
|
||||
overrides["crinkliness_mode"] = mode
|
||||
conf, cost = fitness.load_config(progdir, overrides=overrides)
|
||||
return fitness.Fitness(conf, cost)
|
||||
|
||||
|
||||
def constructed_seed(progdir: str, seed: int) -> dom_mod.Node:
|
||||
reqs = programme.load_programme_dir(progdir)
|
||||
return operators.constructive_topology(
|
||||
dom_mod.load(f"{progdir}/init.dom"), reqs, np.random.default_rng(seed),
|
||||
sorted(reqs) + ["C", "O"],
|
||||
min_storeys=programme.storey_minimum(progdir),
|
||||
adjacency_aware=True, proportion_aware=True, circ_divisor=3,
|
||||
leaf_sharing=True, leaf_share_factor=3, depth_balanced=True,
|
||||
interior_outside=True, outside_divisor=3)
|
||||
|
||||
|
||||
def unpinned_leaves(fit: fitness.Fitness, root: dom_mod.Node) -> list[tuple]:
|
||||
"""(level, id, type, exposed_area) for circulation/outside leaves — the ones
|
||||
no missing-space cascade pins in place."""
|
||||
tree = copy.deepcopy(root)
|
||||
geometry.clear_cache()
|
||||
dom_mod.canonicalize_shares(tree)
|
||||
fit.preprocess_building(tree)
|
||||
dom_mod.merge_divided(tree)
|
||||
geometry.clear_cache()
|
||||
graphs = graph_mod.build_graphs(tree, fit.conf("door_width") or 1.2)
|
||||
|
||||
out = []
|
||||
for li, lvl in enumerate(dom_mod.levels(tree)):
|
||||
for leaf in lvl.leaves():
|
||||
if dom_mod.is_outside(leaf) and not dom_mod.is_covered(leaf):
|
||||
continue
|
||||
# §39.4: generic structural types are EXACT `C`/`O`/`S`, never a
|
||||
# first-character prefix -- `cr1` is a programme room. This script
|
||||
# predates that rule and its original `type[:1].upper() in ("C","O")`
|
||||
# test swept programme rooms into the "unpinned" set, which is one
|
||||
# reason the §38.6 numbers do not reproduce.
|
||||
if not dom_mod.is_generic(leaf.type):
|
||||
continue
|
||||
out.append((li, leaf.id, leaf.type,
|
||||
fit.area_outside(leaf, graphs[li], {})))
|
||||
return out
|
||||
|
||||
|
||||
def delete_leaf(root: dom_mod.Node, li: int, lid: str) -> "dom_mod.Node | None":
|
||||
"""Undivide the leaf's parent, merging it into its sibling. None if the cut
|
||||
is inherited (not owned at this storey) or the sibling is itself divided."""
|
||||
cand = copy.deepcopy(root)
|
||||
lvls = dom_mod.levels(cand)
|
||||
if li >= len(lvls):
|
||||
return None
|
||||
node = lvls[li].by_id(lid)
|
||||
if node is None or node.parent is None:
|
||||
return None
|
||||
parent = node.parent
|
||||
if parent.below is not None and parent.below.divided:
|
||||
return None
|
||||
sibling = parent.right if parent.left is node else parent.left
|
||||
if sibling is None or sibling.divided:
|
||||
return None
|
||||
parent.division = None
|
||||
parent.left = parent.right = None
|
||||
parent.type = sibling.type
|
||||
dom_mod.link(cand)
|
||||
geometry.clear_cache()
|
||||
return cand
|
||||
|
||||
|
||||
def run(progdir: str, seeds: int) -> None:
|
||||
print(f"programme: {progdir}, {seeds} constructed seeds")
|
||||
print("a healthy objective rewards NO deletions\n")
|
||||
header = f"{'mode':<20}{'buried':<14}{'lit':<14}{'all':<14}median x"
|
||||
print(header)
|
||||
print("-" * len(header))
|
||||
|
||||
for mode in MODES:
|
||||
fit = make_fitness(progdir, mode)
|
||||
counts = {"buried": [0, 0], "lit": [0, 0]}
|
||||
ratios = []
|
||||
for s in range(seeds):
|
||||
root = constructed_seed(progdir, s)
|
||||
base, _ = fit.score_with_fails(copy.deepcopy(root))
|
||||
for li, lid, _typ, exposed in unpinned_leaves(fit, root):
|
||||
cand = delete_leaf(root, li, lid)
|
||||
if cand is None:
|
||||
continue
|
||||
score, _ = fit.score_with_fails(copy.deepcopy(cand))
|
||||
bucket = "buried" if exposed == 0 else "lit"
|
||||
counts[bucket][1] += 1
|
||||
ratios.append(score / base)
|
||||
if score > base:
|
||||
counts[bucket][0] += 1
|
||||
tot = [counts["buried"][0] + counts["lit"][0],
|
||||
counts["buried"][1] + counts["lit"][1]]
|
||||
median = sorted(ratios)[len(ratios) // 2] if ratios else float("nan")
|
||||
buried = "%d/%d" % tuple(counts["buried"])
|
||||
lit = "%d/%d" % tuple(counts["lit"])
|
||||
both = "%d/%d" % tuple(tot)
|
||||
print(f"{mode:<20}{buried:<14}{lit:<14}{both:<14}x{median:.2f}")
|
||||
|
||||
|
||||
def main() -> None:
|
||||
ap = argparse.ArgumentParser(description=__doc__,
|
||||
formatter_class=argparse.RawDescriptionHelpFormatter)
|
||||
ap.add_argument("--progdir", default="examples/harbor-house")
|
||||
ap.add_argument("--seeds", type=int, default=3)
|
||||
args = ap.parse_args()
|
||||
run(args.progdir, args.seeds)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
168
experiments/ab_report.py
Normal file
168
experiments/ab_report.py
Normal file
|
|
@ -0,0 +1,168 @@
|
|||
"""Paired A/B reporting that states what the sample could actually resolve.
|
||||
|
||||
Motivation (`homemaker-py-tco`). Two findings in DESIGN.md §38.19 and §38.21 say
|
||||
this project's A/B protocols are routinely underpowered for the margins they
|
||||
report:
|
||||
|
||||
* programme-house needed N=60 to resolve an effect its own protocol claimed at
|
||||
N=20 -- at N=20 the current answer is p ~= 0.069, a null;
|
||||
* harbor's paired sd is ~6.2 fails, so n=3 resolves nothing finer than ~15
|
||||
fails. Every recorded harbor margin is below that, and 25% of 3-seed subsets
|
||||
show a clean 3/3 sweep by chance.
|
||||
|
||||
Both were only discovered years later. The cheap prevention is to print, beside
|
||||
every verdict, the smallest difference the sample could have detected -- so an
|
||||
underpowered result is visible AT THE POINT IT IS MADE.
|
||||
|
||||
minimum detectable difference (MDD) = t_crit(0.975, N-1) * sd / sqrt(N)
|
||||
|
||||
A margin below the MDD is not a weak result, it is an ABSENT one: the experiment
|
||||
could not have distinguished it from zero however it came out. `paired_report`
|
||||
flags exactly that, and reports the N that would be needed instead.
|
||||
|
||||
Usage as a library::
|
||||
|
||||
from ab_report import paired_report, format_report
|
||||
print(format_report(paired_report(off_list, on_list, "OFF", "ON")))
|
||||
|
||||
Usage as a CLI over a results TSV with `tag seed arm value [...]` rows::
|
||||
|
||||
python experiments/ab_report.py results/0wr_qpk_harbor_n24.tsv off on
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import csv
|
||||
import math
|
||||
import statistics
|
||||
import sys
|
||||
|
||||
try: # scipy is a hard dep of the
|
||||
from scipy import stats as _sps # project, but keep the
|
||||
except ImportError: # report usable without it
|
||||
_sps = None
|
||||
|
||||
|
||||
def _t_crit(df: int, alpha: float = 0.05) -> float:
|
||||
if _sps is not None:
|
||||
return float(_sps.t.ppf(1 - alpha / 2, df))
|
||||
return 1.96 if df > 30 else 2.2 # crude, only for a scipy-less fallback
|
||||
|
||||
|
||||
def paired_report(a: list[float], b: list[float],
|
||||
label_a: str = "A", label_b: str = "B",
|
||||
alpha: float = 0.05) -> dict:
|
||||
"""Paired comparison of two arms measured on the same seeds.
|
||||
|
||||
``a`` and ``b`` are aligned per seed. Positive ``mean_diff`` means ``b``
|
||||
scored LOWER than ``a`` -- for fail counts, that is ``b`` winning.
|
||||
"""
|
||||
if len(a) != len(b):
|
||||
raise ValueError(f"unpaired input: {len(a)} vs {len(b)}")
|
||||
n = len(a)
|
||||
if n < 2:
|
||||
raise ValueError("need at least 2 paired observations")
|
||||
diffs = [x - y for x, y in zip(a, b)]
|
||||
mean = statistics.mean(diffs)
|
||||
sd = statistics.stdev(diffs)
|
||||
se = sd / math.sqrt(n)
|
||||
tc = _t_crit(n - 1, alpha)
|
||||
mdd = tc * se # smallest |mean| this N could resolve
|
||||
|
||||
# Degenerate case: every seed gave the SAME difference, so sd == 0 and the
|
||||
# MDD collapses to 0. Without this, an all-ties comparison (mean 0, sd 0)
|
||||
# reports "margin exceeds the MDD" and endorses a zero margin as a verdict,
|
||||
# which is worse than saying nothing. t/p are nan here too.
|
||||
degenerate = sd == 0.0
|
||||
|
||||
out = {
|
||||
"n": n, "label_a": label_a, "label_b": label_b,
|
||||
"mean_a": statistics.mean(a), "mean_b": statistics.mean(b),
|
||||
"wins_b": sum(1 for d in diffs if d > 0),
|
||||
"losses_b": sum(1 for d in diffs if d < 0),
|
||||
"ties": sum(1 for d in diffs if d == 0),
|
||||
"mean_diff": mean, "sd": sd, "se": se,
|
||||
"ci": (mean - tc * se, mean + tc * se),
|
||||
"mdd": mdd,
|
||||
"degenerate": degenerate,
|
||||
"identical": degenerate and mean == 0.0,
|
||||
"underpowered": (not degenerate) and abs(mean) < mdd,
|
||||
"t": None, "p": None, "wilcoxon_p": None, "n_needed": None,
|
||||
}
|
||||
if _sps is not None and not degenerate:
|
||||
t, p = _sps.ttest_rel(a, b)
|
||||
out["t"], out["p"] = float(t), float(p)
|
||||
if any(d != 0 for d in diffs):
|
||||
try:
|
||||
out["wilcoxon_p"] = float(_sps.wilcoxon(a, b).pvalue)
|
||||
except ValueError:
|
||||
pass
|
||||
if mean and not degenerate: # N that would resolve THIS margin
|
||||
k = n
|
||||
while k < 100000 and _t_crit(k - 1, alpha) * sd / math.sqrt(k) >= abs(mean):
|
||||
k += 1
|
||||
out["n_needed"] = k
|
||||
return out
|
||||
|
||||
|
||||
def format_report(r: dict, indent: str = " ") -> str:
|
||||
L = []
|
||||
A, B = r["label_a"], r["label_b"]
|
||||
L.append(f"{indent}N={r['n']} {A} mean {r['mean_a']:.2f} {B} mean {r['mean_b']:.2f} "
|
||||
f"{r['wins_b']}W/{r['losses_b']}L/{r['ties']}T (for {B})")
|
||||
L.append(f"{indent}mean diff {r['mean_diff']:+.3f} sd {r['sd']:.3f} "
|
||||
f"95% CI [{r['ci'][0]:+.3f}, {r['ci'][1]:+.3f}]")
|
||||
if r["p"] is not None:
|
||||
w = "" if r["wilcoxon_p"] is None else f" wilcoxon p={r['wilcoxon_p']:.4f}"
|
||||
L.append(f"{indent}t={r['t']:.3f} p={r['p']:.4f}{w}")
|
||||
if r["identical"]:
|
||||
L.append(f"{indent}** NO DIFFERENCE: the two arms scored identically on every seed.")
|
||||
L.append(f"{indent} Nothing to test -- do not report a winner.")
|
||||
return "\n".join(L)
|
||||
if r["degenerate"]:
|
||||
L.append(f"{indent}** Every seed gave the same difference ({r['mean_diff']:+.3f}), "
|
||||
f"so the variance is zero.")
|
||||
L.append(f"{indent} Consistent, but a t-test is undefined here; treat N as the "
|
||||
f"evidence and check the arms are genuinely independent.")
|
||||
return "\n".join(L)
|
||||
L.append(f"{indent}minimum detectable difference at N={r['n']}: {r['mdd']:.3f}")
|
||||
if r["underpowered"]:
|
||||
need = r["n_needed"]
|
||||
L.append(f"{indent}** UNDERPOWERED: the observed margin ({abs(r['mean_diff']):.3f}) is "
|
||||
f"BELOW what N={r['n']} can resolve.")
|
||||
L.append(f"{indent} This experiment could not distinguish it from zero however it "
|
||||
f"came out. Do not declare a winner.")
|
||||
if need:
|
||||
L.append(f"{indent} N ~= {need} would be needed for a margin this size.")
|
||||
else:
|
||||
L.append(f"{indent} margin exceeds the MDD -- the sample can support a verdict.")
|
||||
return "\n".join(L)
|
||||
|
||||
|
||||
def main() -> int:
|
||||
if len(sys.argv) < 4:
|
||||
print(__doc__.strip().splitlines()[-1], file=sys.stderr)
|
||||
print("usage: ab_report.py <results.tsv> <arm_a> <arm_b> [value_col=3]",
|
||||
file=sys.stderr)
|
||||
return 2
|
||||
path, arm_a, arm_b = sys.argv[1], sys.argv[2], sys.argv[3]
|
||||
col = int(sys.argv[4]) if len(sys.argv) > 4 else 3
|
||||
by: dict = {}
|
||||
with open(path) as fh:
|
||||
for row in csv.reader(fh, delimiter="\t"):
|
||||
if len(row) <= col or not row[1].lstrip("-").isdigit():
|
||||
continue # header / short row
|
||||
by.setdefault(int(row[1]), {})[row[2]] = float(row[col])
|
||||
seeds = sorted(s for s, v in by.items() if arm_a in v and arm_b in v)
|
||||
if len(seeds) < 2:
|
||||
print(f"only {len(seeds)} paired seed(s) for {arm_a!r}/{arm_b!r}", file=sys.stderr)
|
||||
return 1
|
||||
a = [by[s][arm_a] for s in seeds]
|
||||
b = [by[s][arm_b] for s in seeds]
|
||||
print(f"{path} {arm_a} vs {arm_b}")
|
||||
print(format_report(paired_report(a, b, arm_a, arm_b)))
|
||||
return 0
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
raise SystemExit(main())
|
||||
165
experiments/ab_ssz_search.py
Normal file
165
experiments/ab_ssz_search.py
Normal file
|
|
@ -0,0 +1,165 @@
|
|||
"""Fixed-budget search A/B for the crinkliness modes (`homemaker-py-ssz`).
|
||||
|
||||
DESIGN.md §38.6 A/B'd the modes against the §38.2 *deletion test*, which has
|
||||
since been retracted, and it used the pre-§39.4 `type[:1] in ("C","O")` prefix
|
||||
rule that mislabels programme rooms as circulation. So the modes have never
|
||||
been measured against what `ssz`'s acceptance criteria actually asks for: a
|
||||
fixed-budget search, hard/soft fail split, on harbor-house and maple-court.
|
||||
|
||||
**The scoring discipline is the point of this script.** `compact_ok`,
|
||||
`exempt_circulation` and `compact_ok` all return 1.0 for leaves that stock
|
||||
scores below FAIL_THRESHOLD, so scoring an arm under its own objective deletes
|
||||
a fail category for free and every arm "wins". Two numbers are therefore
|
||||
reported per arm:
|
||||
|
||||
urb the arm's final layout re-scored under the STOCK objective. This is
|
||||
the comparable yardstick, and the one that answers "did optimising
|
||||
under this variant steer the search to a better building?"
|
||||
own the same layout under the arm's own objective. Lower than `urb` by
|
||||
construction for the permissive modes; it is reported only so the
|
||||
size of the definitional discount is visible, never as the result.
|
||||
|
||||
A mode passes on `urb`, not on `own`.
|
||||
|
||||
Usage::
|
||||
|
||||
python experiments/ab_ssz_search.py --budget 3000 --seeds 3
|
||||
python experiments/ab_ssz_search.py --modes urb compact_ok --seeds 2
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import argparse
|
||||
import collections
|
||||
import copy
|
||||
import csv
|
||||
import time
|
||||
from pathlib import Path
|
||||
|
||||
from homemaker_layout import dom as dom_mod
|
||||
from homemaker_layout import driver, fitness
|
||||
|
||||
CORPUS = ["examples/harbor-house", "examples/maple-court"]
|
||||
MODES = ["urb", "floor", "compact_ok", "exempt_circulation"]
|
||||
|
||||
|
||||
def _with_mode(mode: str):
|
||||
"""Patch `fitness.load_config` so every evaluator built during the run --
|
||||
the driver's, the inner loop's, the seeder's -- sees `crinkliness_mode`.
|
||||
|
||||
`driver.search` has no parameter for it, and `driver._fitness_for` is
|
||||
lru_cached on its arguments, so the cache is cleared around the patch or a
|
||||
later arm would silently reuse the previous arm's evaluator.
|
||||
"""
|
||||
orig = fitness.load_config
|
||||
|
||||
def patched(directory, overrides=None):
|
||||
ov = dict(overrides or {})
|
||||
ov["crinkliness_mode"] = mode
|
||||
return orig(directory, overrides=ov)
|
||||
|
||||
return orig, patched
|
||||
|
||||
|
||||
def tiers(fails) -> tuple[int, int]:
|
||||
c = collections.Counter(fitness.classify_fail_tier(f) for f in fails)
|
||||
return c["hard"], c["soft"]
|
||||
|
||||
|
||||
def run_arm(progdir: str, seed: int, mode: str, budget: int,
|
||||
child_budget: int) -> dict:
|
||||
orig, patched = _with_mode(mode)
|
||||
fitness.load_config = patched
|
||||
driver._fitness_for.cache_clear()
|
||||
t0 = time.perf_counter()
|
||||
try:
|
||||
res = driver.search(
|
||||
dom_mod.load(f"{progdir}/init.dom"), progdir,
|
||||
budget=budget, seed=seed, child_budget=child_budget, n_workers=1)
|
||||
root = copy.deepcopy(res.best.root)
|
||||
own_conf, own_cost = patched(progdir, overrides={"leaf_sharing": True,
|
||||
"collapse_insearch": True})
|
||||
_, own_fails = fitness.Fitness(own_conf, own_cost).score_with_fails(
|
||||
copy.deepcopy(root))
|
||||
finally:
|
||||
fitness.load_config = orig
|
||||
driver._fitness_for.cache_clear()
|
||||
|
||||
# the comparable yardstick: stock objective, same layout
|
||||
conf, cost = orig(progdir, overrides={"leaf_sharing": True,
|
||||
"collapse_insearch": True})
|
||||
_, urb_fails = fitness.Fitness(conf, cost).score_with_fails(copy.deepcopy(root))
|
||||
|
||||
uh, us = tiers(urb_fails)
|
||||
oh, os_ = tiers(own_fails)
|
||||
return dict(programme=Path(progdir).name, seed=seed, mode=mode,
|
||||
urb_hard=uh, urb_soft=us, urb_total=uh + us,
|
||||
own_hard=oh, own_soft=os_, own_total=oh + os_,
|
||||
elapsed_s=round(time.perf_counter() - t0, 1))
|
||||
|
||||
|
||||
def main() -> None:
|
||||
ap = argparse.ArgumentParser(description=__doc__,
|
||||
formatter_class=argparse.RawDescriptionHelpFormatter)
|
||||
ap.add_argument("--budget", type=int, default=3000)
|
||||
ap.add_argument("--child-budget", type=int, default=80)
|
||||
ap.add_argument("--seeds", type=int, default=3)
|
||||
ap.add_argument("--modes", nargs="+", default=MODES)
|
||||
ap.add_argument("--corpus", nargs="+", default=CORPUS)
|
||||
ap.add_argument("--out", default="experiments/results/ab_ssz_search.csv")
|
||||
args = ap.parse_args()
|
||||
|
||||
rows = []
|
||||
out = Path(args.out)
|
||||
out.parent.mkdir(parents=True, exist_ok=True)
|
||||
for progdir in args.corpus:
|
||||
for mode in args.modes:
|
||||
for seed in range(args.seeds):
|
||||
r = run_arm(progdir, seed, mode, args.budget, args.child_budget)
|
||||
rows.append(r)
|
||||
print(f" {r['programme']:<14} {mode:<20} seed={seed} "
|
||||
f"urb {r['urb_hard']}h/{r['urb_soft']}s "
|
||||
f"(own {r['own_hard']}h/{r['own_soft']}s) "
|
||||
f"{r['elapsed_s']}s", flush=True)
|
||||
with out.open("w", newline="") as fh:
|
||||
w = csv.DictWriter(fh, fieldnames=list(rows[0]))
|
||||
w.writeheader()
|
||||
w.writerows(rows)
|
||||
|
||||
# homemaker-py-tco: report what this N could actually resolve, beside the
|
||||
# result, so an underpowered verdict is visible when it is made. §38.19 and
|
||||
# §38.21 are both cases where that was only noticed years later.
|
||||
from ab_report import format_report, paired_report
|
||||
|
||||
base = args.modes[0]
|
||||
for progdir in args.corpus:
|
||||
name = Path(progdir).name
|
||||
for mode in args.modes[1:]:
|
||||
by = {}
|
||||
for r in rows:
|
||||
if r["programme"] == name and r["mode"] in (base, mode):
|
||||
by.setdefault(r["seed"], {})[r["mode"]] = r["urb_hard"] + r["urb_soft"]
|
||||
seeds = sorted(s for s, v in by.items() if base in v and mode in v)
|
||||
if len(seeds) < 2:
|
||||
continue
|
||||
print(f"\n--- {name}: {mode} vs {base} (stock-scored total fails) ---")
|
||||
print(format_report(paired_report(
|
||||
[by[s][base] for s in seeds], [by[s][mode] for s in seeds], base, mode)))
|
||||
|
||||
print(f"\n=== stock-objective (urb) fail counts, budget {args.budget} ===")
|
||||
print(f" {'programme':<14}{'mode':<22}{'hard':<14}{'soft':<14}total")
|
||||
print(" " + "-" * 70)
|
||||
for progdir in args.corpus:
|
||||
name = Path(progdir).name
|
||||
for mode in args.modes:
|
||||
sel = [r for r in rows if r["programme"] == name and r["mode"] == mode]
|
||||
if not sel:
|
||||
continue
|
||||
h = sum(r["urb_hard"] for r in sel) / len(sel)
|
||||
s = sum(r["urb_soft"] for r in sel) / len(sel)
|
||||
print(f" {name:<14}{mode:<22}{h:<14.1f}{s:<14.1f}{h + s:.1f}")
|
||||
print(f"\nwrote {out}")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
@ -1,81 +0,0 @@
|
|||
#!/usr/bin/env python3
|
||||
"""Acceptance run for the geometry inner loop (homemaker-py-1p0).
|
||||
|
||||
Gate (DESIGN.md §4.5, issue acceptance criteria): reproduce or exceed the
|
||||
Nelder-Mead diagnostic gains — x1.24 / x1.67 / x1.59, no new failures — on
|
||||
2f45907, candidate-002 and c964435, using the batched compass search.
|
||||
|
||||
Usage: accept_innerloop.py [budget] [method] (default: 200 oracle evals, cma)
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import shutil
|
||||
import sys
|
||||
import tempfile
|
||||
import time
|
||||
from pathlib import Path
|
||||
|
||||
sys.path.insert(0, str(Path(__file__).resolve().parents[1] / "src"))
|
||||
from homemaker_layout import dom, innerloop, oracle # noqa: E402
|
||||
|
||||
URB = Path("/home/bruno/src/urb")
|
||||
EX = URB / "examples" / "programme-house"
|
||||
|
||||
# name -> reference x-gain. Current bars are the occlusion-disabled re-baseline
|
||||
# (homemaker-py-gp2): the deterministic-seed CMA run at budget 400 under
|
||||
# URB_NO_OCCLUSION=1 — set that env var to reproduce. (The original §4.5
|
||||
# Nelder-Mead bars, flag-off, were 1.24 / 1.67 / 1.59; the inner loop met them
|
||||
# within noise, homemaker-py-1p0.)
|
||||
GATE = {
|
||||
"2f45907abd9accac2a124d311732f749.dom": 1.63,
|
||||
"candidate-002.dom": 1.70,
|
||||
"c964435454c459f86c3ed9a5a7621132.dom": 1.68,
|
||||
}
|
||||
|
||||
# Bars are single optimiser draws and per-run variance brackets them
|
||||
# (candidate-002 drew 0.0117-0.0160 against a 0.0123 flag-off bar).
|
||||
# Reproduction within 1% counts as met — decision approved 2026-06-12
|
||||
# (homemaker-py-1p0); chasing the last fraction with seed rolls would be
|
||||
# cherry-picking.
|
||||
NOISE_TOL = 0.99
|
||||
|
||||
|
||||
def main() -> int:
|
||||
budget = int(sys.argv[1]) if len(sys.argv) > 1 else 200
|
||||
method = sys.argv[2] if len(sys.argv) > 2 else "cma"
|
||||
print(f"method={method} budget={budget}")
|
||||
all_ok = True
|
||||
with tempfile.TemporaryDirectory(prefix="accept_innerloop_") as tmp:
|
||||
scratch = Path(tmp)
|
||||
shutil.copy(EX / "patterns.config", scratch)
|
||||
for name, bar in GATE.items():
|
||||
# Baseline = the UNMODIFIED original file, exactly as §4.5 measured
|
||||
# it. The inner loop's own x0 score is the equal-offset *projection*
|
||||
# of the original (a==b forced, clipped), which is lower for legacy
|
||||
# designs with unequal cuts — gains must not be measured from there.
|
||||
s_orig = oracle.score(shutil.copy(EX / name, scratch), URB)
|
||||
|
||||
root = dom.load(str(EX / name))
|
||||
t0 = time.perf_counter()
|
||||
r = innerloop.optimise(root, EX, budget=budget, method=method, urb_root=URB)
|
||||
dt = time.perf_counter() - t0
|
||||
gain = r.fitness / s_orig.fitness if s_orig.fitness else float("inf")
|
||||
ok = gain >= bar * NOISE_TOL and r.n_fails <= s_orig.n_fails
|
||||
all_ok &= ok
|
||||
print(
|
||||
f"{name:42s} dof={len(r.x):2d} "
|
||||
f"orig={s_orig.fitness:.6g}(fails {s_orig.n_fails}) "
|
||||
f"projected x0={r.x0_fitness:.6g}(fails {r.x0_n_fails}) "
|
||||
f"opt={r.fitness:.6g}(fails {r.n_fails}) "
|
||||
f"x{gain:.2f} (bar x{bar:.2f}) "
|
||||
f"{r.n_evals} evals / {r.n_oracle_calls} oracle calls / {dt:.0f}s "
|
||||
f"{'PASS' if ok else 'FAIL'}",
|
||||
flush=True,
|
||||
)
|
||||
print("\nGATE " + ("PASSED" if all_ok else "FAILED"))
|
||||
return 0 if all_ok else 1
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
sys.exit(main())
|
||||
156
experiments/audit_crinkliness_truth.py
Normal file
156
experiments/audit_crinkliness_truth.py
Normal file
|
|
@ -0,0 +1,156 @@
|
|||
"""Are the crinkliness failures the objective emits real defects? (`homemaker-py-ssz`)
|
||||
|
||||
Not an A/B. This asks a correctness question the search cannot answer: of the
|
||||
`crinkliness` failures the GLOBAL-target objective reports -- one daylight
|
||||
requirement for every space, which is what the engine did before §38.10 -- how
|
||||
many are on a space that does not want daylight at all?
|
||||
|
||||
A `crinkliness` fail says "this leaf has too little exposed wall for its area".
|
||||
For anything occupied day to day that is a real defect. For a cupboard, a store
|
||||
or a plant room it is not.
|
||||
|
||||
**The classification is read from the corpus, not guessed here.** A fail counts
|
||||
as a non-defect exactly when that space declares `crinkliness: none` in its own
|
||||
`patterns.config`. An earlier version of this script inferred it from `usage:`
|
||||
instead and got a much larger, wrong answer -- it exempted corridors, WCs,
|
||||
laundries and reception, none of which the owner exempts (DESIGN.md §38.11).
|
||||
Corridors, courtyards and every occupied room want daylight.
|
||||
|
||||
Usage::
|
||||
|
||||
python experiments/audit_crinkliness_truth.py
|
||||
python experiments/audit_crinkliness_truth.py --seeds 5
|
||||
python experiments/audit_crinkliness_truth.py --dom examples/harbor-house/generated.dom
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import argparse
|
||||
import collections
|
||||
import copy
|
||||
from pathlib import Path
|
||||
|
||||
import numpy as np
|
||||
|
||||
from homemaker_layout import dom as dom_mod
|
||||
from homemaker_layout import driver, fitness, geometry
|
||||
from homemaker_layout import graph as graph_mod
|
||||
from homemaker_layout import operators, programme
|
||||
|
||||
CORPUS = ["examples/harbor-house", "examples/maple-court", "examples/health-centre"]
|
||||
|
||||
# Ruled by the project owner: only rooms that are not occupied from day to day
|
||||
# -- a cupboard, a store, a plant room -- do without daylight. Corridors need
|
||||
# it. So does everything else: WCs, laundries, reception, waiting rooms,
|
||||
# offices, consulting rooms. Which spaces those are is read from the configs
|
||||
# themselves (a declared `crinkliness: none`), never inferred here.
|
||||
|
||||
|
||||
def stock_fitness(progdir: str) -> fitness.Fitness:
|
||||
"""Stock objective -- `crinkliness_mode` left at its "urb" default."""
|
||||
ov = dict(driver._overrides_for(
|
||||
leaf_sharing=True, superpose=False, max_share=None, conn_grade=False,
|
||||
collapse_insearch=True, multi_use=False) or {})
|
||||
conf, cost = fitness.load_config(progdir, overrides=ov)
|
||||
return fitness.Fitness(conf, cost)
|
||||
|
||||
|
||||
def constructed(progdir: str, s: int) -> dom_mod.Node:
|
||||
reqs = programme.load_programme_dir(progdir)
|
||||
return operators.constructive_topology(
|
||||
dom_mod.load(f"{progdir}/init.dom"), reqs, np.random.default_rng(s),
|
||||
sorted(reqs) + ["C", "O"], min_storeys=programme.storey_minimum(progdir),
|
||||
adjacency_aware=True, proportion_aware=True, circ_divisor=3,
|
||||
leaf_sharing=True, leaf_share_factor=3, depth_balanced=True,
|
||||
interior_outside=True, outside_divisor=3)
|
||||
|
||||
|
||||
def audit(fit: fitness.Fitness, root: dom_mod.Node) -> collections.Counter:
|
||||
"""label -> count over the leaves that fail under ONE GLOBAL daylight target.
|
||||
|
||||
Each is labelled with the leaf's usage, and marked exempt when that space
|
||||
declares `crinkliness: none` -- i.e. when the failure the old objective
|
||||
emitted was not a defect.
|
||||
"""
|
||||
tree = copy.deepcopy(root)
|
||||
geometry.clear_cache()
|
||||
dom_mod.canonicalize_shares(tree)
|
||||
fit.preprocess_building(tree)
|
||||
dom_mod.merge_divided(tree)
|
||||
geometry.clear_cache()
|
||||
graphs = graph_mod.build_graphs(tree, fit.conf("door_width") or 1.2)
|
||||
|
||||
out: collections.Counter = collections.Counter()
|
||||
for li, lvl in enumerate(dom_mod.levels(tree)):
|
||||
groups = geometry.boundary_groups(lvl)
|
||||
for leaf in lvl.leaves():
|
||||
if dom_mod.is_outside(leaf) and not dom_mod.is_covered(leaf):
|
||||
continue
|
||||
# the PRE-§38.10 objective: one global target for every leaf
|
||||
crink = fit.crinkliness(leaf, graphs[li], groups)
|
||||
if crink:
|
||||
distance, sigma = fit.conf("uncrinkliness")
|
||||
q = fitness.gaussian(1 / crink, 1.0, distance, sigma)
|
||||
else:
|
||||
q = 0.0
|
||||
if q >= fitness.FAIL_THRESHOLD:
|
||||
continue # not a failure even then
|
||||
label = fit.usage_of(leaf) or f"<generic {leaf.type}>"
|
||||
if fit.crinkliness_params(leaf) is None:
|
||||
label += " [declares crinkliness: none]"
|
||||
out[label] += 1
|
||||
return out
|
||||
|
||||
|
||||
def report(label: str, tally: collections.Counter) -> tuple[int, int]:
|
||||
total = sum(tally.values())
|
||||
real = sum(n for u, n in tally.items() if "crinkliness: none" not in u)
|
||||
print(f"=== {label}: {total} crinkliness fails")
|
||||
if not total:
|
||||
print(" none\n")
|
||||
return 0, 0
|
||||
for usage, n in tally.most_common():
|
||||
verdict = ("not a defect -- not occupied day to day"
|
||||
if "crinkliness: none" in usage else "REAL DEFECT")
|
||||
print(f" {usage:<44}{n:>4} {verdict}")
|
||||
print(f" -> {total - real}/{total} ({100 * (total - real) / total:.0f}%) "
|
||||
f"are reported against spaces that do not want daylight\n")
|
||||
return real, total
|
||||
|
||||
|
||||
def main() -> None:
|
||||
ap = argparse.ArgumentParser(description=__doc__,
|
||||
formatter_class=argparse.RawDescriptionHelpFormatter)
|
||||
ap.add_argument("--seeds", type=int, default=3)
|
||||
ap.add_argument("--corpus", nargs="+", default=CORPUS)
|
||||
ap.add_argument("--dom", nargs="*", default=[],
|
||||
help="also audit these evolved .dom files (programme dir inferred)")
|
||||
args = ap.parse_args()
|
||||
|
||||
print("Stock objective. Every fail classified by the leaf's declared usage.\n")
|
||||
grand_real = grand_total = 0
|
||||
|
||||
for progdir in args.corpus:
|
||||
fit = stock_fitness(progdir)
|
||||
tally: collections.Counter = collections.Counter()
|
||||
for s in range(args.seeds):
|
||||
tally += audit(fit, constructed(progdir, s))
|
||||
r, t = report(f"{Path(progdir).name} ({args.seeds} constructed seeds)", tally)
|
||||
grand_real += r
|
||||
grand_total += t
|
||||
|
||||
for dom_path in args.dom:
|
||||
progdir = str(Path(dom_path).parent)
|
||||
fit = stock_fitness(progdir)
|
||||
r, t = report(f"{dom_path} (evolved)", audit(fit, dom_mod.load(dom_path)))
|
||||
grand_real += r
|
||||
grand_total += t
|
||||
|
||||
if grand_total:
|
||||
print(f"OVERALL: {grand_total - grand_real}/{grand_total} "
|
||||
f"({100 * (grand_total - grand_real) / grand_total:.0f}%) of the "
|
||||
f"crinkliness failures the objective reports are not defects.")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
339
experiments/audit_programme_config.py
Normal file
339
experiments/audit_programme_config.py
Normal file
|
|
@ -0,0 +1,339 @@
|
|||
"""Per-room-spec satisfiability audit of `patterns.config` targets.
|
||||
|
||||
Evidence for `homemaker-py-2v1`/`ssz`/`tdp` (DESIGN.md §38/§39). The corpus
|
||||
configs were estimated years ago on the principle that exact values do not
|
||||
matter for getting the engine working. This asks the opposite question: **does
|
||||
any individual room spec make itself impossible to satisfy?**
|
||||
|
||||
For one room code, model the leaf as a rectangle of area ``A`` and aspect
|
||||
``r = w/h >= 1`` (``h`` is `length_narrowest`, the width metric). The
|
||||
FAIL_THRESHOLD-inverted bounds come from the already-validated
|
||||
``shapecurve.leaf_constraints`` (§37.2), so this is not a reimplementation of
|
||||
the Gaussians:
|
||||
|
||||
* size ``amin <= A <= amax``
|
||||
* width ``h >= wmin`` => ``r <= A / wmin^2``
|
||||
* proportion ``r <= rmax``
|
||||
* crinkliness ``L_exposed >= A / (X * height)`` with ``X = 1.6202`` (§38.3)
|
||||
|
||||
The last one depends on how much of the leaf's boundary is external, which is a
|
||||
*placement* property, not a spec property — so the audit reports the **minimum
|
||||
number of exposed sides** each spec needs. A spec needing 2 adjacent sides is
|
||||
demanding a corner; a rectangular storey has only four corners, so a programme
|
||||
wanting more corner rooms than the plot has corners is over-subscribed before
|
||||
the search starts.
|
||||
|
||||
**Two different questions, and §39.1 answered only the weaker one**
|
||||
(`homemaker-py-u5q`, DESIGN.md §39.15). Sweeping the whole tolerance box asks
|
||||
"is SOME shape in this spec's box feasible?" and every corpus spec passes it.
|
||||
But a tolerance is not a design intent: the author declared a target area and a
|
||||
target aspect, and those are the room they asked for. Asking "is the room AS
|
||||
DECLARED feasible?" is a different question, and six corpus specs fail it —
|
||||
all on daylight, all of them the big rooms. `at-target` below is that column.
|
||||
A spec can be "feasible" only at the bottom of its area tolerance and the top
|
||||
of its aspect tolerance, which means the search can satisfy it only by building
|
||||
something the author did not ask for.
|
||||
|
||||
Usage::
|
||||
|
||||
python experiments/audit_programme_config.py
|
||||
python experiments/audit_programme_config.py examples/harbor-house --verbose
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import argparse
|
||||
import math
|
||||
from pathlib import Path
|
||||
|
||||
import numpy as np
|
||||
import yaml
|
||||
|
||||
from homemaker_layout import dom, fitness, programme, shapecurve
|
||||
from homemaker_layout.dom import Node
|
||||
|
||||
# 1/crink bounds from §38.3; recomputed from the live conf, never hard-coded.
|
||||
def crink_bounds(fit: fitness.Fitness, circulation: bool = False) -> tuple[float, float]:
|
||||
key = "uncrinkliness_circulation" if circulation else "uncrinkliness"
|
||||
target, sigma = fit.conf(key)
|
||||
k = math.sqrt(-2 * sigma * sigma
|
||||
* math.log(fitness.FAIL_THRESHOLD) / math.log(fitness._E))
|
||||
return target + k, max(1e-12, target - k)
|
||||
|
||||
|
||||
# Exposure patterns, cheapest first: name -> exposed length given (w, h), w >= h.
|
||||
EXPOSURE = [
|
||||
("1 short side", lambda w, h: h),
|
||||
("1 long side", lambda w, h: w),
|
||||
("2 adjacent (corner)", lambda w, h: w + h),
|
||||
("2 opposite long", lambda w, h: 2 * w),
|
||||
("3 sides", lambda w, h: 2 * h + w),
|
||||
("4 sides (freestanding)", lambda w, h: 2 * (w + h)),
|
||||
]
|
||||
|
||||
|
||||
def _synthetic_leaf(code: str) -> Node:
|
||||
"""A bare typed leaf — ``leaf_constraints`` reads only its type/flags."""
|
||||
return Node(node=[[0.0, 0.0], [4.0, 0.0], [4.0, 4.0], [0.0, 4.0]], type=code)
|
||||
|
||||
|
||||
def audit_code(fit: fitness.Fitness, code: str, height: float,
|
||||
grid: int = 240) -> dict:
|
||||
"""Feasibility of one room spec, and the exposure it needs."""
|
||||
bounds = shapecurve.leaf_constraints(fit, _synthetic_leaf(code))
|
||||
amin, amax, wmin, rmax = bounds.amin, bounds.amax, bounds.wmin, bounds.rmax
|
||||
if not math.isfinite(amax):
|
||||
amax = max(amin * 4, 200.0)
|
||||
|
||||
hi, lo = crink_bounds(fit, circulation=code[:1].lower() == "c")
|
||||
areas = np.linspace(max(amin, 1e-6), amax, grid)
|
||||
ratios = np.linspace(1.0, max(rmax, 1.0), grid)
|
||||
A, R = np.meshgrid(areas, ratios, indexing="ij")
|
||||
W, H = np.sqrt(A * R), np.sqrt(A / R)
|
||||
|
||||
swp = (H >= wmin) & (R <= rmax) # size is satisfied by construction
|
||||
result = {"code": code, "amin": amin, "amax": amax, "wmin": wmin,
|
||||
"rmax": rmax, "swp": bool(swp.any()), "needs": None,
|
||||
"swp_only_at": None}
|
||||
if not result["swp"]:
|
||||
return result
|
||||
|
||||
# smallest square-ish area that satisfies width at r=1, for the report
|
||||
result["swp_only_at"] = float(max(amin, wmin * wmin))
|
||||
|
||||
for name, length_of in EXPOSURE:
|
||||
L = length_of(W, H)
|
||||
crink_ok = (L >= A / (hi * height)) & (L <= A / (lo * height))
|
||||
if bool((swp & crink_ok).any()):
|
||||
result["needs"] = name
|
||||
break
|
||||
|
||||
# ...and the sharper question: the room AS DECLARED, not merely some room
|
||||
# inside its tolerances. Target area at target aspect is what the author
|
||||
# asked for; a spec feasible only at the edge of its box is one the search
|
||||
# can satisfy only by building something else. (u5q, §39.15)
|
||||
result.update(_audit_at_target(fit, code, height, hi, lo))
|
||||
return result
|
||||
|
||||
|
||||
def _audit_at_target(fit: fitness.Fitness, code: str, height: float,
|
||||
hi: float, lo: float) -> dict:
|
||||
"""Score the declared target area at the declared target aspect."""
|
||||
sp = fit.spaces.get(code)
|
||||
if sp is None:
|
||||
return {"at_target": None, "at_target_needs": None}
|
||||
size = fit.get_space_params(code, "size")
|
||||
prop = fit.get_space_params(code, "proportion")
|
||||
wid = fit.get_space_params(code, "width")
|
||||
area, ratio = size[0], prop[0]
|
||||
if not (area > 0 and ratio >= 1):
|
||||
return {"at_target": None, "at_target_needs": None}
|
||||
long_side, short_side = math.sqrt(area * ratio), math.sqrt(area / ratio)
|
||||
|
||||
bad = []
|
||||
if fitness.gaussian(area, 1.0, size[0], size[1]) < fitness.FAIL_THRESHOLD:
|
||||
bad.append("size")
|
||||
if fitness._clipped_gaussian(short_side, wid[0], wid[1],
|
||||
"above") < fitness.FAIL_THRESHOLD:
|
||||
bad.append("width")
|
||||
if fitness._clipped_gaussian(ratio, prop[0], prop[1],
|
||||
"below") < fitness.FAIL_THRESHOLD:
|
||||
bad.append("proportion")
|
||||
|
||||
needs = None
|
||||
declares_light = "crinkliness" not in sp or sp.get("crinkliness") is not None
|
||||
if declares_light:
|
||||
for name, length_of in EXPOSURE:
|
||||
L = length_of(long_side, short_side)
|
||||
if area / (hi * height) <= L <= area / (lo * height):
|
||||
needs = name
|
||||
break
|
||||
if needs is None:
|
||||
bad.append("crinkliness")
|
||||
return {"at_target": bad, "at_target_needs": needs}
|
||||
|
||||
|
||||
# The SEMANTIC (usage) prefixes. Unlike the generic types these classify
|
||||
# PROGRAMME CODES by first letter, and they are still prefix-based by design —
|
||||
# it is how Urb encodes room usage. graph.has_circulation strips edges based on
|
||||
# them (a "bedroom" loses its edges to living/kitchen/bedroom/toilet; a "toilet"
|
||||
# loses its edges to outside/living/kitchen/toilet), and fitness.access /
|
||||
# public-access read them too. So a code that picks one up by accident is
|
||||
# silently given another room's connectivity rules.
|
||||
USAGE_PREFIXES = {"b": "bedroom", "t": "toilet", "l": "living", "k": "kitchen"}
|
||||
|
||||
|
||||
def audit_usage(progdir: str) -> list[tuple[str, str, str]]:
|
||||
"""Report which programme codes acquire a usage class from their spelling."""
|
||||
reqs = programme.load_programme_dir(progdir)
|
||||
hits = [(c, USAGE_PREFIXES[c[:1].lower()], reqs[c].name)
|
||||
for c in sorted(reqs) if c[:1].lower() in USAGE_PREFIXES]
|
||||
if not hits:
|
||||
print(f"=== {Path(progdir).name}: no code carries a usage prefix\n")
|
||||
return []
|
||||
print(f"=== {Path(progdir).name}: {len(hits)} code(s) carry a usage prefix")
|
||||
for code, usage, name in hits:
|
||||
# crude but useful: does the human-readable name agree with the usage?
|
||||
agrees = usage[:3] in (name or "").lower() or {
|
||||
"toilet": ("wc", "bathroom", "toilet", "ensuite"),
|
||||
"bedroom": ("bedroom",), "living": ("living", "lounge"),
|
||||
"kitchen": ("kitchen",)}.get(usage, ())
|
||||
ok = any(w in (name or "").lower() for w in (
|
||||
agrees if isinstance(agrees, tuple) else (usage,)))
|
||||
flag = "" if ok else " <-- name disagrees with the usage it is given"
|
||||
print(f" {code:<6} -> {usage:<8} (name: {name}){flag}")
|
||||
print()
|
||||
return hits
|
||||
|
||||
|
||||
def audit_namespace(progdir: str) -> int:
|
||||
"""Report programme codes that collide with the generic type prefixes.
|
||||
|
||||
Urb's type system is prefix-based — a type starting with ``c`` is
|
||||
circulation, ``o``/``s`` is outside — and programme codes live in the *same
|
||||
namespace*. So a room code that happens to start with one of those letters
|
||||
is silently reinterpreted as a generic type. Three separate consequences,
|
||||
none of them announced anywhere in the output:
|
||||
|
||||
1. ``graph.check_space_counts`` **skips the code entirely**
|
||||
(``if code[0].lower() in ("c", "o", "s"): continue``) — the room is never
|
||||
required, never counted, and never produces a missing/too-many failure.
|
||||
2. ``Fitness.get_space_params`` returns the generic
|
||||
``*_circulation``/``*_outside`` parameters *before* consulting the
|
||||
programme, so declared size/width/proportion are overridden.
|
||||
3. ``dom.is_circulation``/``is_outside`` become true, changing the leaf's
|
||||
value rate, its crinkliness treatment, and whether it supplies daylight
|
||||
to its neighbours.
|
||||
"""
|
||||
reqs = programme.load_programme_dir(progdir)
|
||||
conf, cost = fitness.load_config(progdir)
|
||||
fit = fitness.Fitness(conf, cost)
|
||||
spaces = conf.get("spaces") or {}
|
||||
|
||||
hits = [c for c in sorted(reqs) if c[:1].lower() in ("c", "o", "s")]
|
||||
total = sum(r.count for r in reqs.values())
|
||||
if not hits:
|
||||
print(f"=== {Path(progdir).name}: namespace clean "
|
||||
f"({len(reqs)} codes / {total} instances)\n")
|
||||
return 0
|
||||
|
||||
skipped = sum(reqs[c].count for c in hits)
|
||||
print(f"=== {Path(progdir).name}: {len(hits)} code(s) collide with the "
|
||||
f"generic c/o/s type prefixes")
|
||||
print(f" {skipped} of {total} room instances ({100 * skipped / total:.0f}%) "
|
||||
f"are SILENTLY OPTIONAL — check_space_counts skips them\n")
|
||||
for code in hits:
|
||||
spec = spaces.get(code, {})
|
||||
leaf = _synthetic_leaf(code)
|
||||
print(f" {code} \"{reqs[code].name}\" (count {reqs[code].count})")
|
||||
for param in ("size", "width", "proportion"):
|
||||
declared = spec.get(param)
|
||||
effective = fit.get_space_params(code, param)
|
||||
flag = "" if declared == effective else " <-- OVERRIDDEN"
|
||||
print(f" {param:<11} declared={str(declared):<16} "
|
||||
f"effective={effective}{flag}")
|
||||
print(f" is_circulation={dom.is_circulation(leaf)} "
|
||||
f"is_outside={dom.is_outside(leaf)} "
|
||||
f"value_rate={fit.value_rate(leaf)} (inside={fit.conf('value_inside')})")
|
||||
print()
|
||||
return skipped
|
||||
|
||||
|
||||
def _multi_aspect(pattern: str) -> bool:
|
||||
"""True if this exposure pattern needs more than one wall to the outside."""
|
||||
return any(k in pattern for k in ("corner", "opposite", "3 sides", "4 sides"))
|
||||
|
||||
|
||||
def audit(progdir: str, verbose: bool) -> tuple[int, int]:
|
||||
reqs = programme.load_programme_dir(progdir)
|
||||
conf, cost = fitness.load_config(progdir)
|
||||
fit = fitness.Fitness(conf, cost)
|
||||
seed = yaml.safe_load(open(f"{progdir}/init.dom"))
|
||||
height = seed.get("height") or 3.0
|
||||
|
||||
print(f"=== {Path(progdir).name} (height {height} m)")
|
||||
hdr = (f" {'code':<7}{'count':<7}{'area ok':<18}{'min width':<11}"
|
||||
f"{'max aspect':<12}{'needs (anywhere in box)':<26}at declared target")
|
||||
print(hdr)
|
||||
print(" " + "-" * (len(hdr) - 2))
|
||||
|
||||
impossible = corner_demand = as_declared = as_declared_corner = 0
|
||||
for code in sorted(reqs) + ["C", "O"]:
|
||||
count = reqs[code].count if code in reqs else 0
|
||||
r = audit_code(fit, code, height)
|
||||
at = r.get("at_target")
|
||||
if at:
|
||||
as_declared += max(count, 1)
|
||||
target_col = "FAILS " + ",".join(at)
|
||||
elif at is None:
|
||||
target_col = "-"
|
||||
else:
|
||||
target_col = (r.get("at_target_needs") or "ok")
|
||||
if _multi_aspect(target_col):
|
||||
as_declared_corner += max(count, 1)
|
||||
if not r["swp"]:
|
||||
verdict = "IMPOSSIBLE (size/width/proportion contradict)"
|
||||
impossible += max(count, 1)
|
||||
elif r["needs"] is None:
|
||||
verdict = "IMPOSSIBLE even fully exposed (crinkliness)"
|
||||
impossible += max(count, 1)
|
||||
else:
|
||||
verdict = r["needs"]
|
||||
if _multi_aspect(verdict):
|
||||
corner_demand += max(count, 1)
|
||||
area_col = "%.1f-%.1f m2" % (r["amin"], r["amax"])
|
||||
width_col = "%.2f m" % r["wmin"]
|
||||
aspect_col = "%.2f" % r["rmax"]
|
||||
count_col = str(count) if count else "-"
|
||||
print(f" {code:<7}{count_col:<7}{area_col:<18}"
|
||||
f"{width_col:<11}{aspect_col:<12}{verdict:<26}{target_col}")
|
||||
|
||||
print(f"\n room instances that are impossible as specified : {impossible}")
|
||||
print(f" room instances requiring >=2 exposed sides : {corner_demand}"
|
||||
f" (a rectangular storey has 4 corners)")
|
||||
print(f" room instances that FAIL AS DECLARED : {as_declared}"
|
||||
f" (target area at target aspect)")
|
||||
print(f" room instances needing >=2 sides AS DECLARED : "
|
||||
f"{as_declared_corner}")
|
||||
if as_declared_corner:
|
||||
need = -(-as_declared_corner // 4) # ceil
|
||||
print(f" ^ a rectangular storey offers 4 corners, so these alone need "
|
||||
f">= {need} storey(s)\n"
|
||||
f" and claim {as_declared_corner} of the 4*S corners a "
|
||||
f"S-storey building has, leaving\n"
|
||||
f" 4*S - {as_declared_corner} for every other room. They are "
|
||||
f"satisfiable single-aspect only by\n"
|
||||
f" shrinking toward the bottom of their area tolerance and "
|
||||
f"stretching toward the\n"
|
||||
f" top of their aspect one -- i.e. by building something "
|
||||
f"other than what was\n"
|
||||
f" asked for. (The seed init.dom is one storey for every "
|
||||
f"corpus programme;\n"
|
||||
f" the search grows the rest, so the corner budget is not "
|
||||
f"fixed in advance.)")
|
||||
print()
|
||||
return impossible, corner_demand
|
||||
|
||||
|
||||
def main() -> None:
|
||||
ap = argparse.ArgumentParser(description=__doc__,
|
||||
formatter_class=argparse.RawDescriptionHelpFormatter)
|
||||
ap.add_argument("progdir", nargs="?", default=None)
|
||||
ap.add_argument("--verbose", action="store_true")
|
||||
args = ap.parse_args()
|
||||
dirs = [args.progdir] if args.progdir else [
|
||||
"examples/harbor-house", "examples/maple-court",
|
||||
"examples/health-centre", "examples/programme-house"]
|
||||
print("### namespace collisions (generic C/O/S structural types)\n")
|
||||
for d in dirs:
|
||||
audit_namespace(d)
|
||||
print("### usage prefixes (b/t/l/k -- still prefix-based, by design)\n")
|
||||
for d in dirs:
|
||||
audit_usage(d)
|
||||
print("### per-room-spec satisfiability\n")
|
||||
for d in dirs:
|
||||
audit(d, args.verbose)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
@ -1,224 +0,0 @@
|
|||
#!/usr/bin/env python3
|
||||
"""Inner-loop optimiser bake-off at equal oracle budgets (homemaker-py-d0s).
|
||||
|
||||
DESIGN.md §7 Phase 1(b), §8.3. DOF is only ≈ rooms−1 (6–7 on the corpus), so
|
||||
the question is fitness gained per oracle evaluation, not asymptotic power.
|
||||
Candidates:
|
||||
|
||||
nm multi-start Nelder-Mead (scipy) — the §4.5 diagnostic optimiser.
|
||||
Inherently sequential: ONE dom per oracle call, so the Perl
|
||||
startup never amortises (§4.6).
|
||||
cma multi-phase CMA-ES (innerloop.cma_search), one batched oracle
|
||||
call per generation.
|
||||
compass single-start batched compass search with pattern moves + random
|
||||
augmentation (innerloop.compass_search).
|
||||
compass-ms multi-start compass: budget split across restarts (x0 first,
|
||||
then random starts), global best kept.
|
||||
|
||||
Protocol: cold start from each file's equal-offset projection (x_current),
|
||||
one run per (method, file, seed), best-so-far recorded after every oracle
|
||||
call. Fitness-at-budget-B is read off the trace (evals ≤ B), so methods are
|
||||
compared at exactly equal budgets regardless of batch granularity; checkpoint
|
||||
budgets bracket the driver's real operating points (child_budget=80 warm,
|
||||
seed_budget=200 cold). Wall-clock and oracle-invocation counts are recorded
|
||||
per run.
|
||||
|
||||
Runs under URB_NO_OCCLUSION=1 (set by this script — the gp2 re-baseline flag;
|
||||
all benchmarks must use it).
|
||||
|
||||
Usage: python3 experiments/bakeoff_innerloop.py [budget] [out.json]
|
||||
(defaults: budget 200, experiments/bakeoff_innerloop.json)
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import json
|
||||
import os
|
||||
import shutil
|
||||
import sys
|
||||
import tempfile
|
||||
import time
|
||||
from pathlib import Path
|
||||
|
||||
import numpy as np
|
||||
|
||||
sys.path.insert(0, str(Path(__file__).resolve().parents[1] / "src"))
|
||||
from homemaker_layout import dom, innerloop, oracle # noqa: E402
|
||||
|
||||
URB = Path("/home/bruno/src/urb")
|
||||
EX = URB / "examples" / "programme-house"
|
||||
|
||||
FILES = (
|
||||
"2f45907abd9accac2a124d311732f749.dom",
|
||||
"candidate-002.dom",
|
||||
"c964435454c459f86c3ed9a5a7621132.dom",
|
||||
)
|
||||
SEEDS = (0, 1, 2)
|
||||
CHECKPOINTS = (40, 80, 120, 200)
|
||||
|
||||
|
||||
class TracingEvaluator(innerloop.OracleEvaluator):
|
||||
"""Records (cumulative evals, batch-best fitness) after every oracle call."""
|
||||
|
||||
def __init__(self, *a, **kw):
|
||||
super().__init__(*a, **kw)
|
||||
self.trace: list[tuple[int, float]] = []
|
||||
|
||||
def evaluate(self, xs):
|
||||
scores = super().evaluate(xs)
|
||||
self.trace.append((self.n_evals, max(s.fitness for s in scores)))
|
||||
return scores
|
||||
|
||||
def best_at(self, budget: int) -> float:
|
||||
vals = [f for n, f in self.trace if n <= budget]
|
||||
return max(vals) if vals else float("nan")
|
||||
|
||||
|
||||
class _BudgetExhausted(Exception):
|
||||
pass
|
||||
|
||||
|
||||
def nm_search(ev, x0, budget=200, seed=0):
|
||||
"""Multi-start Nelder-Mead: x0 first, random restarts until the budget is
|
||||
spent. Sequential — every evaluation is its own oracle invocation."""
|
||||
from scipy.optimize import minimize
|
||||
|
||||
rng = np.random.default_rng(seed)
|
||||
n = len(x0)
|
||||
x = np.clip(np.asarray(x0, dtype=float), innerloop._EPS, 1 - innerloop._EPS)
|
||||
s = ev.evaluate([x])[0]
|
||||
best = innerloop.Result(
|
||||
x=x.copy(), fitness=s.fitness, n_fails=s.n_fails, fail_lines=s.fail_lines,
|
||||
x0_fitness=s.fitness, x0_n_fails=s.n_fails, n_evals=0, n_oracle_calls=0,
|
||||
)
|
||||
|
||||
def f(xi):
|
||||
if ev.n_evals >= budget:
|
||||
raise _BudgetExhausted
|
||||
sc = ev.evaluate([np.asarray(xi, dtype=float)])[0]
|
||||
if sc.fitness > best.fitness:
|
||||
best.x = np.asarray(xi, dtype=float).copy()
|
||||
best.fitness = sc.fitness
|
||||
best.n_fails = sc.n_fails
|
||||
best.fail_lines = sc.fail_lines
|
||||
return -sc.fitness
|
||||
|
||||
start = x.copy()
|
||||
while ev.n_evals < budget:
|
||||
try:
|
||||
minimize(
|
||||
f, start, method="Nelder-Mead",
|
||||
bounds=[(innerloop._EPS, 1 - innerloop._EPS)] * n,
|
||||
options={"maxfev": budget - ev.n_evals, "xatol": 1e-3, "fatol": 1e-10},
|
||||
)
|
||||
except _BudgetExhausted:
|
||||
break
|
||||
start = rng.uniform(0.1, 0.9, n) # restart
|
||||
|
||||
best.n_evals = ev.n_evals
|
||||
best.n_oracle_calls = ev.n_oracle_calls
|
||||
return best
|
||||
|
||||
|
||||
def compass_ms_search(ev, x0, budget=200, seed=0, n_starts=3):
|
||||
"""Multi-start compass: budget split evenly; first start is x0, the rest
|
||||
random. compass_search counts against ev.n_evals, so phase budgets are
|
||||
cumulative caps."""
|
||||
rng = np.random.default_rng(seed)
|
||||
n = len(x0)
|
||||
best = None
|
||||
for phase in range(n_starts):
|
||||
phase_end = ev.n_evals + (budget - ev.n_evals) // (n_starts - phase)
|
||||
start = np.asarray(x0, dtype=float) if phase == 0 else rng.uniform(0.1, 0.9, n)
|
||||
r = innerloop.compass_search(ev, start, budget=phase_end, seed=seed + phase)
|
||||
if best is None or r.fitness > best.fitness:
|
||||
keep_x0 = best.x0_fitness if best is not None else r.x0_fitness
|
||||
keep_x0f = best.x0_n_fails if best is not None else r.x0_n_fails
|
||||
best = r
|
||||
best.x0_fitness, best.x0_n_fails = keep_x0, keep_x0f
|
||||
if ev.n_evals >= budget:
|
||||
break
|
||||
best.n_evals = ev.n_evals
|
||||
best.n_oracle_calls = ev.n_oracle_calls
|
||||
return best
|
||||
|
||||
|
||||
METHODS = {
|
||||
"nm": nm_search,
|
||||
"cma": innerloop.cma_search,
|
||||
"compass": innerloop.compass_search,
|
||||
"compass-ms": compass_ms_search,
|
||||
}
|
||||
|
||||
|
||||
def main() -> int:
|
||||
budget = int(sys.argv[1]) if len(sys.argv) > 1 else 200
|
||||
out_path = Path(sys.argv[2]) if len(sys.argv) > 2 else (
|
||||
Path(__file__).parent / "bakeoff_innerloop.json")
|
||||
os.environ["URB_NO_OCCLUSION"] = "1"
|
||||
checkpoints = [c for c in CHECKPOINTS if c <= budget] or [budget]
|
||||
if checkpoints[-1] != budget:
|
||||
checkpoints.append(budget)
|
||||
|
||||
# Baselines: the UNMODIFIED originals (gains measured from there, not from
|
||||
# the equal-offset projection — accept_innerloop.py convention).
|
||||
orig: dict[str, oracle.Score] = {}
|
||||
with tempfile.TemporaryDirectory(prefix="bakeoff_orig_") as tmp:
|
||||
shutil.copy(EX / "patterns.config", tmp)
|
||||
for name in FILES:
|
||||
orig[name] = oracle.score(shutil.copy(EX / name, tmp), URB)
|
||||
|
||||
runs = []
|
||||
for name in FILES:
|
||||
for method in METHODS:
|
||||
for seed in SEEDS:
|
||||
root = dom.load(str(EX / name))
|
||||
with TracingEvaluator(root, EX, URB) as ev:
|
||||
x0 = ev.x_current
|
||||
t0 = time.perf_counter()
|
||||
r = METHODS[method](ev, x0, budget=budget, seed=seed)
|
||||
dt = time.perf_counter() - t0
|
||||
run = {
|
||||
"file": name, "method": method, "seed": seed,
|
||||
"dof": len(x0),
|
||||
"orig_fitness": orig[name].fitness,
|
||||
"orig_n_fails": orig[name].n_fails,
|
||||
"x0_fitness": r.x0_fitness, "x0_n_fails": r.x0_n_fails,
|
||||
"best_at": {str(c): ev.best_at(c) for c in checkpoints},
|
||||
"final_fitness": r.fitness, "final_n_fails": r.n_fails,
|
||||
"n_evals": ev.n_evals, "n_oracle_calls": ev.n_oracle_calls,
|
||||
"wall_s": dt,
|
||||
}
|
||||
runs.append(run)
|
||||
gains = " ".join(
|
||||
f"@{c}:x{run['best_at'][str(c)] / orig[name].fitness:.2f}"
|
||||
for c in checkpoints)
|
||||
print(
|
||||
f"{name[:12]:12s} {method:10s} seed={seed} {gains} "
|
||||
f"fails {orig[name].n_fails}->{r.n_fails} "
|
||||
f"{ev.n_evals}ev/{ev.n_oracle_calls}calls {dt:.0f}s",
|
||||
flush=True,
|
||||
)
|
||||
|
||||
out_path.write_text(json.dumps(
|
||||
{"budget": budget, "checkpoints": checkpoints, "runs": runs}, indent=1))
|
||||
print(f"\nwrote {out_path}")
|
||||
|
||||
# Summary: mean gain over original at each checkpoint, mean s/eval.
|
||||
print(f"\n{'method':10s} " + "".join(f"{'x@' + str(c):>8s}" for c in checkpoints)
|
||||
+ f"{'s/eval':>8s}{'calls':>7s}{'fails+':>7s}")
|
||||
for method in METHODS:
|
||||
rs = [r for r in runs if r["method"] == method]
|
||||
cols = ""
|
||||
for c in checkpoints:
|
||||
g = np.mean([r["best_at"][str(c)] / r["orig_fitness"] for r in rs])
|
||||
cols += f"{g:8.2f}"
|
||||
spe = np.mean([r["wall_s"] / r["n_evals"] for r in rs])
|
||||
calls = np.mean([r["n_oracle_calls"] for r in rs])
|
||||
newf = sum(r["final_n_fails"] > r["orig_n_fails"] for r in rs)
|
||||
print(f"{method:10s} {cols}{spe:8.2f}{calls:7.0f}{newf:7d}")
|
||||
return 0
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
sys.exit(main())
|
||||
|
|
@ -1,207 +0,0 @@
|
|||
#!/usr/bin/env python3
|
||||
"""Inner-loop optimiser bake-off with native fitness (homemaker-py-d6d).
|
||||
|
||||
Re-runs the Phase 1 oracle bakeoff (bakeoff_innerloop.py / homemaker-py-d0s)
|
||||
using the native Python fitness evaluator instead of the Perl oracle. The
|
||||
oracle's 1 s/eval startup cost previously penalised sequential methods (NM);
|
||||
with native fitness at ~70 evals/s that constraint is gone.
|
||||
|
||||
Candidates: nm, cma, compass, compass-ms (same as Phase 1).
|
||||
Protocol: cold start from each file's equal-offset projection, one run per
|
||||
(method, file, seed), best-so-far traced after every eval. Gains measured
|
||||
relative to native baseline (native score of the unmodified original).
|
||||
|
||||
Usage: python3 experiments/bakeoff_native.py [budget] [out.json]
|
||||
(defaults: budget 200, experiments/bakeoff_native.json)
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import json
|
||||
import os
|
||||
import sys
|
||||
import time
|
||||
from pathlib import Path
|
||||
|
||||
import numpy as np
|
||||
|
||||
sys.path.insert(0, str(Path(__file__).resolve().parents[1] / "src"))
|
||||
from homemaker_layout import dom, fitness as fit_mod, innerloop, solver # noqa: E402
|
||||
|
||||
EX = Path("/home/bruno/src/urb/examples/programme-house")
|
||||
|
||||
FILES = (
|
||||
"2f45907abd9accac2a124d311732f749.dom",
|
||||
"candidate-002.dom",
|
||||
"c964435454c459f86c3ed9a5a7621132.dom",
|
||||
)
|
||||
SEEDS = (0, 1, 2)
|
||||
CHECKPOINTS = (40, 80, 120, 200)
|
||||
|
||||
|
||||
class NativeTracingEvaluator(innerloop.NativeEvaluator):
|
||||
"""NativeEvaluator that records (cumulative evals, batch-best fitness)."""
|
||||
|
||||
def __init__(self, *a, **kw):
|
||||
super().__init__(*a, **kw)
|
||||
self.trace: list[tuple[int, float]] = []
|
||||
|
||||
def evaluate(self, xs):
|
||||
scores = super().evaluate(xs)
|
||||
self.trace.append((self.n_evals, max(s.fitness for s in scores)))
|
||||
return scores
|
||||
|
||||
def best_at(self, budget: int) -> float:
|
||||
vals = [f for n, f in self.trace if n <= budget]
|
||||
return max(vals) if vals else float("nan")
|
||||
|
||||
|
||||
class _BudgetExhausted(Exception):
|
||||
pass
|
||||
|
||||
|
||||
def nm_search(ev, x0, budget=200, seed=0):
|
||||
"""Multi-start Nelder-Mead: x0 first, random restarts until budget spent."""
|
||||
from scipy.optimize import minimize
|
||||
|
||||
rng = np.random.default_rng(seed)
|
||||
n = len(x0)
|
||||
x = np.clip(np.asarray(x0, dtype=float), innerloop._EPS, 1 - innerloop._EPS)
|
||||
s = ev.evaluate([x])[0]
|
||||
best = innerloop.Result(
|
||||
x=x.copy(), fitness=s.fitness, n_fails=s.n_fails, fail_lines=s.fail_lines,
|
||||
x0_fitness=s.fitness, x0_n_fails=s.n_fails, n_evals=0, n_oracle_calls=0,
|
||||
)
|
||||
|
||||
def f(xi):
|
||||
if ev.n_evals >= budget:
|
||||
raise _BudgetExhausted
|
||||
sc = ev.evaluate([np.asarray(xi, dtype=float)])[0]
|
||||
if sc.fitness > best.fitness:
|
||||
best.x = np.asarray(xi, dtype=float).copy()
|
||||
best.fitness = sc.fitness
|
||||
best.n_fails = sc.n_fails
|
||||
best.fail_lines = sc.fail_lines
|
||||
return -sc.fitness
|
||||
|
||||
start = x.copy()
|
||||
while ev.n_evals < budget:
|
||||
try:
|
||||
minimize(
|
||||
f, start, method="Nelder-Mead",
|
||||
bounds=[(innerloop._EPS, 1 - innerloop._EPS)] * n,
|
||||
options={"maxfev": budget - ev.n_evals, "xatol": 1e-3, "fatol": 1e-10},
|
||||
)
|
||||
except _BudgetExhausted:
|
||||
break
|
||||
start = rng.uniform(0.1, 0.9, n)
|
||||
|
||||
|
||||
best.n_evals = ev.n_evals
|
||||
best.n_oracle_calls = ev.n_oracle_calls
|
||||
return best
|
||||
|
||||
|
||||
def compass_ms_search(ev, x0, budget=200, seed=0, n_starts=3):
|
||||
"""Multi-start compass: budget split evenly; first start is x0."""
|
||||
rng = np.random.default_rng(seed)
|
||||
n = len(x0)
|
||||
best = None
|
||||
for phase in range(n_starts):
|
||||
phase_end = ev.n_evals + (budget - ev.n_evals) // (n_starts - phase)
|
||||
start = np.asarray(x0, dtype=float) if phase == 0 else rng.uniform(0.1, 0.9, n)
|
||||
r = innerloop.compass_search(ev, start, budget=phase_end, seed=seed + phase)
|
||||
if best is None or r.fitness > best.fitness:
|
||||
keep_x0 = best.x0_fitness if best is not None else r.x0_fitness
|
||||
keep_x0f = best.x0_n_fails if best is not None else r.x0_n_fails
|
||||
best = r
|
||||
best.x0_fitness, best.x0_n_fails = keep_x0, keep_x0f
|
||||
if ev.n_evals >= budget:
|
||||
break
|
||||
best.n_evals = ev.n_evals
|
||||
best.n_oracle_calls = ev.n_oracle_calls
|
||||
return best
|
||||
|
||||
|
||||
METHODS = {
|
||||
"nm": nm_search,
|
||||
"cma": innerloop.cma_search,
|
||||
"compass": innerloop.compass_search,
|
||||
"compass-ms": compass_ms_search,
|
||||
}
|
||||
|
||||
|
||||
def native_baseline(path: Path) -> innerloop._NativeScore:
|
||||
"""Native fitness of the unmodified file."""
|
||||
root = dom.load(str(path))
|
||||
conf, cost = fit_mod.load_config(EX)
|
||||
fit = fit_mod.Fitness(conf, cost)
|
||||
score, fails = fit.score_with_fails(root)
|
||||
return innerloop._NativeScore(fitness=score, fail_lines=tuple(fails))
|
||||
|
||||
|
||||
def main() -> int:
|
||||
budget = int(sys.argv[1]) if len(sys.argv) > 1 else 200
|
||||
out_path = Path(sys.argv[2]) if len(sys.argv) > 2 else (
|
||||
Path(__file__).parent / "bakeoff_native.json")
|
||||
os.environ["URB_NO_OCCLUSION"] = "1"
|
||||
checkpoints = [c for c in CHECKPOINTS if c <= budget] or [budget]
|
||||
if checkpoints[-1] != budget:
|
||||
checkpoints.append(budget)
|
||||
|
||||
orig: dict[str, innerloop._NativeScore] = {}
|
||||
for name in FILES:
|
||||
orig[name] = native_baseline(EX / name)
|
||||
|
||||
runs = []
|
||||
for name in FILES:
|
||||
for method in METHODS:
|
||||
for seed in SEEDS:
|
||||
root = dom.load(str(EX / name))
|
||||
ev = NativeTracingEvaluator(root, EX)
|
||||
x0 = ev.x_current
|
||||
t0 = time.perf_counter()
|
||||
r = METHODS[method](ev, x0, budget=budget, seed=seed)
|
||||
dt = time.perf_counter() - t0
|
||||
run = {
|
||||
"file": name, "method": method, "seed": seed,
|
||||
"dof": len(x0),
|
||||
"orig_fitness": orig[name].fitness,
|
||||
"orig_n_fails": orig[name].n_fails,
|
||||
"x0_fitness": r.x0_fitness, "x0_n_fails": r.x0_n_fails,
|
||||
"best_at": {str(c): ev.best_at(c) for c in checkpoints},
|
||||
"final_fitness": r.fitness, "final_n_fails": r.n_fails,
|
||||
"n_evals": ev.n_evals, "n_oracle_calls": ev.n_oracle_calls,
|
||||
"wall_s": dt,
|
||||
}
|
||||
runs.append(run)
|
||||
gains = " ".join(
|
||||
f"@{c}:x{run['best_at'][str(c)] / orig[name].fitness:.2f}"
|
||||
for c in checkpoints)
|
||||
print(
|
||||
f"{name[:12]:12s} {method:10s} seed={seed} {gains} "
|
||||
f"fails {orig[name].n_fails}->{r.n_fails} "
|
||||
f"{ev.n_evals}ev {dt:.1f}s",
|
||||
flush=True,
|
||||
)
|
||||
|
||||
out_path.write_text(json.dumps(
|
||||
{"budget": budget, "checkpoints": checkpoints, "runs": runs}, indent=1))
|
||||
print(f"\nwrote {out_path}")
|
||||
|
||||
print(f"\n{'method':10s} " + "".join(f"{'x@' + str(c):>8s}" for c in checkpoints)
|
||||
+ f"{'s/eval':>8s}{'fails+':>7s}")
|
||||
for method in METHODS:
|
||||
rs = [r for r in runs if r["method"] == method]
|
||||
cols = ""
|
||||
for c in checkpoints:
|
||||
g = np.mean([r["best_at"][str(c)] / r["orig_fitness"] for r in rs])
|
||||
cols += f"{g:8.3f}"
|
||||
spe = np.mean([r["wall_s"] / r["n_evals"] for r in rs])
|
||||
newf = sum(r["final_n_fails"] > r["orig_n_fails"] for r in rs)
|
||||
print(f"{method:10s} {cols}{spe:8.4f}{newf:7d}")
|
||||
return 0
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
sys.exit(main())
|
||||
|
|
@ -1,67 +0,0 @@
|
|||
#!/usr/bin/env python3
|
||||
"""Validate and benchmark the batched oracle (homemaker-py-av5).
|
||||
|
||||
Copies the 35-file programme-house corpus into a scratch directory, scores
|
||||
every file via single-file oracle calls and again via one batched invocation,
|
||||
then checks the per-file fitness and failure sets are identical and reports
|
||||
measured s/dom for both modes.
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import math
|
||||
import shutil
|
||||
import sys
|
||||
import tempfile
|
||||
import time
|
||||
from pathlib import Path
|
||||
|
||||
sys.path.insert(0, str(Path(__file__).resolve().parents[1] / "src"))
|
||||
from homemaker_layout import oracle # noqa: E402
|
||||
|
||||
URB = Path("/home/bruno/src/urb")
|
||||
CORPUS = URB / "examples" / "programme-house"
|
||||
|
||||
|
||||
def main() -> int:
|
||||
with tempfile.TemporaryDirectory(prefix="bench_batch_") as tmp:
|
||||
scratch = Path(tmp)
|
||||
shutil.copy(CORPUS / "patterns.config", scratch)
|
||||
doms = sorted(CORPUS.glob("*.dom"))
|
||||
paths = [shutil.copy(d, scratch) for d in doms]
|
||||
paths = [Path(p) for p in paths]
|
||||
print(f"{len(paths)} corpus files -> {scratch}")
|
||||
|
||||
t0 = time.perf_counter()
|
||||
singles = [oracle.score(p, URB) for p in paths]
|
||||
t_single = time.perf_counter() - t0
|
||||
|
||||
t0 = time.perf_counter()
|
||||
batch = oracle.score_batch(paths, URB)
|
||||
t_batch = time.perf_counter() - t0
|
||||
|
||||
# Urb's score is nondeterministic at the ~1 ULP level (Perl hash-order
|
||||
# summation), so compare fitness with a tight relative tolerance; any
|
||||
# real semantic difference (e.g. occlusion handling) would be far larger.
|
||||
mismatches = 0
|
||||
for p, s, b in zip(paths, singles, batch):
|
||||
if not math.isclose(s.fitness, b.fitness, rel_tol=1e-12) or s.fail_lines != b.fail_lines:
|
||||
mismatches += 1
|
||||
print(f"MISMATCH {p.name}: single {s.fitness:.12g} ({s.n_fails} fails) "
|
||||
f"vs batch {b.fitness:.12g} ({b.n_fails} fails)")
|
||||
print(f" single-only: {sorted(set(s.fail_lines) - set(b.fail_lines))}")
|
||||
print(f" batch-only: {sorted(set(b.fail_lines) - set(s.fail_lines))}")
|
||||
|
||||
n = len(paths)
|
||||
print(f"\nsingle-file: {t_single:.2f} s total, {t_single / n:.3f} s/dom")
|
||||
print(f"batched: {t_batch:.2f} s total, {t_batch / n:.3f} s/dom")
|
||||
print(f"speedup: x{t_single / t_batch:.2f}")
|
||||
if mismatches:
|
||||
print(f"\nFAIL: {mismatches}/{n} files differ between single and batch")
|
||||
return 1
|
||||
print(f"\nOK: all {n} files identical (fitness to 1e-12 rel, exact failure set) in both modes")
|
||||
return 0
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
sys.exit(main())
|
||||
|
|
@ -1,133 +0,0 @@
|
|||
#!/usr/bin/env python3
|
||||
"""Phase-2 gate: memetic loop vs urb-evolve at equal oracle-eval budgets
|
||||
(homemaker-py-way).
|
||||
|
||||
Protocol: 3 seed designs x 2000-evaluation runs; the 1000-eval tier is read
|
||||
from each run's own best-so-far log (no extra oracle time). urb-evolve runs
|
||||
at two population sizes (its default 128, which only allows ~16 generations
|
||||
at this budget, and 16, which allows ~130) and gets credit for its better
|
||||
one. urb-evolve counts evaluations via the MAX_EVALS patch; the memetic
|
||||
driver accounts natively. Both run under URB_NO_OCCLUSION=1 with the same
|
||||
patterns.config; every final design is re-scored through urb-fitness.pl as
|
||||
the common deterministic yardstick.
|
||||
|
||||
URB_NO_OCCLUSION=1 python3 experiments/benchmark_vs_urbevolve.py [budget]
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import os
|
||||
import re
|
||||
import shutil
|
||||
import subprocess
|
||||
import sys
|
||||
from concurrent.futures import ThreadPoolExecutor
|
||||
from pathlib import Path
|
||||
|
||||
sys.path.insert(0, str(Path(__file__).resolve().parents[1] / "src"))
|
||||
from homemaker_layout import oracle # noqa: E402
|
||||
|
||||
URB = Path("/home/bruno/src/urb")
|
||||
EX = URB / "examples" / "programme-house"
|
||||
HERE = Path(__file__).resolve().parent
|
||||
WORK = HERE.parent / "scratch" / "benchmark"
|
||||
|
||||
SEEDS = ["init.dom", "c964435454c459f86c3ed9a5a7621132.dom",
|
||||
"2f45907abd9accac2a124d311732f749.dom"]
|
||||
CHECKPOINT_FRACTION = 0.5
|
||||
|
||||
|
||||
def run_homemaker(seed: str, budget: int, cell: Path) -> dict:
|
||||
out = cell / "best.dom"
|
||||
proc = subprocess.run(
|
||||
[sys.executable, str(HERE / "run_search.py"), str(budget), "0",
|
||||
str(EX / seed), str(out)],
|
||||
capture_output=True, text=True, env={**os.environ, "URB_NO_OCCLUSION": "1"},
|
||||
)
|
||||
(cell / "run.log").write_text(proc.stdout + proc.stderr)
|
||||
series = [(int(m[1]), float(m[2])) for m in
|
||||
re.finditer(r"\[\s*(\d+) evals\] best ([\d.e-]+)", proc.stdout)]
|
||||
return {"series": series, "best_dom": out, "log_ok": proc.returncode == 0}
|
||||
|
||||
|
||||
def run_urbevolve(seed: str, budget: int, cell: Path, pop: int) -> dict:
|
||||
shutil.copy(EX / "patterns.config", cell)
|
||||
shutil.copy(EX / seed, cell)
|
||||
proc = subprocess.run(
|
||||
["perl", f"-I{URB}/lib", str(URB / "bin" / "urb-evolve.pl"), seed],
|
||||
cwd=cell, capture_output=True, text=True,
|
||||
env={**os.environ, "URB_NO_OCCLUSION": "1", "MAX_EVALS": str(budget),
|
||||
"MAX_POP": str(pop), "MAX_ITERATIONS": "100000"},
|
||||
)
|
||||
(cell / "run.log").write_text(proc.stderr)
|
||||
series = []
|
||||
evals = None
|
||||
for line in proc.stderr.splitlines():
|
||||
if m := re.search(r"Evals: (\d+)", line):
|
||||
evals = int(m[1])
|
||||
elif (m := re.search(r"Fitness: ([\d.e-]+)", line)) and evals is not None:
|
||||
series.append((evals, float(m[1])))
|
||||
out_hash = proc.stdout.strip().split()[-1] if proc.stdout.strip() else None
|
||||
best = cell / f"{out_hash}.dom" if out_hash else None
|
||||
return {"series": series, "best_dom": best,
|
||||
"log_ok": proc.returncode == 0 and best is not None and best.exists()}
|
||||
|
||||
|
||||
def best_at(series: list[tuple[int, float]], budget: int) -> float:
|
||||
vals = [f for e, f in series if e <= budget]
|
||||
return max(vals) if vals else float("nan")
|
||||
|
||||
|
||||
def main() -> int:
|
||||
budget = int(sys.argv[1]) if len(sys.argv) > 1 else 2000
|
||||
checkpoint = int(budget * CHECKPOINT_FRACTION)
|
||||
if WORK.exists():
|
||||
shutil.rmtree(WORK)
|
||||
|
||||
cells = []
|
||||
for seed in SEEDS:
|
||||
cells.append((seed, "memetic", run_homemaker, {}))
|
||||
cells.append((seed, "urb-evolve p16", run_urbevolve, {"pop": 16}))
|
||||
cells.append((seed, "urb-evolve p128", run_urbevolve, {"pop": 128}))
|
||||
|
||||
def run_cell(args):
|
||||
seed, label, fn, kw = args
|
||||
cell = WORK / f"{seed.split('.')[0][:8]}_{label.replace(' ', '_')}"
|
||||
cell.mkdir(parents=True, exist_ok=True)
|
||||
print(f"start: {seed} / {label}", flush=True)
|
||||
res = fn(seed, budget, cell, **kw)
|
||||
print(f"done: {seed} / {label} ({len(res['series'])} log points)", flush=True)
|
||||
return (seed, label), res
|
||||
|
||||
with ThreadPoolExecutor(max_workers=3) as pool:
|
||||
results = dict(pool.map(run_cell, cells))
|
||||
|
||||
# common yardstick: re-score every final design through urb-fitness.pl
|
||||
for key, res in results.items():
|
||||
if res["best_dom"] and Path(res["best_dom"]).exists():
|
||||
s = oracle.score(res["best_dom"], URB)
|
||||
res["final"], res["fails"] = s.fitness, s.n_fails
|
||||
else:
|
||||
res["final"], res["fails"] = float("nan"), -1
|
||||
|
||||
print(f"\n{'seed':10s} {'system':16s} {'best@' + str(checkpoint):>12s} "
|
||||
f"{'final@' + str(budget):>12s} {'fails':>6s}")
|
||||
verdicts = []
|
||||
for seed in SEEDS:
|
||||
rows = {label: results[(seed, label)] for label in
|
||||
("memetic", "urb-evolve p16", "urb-evolve p128")}
|
||||
for label, res in rows.items():
|
||||
print(f"{seed[:10]:10s} {label:16s} {best_at(res['series'], checkpoint):12.6g} "
|
||||
f"{res['final']:12.6g} {res['fails']:6d}")
|
||||
hm = rows["memetic"]["final"]
|
||||
urb = max(rows["urb-evolve p16"]["final"], rows["urb-evolve p128"]["final"])
|
||||
verdicts.append(hm > urb)
|
||||
print(f"{'':10s} -> memetic {'BEATS' if hm > urb else 'LOSES TO'} "
|
||||
f"urb-evolve ({hm:.6g} vs {urb:.6g})")
|
||||
print(f"\nGATE: memetic wins {sum(verdicts)}/{len(verdicts)} seeds "
|
||||
f"-> {'GO' if all(verdicts) else 'REVIEW'}")
|
||||
return 0
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
sys.exit(main())
|
||||
|
|
@ -21,7 +21,6 @@ from scipy.optimize import minimize
|
|||
sys.path.insert(0, str(Path(__file__).resolve().parents[1] / "src"))
|
||||
from homemaker_layout import dom, innerloop # noqa: E402
|
||||
|
||||
URB = Path("/home/bruno/src/urb")
|
||||
EX = URB / "examples" / "programme-house"
|
||||
NAME = "2f45907abd9accac2a124d311732f749.dom"
|
||||
|
||||
|
|
@ -52,7 +51,7 @@ def main() -> None:
|
|||
f"({ev.n_evals - n0} evals)", flush=True)
|
||||
|
||||
root = dom.load(str(EX / NAME))
|
||||
r = innerloop.optimise(root, EX, budget=200, method="cma", sigmas=(0.05,), urb_root=URB)
|
||||
r = innerloop.optimise(root, EX, budget=200, method="cma", sigmas=(0.05,))
|
||||
print(f"CMA sigma 0.05: {r.fitness:.6g} fails {r.n_fails} ({r.n_evals} evals)")
|
||||
|
||||
|
||||
|
|
|
|||
167
experiments/diag_connectivity_yql.py
Normal file
167
experiments/diag_connectivity_yql.py
Normal file
|
|
@ -0,0 +1,167 @@
|
|||
"""Why does `level N not connected` persist? (`homemaker-py-yql`, DESIGN.md §39.9)
|
||||
|
||||
`homemaker-py-2v1` closed NULL: severing a level's circulation is already
|
||||
punished, so the fail is not something the search is paid to create. This asks
|
||||
the follow-on question — is a connected layout **rarely constructed**, or
|
||||
**constructed and then lost**?
|
||||
|
||||
`level N not connected` fires from `graph.connected_circulation`, which keeps
|
||||
only the generic circulation leaves (`C`/`S`) and asks whether *they* form one
|
||||
connected component. It runs on `graph_circ`, i.e. AFTER
|
||||
`graph.has_circulation` has trimmed edges, so §39.7's usage change can in
|
||||
principle reach it — report (b) measures whether it did.
|
||||
|
||||
Three reports:
|
||||
|
||||
construct what fraction of constructed seeds start connected, per level
|
||||
cost the same, prefix-inferred usages vs declared (the §39.7 cost)
|
||||
survive from a CONNECTED layout, how often does one mutation break
|
||||
connectivity, and would the outer comparator keep the mutant
|
||||
|
||||
Usage::
|
||||
|
||||
python experiments/diag_connectivity_yql.py construct
|
||||
python experiments/diag_connectivity_yql.py cost
|
||||
python experiments/diag_connectivity_yql.py survive --seeds 40
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import argparse
|
||||
import copy
|
||||
from pathlib import Path
|
||||
|
||||
import numpy as np
|
||||
|
||||
from homemaker_layout import dom as dom_mod
|
||||
from homemaker_layout import driver, fitness, geometry
|
||||
from homemaker_layout import graph as graph_mod
|
||||
from homemaker_layout import operators, programme
|
||||
|
||||
CORPUS = ["examples/harbor-house", "examples/health-centre", "examples/maple-court"]
|
||||
LEGACY_PREFIX = {"b": "bedroom", "t": "toilet", "l": "living", "k": "kitchen"}
|
||||
|
||||
|
||||
def make_fitness(progdir: str) -> fitness.Fitness:
|
||||
overrides = driver._overrides_for(
|
||||
leaf_sharing=True, superpose=False, max_share=None, conn_grade=False,
|
||||
collapse_insearch=True, multi_use=False)
|
||||
conf, cost = fitness.load_config(progdir, overrides=dict(overrides or {}))
|
||||
return fitness.Fitness(conf, cost)
|
||||
|
||||
|
||||
def constructed_seed(progdir: str, seed: int) -> dom_mod.Node:
|
||||
reqs = programme.load_programme_dir(progdir)
|
||||
return operators.constructive_topology(
|
||||
dom_mod.load(f"{progdir}/init.dom"), reqs, np.random.default_rng(seed),
|
||||
sorted(reqs) + ["C", "O"],
|
||||
min_storeys=programme.storey_minimum(progdir),
|
||||
adjacency_aware=True, proportion_aware=True, circ_divisor=3,
|
||||
leaf_sharing=True, leaf_share_factor=3, depth_balanced=True,
|
||||
interior_outside=True, outside_divisor=3)
|
||||
|
||||
|
||||
def connectivity(root: dom_mod.Node, usages: dict[str, str]) -> tuple[int, int]:
|
||||
"""``(levels_connected, levels_total)`` for one tree.
|
||||
|
||||
Mirrors the scorer: build the circ graphs, then ask
|
||||
``connected_circulation`` per level on a copy, exactly as
|
||||
``process_storey`` does.
|
||||
"""
|
||||
tree = copy.deepcopy(root)
|
||||
geometry.clear_cache()
|
||||
dom_mod.canonicalize_shares(tree)
|
||||
_, circ = graph_mod.build_graphs_with_circ(tree, 1.2, lambda _f: None, usages)
|
||||
connected = sum(1 for gc in circ
|
||||
if graph_mod.connected_circulation(gc.copy()))
|
||||
return connected, len(circ)
|
||||
|
||||
|
||||
def report_construct(seeds: int) -> None:
|
||||
print(f"how often does a CONSTRUCTED seed start connected? ({seeds} seeds)\n")
|
||||
print(f" {'programme':<18}{'levels connected':<20}{'seeds fully connected'}")
|
||||
print(" " + "-" * 62)
|
||||
for progdir in CORPUS:
|
||||
fit = make_fitness(progdir)
|
||||
usages = fit.usages()
|
||||
ok = tot = full = 0
|
||||
for s in range(seeds):
|
||||
c, n = connectivity(constructed_seed(progdir, s), usages)
|
||||
ok += c
|
||||
tot += n
|
||||
full += (c == n)
|
||||
print(f" {Path(progdir).name:<18}{f'{ok}/{tot} ({100*ok/max(tot,1):.0f}%)':<20}"
|
||||
f"{full}/{seeds}")
|
||||
|
||||
|
||||
def report_cost(seeds: int) -> None:
|
||||
"""Did §39.7's usage change make level connectivity harder to achieve?"""
|
||||
print("§39.7 cost check — prefix-inferred usages vs declared "
|
||||
f"({seeds} seeds)\n")
|
||||
print(f" {'programme':<18}{'prefix-inferred':<20}{'declared':<20}delta")
|
||||
print(" " + "-" * 68)
|
||||
for progdir in CORPUS:
|
||||
reqs = programme.load_programme_dir(progdir)
|
||||
declared = {c: r.usage for c, r in reqs.items()}
|
||||
legacy = {c: LEGACY_PREFIX.get(c[:1].lower(), "none") for c in reqs}
|
||||
res = {}
|
||||
for label, usages in (("legacy", legacy), ("declared", declared)):
|
||||
ok = tot = 0
|
||||
for s in range(seeds):
|
||||
c, n = connectivity(constructed_seed(progdir, s), usages)
|
||||
ok += c
|
||||
tot += n
|
||||
res[label] = (ok, tot)
|
||||
(a, ta), (b, tb) = res["legacy"], res["declared"]
|
||||
delta = 100 * b / max(tb, 1) - 100 * a / max(ta, 1)
|
||||
print(f" {Path(progdir).name:<18}"
|
||||
f"{f'{a}/{ta} ({100*a/max(ta,1):.0f}%)':<20}"
|
||||
f"{f'{b}/{tb} ({100*b/max(tb,1):.0f}%)':<20}{delta:+.0f} pts")
|
||||
|
||||
|
||||
def report_survive(seeds: int) -> None:
|
||||
"""From a CONNECTED level, how fragile is that connectivity under one
|
||||
mutation — and would the comparator keep the mutant anyway?"""
|
||||
print(f"survival of connectivity under one mutation ({seeds} trials)\n")
|
||||
print(f" {'programme':<18}{'started connected':<20}{'broken by mutation':<22}"
|
||||
f"{'…and kept by comparator'}")
|
||||
print(" " + "-" * 82)
|
||||
for progdir in CORPUS:
|
||||
fit = make_fitness(progdir)
|
||||
usages = fit.usages()
|
||||
reqs = programme.load_programme_dir(progdir)
|
||||
types = sorted(reqs) + ["C", "O"]
|
||||
started = broken = kept = 0
|
||||
rng = np.random.default_rng(0)
|
||||
for s in range(seeds):
|
||||
root = constructed_seed(progdir, s)
|
||||
c, n = connectivity(root, usages)
|
||||
if c != n:
|
||||
continue # only study layouts that ARE connected
|
||||
started += 1
|
||||
base_score, base_fails = fit.score_with_fails(copy.deepcopy(root))
|
||||
child, _desc = operators.mutate(root, rng, types, reqs=reqs)
|
||||
c2, n2 = connectivity(child, usages)
|
||||
if c2 == n2:
|
||||
continue
|
||||
broken += 1
|
||||
# would the outer loop admit it? lexicographic (-n_fails, fitness)
|
||||
score, fails = fit.score_with_fails(copy.deepcopy(child))
|
||||
if (-len(fails), score) > (-len(base_fails), base_score):
|
||||
kept += 1
|
||||
print(f" {Path(progdir).name:<18}{f'{started}/{seeds}':<20}"
|
||||
f"{f'{broken}/{max(started,1)}':<22}{kept}")
|
||||
|
||||
|
||||
def main() -> None:
|
||||
ap = argparse.ArgumentParser(description=__doc__,
|
||||
formatter_class=argparse.RawDescriptionHelpFormatter)
|
||||
ap.add_argument("report", choices=("construct", "cost", "survive"))
|
||||
ap.add_argument("--seeds", type=int, default=20)
|
||||
args = ap.parse_args()
|
||||
{"construct": report_construct, "cost": report_cost,
|
||||
"survive": report_survive}[args.report](args.seeds)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
@ -129,7 +129,7 @@ def _measure(fit, pdir, seed_root, reqs, types, s, balanced, sharing, factor):
|
|||
after_tree = copy.deepcopy(topo)
|
||||
with _force_sharing(sharing):
|
||||
innerloop.optimise(after_tree, str(pdir), x0=None, budget=BUDGET,
|
||||
method="nm", use_native=True)
|
||||
method="nm")
|
||||
_s2, fails2 = fit.score_with_fails(copy.deepcopy(after_tree))
|
||||
after = {"n_leaves": n_leaves, "total": len(fails2), **_bucket(fails2),
|
||||
**_maldist(after_tree, fit, reqs)}
|
||||
|
|
|
|||
271
experiments/diag_exposure_frontage.py
Normal file
271
experiments/diag_exposure_frontage.py
Normal file
|
|
@ -0,0 +1,271 @@
|
|||
"""Exposure / frontage diagnostic for the crinkliness residual.
|
||||
|
||||
Evidence for `homemaker-py-ssz` / `hxi` / `tdp` (DESIGN.md §38). Three reports,
|
||||
none of which needs a search run:
|
||||
|
||||
1. ``exposure`` — decompose crinkliness failures into ZERO-EXPOSURE (the leaf
|
||||
has no daylit wall at all, so ``quality_uncrinkliness`` returns a hard 0.0
|
||||
and the leaf's whole quality product collapses to zero) vs. wrong-ratio
|
||||
(exposed, but off the uncrinkliness target). Run on constructed seeds under
|
||||
the driver's real default stack, or on a ``.dom`` from disk.
|
||||
|
||||
2. ``value`` — measure what a buried leaf is worth to the objective, by
|
||||
deleting one (undividing its parent) and re-scoring. Circulation/outside
|
||||
leaves carry no missing-space requirement, so nothing offsets their removal.
|
||||
|
||||
3. ``frontage`` — the closed-form feasibility bound. Crinkliness fails when
|
||||
``1/crink > X`` with ``crink = L*h/A``, so every interior leaf needs exposed
|
||||
wall ``L >= A/(X*h)``; per storey that is ``A_storey/(X*h)`` metres. Compare
|
||||
against the daylit plot perimeter (``area_outside`` skips ``private`` and
|
||||
``fortified`` edges) to get the deficit.
|
||||
|
||||
Usage::
|
||||
|
||||
python experiments/diag_exposure_frontage.py frontage
|
||||
python experiments/diag_exposure_frontage.py exposure examples/harbor-house
|
||||
python experiments/diag_exposure_frontage.py exposure --dom out.dom examples/harbor-house
|
||||
python experiments/diag_exposure_frontage.py value examples/harbor-house
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import argparse
|
||||
import copy
|
||||
import math
|
||||
from pathlib import Path
|
||||
|
||||
import numpy as np
|
||||
|
||||
from homemaker_layout import dom as dom_mod
|
||||
from homemaker_layout import driver, fitness, geometry
|
||||
from homemaker_layout import graph as graph_mod
|
||||
from homemaker_layout import operators, programme
|
||||
|
||||
CORPUS = ["examples/harbor-house", "examples/maple-court",
|
||||
"examples/health-centre", "examples/programme-house"]
|
||||
|
||||
|
||||
def fail_bounds() -> tuple[float, float]:
|
||||
"""Solve ``gaussian(x, 1, 5/6, 1.1/3) == FAIL_THRESHOLD`` for x.
|
||||
|
||||
Returns ``(buried_above, exposed_below)``: a leaf fails crinkliness when
|
||||
``1/crink`` exceeds the first (too buried) or falls below the second (too
|
||||
exposed). Derived from the real constants, never hard-coded.
|
||||
"""
|
||||
b, c = fitness.CONF_DEFAULTS["uncrinkliness"]
|
||||
k = math.sqrt(-2 * c * c * math.log(fitness.FAIL_THRESHOLD) / math.log(fitness._E))
|
||||
return b + k, b - k
|
||||
|
||||
|
||||
def _fit(progdir: str) -> fitness.Fitness:
|
||||
"""Evaluator configured exactly as ``driver.search`` builds it by default."""
|
||||
ov = driver._overrides_for(leaf_sharing=True, superpose=False, max_share=None,
|
||||
conn_grade=False, collapse_insearch=True,
|
||||
multi_use=False)
|
||||
conf, cost = fitness.load_config(progdir, overrides=ov)
|
||||
return fitness.Fitness(conf, cost)
|
||||
|
||||
|
||||
def _seed(progdir: str, seed: int) -> dom_mod.Node:
|
||||
"""One constructed seed under ``driver.search``'s own default arguments."""
|
||||
reqs = programme.load_programme_dir(progdir)
|
||||
return operators.constructive_topology(
|
||||
dom_mod.load(f"{progdir}/init.dom"), reqs, np.random.default_rng(seed),
|
||||
sorted(reqs) + ["C", "O"],
|
||||
min_storeys=programme.storey_minimum(progdir),
|
||||
adjacency_aware=True, proportion_aware=True, circ_divisor=3,
|
||||
leaf_sharing=True, leaf_share_factor=3, depth_balanced=True,
|
||||
interior_outside=True, outside_divisor=3)
|
||||
|
||||
|
||||
def _exposure_rows(fit: fitness.Fitness, root: dom_mod.Node) -> list[tuple]:
|
||||
"""Per interior/covered leaf: (level, id, type, area, exposed_area, quality).
|
||||
|
||||
Reproduces the state ``_evaluate_full`` reaches at storey processing —
|
||||
in-search collapse, preprocess, merge — so the numbers match a real eval.
|
||||
"""
|
||||
tree = copy.deepcopy(root)
|
||||
geometry.clear_cache()
|
||||
dom_mod.canonicalize_shares(tree)
|
||||
if fit._collapse_insearch:
|
||||
fit.collapse_global(tree, adjacency=True, objective="threshold",
|
||||
preserve_public_access=True, iters=3)
|
||||
fit.preprocess_building(tree)
|
||||
dom_mod.merge_divided(tree)
|
||||
geometry.clear_cache()
|
||||
graphs = graph_mod.build_graphs(tree, fit.conf("door_width") or 1.2)
|
||||
|
||||
rows = []
|
||||
for li, lvl in enumerate(dom_mod.levels(tree)):
|
||||
for leaf in lvl.leaves():
|
||||
if dom_mod.is_outside(leaf) and not dom_mod.is_covered(leaf):
|
||||
continue # exempt by quality_uncrinkliness
|
||||
rows.append((li, leaf.id, leaf.type, geometry.area(leaf),
|
||||
fit.area_outside(leaf, graphs[li], {}),
|
||||
fit.quality_uncrinkliness(leaf, graphs[li], {})))
|
||||
return rows
|
||||
|
||||
|
||||
def report_exposure(progdir: str, seeds: range, dom_path: str | None) -> None:
|
||||
fit = _fit(progdir)
|
||||
roots = ([dom_mod.load(dom_path)] if dom_path
|
||||
else [_seed(progdir, s) for s in seeds])
|
||||
ok = zero = ratio = 0
|
||||
n_fails = n_crink = 0
|
||||
for root in roots:
|
||||
_, fails = fit.score_with_fails(copy.deepcopy(root))
|
||||
n_fails += len(fails)
|
||||
n_crink += sum("crinkliness" in f for f in fails)
|
||||
for _, _, _, _, exposed, q in _exposure_rows(fit, root):
|
||||
if exposed == 0:
|
||||
zero += 1
|
||||
elif q < fitness.FAIL_THRESHOLD:
|
||||
ratio += 1
|
||||
else:
|
||||
ok += 1
|
||||
total = ok + zero + ratio
|
||||
label = dom_path or f"{len(roots)} constructed seeds"
|
||||
print(f"=== {progdir} ({label})")
|
||||
print(f" mean fails/design {n_fails / len(roots):.1f}, of which crinkliness "
|
||||
f"{n_crink / len(roots):.1f}")
|
||||
print(f" interior leaves: ok={ok} ZERO-EXPOSURE={zero} wrong-ratio={ratio}")
|
||||
if total:
|
||||
print(f" -> {100 * zero / total:.0f}% of interior leaves have NO daylit wall: "
|
||||
f"hard quality=0, unreachable by any ratio assignment")
|
||||
|
||||
|
||||
def report_value(progdir: str, seed: int, limit: int) -> None:
|
||||
"""What is a buried leaf worth? Delete one and re-score."""
|
||||
fit = _fit(progdir)
|
||||
root = _seed(progdir, seed)
|
||||
base_score, base_fails = fit.score_with_fails(copy.deepcopy(root))
|
||||
print(f"=== {progdir} seed {seed}: baseline score {base_score:.4g}, "
|
||||
f"{len(base_fails)} fails")
|
||||
|
||||
buried = [(li, lid, typ) for li, lid, typ, _, exposed, _
|
||||
in _exposure_rows(fit, root) if exposed == 0]
|
||||
print(f" {len(buried)} buried leaves; deleting each (undivide its parent):")
|
||||
|
||||
tried = 0
|
||||
for li, lid, typ in buried:
|
||||
if tried >= limit:
|
||||
break
|
||||
cand = copy.deepcopy(root)
|
||||
lvls = dom_mod.levels(cand)
|
||||
if li >= len(lvls):
|
||||
continue
|
||||
node = lvls[li].by_id(lid)
|
||||
if node is None or node.parent is None:
|
||||
continue
|
||||
parent = node.parent
|
||||
if parent.below is not None and parent.below.divided:
|
||||
continue # inherited cut, not owned here
|
||||
sibling = parent.right if parent.left is node else parent.left
|
||||
if sibling is None or sibling.divided:
|
||||
continue
|
||||
parent.division = None
|
||||
parent.left = parent.right = None
|
||||
parent.type = sibling.type
|
||||
dom_mod.link(cand)
|
||||
geometry.clear_cache()
|
||||
score, fails = fit.score_with_fails(copy.deepcopy(cand))
|
||||
tried += 1
|
||||
verdict = "BETTER" if score > base_score else "worse"
|
||||
print(f" delete {lid:<8s} type={typ:<5s}: score x{score / base_score:>8.2f} "
|
||||
f"({verdict}), fails {len(base_fails)} -> {len(fails)}")
|
||||
|
||||
|
||||
def frontage_budget(progdir: str) -> dict:
|
||||
"""Feasibility of a programme on its plot, before any search runs.
|
||||
|
||||
Two independent checks, in the order they bite:
|
||||
|
||||
1. **Does the programme fit the plot at all?** ``demand / storeys`` against
|
||||
the plot area. health-centre asks for 240 m² on a 183 m² plot — 131% —
|
||||
and every room comes out at 0.60x its target no matter what the search
|
||||
does.
|
||||
2. **Is there enough daylit wall for the area it does demand?** Every
|
||||
interior leaf needs ``L >= A/(X*h)`` (§38.3), so a storey building
|
||||
``A_built`` needs ``A_built/(X*h)`` metres. The plot's non-``private``
|
||||
perimeter supplies some; interior courtyard supplies the rest, at roughly
|
||||
``2 * area / width`` metres per courtyard slot.
|
||||
|
||||
NB this must be computed against the area the programme actually DEMANDS,
|
||||
not a fully built plot — see §39.11 for the correction.
|
||||
"""
|
||||
root = dom_mod.load(f"{progdir}/init.dom")
|
||||
per = root.perimeter or {}
|
||||
height = root.height or 3.0
|
||||
# measured exactly as `Fitness.area_outside` does: an external boundary is
|
||||
# daylit unless its perimeter type is `private` or `fortified`. Going
|
||||
# through `geometry` rather than the raw YAML corners also picks up the
|
||||
# `wall_outer` inset and the plot rotation, so these are the metres and the
|
||||
# square metres the leaves actually get.
|
||||
daylit = sum(geometry.edge_length(root, e) for e in range(4)
|
||||
if (per.get(geometry.boundary_id(root, e)) or "").lower()
|
||||
not in ("private", "fortified"))
|
||||
plot = geometry.area(root)
|
||||
reqs = programme.load_programme_dir(progdir)
|
||||
storeys = max(programme.n_storeys_required(reqs),
|
||||
programme.storey_minimum(progdir))
|
||||
demand = sum(r.size * r.count for r in reqs.values())
|
||||
built = demand / storeys
|
||||
x_buried, _ = fail_bounds()
|
||||
needed = built / (x_buried * height)
|
||||
gap = needed - daylit
|
||||
court = max(0.0, gap) * 3.0 / 2.0 # 3 m courtyard slots
|
||||
spare = plot - built
|
||||
return dict(plot=plot, daylit=daylit, height=height, storeys=storeys,
|
||||
demand=demand, built=built, needed=needed, gap=gap,
|
||||
court=court, spare=spare,
|
||||
fits_plot=built <= plot,
|
||||
frontage_ok=court <= spare)
|
||||
|
||||
|
||||
def report_frontage(progdirs: list[str]) -> None:
|
||||
x_buried, x_exposed = fail_bounds()
|
||||
print(f"crinkliness fails when 1/crink > {x_buried:.4f} (buried) "
|
||||
f"or < {x_exposed:.4f} (over-exposed)")
|
||||
print(f"=> every interior leaf needs exposed wall L >= A / ({x_buried:.4f} * h)\n")
|
||||
|
||||
for progdir in progdirs:
|
||||
b = frontage_budget(progdir)
|
||||
print(f"=== {Path(progdir).name}")
|
||||
print(f" plot {b['plot']:.0f} m2, daylit perimeter {b['daylit']:.0f} m, "
|
||||
f"{b['storeys']} storeys, h={b['height']:g}")
|
||||
pct = 100 * b["built"] / b["plot"]
|
||||
verdict = "OK" if b["fits_plot"] else "DOES NOT FIT THE PLOT"
|
||||
print(f" 1. programme demands {b['demand']:.0f} m2 -> {b['built']:.0f} m2 "
|
||||
f"per storey = {pct:.0f}% of the plot [{verdict}]")
|
||||
print(f" 2. that needs {b['needed']:.0f} m of daylit wall; perimeter gives "
|
||||
f"{b['daylit']:.0f} m -> gap {b['gap']:+.0f} m")
|
||||
if b["gap"] > 0:
|
||||
print(f" closing it takes ~{b['court']:.0f} m2 of 3 m courtyard; "
|
||||
f"spare plot {b['spare']:.0f} m2 "
|
||||
f"[{'OK' if b['frontage_ok'] else 'NOT ENOUGH ROOM'}]")
|
||||
else:
|
||||
print(" perimeter alone is sufficient")
|
||||
print()
|
||||
|
||||
|
||||
def main() -> None:
|
||||
ap = argparse.ArgumentParser(description=__doc__,
|
||||
formatter_class=argparse.RawDescriptionHelpFormatter)
|
||||
ap.add_argument("report", choices=("exposure", "value", "frontage"))
|
||||
ap.add_argument("progdir", nargs="?", default=None)
|
||||
ap.add_argument("--dom", default=None, help="score this .dom instead of seeds")
|
||||
ap.add_argument("--seeds", type=int, default=3)
|
||||
ap.add_argument("--limit", type=int, default=5, help="deletions to try (value)")
|
||||
args = ap.parse_args()
|
||||
|
||||
if args.report == "frontage":
|
||||
report_frontage([args.progdir] if args.progdir else CORPUS)
|
||||
elif args.report == "exposure":
|
||||
for d in ([args.progdir] if args.progdir else CORPUS):
|
||||
report_exposure(d, range(args.seeds), args.dom)
|
||||
else:
|
||||
report_value(args.progdir or CORPUS[0], seed=0, limit=args.limit)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
@ -105,7 +105,7 @@ def _measure(fit, pdir, seed_root, reqs, types, s, sharing, factor):
|
|||
after_tree = copy.deepcopy(topo)
|
||||
with _force_sharing(sharing):
|
||||
innerloop.optimise(after_tree, str(pdir), x0=None, budget=BUDGET,
|
||||
method="nm", use_native=True)
|
||||
method="nm")
|
||||
_s2, fails2 = fit.score_with_fails(copy.deepcopy(after_tree))
|
||||
after = {"n_leaves": n_leaves, "total": len(fails2), **_bucket(fails2)}
|
||||
return before, after
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue