2.1. Biased initial samples#

This example walks through correcting a biased set of initial samples to recover the true posterior using Aspire’s flow-based samplers.

Set up the environment#

Import the core scientific stack along with Aspire utilities for logging, plotting, and handling sample collections.

import matplotlib.pyplot as plt
import numpy as np
from pathlib import Path
from scipy.stats import norm, uniform, expon

from aspire import Aspire
from aspire.samples import Samples
from aspire.utils import configure_logger, AspireFile
from aspire.plot import plot_comparison

# Configure the logger
configure_logger("INFO")
<Logger aspire (INFO)>

Configure output paths#

Create a reproducible random number generator and ensure the directory used to store figures and results exists.

outdir = Path("outdir") / "biased_example"
outdir.mkdir(parents=True, exist_ok=True)

rng = np.random.default_rng(42)

Describe the target distribution#

Specify the one-dimensional marginals that define our four-dimensional target and wrap them in likelihood and prior helper functions consumed by Aspire.

dists = [
    norm(loc=6, scale=0.2),
    expon(scale=1),
    norm(loc=5, scale=1),
    uniform(loc=-10, scale=20),
]

prior_bounds = [
    (-10, 10),
    (0, 10),
    (-10, 10),
    (-10, 10),
]
dims = len(dists)
parameters = [f"x_{i}" for i in range(dims)]


def log_likelihood(samples: Samples):
    x = samples.x
    log_prob = np.zeros(x.shape[0])
    for i, dist in enumerate(dists):
        log_prob += dist.logpdf(x[:, i])
    return log_prob


def log_prior(samples: Samples):
    log_prob = np.zeros(samples.x.shape[0])
    for i, bounds in enumerate(prior_bounds):
        log_prob += uniform(bounds[0], bounds[1] - bounds[0]).logpdf(samples.x[:, i])
    return log_prob

Draw biased initial samples#

Generate intentionally biased proposal samples alongside reference draws from the true distribution, then instantiate the Aspire object that will learn a correcting flow.

n_init = 1_000

x_initial = np.concatenate([
    rng.normal(loc=2, scale=1, size=(n_init, 1)),
    rng.exponential(scale=1, size=(n_init, 1)),
    rng.normal(loc=0, scale=1, size=(n_init, 1)),
    # rng.uniform(low=-10, high=10, size=(n_init, 1)),
    rng.uniform(low=-10, high=10, size=(n_init, 1)),
], axis=1)

x_true = np.concatenate([
    dist.rvs(size=(n_init, 1), random_state=rng) for dist in dists
], axis=1)

dims = x_initial.shape[1]
parameters = [f"x_{i}" for i in range(dims)]
initial_samples = Samples(
    x=x_initial,
    parameters=parameters,
)
true_samples = Samples(
    x=x_true,
    parameters=parameters,
)
# Define the parameters and prior bounds
prior_bounds_dict = {p: b for p, b in zip(parameters, prior_bounds)}

# Define the aspire object
poppy = Aspire(
    log_likelihood=log_likelihood,
    log_prior=log_prior,
    dims=dims,
    parameters=parameters,
    prior_bounds=prior_bounds_dict,
    flow_matching=False,
    flow_backend="zuko",
    bounded_to_unbounded=True,
    hidden_features=[32, 32],
    device="cpu",
)

Train the flow model#

Fit the normalizing flow to the initial samples and monitor optimisation via the loss curve.

# Fit the flow to the initial samples
history = poppy.fit(
    initial_samples,
    n_epochs=100,
    lr_annealing=True,
    batch_size=256,
)
# Plot the loss
fig = history.plot_loss()
fig.savefig(outdir / "loss.png")
plt.show()
2025-11-05 18:38:25,574 - aspire - INFO - Prior bounds: {'x_0': (-10, 10), 'x_1': (0, 10), 'x_2': (-10, 10), 'x_3': (-10, 10)}
2025-11-05 18:38:25,576 - aspire - INFO - Bounded parameters: ['x_0', 'x_1', 'x_2', 'x_3']
2025-11-05 18:38:25,577 - aspire - INFO - Affine transform applied to: ['x_0', 'x_1', 'x_2', 'x_3']
2025-11-05 18:38:25,577 - aspire - INFO - Configuring <class 'aspire.flows.torch.flows.ZukoFlow'> with kwargs: {'hidden_features': [32, 32]}
2025-11-05 18:38:27,176 - aspire - INFO - Initialized normalizing flow: 
 MAF(
  (transform): LazyComposedTransform(
    (0): MaskedAutoregressiveTransform(
      (base): MonotonicAffineTransform()
      (order): [0, 1, 2, 3]
      (hyper): MaskedMLP(
        (0): MaskedLinear(in_features=4, out_features=32, bias=True)
        (1): ReLU()
        (2): MaskedLinear(in_features=32, out_features=32, bias=True)
        (3): ReLU()
        (4): MaskedLinear(in_features=32, out_features=8, bias=True)
      )
    )
    (1): MaskedAutoregressiveTransform(
      (base): MonotonicAffineTransform()
      (order): [3, 2, 1, 0]
      (hyper): MaskedMLP(
        (0): MaskedLinear(in_features=4, out_features=32, bias=True)
        (1): ReLU()
        (2): MaskedLinear(in_features=32, out_features=32, bias=True)
        (3): ReLU()
        (4): MaskedLinear(in_features=32, out_features=8, bias=True)
      )
    )
    (2): MaskedAutoregressiveTransform(
      (base): MonotonicAffineTransform()
      (order): [0, 1, 2, 3]
      (hyper): MaskedMLP(
        (0): MaskedLinear(in_features=4, out_features=32, bias=True)
        (1): ReLU()
        (2): MaskedLinear(in_features=32, out_features=32, bias=True)
        (3): ReLU()
        (4): MaskedLinear(in_features=32, out_features=8, bias=True)
      )
    )
  )
  (base): UnconditionalDistribution(DiagNormal(loc: torch.Size([4]), scale: torch.Size([4])))
)
2025-11-05 18:38:27,177 - aspire - INFO - Training with 1000 samples
2025-11-05 18:38:27,179 - aspire - INFO - Training on 800 samples, validating on 200 samples.
Epochs:   0%|          | 0/100 [00:00<?, ?it/s]
Epochs:   0%|          | 0/100 [00:00<?, ?it/s, train_loss=5.7682, val_loss=5.8224]
Epochs:   1%|          | 1/100 [00:00<01:10,  1.40it/s, train_loss=5.7682, val_loss=5.8224]
Epochs:   1%|          | 1/100 [00:00<01:10,  1.40it/s, train_loss=5.7515, val_loss=5.7682]
Epochs:   1%|          | 1/100 [00:00<01:10,  1.40it/s, train_loss=5.7143, val_loss=5.7317]
Epochs:   1%|          | 1/100 [00:00<01:10,  1.40it/s, train_loss=5.7225, val_loss=5.7095]
Epochs:   1%|          | 1/100 [00:00<01:10,  1.40it/s, train_loss=5.7302, val_loss=5.6977]
Epochs:   1%|          | 1/100 [00:00<01:10,  1.40it/s, train_loss=5.6941, val_loss=5.6948]
Epochs:   1%|          | 1/100 [00:00<01:10,  1.40it/s, train_loss=5.6558, val_loss=5.6969]
Epochs:   7%|▋         | 7/100 [00:00<00:08, 11.17it/s, train_loss=5.6558, val_loss=5.6969]
Epochs:   7%|▋         | 7/100 [00:00<00:08, 11.17it/s, train_loss=5.7342, val_loss=5.7007]
Epochs:   7%|▋         | 7/100 [00:00<00:08, 11.17it/s, train_loss=5.7078, val_loss=5.7022]
Epochs:   7%|▋         | 7/100 [00:00<00:08, 11.17it/s, train_loss=5.7519, val_loss=5.7030]
Epochs:   7%|▋         | 7/100 [00:00<00:08, 11.17it/s, train_loss=5.6347, val_loss=5.7020]
Epochs:   7%|▋         | 7/100 [00:00<00:08, 11.17it/s, train_loss=5.7032, val_loss=5.7021]
Epochs:   7%|▋         | 7/100 [00:00<00:08, 11.17it/s, train_loss=5.5172, val_loss=5.7019]
Epochs:   7%|▋         | 7/100 [00:00<00:08, 11.17it/s, train_loss=5.6615, val_loss=5.7026]
Epochs:  14%|█▍        | 14/100 [00:00<00:03, 22.11it/s, train_loss=5.6615, val_loss=5.7026]
Epochs:  14%|█▍        | 14/100 [00:00<00:03, 22.11it/s, train_loss=5.6178, val_loss=5.7065]
Epochs:  14%|█▍        | 14/100 [00:00<00:03, 22.11it/s, train_loss=5.8328, val_loss=5.7099]
Epochs:  14%|█▍        | 14/100 [00:00<00:03, 22.11it/s, train_loss=5.6534, val_loss=5.7151]
Epochs:  14%|█▍        | 14/100 [00:00<00:03, 22.11it/s, train_loss=5.6888, val_loss=5.7189]
Epochs:  14%|█▍        | 14/100 [00:01<00:03, 22.11it/s, train_loss=5.6999, val_loss=5.7215]
Epochs:  14%|█▍        | 14/100 [00:01<00:03, 22.11it/s, train_loss=5.7227, val_loss=5.7238]
Epochs:  14%|█▍        | 14/100 [00:01<00:03, 22.11it/s, train_loss=5.6617, val_loss=5.7258]
Epochs:  21%|██        | 21/100 [00:01<00:02, 31.59it/s, train_loss=5.6617, val_loss=5.7258]
Epochs:  21%|██        | 21/100 [00:01<00:02, 31.59it/s, train_loss=5.6256, val_loss=5.7259]
Epochs:  21%|██        | 21/100 [00:01<00:02, 31.59it/s, train_loss=5.5353, val_loss=5.7276]
Epochs:  21%|██        | 21/100 [00:01<00:02, 31.59it/s, train_loss=5.5656, val_loss=5.7282]
Epochs:  21%|██        | 21/100 [00:01<00:02, 31.59it/s, train_loss=5.6148, val_loss=5.7273]
Epochs:  21%|██        | 21/100 [00:01<00:02, 31.59it/s, train_loss=5.6193, val_loss=5.7261]
Epochs:  21%|██        | 21/100 [00:01<00:02, 31.59it/s, train_loss=5.5485, val_loss=5.7265]
Epochs:  21%|██        | 21/100 [00:01<00:02, 31.59it/s, train_loss=5.6399, val_loss=5.7260]
Epochs:  28%|██▊       | 28/100 [00:01<00:01, 39.58it/s, train_loss=5.6399, val_loss=5.7260]
Epochs:  28%|██▊       | 28/100 [00:01<00:01, 39.58it/s, train_loss=5.6048, val_loss=5.7257]
Epochs:  28%|██▊       | 28/100 [00:01<00:01, 39.58it/s, train_loss=5.6074, val_loss=5.7256]
Epochs:  28%|██▊       | 28/100 [00:01<00:01, 39.58it/s, train_loss=5.7287, val_loss=5.7247]
Epochs:  28%|██▊       | 28/100 [00:01<00:01, 39.58it/s, train_loss=5.5905, val_loss=5.7272]
Epochs:  28%|██▊       | 28/100 [00:01<00:01, 39.58it/s, train_loss=5.6615, val_loss=5.7289]
Epochs:  28%|██▊       | 28/100 [00:01<00:01, 39.58it/s, train_loss=5.6233, val_loss=5.7312]
Epochs:  28%|██▊       | 28/100 [00:01<00:01, 39.58it/s, train_loss=5.6513, val_loss=5.7336]
Epochs:  35%|███▌      | 35/100 [00:01<00:01, 45.46it/s, train_loss=5.6513, val_loss=5.7336]
Epochs:  35%|███▌      | 35/100 [00:01<00:01, 45.46it/s, train_loss=5.6302, val_loss=5.7363]
Epochs:  35%|███▌      | 35/100 [00:01<00:01, 45.46it/s, train_loss=5.6900, val_loss=5.7370]
Epochs:  35%|███▌      | 35/100 [00:01<00:01, 45.46it/s, train_loss=5.6180, val_loss=5.7363]
Epochs:  35%|███▌      | 35/100 [00:01<00:01, 45.46it/s, train_loss=5.8270, val_loss=5.7345]
Epochs:  35%|███▌      | 35/100 [00:01<00:01, 45.46it/s, train_loss=5.6799, val_loss=5.7267]
Epochs:  35%|███▌      | 35/100 [00:01<00:01, 45.46it/s, train_loss=5.7152, val_loss=5.7193]
Epochs:  35%|███▌      | 35/100 [00:01<00:01, 45.46it/s, train_loss=5.6854, val_loss=5.7122]
Epochs:  42%|████▏     | 42/100 [00:01<00:01, 50.28it/s, train_loss=5.6854, val_loss=5.7122]
Epochs:  42%|████▏     | 42/100 [00:01<00:01, 50.28it/s, train_loss=5.6053, val_loss=5.7093]
Epochs:  42%|████▏     | 42/100 [00:01<00:01, 50.28it/s, train_loss=5.7100, val_loss=5.7096]
Epochs:  42%|████▏     | 42/100 [00:01<00:01, 50.28it/s, train_loss=5.6404, val_loss=5.7118]
Epochs:  42%|████▏     | 42/100 [00:01<00:01, 50.28it/s, train_loss=5.5505, val_loss=5.7148]
Epochs:  42%|████▏     | 42/100 [00:01<00:01, 50.28it/s, train_loss=5.6185, val_loss=5.7163]
Epochs:  42%|████▏     | 42/100 [00:01<00:01, 50.28it/s, train_loss=5.6490, val_loss=5.7185]
Epochs:  42%|████▏     | 42/100 [00:01<00:01, 50.28it/s, train_loss=5.6641, val_loss=5.7202]
Epochs:  49%|████▉     | 49/100 [00:01<00:00, 53.78it/s, train_loss=5.6641, val_loss=5.7202]
Epochs:  49%|████▉     | 49/100 [00:01<00:00, 53.78it/s, train_loss=5.5823, val_loss=5.7219]
Epochs:  49%|████▉     | 49/100 [00:01<00:00, 53.78it/s, train_loss=5.6293, val_loss=5.7229]
Epochs:  49%|████▉     | 49/100 [00:01<00:00, 53.78it/s, train_loss=5.6556, val_loss=5.7242]
Epochs:  49%|████▉     | 49/100 [00:01<00:00, 53.78it/s, train_loss=5.6549, val_loss=5.7252]
Epochs:  49%|████▉     | 49/100 [00:01<00:00, 53.78it/s, train_loss=5.7120, val_loss=5.7252]
Epochs:  49%|████▉     | 49/100 [00:01<00:00, 53.78it/s, train_loss=5.7036, val_loss=5.7245]
Epochs:  49%|████▉     | 49/100 [00:01<00:00, 53.78it/s, train_loss=5.6222, val_loss=5.7237]
Epochs:  56%|█████▌    | 56/100 [00:01<00:00, 56.27it/s, train_loss=5.6222, val_loss=5.7237]
Epochs:  56%|█████▌    | 56/100 [00:01<00:00, 56.27it/s, train_loss=5.6231, val_loss=5.7244]
Epochs:  56%|█████▌    | 56/100 [00:01<00:00, 56.27it/s, train_loss=5.6054, val_loss=5.7250]
Epochs:  56%|█████▌    | 56/100 [00:01<00:00, 56.27it/s, train_loss=5.6501, val_loss=5.7252]
Epochs:  56%|█████▌    | 56/100 [00:01<00:00, 56.27it/s, train_loss=5.6928, val_loss=5.7264]
Epochs:  56%|█████▌    | 56/100 [00:01<00:00, 56.27it/s, train_loss=5.6276, val_loss=5.7284]
Epochs:  56%|█████▌    | 56/100 [00:01<00:00, 56.27it/s, train_loss=5.7687, val_loss=5.7308]
Epochs:  56%|█████▌    | 56/100 [00:01<00:00, 56.27it/s, train_loss=5.6259, val_loss=5.7336]
Epochs:  63%|██████▎   | 63/100 [00:01<00:00, 57.80it/s, train_loss=5.6259, val_loss=5.7336]
Epochs:  63%|██████▎   | 63/100 [00:01<00:00, 57.80it/s, train_loss=5.6128, val_loss=5.7348]
Epochs:  63%|██████▎   | 63/100 [00:01<00:00, 57.80it/s, train_loss=5.5893, val_loss=5.7355]
Epochs:  63%|██████▎   | 63/100 [00:01<00:00, 57.80it/s, train_loss=5.5853, val_loss=5.7359]
Epochs:  63%|██████▎   | 63/100 [00:01<00:00, 57.80it/s, train_loss=5.5594, val_loss=5.7359]
Epochs:  63%|██████▎   | 63/100 [00:01<00:00, 57.80it/s, train_loss=5.5864, val_loss=5.7356]
Epochs:  63%|██████▎   | 63/100 [00:01<00:00, 57.80it/s, train_loss=5.6392, val_loss=5.7356]
Epochs:  63%|██████▎   | 63/100 [00:01<00:00, 57.80it/s, train_loss=5.6543, val_loss=5.7354]
Epochs:  70%|███████   | 70/100 [00:01<00:00, 59.56it/s, train_loss=5.6543, val_loss=5.7354]
Epochs:  70%|███████   | 70/100 [00:01<00:00, 59.56it/s, train_loss=5.6040, val_loss=5.7351]
Epochs:  70%|███████   | 70/100 [00:01<00:00, 59.56it/s, train_loss=5.6251, val_loss=5.7350]
Epochs:  70%|███████   | 70/100 [00:01<00:00, 59.56it/s, train_loss=5.6127, val_loss=5.7347]
Epochs:  70%|███████   | 70/100 [00:01<00:00, 59.56it/s, train_loss=5.5837, val_loss=5.7347]
Epochs:  70%|███████   | 70/100 [00:01<00:00, 59.56it/s, train_loss=5.6374, val_loss=5.7347]
Epochs:  70%|███████   | 70/100 [00:01<00:00, 59.56it/s, train_loss=5.6903, val_loss=5.7344]
Epochs:  70%|███████   | 70/100 [00:01<00:00, 59.56it/s, train_loss=5.6071, val_loss=5.7339]
Epochs:  77%|███████▋  | 77/100 [00:01<00:00, 60.43it/s, train_loss=5.6071, val_loss=5.7339]
Epochs:  77%|███████▋  | 77/100 [00:01<00:00, 60.43it/s, train_loss=5.6556, val_loss=5.7336]
Epochs:  77%|███████▋  | 77/100 [00:01<00:00, 60.43it/s, train_loss=5.6180, val_loss=5.7336]
Epochs:  77%|███████▋  | 77/100 [00:01<00:00, 60.43it/s, train_loss=5.6250, val_loss=5.7338]
Epochs:  77%|███████▋  | 77/100 [00:01<00:00, 60.43it/s, train_loss=5.7097, val_loss=5.7339]
Epochs:  77%|███████▋  | 77/100 [00:02<00:00, 60.43it/s, train_loss=5.6440, val_loss=5.7338]
Epochs:  77%|███████▋  | 77/100 [00:02<00:00, 60.43it/s, train_loss=5.5217, val_loss=5.7338]
Epochs:  77%|███████▋  | 77/100 [00:02<00:00, 60.43it/s, train_loss=5.6750, val_loss=5.7337]
Epochs:  84%|████████▍ | 84/100 [00:02<00:00, 61.40it/s, train_loss=5.6750, val_loss=5.7337]
Epochs:  84%|████████▍ | 84/100 [00:02<00:00, 61.40it/s, train_loss=5.6321, val_loss=5.7334]
Epochs:  84%|████████▍ | 84/100 [00:02<00:00, 61.40it/s, train_loss=5.6664, val_loss=5.7331]
Epochs:  84%|████████▍ | 84/100 [00:02<00:00, 61.40it/s, train_loss=5.6000, val_loss=5.7328]
Epochs:  84%|████████▍ | 84/100 [00:02<00:00, 61.40it/s, train_loss=5.5550, val_loss=5.7325]
Epochs:  84%|████████▍ | 84/100 [00:02<00:00, 61.40it/s, train_loss=5.5503, val_loss=5.7324]
Epochs:  84%|████████▍ | 84/100 [00:02<00:00, 61.40it/s, train_loss=5.6301, val_loss=5.7323]
Epochs:  84%|████████▍ | 84/100 [00:02<00:00, 61.40it/s, train_loss=5.5384, val_loss=5.7322]
Epochs:  91%|█████████ | 91/100 [00:02<00:00, 62.03it/s, train_loss=5.5384, val_loss=5.7322]
Epochs:  91%|█████████ | 91/100 [00:02<00:00, 62.03it/s, train_loss=5.6442, val_loss=5.7321]
Epochs:  91%|█████████ | 91/100 [00:02<00:00, 62.03it/s, train_loss=5.5608, val_loss=5.7321]
Epochs:  91%|█████████ | 91/100 [00:02<00:00, 62.03it/s, train_loss=5.6623, val_loss=5.7321]
Epochs:  91%|█████████ | 91/100 [00:02<00:00, 62.03it/s, train_loss=5.6358, val_loss=5.7321]
Epochs:  91%|█████████ | 91/100 [00:02<00:00, 62.03it/s, train_loss=5.6161, val_loss=5.7321]
Epochs:  91%|█████████ | 91/100 [00:02<00:00, 62.03it/s, train_loss=5.5040, val_loss=5.7321]
Epochs:  91%|█████████ | 91/100 [00:02<00:00, 62.03it/s, train_loss=5.6070, val_loss=5.7321]
Epochs:  98%|█████████▊| 98/100 [00:02<00:00, 62.68it/s, train_loss=5.6070, val_loss=5.7321]
Epochs:  98%|█████████▊| 98/100 [00:02<00:00, 62.68it/s, train_loss=5.6648, val_loss=5.7321]
Epochs:  98%|█████████▊| 98/100 [00:02<00:00, 62.68it/s, train_loss=5.5725, val_loss=5.7321]
Epochs: 100%|██████████| 100/100 [00:02<00:00, 43.67it/s, train_loss=5.5725, val_loss=5.7321]
2025-11-05 18:38:29,474 - aspire - INFO - Loaded best model with val loss 5.6948
../_images/8eb66e99679c2b3596a8b66c449585ff21e766f5c949411bd89c41c82d7a79c5.png

Compare flow-based importance samples#

Use the trained flow to generate new samples, and visualise how they compare to the original biased set and the ground truth.

is_samples = poppy.sample_posterior(10_000)


fig = plot_comparison(
    initial_samples,
    true_samples,
    is_samples,
    is_samples,
    per_samples_kwargs=[
        dict(include_weights=True, color="C0"),
        dict(include_weights=False, color="k"),
        dict(include_weights=False, color="lightgrey"),
        dict(include_weights=True, color="C1"),
    ],
    labels=["Initial samples", "True samples", "Flow samples", "IS samples"],
)
fig.savefig(outdir / "initial_samples.png")
plt.show()
2025-11-05 18:38:29,617 - aspire - INFO - Sampled 10000 samples from the posterior
2025-11-05 18:38:29,618 - aspire - INFO - Number of likelihood evaluations: 10000
2025-11-05 18:38:29,618 - aspire - INFO - Sample summary:
2025-11-05 18:38:29,619 - aspire - INFO - No. samples: 10000
No. parameters: 4
Log evidence: -27.71 +/- 0.86
Effective sample size: 1.3
Efficiency: 0.00
WARNING:root:Too few points to create valid contours
../_images/e50c5094bedd80578cd777544f3c5692f05b0710900036a411d85efbc9affece.png ../_images/2954b68e19a353349c8a37de3c7ece37b11667d8bb8375e8197b87cd508ffcae.png ../_images/b7b21d1cd94fe0a1029181781f90f5d18ba18bb1d1d61c18386dfff155dc72a0.png ../_images/c5ca81b4483565ee6f4d3e46d388f11a8651eb9b6013342d57c5ab408db5afd8.png

Refine with sequential Monte Carlo#

Run Aspire’s SMC sampler to further correct the proposal and inspect the particle evolution.

# Produce samples from the posterior
samples, smc_history = poppy.sample_posterior(
    1000,
    sampler="smc",
    return_history=True,
    n_final_samples=5000,
    sampler_kwargs=dict(
        n_steps=32,
    ),
)

fig = smc_history.plot()
fig.savefig(outdir / "history.png")
2025-11-05 18:38:31,653 - aspire - INFO - Prior bounds: {'x_0': (-10, 10), 'x_1': (0, 10), 'x_2': (-10, 10), 'x_3': (-10, 10)}
INFO:aspire.transforms:Prior bounds: {'x_0': (-10, 10), 'x_1': (0, 10), 'x_2': (-10, 10), 'x_3': (-10, 10)}
2025-11-05 18:38:31,654 - aspire - INFO - Prior bounds: {'x_0': array([-10,  10]), 'x_1': array([ 0, 10]), 'x_2': array([-10,  10]), 'x_3': array([-10,  10])}
INFO:aspire.transforms:Prior bounds: {'x_0': array([-10,  10]), 'x_1': array([ 0, 10]), 'x_2': array([-10,  10]), 'x_3': array([-10,  10])}
2025-11-05 18:38:31,655 - aspire - INFO - Affine transform applied to: ['x_0', 'x_1', 'x_2', 'x_3']
INFO:aspire.transforms:Affine transform applied to: ['x_0', 'x_1', 'x_2', 'x_3']
2025-11-05 18:38:31,667 - aspire - INFO - it 1 - beta: 0.0118408203125
INFO:aspire.samplers.smc.base:it 1 - beta: 0.0118408203125
2025-11-05 18:38:31,669 - aspire - INFO - it 1 - ESS: 500.3 (0.50 efficiency)
INFO:aspire.samplers.smc.base:it 1 - ESS: 500.3 (0.50 efficiency)
2025-11-05 18:38:31,670 - aspire - INFO - it 1 - Log evidence ratio: -2.27 +/- 0.03
INFO:aspire.samplers.smc.base:it 1 - Log evidence ratio: -2.27 +/- 0.03
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.523, rho=0.789]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.398, rho=0.887]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.379, rho=0.95] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.356, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.348, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.365, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.352, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.362, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.335, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.356, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.337, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.344, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.355, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.369, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.351, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.374, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.358, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.358, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.341, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.358, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.338, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.353, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.378, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.346, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.364, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.362, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.363, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.348, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.391, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.379, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.36, rho=0.99] 
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.343, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.09step/s, acceptance_rate=0.348, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 166.85step/s, acceptance_rate=0.348, rho=0.99]
2025-11-05 18:38:32,421 - aspire - INFO - it 2 - beta: 0.03033412527292967
INFO:aspire.samplers.smc.base:it 2 - beta: 0.03033412527292967
2025-11-05 18:38:32,422 - aspire - INFO - it 2 - ESS: 500.1 (0.50 efficiency)
INFO:aspire.samplers.smc.base:it 2 - ESS: 500.1 (0.50 efficiency)
2025-11-05 18:38:32,423 - aspire - INFO - it 2 - Log evidence ratio: -2.25 +/- 0.03
INFO:aspire.samplers.smc.base:it 2 - Log evidence ratio: -2.25 +/- 0.03
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.509, rho=0.775]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.429, rho=0.891]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.398, rho=0.963]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.407, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.373, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.379, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.347, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.371, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.362, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.36, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.378, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.391, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.388, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.382, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.388, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.355, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.363, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.363, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.397, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.362, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.351, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.347, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.327, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.354, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.372, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.36, rho=0.99] 
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.373, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.379, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.377, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.371, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.366, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.359, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 168.80step/s, acceptance_rate=0.363, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 165.96step/s, acceptance_rate=0.363, rho=0.99]
2025-11-05 18:38:33,008 - aspire - INFO - it 3 - beta: 0.05812087626074458
INFO:aspire.samplers.smc.base:it 3 - beta: 0.05812087626074458
2025-11-05 18:38:33,009 - aspire - INFO - it 3 - ESS: 500.1 (0.50 efficiency)
INFO:aspire.samplers.smc.base:it 3 - ESS: 500.1 (0.50 efficiency)
2025-11-05 18:38:33,010 - aspire - INFO - it 3 - Log evidence ratio: -2.17 +/- 0.03
INFO:aspire.samplers.smc.base:it 3 - Log evidence ratio: -2.17 +/- 0.03
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.521, rho=0.787]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.45, rho=0.915] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.412, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.373, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.36, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.392, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.389, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.354, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.381, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.386, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.372, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.396, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.364, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.381, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.382, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.358, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.363, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.363, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.381, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.378, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.412, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.387, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.341, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.344, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.366, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.36, rho=0.99] 
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.37, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.366, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.39, rho=0.99] 
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.385, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.372, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.36, rho=0.99] 
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 166.64step/s, acceptance_rate=0.374, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 167.89step/s, acceptance_rate=0.374, rho=0.99]
2025-11-05 18:38:33,577 - aspire - INFO - it 4 - beta: 0.10069054735015612
INFO:aspire.samplers.smc.base:it 4 - beta: 0.10069054735015612
2025-11-05 18:38:33,578 - aspire - INFO - it 4 - ESS: 500.0 (0.50 efficiency)
INFO:aspire.samplers.smc.base:it 4 - ESS: 500.0 (0.50 efficiency)
2025-11-05 18:38:33,580 - aspire - INFO - it 4 - Log evidence ratio: -2.00 +/- 0.03
INFO:aspire.samplers.smc.base:it 4 - Log evidence ratio: -2.00 +/- 0.03
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.568, rho=0.834]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.452, rho=0.964]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.421, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.421, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.383, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.397, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.401, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.399, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.383, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.402, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.407, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.38, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.394, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.393, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.415, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.388, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.398, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.39, rho=0.99] 
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.39, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.385, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.401, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.384, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.394, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.386, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.421, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.397, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.396, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.399, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.425, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.394, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.384, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.42, rho=0.99] 
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.09step/s, acceptance_rate=0.406, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 168.98step/s, acceptance_rate=0.406, rho=0.99]
2025-11-05 18:38:34,230 - aspire - INFO - it 5 - beta: 0.1653229253100677
INFO:aspire.samplers.smc.base:it 5 - beta: 0.1653229253100677
2025-11-05 18:38:34,231 - aspire - INFO - it 5 - ESS: 500.0 (0.50 efficiency)
INFO:aspire.samplers.smc.base:it 5 - ESS: 500.0 (0.50 efficiency)
2025-11-05 18:38:34,232 - aspire - INFO - it 5 - Log evidence ratio: -1.89 +/- 0.03
INFO:aspire.samplers.smc.base:it 5 - Log evidence ratio: -1.89 +/- 0.03
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.611, rho=0.877]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.467, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.434, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.434, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.452, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.436, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.422, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.421, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.435, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.429, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.437, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.463, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.45, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.434, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.418, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.427, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.43, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.432, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.432, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.433, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.432, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.427, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.428, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.435, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.426, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.414, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.449, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.443, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.419, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.451, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.449, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.444, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.49step/s, acceptance_rate=0.428, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 172.42step/s, acceptance_rate=0.428, rho=0.99]
2025-11-05 18:38:34,904 - aspire - INFO - it 6 - beta: 0.26218780097465333
INFO:aspire.samplers.smc.base:it 6 - beta: 0.26218780097465333
2025-11-05 18:38:34,905 - aspire - INFO - it 6 - ESS: 500.0 (0.50 efficiency)
INFO:aspire.samplers.smc.base:it 6 - ESS: 500.0 (0.50 efficiency)
2025-11-05 18:38:34,906 - aspire - INFO - it 6 - Log evidence ratio: -1.78 +/- 0.03
INFO:aspire.samplers.smc.base:it 6 - Log evidence ratio: -1.78 +/- 0.03
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.654, rho=0.92]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.515, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.479, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.46, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.45, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.464, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.459, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.473, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.487, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.495, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.493, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.463, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.488, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.461, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.474, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.488, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.478, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.469, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.469, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.474, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.475, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.478, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.468, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.444, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.422, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.472, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.457, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.474, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.441, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.478, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.449, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.467, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 169.73step/s, acceptance_rate=0.467, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 169.00step/s, acceptance_rate=0.467, rho=0.99]
2025-11-05 18:38:35,493 - aspire - INFO - it 7 - beta: 0.3912846711868061
INFO:aspire.samplers.smc.base:it 7 - beta: 0.3912846711868061
2025-11-05 18:38:35,494 - aspire - INFO - it 7 - ESS: 500.0 (0.50 efficiency)
INFO:aspire.samplers.smc.base:it 7 - ESS: 500.0 (0.50 efficiency)
2025-11-05 18:38:35,495 - aspire - INFO - it 7 - Log evidence ratio: -1.34 +/- 0.03
INFO:aspire.samplers.smc.base:it 7 - Log evidence ratio: -1.34 +/- 0.03
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.662, rho=0.928]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.511, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.506, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.496, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.514, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.494, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.532, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.505, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.485, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.487, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.502, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.497, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.473, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.486, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.475, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.5, rho=0.99]  
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.471, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.491, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.491, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.505, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.491, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.496, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.507, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.478, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.501, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.492, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.491, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.473, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.501, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.487, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.494, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.482, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 172.43step/s, acceptance_rate=0.455, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 168.64step/s, acceptance_rate=0.455, rho=0.99]
2025-11-05 18:38:36,152 - aspire - INFO - it 8 - beta: 0.5350018996219648
INFO:aspire.samplers.smc.base:it 8 - beta: 0.5350018996219648
2025-11-05 18:38:36,153 - aspire - INFO - it 8 - ESS: 500.0 (0.50 efficiency)
INFO:aspire.samplers.smc.base:it 8 - ESS: 500.0 (0.50 efficiency)
2025-11-05 18:38:36,155 - aspire - INFO - it 8 - Log evidence ratio: -0.70 +/- 0.03
INFO:aspire.samplers.smc.base:it 8 - Log evidence ratio: -0.70 +/- 0.03
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.65, rho=0.916]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.554, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.509, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.516, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.495, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.517, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.533, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.507, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.523, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.52, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.52, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.487, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.504, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.503, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.498, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.5, rho=0.99]  
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.519, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.519, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.474, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.503, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.505, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.506, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.478, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.459, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.49, rho=0.99] 
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.496, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.524, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.501, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.53, rho=0.99] 
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.511, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.517, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.511, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 165.43step/s, acceptance_rate=0.521, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 162.31step/s, acceptance_rate=0.521, rho=0.99]

2025-11-05 18:38:37,124 - aspire - INFO - it 9 - beta: 0.6684291652104801
INFO:aspire.samplers.smc.base:it 9 - beta: 0.6684291652104801
2025-11-05 18:38:37,125 - aspire - INFO - it 9 - ESS: 500.0 (0.50 efficiency)
INFO:aspire.samplers.smc.base:it 9 - ESS: 500.0 (0.50 efficiency)
2025-11-05 18:38:37,126 - aspire - INFO - it 9 - Log evidence ratio: 0.03 +/- 0.03
INFO:aspire.samplers.smc.base:it 9 - Log evidence ratio: 0.03 +/- 0.03
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.663, rho=0.929]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.505, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.514, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.524, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.485, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.505, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.501, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.497, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.495, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.483, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.487, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.491, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.491, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.481, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.472, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.484, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.484, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.496, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.494, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.496, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.495, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.526, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.458, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.48, rho=0.99] 
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.485, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.503, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.479, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.474, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.488, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.512, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.49, rho=0.99] 
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.51, rho=0.99]
Sampling:  50%|█████     | 16/32 [00:00<00:00, 159.52step/s, acceptance_rate=0.476, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 165.99step/s, acceptance_rate=0.476, rho=0.99]
2025-11-05 18:38:44,303 - aspire - INFO - it 10 - beta: 0.8033777259456616
INFO:aspire.samplers.smc.base:it 10 - beta: 0.8033777259456616
2025-11-05 18:38:44,304 - aspire - INFO - it 10 - ESS: 500.0 (0.50 efficiency)
INFO:aspire.samplers.smc.base:it 10 - ESS: 500.0 (0.50 efficiency)
2025-11-05 18:38:44,305 - aspire - INFO - it 10 - Log evidence ratio: 0.57 +/- 0.03
INFO:aspire.samplers.smc.base:it 10 - Log evidence ratio: 0.57 +/- 0.03
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.667, rho=0.933]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.513, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.505, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.512, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.497, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.512, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.475, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.496, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.515, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.487, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.483, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.482, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.489, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.481, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.486, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.481, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.464, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.485, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.485, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.502, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.469, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.478, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.484, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.483, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.499, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.504, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.51, rho=0.99] 
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.508, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.493, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.482, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.46, rho=0.99] 
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.505, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 170.78step/s, acceptance_rate=0.515, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 170.56step/s, acceptance_rate=0.515, rho=0.99]
2025-11-05 18:38:45,917 - aspire - INFO - it 11 - beta: 0.9178540365050081
INFO:aspire.samplers.smc.base:it 11 - beta: 0.9178540365050081
2025-11-05 18:38:45,918 - aspire - INFO - it 11 - ESS: 500.0 (0.50 efficiency)
INFO:aspire.samplers.smc.base:it 11 - ESS: 500.0 (0.50 efficiency)
2025-11-05 18:38:45,919 - aspire - INFO - it 11 - Log evidence ratio: 1.20 +/- 0.03
INFO:aspire.samplers.smc.base:it 11 - Log evidence ratio: 1.20 +/- 0.03
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.645, rho=0.911]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.509, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.495, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.497, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.502, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.485, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.491, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.503, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.507, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.48, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.486, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.473, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.488, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.502, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.491, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.509, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.505, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.484, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.484, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.492, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.462, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.483, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.514, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.48, rho=0.99] 
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.524, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.493, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.512, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.498, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.489, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.483, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.485, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.469, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 171.47step/s, acceptance_rate=0.475, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 171.37step/s, acceptance_rate=0.475, rho=0.99]
2025-11-05 18:38:49,306 - aspire - INFO - it 12 - beta: 0.9932163398065964
INFO:aspire.samplers.smc.base:it 12 - beta: 0.9932163398065964
2025-11-05 18:38:49,307 - aspire - INFO - it 12 - ESS: 500.0 (0.50 efficiency)
INFO:aspire.samplers.smc.base:it 12 - ESS: 500.0 (0.50 efficiency)
2025-11-05 18:38:49,308 - aspire - INFO - it 12 - Log evidence ratio: 1.24 +/- 0.03
INFO:aspire.samplers.smc.base:it 12 - Log evidence ratio: 1.24 +/- 0.03
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.616, rho=0.882]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.496, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.445, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.459, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.472, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.494, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.488, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.479, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.483, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.474, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.468, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.493, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.456, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.476, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.451, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.458, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.493, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.493, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.487, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.481, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.471, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.479, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.475, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.478, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.457, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.471, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.476, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.496, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.48, rho=0.99] 
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.487, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.476, rho=0.99]
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.51, rho=0.99] 
Sampling:  53%|█████▎    | 17/32 [00:00<00:00, 167.97step/s, acceptance_rate=0.483, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 171.31step/s, acceptance_rate=0.483, rho=0.99]
2025-11-05 18:38:50,111 - aspire - INFO - it 13 - beta: 1.0
INFO:aspire.samplers.smc.base:it 13 - beta: 1.0
2025-11-05 18:38:50,112 - aspire - INFO - it 13 - ESS: 993.3 (0.99 efficiency)
INFO:aspire.samplers.smc.base:it 13 - ESS: 993.3 (0.99 efficiency)
2025-11-05 18:38:50,113 - aspire - INFO - it 13 - Log evidence ratio: 0.14 +/- 0.00
INFO:aspire.samplers.smc.base:it 13 - Log evidence ratio: 0.14 +/- 0.00
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.627, rho=0.893]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.494, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.482, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.483, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.503, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.455, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.483, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.5, rho=0.99]  
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.492, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.47, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.491, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.488, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.496, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.473, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.488, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.487, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.464, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.492, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.492, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.468, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.488, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.463, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.496, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.47, rho=0.99] 
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.454, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.453, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.462, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.46, rho=0.99] 
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.466, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.458, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.503, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.471, rho=0.99]
Sampling:  56%|█████▋    | 18/32 [00:00<00:00, 173.52step/s, acceptance_rate=0.485, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 173.12step/s, acceptance_rate=0.485, rho=0.99]
2025-11-05 18:38:51,235 - aspire - INFO - Generating 5000 final samples
INFO:aspire.samplers.smc.base:Generating 5000 final samples
Sampling:   0%|          | 0/32 [00:00<?, ?step/s]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.621, rho=0.887]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.51, rho=0.99]  
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.471, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.476, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.477, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.469, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.472, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.47, rho=0.99] 
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.472, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.461, rho=0.99]
Sampling:   0%|          | 0/32 [00:00<?, ?step/s, acceptance_rate=0.479, rho=0.99]
Sampling:  34%|███▍      | 11/32 [00:00<00:00, 102.64step/s, acceptance_rate=0.479, rho=0.99]
Sampling:  34%|███▍      | 11/32 [00:00<00:00, 102.64step/s, acceptance_rate=0.462, rho=0.99]
Sampling:  34%|███▍      | 11/32 [00:00<00:00, 102.64step/s, acceptance_rate=0.481, rho=0.99]
Sampling:  34%|███▍      | 11/32 [00:00<00:00, 102.64step/s, acceptance_rate=0.481, rho=0.99]
Sampling:  34%|███▍      | 11/32 [00:00<00:00, 102.64step/s, acceptance_rate=0.477, rho=0.99]
Sampling:  34%|███▍      | 11/32 [00:00<00:00, 102.64step/s, acceptance_rate=0.473, rho=0.99]
Sampling:  34%|███▍      | 11/32 [00:00<00:00, 102.64step/s, acceptance_rate=0.474, rho=0.99]
Sampling:  34%|███▍      | 11/32 [00:00<00:00, 102.64step/s, acceptance_rate=0.48, rho=0.99] 
Sampling:  34%|███▍      | 11/32 [00:00<00:00, 102.64step/s, acceptance_rate=0.478, rho=0.99]
Sampling:  34%|███▍      | 11/32 [00:00<00:00, 102.64step/s, acceptance_rate=0.474, rho=0.99]
Sampling:  34%|███▍      | 11/32 [00:00<00:00, 102.64step/s, acceptance_rate=0.473, rho=0.99]
Sampling:  34%|███▍      | 11/32 [00:00<00:00, 102.64step/s, acceptance_rate=0.469, rho=0.99]
Sampling:  34%|███▍      | 11/32 [00:00<00:00, 102.64step/s, acceptance_rate=0.468, rho=0.99]
Sampling:  72%|███████▏  | 23/32 [00:00<00:00, 108.58step/s, acceptance_rate=0.468, rho=0.99]
Sampling:  72%|███████▏  | 23/32 [00:00<00:00, 108.58step/s, acceptance_rate=0.467, rho=0.99]
Sampling:  72%|███████▏  | 23/32 [00:00<00:00, 108.58step/s, acceptance_rate=0.486, rho=0.99]
Sampling:  72%|███████▏  | 23/32 [00:00<00:00, 108.58step/s, acceptance_rate=0.485, rho=0.99]
Sampling:  72%|███████▏  | 23/32 [00:00<00:00, 108.58step/s, acceptance_rate=0.481, rho=0.99]
Sampling:  72%|███████▏  | 23/32 [00:00<00:00, 108.58step/s, acceptance_rate=0.476, rho=0.99]
Sampling:  72%|███████▏  | 23/32 [00:00<00:00, 108.58step/s, acceptance_rate=0.479, rho=0.99]
Sampling:  72%|███████▏  | 23/32 [00:00<00:00, 108.58step/s, acceptance_rate=0.468, rho=0.99]
Sampling:  72%|███████▏  | 23/32 [00:00<00:00, 108.58step/s, acceptance_rate=0.472, rho=0.99]
Sampling:  72%|███████▏  | 23/32 [00:00<00:00, 108.58step/s, acceptance_rate=0.467, rho=0.99]
Sampling: 100%|██████████| 32/32 [00:00<00:00, 106.84step/s, acceptance_rate=0.467, rho=0.99]

2025-11-05 18:38:55,544 - aspire - INFO - Log evidence: -11.22 +/- 0.11
INFO:aspire.samplers.smc.base:Log evidence: -11.22 +/- 0.11
2025-11-05 18:38:55,544 - aspire - INFO - Sampled 5000 samples from the posterior
INFO:aspire.aspire:Sampled 5000 samples from the posterior
2025-11-05 18:38:55,545 - aspire - INFO - Number of likelihood evaluations: 613000
INFO:aspire.aspire:Number of likelihood evaluations: 613000
2025-11-05 18:38:55,547 - aspire - INFO - Sample summary:
INFO:aspire.aspire:Sample summary:
2025-11-05 18:38:55,547 - aspire - INFO - No. samples: 5000
No. parameters: 4
Log evidence: -11.22 +/- 0.11
INFO:aspire.aspire:No. samples: 5000
No. parameters: 4
Log evidence: -11.22 +/- 0.11
../_images/78fd4b6f03b8623968c36d99391c274007996f3c8eb9e8c41e2a495afb559a07.png

Persist results#

Write the flow history, SMC diagnostics, and posterior samples to disk so the analysis can be reproduced or extended.

# Save the the results to a file
# The AspireFile is a small wrapper around h5py.File that automatically
# includes additional metadata
with AspireFile(outdir / "poppy_result.h5", "w") as f:
    # poppy.save_config(f, "poppy_config")
    samples.save(f, "smc/posterior_samples")
    history.save(f, "flow/history")
    smc_history.save(f, "smc/history")

Final posterior comparison#

Contrast the SMC posterior samples against the earlier flow draws to check that corrections removed the bias.

fig = plot_comparison(
    initial_samples,
    true_samples,
    is_samples,
    samples,
    per_samples_kwargs=[
        dict(include_weights=True, color="C0"),
        dict(include_weights=False, color="k"),
        dict(include_weights=False, color="lightgrey"),
        dict(include_weights=False, color="C1"),
    ],
    labels=["Initial samples", "True samples", "Flow samples", "SMC samples"],
)
fig.savefig(outdir / "posterior_samples.png")
plt.show()
../_images/e50c5094bedd80578cd777544f3c5692f05b0710900036a411d85efbc9affece.png ../_images/2954b68e19a353349c8a37de3c7ece37b11667d8bb8375e8197b87cd508ffcae.png ../_images/b7b21d1cd94fe0a1029181781f90f5d18ba18bb1d1d61c18386dfff155dc72a0.png ../_images/336fc4a149cc3f550632e5ff0b21241d21b6e249d352195aeb77f1a07753f7e2.png