rust-or / rust-lp-modeler

Lp modeler written in Rust
MIT License
96 stars 29 forks source link

minilp solver? #57

Closed carrascomj closed 3 years ago

carrascomj commented 4 years ago

Opening discussion: there is a native implementation of a LP solver in Rust: minilp. Supporting it would provide

Would this be interesting for the crate?

carrascomj commented 4 years ago

Kindly pinging the author of minilp @ztlpn; maybe you find this interesting.

jcavat commented 4 years ago

It could be great. All contributions are welcome. Effectively, it would be more to maintain but it makes sense to promote such rust project. We just need to keep in mind to have the minimum of dependencies. If we can't, we could imagine integrating solver-modules independently from the core lib.

carrascomj commented 4 years ago

Great! We can make subcrates and/or put new solvers as a feature if needed, that would be very convenient. These are the ones from minilp (which are a bit outdated):

minilp v0.2.2 (/home/georg/GIT/minilp)
├── log v0.4.11
│   └── cfg-if v0.1.10
└── sprs v0.7.1
    ├── ndarray v0.13.1
    │   ├── matrixmultiply v0.2.3
    │   │   └── rawpointer v0.2.1
    │   ├── num-complex v0.2.4
    │   │   └── num-traits v0.2.14
    │   │       [build-dependencies]
    │   │       └── autocfg v1.0.1
    │   │   [build-dependencies]
    │   │   └── autocfg v1.0.1
    │   ├── num-integer v0.1.44
    │   │   └── num-traits v0.2.14 (*)
    │   │   [build-dependencies]
    │   │   └── autocfg v1.0.1
    │   ├── num-traits v0.2.14 (*)
    │   └── rawpointer v0.2.1
    ├── num-complex v0.2.4 (*)
    └── num-traits v0.1.43
        └── num-traits v0.2.14 (*)
EdorianDark commented 4 years ago

I would suggest to integrate it as a non default feature. At least as long as it describes itself as "an early-stage project". But it sound very interesting!