Skip to content

Change point detection

jitterbug.detection.change_point_detector

Main change point detection interface.

ChangePointDetector

Main interface for change point detection algorithms.

This class provides a unified interface for different change point detection algorithms and handles algorithm selection based on configuration.

Parameters:

Name Type Description Default
config ChangePointDetectionConfig

Configuration for change point detection.

required

Attributes:

Name Type Description
config ChangePointDetectionConfig

Configuration object.

algorithm BaseChangePointDetector

Selected change point detection algorithm.

detect(dataset)

Detect change points in the RTT dataset.

Parameters:

Name Type Description Default
dataset MinimumRTTDataset

Dataset containing minimum RTT values.

required

Returns:

Type Description
List[ChangePoint]

List of detected change points.

jitterbug.detection.algorithms

Change point detection algorithm implementations.

BaseChangePointDetector

Bases: ABC

Base class for change point detection algorithms.

Parameters:

Name Type Description Default
config ChangePointDetectionConfig

Configuration for change point detection.

required

detect(dataset) abstractmethod

Detect change points in the dataset.

Parameters:

Name Type Description Default
dataset MinimumRTTDataset

Dataset to analyze.

required

Returns:

Type Description
List[ChangePoint]

List of detected change points.

RupturesDetector

Bases: BaseChangePointDetector

Change point detection using the ruptures library.

This implementation uses the ruptures library which provides multiple algorithms for change point detection including Pelt, BottomUp, and others.

detect(dataset)

Detect change points using ruptures library.

Parameters:

Name Type Description Default
dataset MinimumRTTDataset

Dataset to analyze.

required

Returns:

Type Description
List[ChangePoint]

List of detected change points.

BayesianChangePointDetector

Bases: BaseChangePointDetector

Change point detection using Bayesian methods.

This is a modernized version of the original BCP implementation with improved error handling and configuration.

detect(dataset)

Detect change points using Bayesian change point detection.

Parameters:

Name Type Description Default
dataset MinimumRTTDataset

Dataset to analyze.

required

Returns:

Type Description
List[ChangePoint]

List of detected change points.