Skip to content

OptiScope Logo

Modern Optimization Visualization and Analysis

Comprehensive Python library for visualizing and analyzing single- and multi-objective optimization results.

Get Started View Examples GitHub


Features

  • Rich Visualizations


    Interactive Pareto fronts, parallel coordinates, scatter matrices, and more.

    Plotting Guide

  • Advanced Analysis


    Smart Pareto Filter, knee point detection, TOPSIS, and quality metrics.

    Analysis Tools

  • Flexible Storage


    Memory, filesystem, or database backends with caching and replication.

    Storage Guide

  • Interactive Dashboard


    Modular Dash application with auto-discovery and page templates.

    Dash App

  • Format Agnostic


    CSV, JSON, HDF5, and custom formats with automatic detection.

    File Formats

  • Extensible API


    Clean, type-safe API with comprehensive documentation.

    API Reference


Quick Example

from optiscope import load_results
from optiscope.plotting import plot_pareto_front_2d
from optiscope.analysis import smart_pareto_filter, topsis_from_result

# Load optimization results
result = load_results("optimization_data.csv")

# Filter to representative Pareto points
pareto_indices = smart_pareto_filter(result.objectives, epsilon=0.15)
result.create_set("pareto", pareto_indices, "smart_filter")

# Visualize Pareto front
fig = plot_pareto_front_2d(
    result,
    obj_x="cost",
    obj_y="weight",
    pareto_set="pareto",
    show_ideal_nadir=True
)
fig.show()

# Rank solutions with TOPSIS
topsis_result = topsis_from_result(
    result,
    weights={"cost": 0.5, "weight": 0.3, "efficiency": 0.2}
)

print(f"Best solution: {topsis_result['ranks'][0]}")