Google Colabは、ブラウザからPythonプログラムを書いて実行できる無料のクラウドサービスです。ここでは、nAG Library for PythonをGoogle Colabで利用するための基本的な手順をご紹介します。
基本設定
ステップ1: nAGライブラリのインストール
新しいセッションを開始するたびに、以下のコマンドを実行してnAGライブラリをインストールします。これは、Google Colabが提供する仮想マシンが一時的なものであり、セッションが終了すると環境がリセットされるためです。
!python -m pip install --extra-index-url https://www.nag.com/downloads/py/naginterfaces_nag naginterfaces

ステップ2: ライセンスキーの取得
nAG Library for Pythonを使用するには、ライセンスキーが必要です。以下の2種類のライセンスキーがあります:
トライアルキー: 評価目的で使用できる無料のキーです。nAGのウェブサイトからトライアルキーを取得できます。トライアルキーは1ヶ月間有効で、すべての機能が利用可能ですが、トライアル目的以外での使用は許可されていません。
正規ライセンスキー: 製品版のキーです。ANNUALライセンスを購入すると、ライセンスキーがメールで送られてきます。正規ライセンスキーは1年間有効で、研究や学習などのアカデミック利用や商用利用が可能です。
ライセンスキーは、個人または組織に紐づいています。他者と共有したり、不正に使用したりしないようにしてください。
ステップ3: Googleドライブのマウント(オプション)
コードやライセンスキーを永続的に保存したい場合、Googleドライブをマウントします。これにより、セッション間でもファイルを維持できますが、ドライブのマウントはセッションごとに必要です。
from google.colab import drive drive.mount('/content/drive')
ステップ4: ライセンスキーファイルの設定
以下のYOUR-LICENCE-KEY HEREになっている部分を実際のライセンスキーで置き換えて実行してください。
key_path = '/content/nag_key.txt' with open(key_path, 'w') as f: f.write(""" YOUR-LICENCE-KEY HERE """) # 例(サンプルで無効なキーです) NLL6I29XV TRIAL 2024/04/18 "t=eRGcGsoKgejkbYoltUdUmjb9" import os os.environ['nAG_KUSARI_FILE'] = key_path
これらの操作は、セッション内で1回行えば、そのセッション内の後続のセルで有効です。
ステップ5: クイックチェックの実行
セルに以下のコマンドを打ち込み、インストールが正しく完了したかを確認します。
!python -c "from naginterfaces import quick_check; quick_check()"
問題がなければ、各種情報が表示され、最後に以下のように all ok と表示されます。
QUICK CHECK: all ok
このチェックが失敗した場合は、以下の点を確認してください:
- ライセンスキーが正しく設定されているか
- ライセンスキーの有効期限が切れていないか
- nAGライブラリが正しくインストールされているか
問題が解決しない場合は、nAGのサポートにお問い合わせください。
nAGライブラリの基本使用方法
Rosenbrock関数の最小化
以下のコード例は、Rosenbrock関数を最小化するものです。セルにコピーしてお試しください。
# ライブラリのインポート from naginterfaces.library.opt import bounds_quasi_func_easy # 目的関数の定義(Rosenbrock関数) rosen = lambda x: ( sum(100.0*(x[1:]-x[:-1]**2.0)**2.0 + (1.0-x[:-1])**2.0) ) # 初期値の設定 x = [1.2, 1.0, 1.2, 1.0] # 変数の数を取得 n = len(x) # 境界条件の設定 bl, bu = ([0.0]*n, [2.0]*n) ibound = 0 # ソルバーの呼び出しと最適化問題の解決 opt_soln = bounds_quasi_func_easy( ibound, rosen, bl, bu, x, ) # 最適解における目的関数の値を表示 print('Function value at lowest point found is {:.5f}.'.format(opt_soln.f)) # 最適解の変数の値を表示 print('The corresponding x is (' + ', '.join(['{:.4f}'] * n).format(*opt_soln.x) + ').')
この例では、Rosenbrock関数の最小化を行っています。最適化の設定には、初期値、変数の数、変数の下限と上限、境界条件などを指定します。最小化の実行後、最適点での関数値と変数の値が表示されます。
以上が、Google ColabでのnAG Library for Pythonの基本的な使用方法です。nAG Library for Pythonにいては、製品ご案内ページ及びマニュアルページをご参照ください。