Skip to content

Supporting Sparse Matrix Representation for H‐Polytopes in Rvolesti

Vissarion Fisikopoulos edited this page Feb 17, 2025 · 2 revisions

Description

The volesti C++ library has recently introduced support for sparse matrix representations of H-polytopes, enhancing computational efficiency when dealing with high-dimensional, sparse data. The Rvolesti package, which provides an R interface to volesti, currently lacks this functionality. This project aims to extend Rvolesti to support sparse matrix representations for H-polytopes, thereby improving performance and broadening its applicability in large-scale geometric computations.

Objectives

  1. Assess Existing Sparse Matrix Implementations
    Review the current implementation of sparse matrix support in the volesti C++ backend and evaluate the existing R class for sparse polytopes in Rvolesti.

  2. Design R Interface for Sparse H-Polytopes
    Develop an R interface that facilitates the creation and manipulation of H-polytopes using sparse matrices, ensuring compatibility with existing Rvolesti structures.

  3. Integrate Sparse Matrix Support
    Modify the R/Rcpp functions in Rvolesti to incorporate sparse matrix representations, enabling efficient handling of sparse H-polytopes.

  4. Testing and Validation
    Conduct comprehensive testing to ensure the correctness and performance improvements of the new implementation.

  5. Documentation
    Update the Rvolesti documentation to include guidelines and examples on using sparse matrix representations for H-polytopes.

Expected Outcomes

  • Enhanced Rvolesti package with support for sparse matrix representations of H-polytopes.

  • Improved computational efficiency in operations involving large, sparse H-polytopes.

  • Comprehensive documentation and examples to assist users in leveraging the new functionality.

Difficulty: Easy

Size

Small (90 hours)

Skills Required

  • Proficiency in R and Rcpp for developing R interfaces to C++ code.

  • Experience with C++ programming, particularly in the context of numerical methods and computational geometry.

  • Familiarity with sparse matrix data structures and operations.

Mentorship and Guidance

  • Ioannis Psarros [email protected] is an expert in high dimensional computational geometry with experience in mathematical software and proximity data structures. He has been serving as a GSoC mentor for GeomScale since 2023.
  • Elias Tsigaridas <elias.tsigaridas at inria.fr> is an expert in computational nonlinear algebra and geometry with experience in mathematical software. He has contributed to the implementation, in C and C++, of several solving algorithms for various open-source computer algebra libraries and has previous GSOC mentoring experience with the R-project (2019).

References

By completing this project, the student will significantly enhance the Rvolesti package's capabilities, providing the R community with more efficient tools for high-dimensional geometric computations involving sparse data structures.

Clone this wiki locally