Laplace, optimizer and schedule¶
One perturbed input, a curved block with its boundary frozen, smoothed three ways: Laplace, the optimizer and the schedule suggest_schedule proposes.
Key points¶
Laplace is the cheap one: 9x faster than the optimizer here; it lifts the minimum scaled Jacobian from 0.29 to 0.94 but leaves F/hex at 0.469.
The optimizer reaches the lowest objective: F/hex 0.439, minimum scaled Jacobian 0.98.
The suggested schedule matches the optimizer (F/hex 0.4385 against 0.4385) in 22 stages: its value is robustness on harder starts, not a better optimum.
The optimum is not all cubes: on a curved sector the objective stays above zero (F/hex 0.439), which is why the methods can be told apart.
The numbers¶
method |
inverted |
min SJ |
mean SJ |
worst 5 % SJ |
F/hex |
time (s) |
|---|---|---|---|---|---|---|
input |
0 |
0.2856 |
0.7754 |
0.5496 |
0.9317 |
— |
Laplace |
0 |
0.9372 |
0.9773 |
0.9553 |
0.4692 |
0.02 |
optimizer |
0 |
0.9802 |
0.9894 |
0.9821 |
0.4385 |
0.16 |
schedule |
0 |
0.9802 |
0.9893 |
0.9821 |
0.4385 |
0.50 |
Bold: the best value in each column among the results (highest scaled Jacobian; lowest count, objective, time, change or distance); the input row is for reference.
Times: a laptop, running serial.
Run python examples/smoother/hex/01_methods.py to reproduce; it prints these numbers.