1. はじめに

1.1. PySIMPLE について

PySIMPLE (pronounced 'pie simple')は Nuorium Optimizer の Python インタフェースです.

従来より Nuorium Optimizer 付属の モデリング言語 C++SIMPLE の文法をできるだけ Python 環境に取り入れることにより,Nuorium Optimizer をご利用いただいていた ユーザは違和感なく,新たにご利用いただくユーザにはモデリング言語 C++SIMPLE と共にご利用いただくことができます.

Nuorium Optimizer は幅広い数理最適化問題に対して豊富な解法を提供する数理最適化パッケージです. PySIMPLE ではこのうち(混合整数)線形計画問題,凸(混合整数)二次計画問題,二次制約付き二次計画問題, および制約充足問題に対して Nuorium Optimizer ソルバーへの接続インターフェースを提供します.

1.2. 動作環境

Nuorium Optimizer V26 に同梱されている PySIMPLE 1.5.0 は以下の環境で動作します.

  • OS

    • Windows : Windows 10, 11, これら OS の Server 版

    • macOS : 13(Ventura), 14(Sonoma)

    • Linux : CentOS Stream 9(RHEL 9), Ubuntu 20 LTS, Ubuntu 22 LTS, Amazon Linux 2

  • Python

    • 3.9, 3.10, 3.11, 3.12 (いずれも 64bit のみ)

    • 依存モジュール

      • scipy (>=1.2.0)

      • numpy (>=1.8.2 from scipy>=1.2.0)

  • Nuorium Optimizer : V26 開発版のライセンスが有効である環境

過去のバージョンの動作環境は Nuorium Optimizer 対応機種/OS#PySIMPLE 動作環境 をご確認ください.

1.3. インストール

PySIMPLE をご利用いただくに先立って Nuorium Optimizer と Python をインストールしておく必要があります.

Nuorium Optimizer のインストール(Windows 版)については下記よりインストールガイドをご覧ください.

Python のインストール(Windows 版)については下記をご覧ください.

PySIMPLE のインストールは利用する Python の pip にて行います. 以下,インストールの手順になります.

PySIMPLE のインストール先は,利用するPython のインストール先の「lib\site-packages」フォルダになります. そのため,インストールするユーザは本フォルダに対して書き込み権限が必要となります. インストール作業を実行する際は,本フォルダに対して書き込み権限があるユーザでログオンしてください.

  1. PySIMPLE のインストール用ファイルを用意する

    Windows 版の PySIMPLE のインストールファイル用フォルダは

    %DRIVE%\pysimple

    です.%DRIVE% は Nuorium Optimizer のインストールメディアをマウントした ISO のドライブを表します. macOS 版,Linux 版の PySIMPLE のインストールファイル用ディレクトリは

    (Nuorium Optimizer のインストール先のディレクトリ)/nuopt/pysimple/

    です.インストール用のファイル(wheel ファイル)の名前は以下となります.

    • Windows 版 : pysimple-1.5.0-cp3x-cp3x-win_amd64.whl

    • macOS 版 : pysimple-1.5.0-cp3x-cp3x-macosx_14_0_x86_64.whl

    • Linux 版 : pysimple-1.5.0-cp3x-cp3x-linux_x86_64.whl

    cp3x はご利用になる Python のバージョンを表す cp39, cp310, cp311, cp312 のいずれかになります.

  2. コンソールを起動する

    Windows 版の場合は,コマンドプロンプトを起動してください. Python のインストール先の書き込み権限がない場合は,コマンドプロンプトを起動する際に 右クリックメニューの「管理者として実行」から起動する必要があります. Anaconda をご利用の場合は Anaconda Prompt を起動してください. macOS,Linux 版の場合は端末を起動してください.

    python コマンドにパスが通っていれば以下のようにしてご利用環境の Python のバージョンを確かめられます. macOS,Linux 版の場合は python コマンドの代わりに python3 コマンドを使用してください.:

    $ python --version
    Python 3.12.2
    

    上記のようにバージョンを確認したあと,適切な wheel ファイルを選択してください. 上記の例では Windows 版で Python 3.12 のため,pysimple-1.5.0-cp312-cp312-win_amd64.whl を選びます.

  3. wheel ファイルを使ってインストールする

    コンソール上で pysimple フォルダに移動し選択した wheel ファイルを用いてインストールします.以下は Windows 版の例です.:

    $ cd /d %DRIVE%\pysimple
    $ python -m pip install pysimple-1.5.0-cp3x-cp3x-win_amd64.whl
    Processing c:\users\uname\desktop\pysimple-1.5.0-cp3x-cp3x-win_amd64.whl
    Requirement already satisfied: scipy>=1.2.0 in c:\users\uname\appdata\local\programs\python\python3x\lib\site-packages (from pysimple==1.5.0) (1.11.3)
    Requirement already satisfied: numpy<1.28.0,>=1.21.6 in c:\users\uname\appdata\local\programs\python\python3x\lib\site-packages (from scipy>=1.2.0->pysimple==1.5.0) (1.26.0)
    Installing collected packages: pysimple
    Successfully installed pysimple-1.5.0
    

    このように最後に「Successfully installed pysimple-1.5.0」と表示されればインストールは成功です. また,numpy,scipy がインストールされていない,もしくは,古いバージョンである場合は 自動的にインストールされますが,インターネットにつながっている必要があります.

    Anaconda をご利用の場合は Using wheel files with conda もご確認ください.

  4. 動作確認

PySIMPLE がインストールされていれば以下でバージョンを確認することができます.:

$ python -m pysimple --version
pysimple 1.5.0

続けて次のコマンドを実行してください.標準出力に大量の出力がされますが, 下のような出力が最後に表示されていれば正しく動作しています.:

$ python -m pysimple.sample.sudoku
:
+-------+-------+-------+
| 5 3 4 | 6 7 8 | 9 1 2 |
| 6 7 2 | 1 9 5 | 3 4 8 |
| 1 9 8 | 3 4 2 | 5 6 7 |
+-------+-------+-------+
| 8 5 9 | 7 6 1 | 4 2 3 |
| 4 2 6 | 8 5 3 | 7 9 1 |
| 7 1 3 | 9 2 4 | 8 5 6 |
+-------+-------+-------+
| 9 6 1 | 5 3 7 | 2 8 4 |
| 2 8 7 | 4 1 9 | 6 3 5 |
| 3 4 5 | 2 8 6 | 1 7 9 |
+-------+-------+-------+

1.4. アップデート

インストール時と同じです.ダウングレードを行う場合は一旦アンインストールが必要です.

1.5. アンインストール

アンインストールはインストールと同じく pip コマンドで行います. 以下のコマンドを実行してください.:

$ pip uninstall pysimple
Uninstalling pysimple-1.5.0:
  Would remove:
    c:\users\uname\appdata\local\programs\python\python3x\lib\site-packages\pysimple-1.5.0.dist-info\*
    c:\users\uname\appdata\local\programs\python\python3x\lib\site-packages\pysimple\sample\*
    c:\users\uname\appdata\local\programs\python\python3x\license
Proceed (y/n)?

「Proceed(y/n)?」と表示されましたら,アンインストールを続ける場合は「y」を入力 しリターンキーを押してください.アンインストールが成功すると下記のように 「Successfully uninstalled pysimple-1.5.0」と表示されます.:

    c:\users\uname\appdata\local\programs\python\python3x\license
Proceed (y/n)? y
Successfully uninstalled pysimple-1.5.0