Skip to main content

Updates October 23, 2023

Shitaro
JijZept Compiler Team

JijZept Updates

Updated SDKs

Please update your SDKs to the latest version.

New Features

General Update

We are pleased to announce the latest updates to JijZept.

  • Released jijzept v1.16.8, which now supports pydantic v2. This enhances JijZept's performance by leveraging the speed of Rust-based Pydantic. Update your installation with the following command:

    pip install -U jijzept
  • Released jijmodeling v.1.1.1 and jijmodeling v.1.1.0, which now support the latest version of jijzept. Update your installation with the following command:

    pip install -U jijmodeling

The features of jijmodeling v.1.1.1 and jijmodeling v.1.1.0 are as follows:

  • (jijmodeling v1.1.0) Added a loader for the MPS format used in MIPLIB. If you already have an MPS file, you can read it into jijmodeling.Problem and instance data as follows:
    import jijmodeling as jm
    problem, instance_data = jm.load_mps("testset/data.mps.gz")
  • (jijmodeling v1.1.0) Added a feature to easily fetch data published by MIPLIB. For example, to fetch data from https://miplib.zib.de/instance_details_50v-10.html, use:
    import jijmodeling.dataset
    miplib = jijmodeling.dataset.Miplib(verbose=False) # Downloads data if not cached locally (~600MB)
    problem, instance_data = miplib.load("50v-10")
  • (jijmodeling v1.1.1) Significantly reduced the time required to instantiate the dataset.Miplib class in a Jupyter Notebook environment.
  • (jijmodeling v1.1.0) You can retrieve statistical information on the data published by MIPLIB using miplib.instance_statistics. Here's how to filter instances with no continuous variables using pandas:
    import pandas
    import jijmodeling.dataset

    miplib = jijmodeling.dataset.Miplib(verbose=False)
    df = pandas.DataFrame(miplib.instance_statistics).T
    df[df["continuous"] == 0]

Known Issues

Bug Fixes

  • Various bug fixes related to the from_old_sampleset function which converts old SampleSet objects to a new, soon-to-be-changed SampleSet object (experimental.SampleSet).
    • Fixed issues with empty dict objects in experimental.Violation and experimental.EvaluationResult.
    • Fixed an issue where multiple experimental.VarValues objects were created instead of a single one.
  • (jijmodeling v1.1.0) Fixed an issue where the experimental module, which contains the new SampleSet object, could not be directly imported using import jijmodeling.experimental or jijmodeling.jijmodeling.experimental.

We continue to develop JijZept to make it more user-friendly and valuable. If you have any feedback, feel free to let us know.