API Reference¶
Complete API documentation for lonpy.
Modules¶
lonpy is organized into three main modules:
LON Module¶
Data structures for Local Optima Networks.
Sampling Module¶
Basin-Hopping sampling for LON construction.
compute_lon()- High-level convenience functionBasinHoppingSampler- Sampling classBasinHoppingSamplerConfig- Configuration
Visualization Module¶
Plotting and animation tools.
LONVisualizer- Visualization class
Quick Reference¶
Creating a LON¶
from lonpy import compute_lon
# Simple usage
lon = compute_lon(
func=objective_function,
dim=2,
lower_bound=-5.0,
upper_bound=5.0,
n_runs=20,
seed=42
)
Analyzing a LON¶
# Basic properties
print(f"Optima: {lon.n_vertices}")
print(f"Edges: {lon.n_edges}")
print(f"Best: {lon.best_fitness}")
# Compute metrics
metrics = lon.compute_metrics()
# Convert to CMLON
cmlon = lon.to_cmlon()
cmlon_metrics = cmlon.compute_metrics()
Visualizing a LON¶
from lonpy import LONVisualizer
viz = LONVisualizer()
# 2D plot
viz.plot_2d(lon, output_path="lon.png")
# 3D plot
viz.plot_3d(lon, output_path="lon_3d.png")
# Animation
viz.create_rotation_gif(lon, output_path="lon.gif")
# All visualizations
viz.visualize_all(lon, output_folder="./output")
Dependencies¶
lonpy depends on:
numpy- Numerical computationsscipy- Optimizationpandas- Data handlingigraph- Graph operationsmatplotlib- 2D plottingplotly- 3D plottingimageio- GIF creationkaleido- Static image export