Try   HackMD

JupyterLab Desktop + Gurobi

JupyterLab Desktop を使って最速で Gurobi が使えるようになるまでの手順をまとめてみました.

この方法の良いところ:

  1. M1 Mac でも Windows でも面倒な設定を一切せずに使える.
  2. JupyterLab Desktop は~/Applications/JupyterLab.app/Contents/Resources/jlab_server (Windowsの場合は C:\JupyterLab\resources\jlab_server)の下に Python 環境を構築するので, システムを汚さない.

JupyterLab Desktop のインストール

Mac の場合

  • https://github.com/jupyterlab/jupyterlab-desktop から MacOS 版をDL
  • 下記が表示されたら「ダウンロード」から右クリックで「開く」.
    ![[スクリーンショット 2021-10-13 10.33.43.png|200]]
    もう一度警告が出るが気にしない.
    ![[スクリーンショット 2021-10-13 10.36.54.png|200]]
    自分用にインストール」を選ぶこと.そうでないとモジュールがインストールできない.間違ってしまったらアンインストールしてやり直すこと.
    ![[スクリーンショット 2021-10-07 15.17.06.png|200]]
    アンインストール方法はこちら:
    https://github.com/jupyterlab/jupyterlab-desktop/blob/master/user-guide.md#uninstalling-jupyterlab-desktop
    ~/Applications もしくは /Applications にある JupyterLab をアイコンごとゴミ箱へ.
    ​​rm -rf ~/Library/Application\ Support/jupyterlab-desktop 
    ​​rm /usr/local/bin/jlab
    

    Windows の場合

    -「発行元が不明」的なダイアログが出てインストールできなかった場合は,詳細を押してインストールする参考
    • Just me を選択
    • Recommended とされている下記の2つの項目だけ選択して Install.
      • Register JupyterLabDesktopAppServer as my default Python 3.8
      • Clear the package cache upon completion

Gurobi のインストール

Mac の場合

  • JupyterLab Desktop を起動し,ランチャーからターミナルを立ち上げ,以下を実行する:
    ​​conda install gurobi
    
    プロンプトで何か確認されたら y を押せばいい.

Windows の場合

  • JupyterLab Desktop のターミナル(Powershell)は(長江には)使いにくいし,パスも通っていない(し,やり方も判らない)ので,ランチャーから ipynb を起動し,コマンドセルに以下を入力して実行:
​​​%conda config --add channels http://conda.anaconda.org/gurobi
​​​%conda install

Gurobi の academic license の取得

Mac の場合

  • LICENSE ID が発行されるので,JupyterLab Desktop のランチャーから Terminal を立ち上げ,以下を実行:
    ​​grbgetkey xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    
    デフォルトでは /Users/xxxxxx/gurobi.lic がライセンスファイルになる.
  • 上記で作成したライセンスファイルを JupyterLab Desktop で使えるようにするには, JupyterLab のコードセルに下記を記載して実行.
    ​​%env GRB_LICENSE_FILE=/Users/xxxxx/gurobi.lic
    

Windows の場合

  • JupyterLab Desktop のランチャーから Terminal を立ち上げ,以下を実行:
​​C:\JupyterLab\resources\jlab_server\grbgetkey.exe xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

デフォルトでは C:/Users/xxxxxx/gurobi.lic がライセンスファイルになる

  • ライセンスファイルを使えるようにするには, 一度 JupyterLab を再起動 してから,JupyterLab のコードセルに下記を記載して実行.
​​%env GRB_LICENSE_FILE C:\Users\xxxxx\gurobi.lic

ライセンスが読込めているか確認

上記手順で GRB_LICENCE_FILE を適切に設定した後,JupyterLab Desktop のコマンドセルに以下を入力して実行:

import gurobipy as grb
model = grb.Model()

実行結果として

Academic license - for non-commercial use only - expires xxxx-xx-xx
Using license file /Users/nagae/gurobi.lic

と表示されれば(Windows の場合は C:\Users\xxxxx\gurobi.lic)と表示されれば OK.