Python Dense Random Walks
- class polytopewalk.dense.RandomWalk(self: polytopewalk.dense.RandomWalk)
Bases:
pybind11_objectRandom Walk Superclass Implementation.
Initialization for Random Walk Super Class. Runs on Full-Dimensional Polytope Form: Ax <= b.
- generateCompleteWalk(self: polytopewalk.dense.RandomWalk, niter: int, init: numpy.ndarray[numpy.float64[m, 1]], A: numpy.ndarray[numpy.float64[m, n]], b: numpy.ndarray[numpy.float64[m, 1]], burnin: int = 0, thin: int = 1, seed: int = -1) numpy.ndarray[numpy.float64[m, n]]
Generate values from Random Walk (virtual function).
- Parameters:
niter (int) – Number of iterations.
init (numpy.ndarray) – Initial point to start sampling from.
A (numpy.ndarray) – Constraint matrix.
b (numpy.ndarray) – Constraint vector.
burnin (int, optional) – Constant for how many to exclude initially (default is 0).
thin (int, optional) – Number of samples to thin (default is 1).
seed (int, optional) – Seed number for reproducibility (default is -1 meaning no fixed setting).
- Returns:
List of sampled points.
- Return type:
numpy.ndarray
- class polytopewalk.dense.BarrierWalk(self: polytopewalk.dense.BarrierWalk, r: float = 0.5)
Bases:
RandomWalkBarrier Walk Implementation.
Initialization for Barrier Walk Super Class. Runs on Full-Dimensional Polytope Form: Ax <= b.
- Parameters:
r (double, optional) – Radius for starting distance (default is 0.5).
- generateCompleteWalk(self: polytopewalk.dense.BarrierWalk, niter: int, init: numpy.ndarray[numpy.float64[m, 1]], A: numpy.ndarray[numpy.float64[m, n]], b: numpy.ndarray[numpy.float64[m, 1]], burnin: int = 0, thin: int = 1, seed: int = -1) numpy.ndarray[numpy.float64[m, n]]
Generate values from Barrier Walk (virtual function).
- Parameters:
niter (int) – Number of steps to sample from.
init (numpy.ndarray) – Initial point to start sampling from.
A (numpy.ndarray) – Constraint matrix.
b (numpy.ndarray) – Constraint vector.
burnin (int, optional) – Constant for how many to exclude initially (default is 0).
thin (int, optional) – Number of samples to thin (default is 1).
seed (int, optional) – Seed number for reproducibility (default is -1 meaning no fixed setting).
- Returns:
List of sampled points.
- Return type:
numpy.ndarray
- generateWeight(self: polytopewalk.dense.BarrierWalk, x: numpy.ndarray[numpy.float64[m, 1]], A: numpy.ndarray[numpy.float64[m, n]], b: numpy.ndarray[numpy.float64[m, 1]]) numpy.ndarray[numpy.float64[m, 1]]
Generate weight from Barrier Walk (virtual function).
- Parameters:
x (numpy.ndarray) – Point inside polytope.
A (numpy.ndarray) – Constraint matrix.
b (numpy.ndarray) – Constraint vector.
- Returns:
Weight vector (specified by walk type).
- Return type:
numpy.ndarray
- class polytopewalk.dense.DikinWalk(self: polytopewalk.dense.DikinWalk, r: float = 0.5)
Dikin Walk Implementation.
Initialization for Dikin Walk Class. Runs on Full-Dimensional Polytope Form: Ax <= b.
- Parameters:
r (double, optional) – Radius for Dikin Ellipsoid (default is 0.5).
- class polytopewalk.dense.VaidyaWalk(self: polytopewalk.dense.VaidyaWalk, r: float = 0.5)
Vaidya Walk Implementation.
Initialization for Vaidya Walk Class. Runs on Full-Dimensional Polytope Form: Ax <= b.
- Parameters:
r (double, optional) – Radius for Vaidya Ellipsoid (default is 0.5).
- class polytopewalk.dense.JohnWalk(self: polytopewalk.dense.JohnWalk, r: float = 0.5, lim: float = 1e-05, max_iter: int = 1000)
John Walk Implementation.
Initialization for John Walk Class. Runs on Full-Dimensional Polytope Form: Ax <= b.
- Parameters:
r (double, optional) – Radius for John Ellipsoid (default is 0.5).
lim (double, optional) – Constant for stopping limit in fixed-point iteration (default is 1e-5).
max_iter (int, optional) – Constant for maximum number of fixed point iterations (default is 1000).
- class polytopewalk.dense.DikinLSWalk(self: polytopewalk.dense.DikinLSWalk, r: float = 0.5, g_lim: float = 0.01, step_size: float = 0.1, max_iter: int = 1000)
Lee Sidford Walk Implementation.
Initialization for Lee Sidford Walk Class. Runs on Full-Dimensional Polytope Form: Ax <= b.
- Parameters:
r (double, optional) – Radius for Lee-Sidford Ellipsoid (default is 0.5).
g_lim (double, optional) – Constant for stopping gradient norm in gradient descent (default is 0.01).
step_size (double, optional) – Constant for step size in gradient descent (default is 0.1).
max_iter (int, optional) – Constant for maximum number of gradient descent iterations (default is 1000).
- class polytopewalk.dense.BallWalk(self: polytopewalk.dense.BallWalk, r: float = 0.5)
Ball Walk Implementation.
Initialization for Ball Walk Class. Runs on Full-Dimensional Polytope Form: Ax <= b.
- Parameters:
r (double, optional) – Radius for ball (default is 0.5).
- class polytopewalk.dense.HitAndRun(self: polytopewalk.dense.HitAndRun, r: float = 0.5, err: float = 0.01)
Hit-Run Implementation.
Initialization for Hit and Run Class. Runs on Full-Dimensional Polytope Form: Ax <= b.
- Parameters:
r (double, optional) – Radius for starting distance (default is 0.5).
err (double, optional) – Constant for closeness to edge of polytope (default is 0.01).