Skip to main content

Converter for mathematical optimization formats: .mpl, .lp, .xa, .sim, .mpl, .gms, .mod, .xml, .mat.

Project description

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

OPTCONVERT

Converter for mathematical optimization formats: .mpl, .lp, .xa, .sim, .mpl, .gms, .mod, .xml, .mat.

Explore the docs

Report Bug - Request Feature

Table of Contents

About The Project

CLI example

Everyone who works with mathematical optimization problems knows what pain in the *** it can be to convert problems from one file format into another. Often ad-hoc solutions for the specific test set must be created to read the instances.

This packages provides the unified interface for converting optimization models between popular formats:

  • .mps (incl. smps as three files: .cor, .sto, .tim)
  • .lp (CPLEX format)
  • .xa
  • .sim
  • .mpl
  • .gms
  • .mod
  • .xml
  • .mat
  • .c

Package can be used as the module in Python or as the command line interface (CLI).

Built With

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

  • python 3.6
  • scipy
  • matplotlib
  • wxpython
  • mplpy

Installation from PyPI

  1. Install scipy, matplotlib and wxpython

    pip install scipy, matplotlib, wxpython
    
  2. Install mplpy

    1. Download and install the full/academic or student version of MPL
    2. Install OptiMax Library. On Windows installation file is located in C:\Mplwin\50\setup\Python
  3. Install optconvert

    pip install optconvert
    

Installation from GitHub repo

  1. Install scipy, matplotlib and wxpython

    pip install scipy, matplotlib, wxpython
    
  2. Install mplpy

    1. Download and install the full/academic or student version of MPL
    2. Install OptiMax Library. On Windows installation file is located in C:\Mplwin\50\setup\Python
  3. Clone the repo

    git clone https://github.com/pashtetgp/optconvert.git
    
  4. cd to project folder and install the package

    cd C:\optconvert
    pip install ..\optconvert
    

Uninstall

run in command line pip uninstall optconvert

Usage

As Python module

See class docstrings for details.

from optconvert import Model
from pathlib import Path

in_file = Path('Dakota_det.mpl')
model = Model(in_file)
print('Solution: ' + str(model.solve()))
out_file = in_file.with_suffix('lp')
model.export(out_file)

Via CLI

Change the directory to the folder with model files and run optconvert. One or multiple files can be converted at once.

CLI example

CLI mode accepts --file and --out_format arguments

CLI example

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Pavlo Glushko

Project Link: https://github.com/pashtetgp/optconvert

Acknowledgements

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

optconvert-0.0.1.tar.gz (21.4 kB view details)

Uploaded Source

File details

Details for the file optconvert-0.0.1.tar.gz.

File metadata

  • Download URL: optconvert-0.0.1.tar.gz
  • Upload date:
  • Size: 21.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0.post20200814 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.6.10

File hashes

Hashes for optconvert-0.0.1.tar.gz
Algorithm Hash digest
SHA256 76839849c1c4257770dd3f1048c5eea42ecb257caff181223aa4b550808df2b7
MD5 7df45397464998c599f78538dc33f49a
BLAKE2b-256 bfde204d8b58e7ca2e8ddd9e98df1d2b2adc36dba7448bd369ab9056b9234d7a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page