Learn R Programming

⚠️There's a newer version (1.1.2-9) of this package.Take me there.

Volume computation and sampling

About

The volesti package provides R with functions for volume estimation and sampling. In particular, it provides an R interface for the C++ library volesti.

volesti computes approximations of volume of polytopes given as a set of points or linear inequalities or as a Minkowski sum of segments (zonotopes). There are algorithms for volume approximation as well as algorithms for sampling, rounding and rotating polytopes. Last but not least, volesti provides implementations of geometric algorithms to compute the score of a portfolio given asset returns and to detect financial crises in stock markets.

Download and install

  • The latest stable version is available from CRAN.

  • The latest development version is available on Github www.github.com/GeomScale/volume_approximation

  • Install volesti by running:

install.packages("volesti")
  • The package-dependencies are: Rcpp, RcppEigen, BH.

Documentation

Credits

Copyright (c) 2012-2020 Vissarion Fisikopoulos
Copyright (c) 2018-2020 Apostolos Chalkis

You may redistribute or modify the software under the GNU Lesser General Public License as published by Free Software Foundation, either version 3 of the License, or (at your option) any later version. It is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY.

Copy Link

Version

Install

install.packages('volesti')

Monthly Downloads

382

Version

1.1.1

License

LGPL-3

Maintainer

Vissarion Fisikopoulos

Last Published

June 22nd, 2020

Functions in volesti (1.1.1)

gen_prod_simplex

Generator function for product of simplices
frustum_of_simplex

Compute the percentage of the volume of the simplex that is contained in the intersection of a half-space and the simplex.
gen_rand_zonotope

Generator function for zonotopes
file_to_polytope

function to get an ine or an ext file and returns the corresponding polytope
gen_rand_vpoly

Generator function for random V-polytopes
gen_cross

Generator function for cross polytopes
gen_cube

Generator function for hypercubes
round_polytope

Apply rounding to a convex polytope (H-polytope, V-polytope or a zonotope)
gen_simplex

Generator function for simplices
gen_skinny_cube

Generator function for skinny hypercubes
rounding

Internal rcpp function for the rounding of a convex polytope
compute_indicators

Compute an indicator for each time period that describes the state of a market.
copula

Construct a copula using uniform sampling from the unit simplex
inner_ball

Compute an inscribed ball of a convex polytope
sample_points

Sample uniformly or normally distributed points from a convex Polytope (H-polytope, V-polytope, zonotope or intersection of two V-polytopes).
loadSdpaFormatFile

Read a SDPA format file
gen_rand_hpoly

Generator function for random H-polytopes
volume

The main function for volume approximation of a convex Polytope (H-polytope, V-polytope, zonotope or intersection of two V-polytopes)
writeSdpaFormatFile

Write a SDPA format file
poly_gen

An internal Rccp function as a polytope generator
readSdpaFormatFile

Read a SDPA format file
Rcpp_Zonotope

An Rcpp class to represent zonotopes, exposed to R via modules.
direct_sampling

Sample perfect uniformly distributed points from well known convex bodies: (a) the unit simplex, (b) the canonical simplex, (c) the boundary of a hypersphere or (d) the interior of a hypersphere.
zono_approx

An internal Rccp function for the over-approximation of a zonotope
exact_vol

Compute the exact volume of (a) a zonotope (b) an arbitrary simplex in V-representation or (c) if the volume is known and declared by the input object.
zonotope_approximation

A function to over-approximate a zonotope with PCA method and to evaluate the approximation by computing a ratio of fitness.
rotate_polytope

Apply a random rotation to a convex polytope (H-polytope, V-polytope, zonotope or intersection of two V-polytopes)
rotating

An internal Rccp function for the random rotation of a convex polytope
Rcpp_VpolytopeIntersection

An Rcpp class to represent the intersection of two V-polytope, exposed to R via modules.
Spectrahedron

An R class to represent spectrahedra.
Rcpp_Hpolytope

An Rcpp class to represent H-polytopes, exposed to R via modules.
Hpolytope

An R class to represent H-polytopes.
VpolytopeIntersection

An R class to represent the intersection of two V-polytopes.
Zonotope

An R class to represent zonotopes.
Rcpp_Spectrahedron

An Rcpp class to represent spectrahedra, exposed to R via modules.
Vpolytope

An R class to represent V-polytopes.
Rcpp_Vpolytope

An Rcpp class to represent V-polytopes, exposed to R via modules.