CDDLib

cdd wrapper module for Julia. cdd is a library for polyhedra manipulation such as double description and Fourier-Motzkin elimination

https://github.com/juliapolyhedra/cddlib.jl

Science Score: 64.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    1 of 12 committers (8.3%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.6%) to scientific vocabulary

Keywords

cdd polyhedra polyhedral-computations

Keywords from Contributors

polytope numerical julialang convex-hull programming-language optim polyhedron fourier-motzkin-elimination nonlinear-optimization markov-decision-process
Last synced: 6 months ago · JSON representation ·

Repository

cdd wrapper module for Julia. cdd is a library for polyhedra manipulation such as double description and Fourier-Motzkin elimination

Basic Info
  • Host: GitHub
  • Owner: JuliaPolyhedra
  • License: other
  • Language: Julia
  • Default Branch: master
  • Homepage:
  • Size: 312 KB
Statistics
  • Stars: 37
  • Watchers: 4
  • Forks: 12
  • Open Issues: 4
  • Releases: 0
Topics
cdd polyhedra polyhedral-computations
Created about 10 years ago · Last pushed 10 months ago
Metadata Files
Readme License Citation

README.md

CDDLib

CDDLib.jl is a wrapper for cddlib.

CDDLib.jl can be used with C API of cddlib, the higher level interface of Polyhedra.jl, or as a linear programming solver with JuMP or MathOptInterface.

Problem description

As written in the README of cddlib:

The C-library cddlib is a C implementation of the Double Description Method of Motzkin et al. for generating all vertices (that is, extreme points) and extreme rays of a general convex polyhedron in R^d given by a system of linear inequalities: P = { x=(x1, ..., xd)^T : b - A x >= 0 } where A is a given m x d real matrix, b is a given m-vector and 0 is the m-vector of all zeros.

The program can be used for the reverse operation (that is, convex hull computation). This means that one can move back and forth between an inequality representation and a generator (that is, vertex and ray) representation of a polyhedron with cdd. Also, cdd can solve a linear programming problem, that is, a problem of maximizing and minimizing a linear function over P.

License

CDDLib.jl is licensed under the GPL v2 license.

The underlying solver, cddlib/cddlib is also licensed under the GPL v2 license.

Installation

Install CDDLib.jl using the Julia package manager:

julia import Pkg Pkg.add("CDDLib")

Building the package will download binaries of cddlib that are provided by cddlib_jll.jl.

Use with JuMP

Use CDDLib.Optimizer{Float64} to use CDDLib.jl with JuMP:

julia using JuMP, CDDLib model = Model(CDDLib.Optimizer{Float64})

When using CDDLib.jl with MathOptInterface, you can pass a different number type: julia using MathOptInterface, CDDLib model = CDDLib.Optimizer{Rational{BigInt}}()

Debugging

CDDLib.jl uses two global Boolean variables to enable debugging outputs: debug and log.

You can query the value of debug and log with get_debug and get_log, and set their values with set_debug and set_log.

Owner

  • Name: JuliaPolyhedra
  • Login: JuliaPolyhedra
  • Kind: organization

Polyhedral Computation in Julia

Citation (CITATION.bib)

@misc{CDDLib.jl,
  author       = {Benoît Legat and
                  Robin Deits and
                  Marcelo Forets and
                  Daisuke Oyama and
                  François Pacaud and
                  Elliot Saba},
  title        = {JuliaPolyhedra/CDDLib.jl},
  month        = may,
  year         = 2019,
  doi          = {10.5281/zenodo.1214581},
  url          = {https://doi.org/10.5281/zenodo.1214581}
}

GitHub Events

Total
  • Create event: 3
  • Commit comment event: 4
  • Release event: 1
  • Issues event: 4
  • Watch event: 1
  • Issue comment event: 5
  • Push event: 13
  • Pull request event: 5
Last Year
  • Create event: 3
  • Commit comment event: 4
  • Release event: 1
  • Issues event: 4
  • Watch event: 1
  • Issue comment event: 5
  • Push event: 13
  • Pull request event: 5

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 268
  • Total Committers: 12
  • Avg Commits per committer: 22.333
  • Development Distribution Score (DDS): 0.127
Past Year
  • Commits: 4
  • Committers: 2
  • Avg Commits per committer: 2.0
  • Development Distribution Score (DDS): 0.5
Top Committers
Name Email Commits
Benoît Legat b****t@g****m 234
Robin Deits r****s@g****m 10
Oscar Dowson o****w 6
Daisuke Oyama o****a@e****p 5
mforets m****s@g****m 4
Sascha Timme s****e@g****m 2
Mathieu Besançon m****n@g****m 2
fpacaud f****8@g****m 1
femtocleaner[bot] f****] 1
Sebastián Guadalupe 4****e 1
Julia TagBot 5****t 1
Elliot Saba s****t@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 38
  • Total pull requests: 58
  • Average time to close issues: about 1 year
  • Average time to close pull requests: about 2 months
  • Total issue authors: 27
  • Total pull request authors: 12
  • Average comments per issue: 4.11
  • Average comments per pull request: 1.28
  • Merged pull requests: 54
  • Bot issues: 0
  • Bot pull requests: 1
Past Year
  • Issues: 2
  • Pull requests: 4
  • Average time to close issues: 1 day
  • Average time to close pull requests: about 12 hours
  • Issue authors: 2
  • Pull request authors: 1
  • Average comments per issue: 0.5
  • Average comments per pull request: 0.5
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • blegat (6)
  • oyamad (3)
  • schillic (3)
  • mforets (2)
  • ueliwechsler (2)
  • tomerarnon (1)
  • rdeits (1)
  • IlliaKovalenko94 (1)
  • JuliaTagBot (1)
  • abramdemski (1)
  • stla (1)
  • mengyuest (1)
  • joehuchette (1)
  • chiumichael (1)
  • maleadt (1)
Pull Request Authors
  • blegat (35)
  • odow (8)
  • oyamad (3)
  • rdeits (3)
  • matbesancon (2)
  • saschatimme (2)
  • SebastianGuadalupe (1)
  • mforets (1)
  • femtocleaner[bot] (1)
  • frapac (1)
  • staticfloat (1)
  • JuliaTagBot (1)
Top Labels
Issue Labels
bug (1)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • julia 104 total
  • Total dependent packages: 7
  • Total dependent repositories: 1
  • Total versions: 19
juliahub.com: CDDLib

cdd wrapper module for Julia. cdd is a library for polyhedra manipulation such as double description and Fourier-Motzkin elimination

  • Versions: 19
  • Dependent Packages: 7
  • Dependent Repositories: 1
  • Downloads: 104 Total
Rankings
Dependent repos count: 7.7%
Dependent packages count: 8.6%
Average: 11.0%
Forks count: 11.4%
Stargazers count: 16.2%
Last synced: 7 months ago