1

os x 10.11、anaconda 1.3.1、python 3.5、glpk 4.60、pyomo 5.0.1、spyder 3.0.2 を使用しています。pyomo を使用して glpk を呼び出すスクリプトを実行すると、次の警告とエラーが表示されます。

WARNING:pyomo.solvers:Could not locate the 'glpsol' executable, which is required for solver 'glpk'
ApplicationError: No executable found for solver 'glpk'

ターミナルまたはjupyterノートブックを介して同じスクリプトを開始すると、問題なく実行されます。

以下を使用して glpk をインストールしました。

conda install -c conda-forge glpk=4.60 

spyder 環境内で glpk を動作させるにはどうすればよいですか?

私が走れば

which glpsol

私は得る

/Users/myusername/anaconda/bin/glpsol

ただし、ディレクトリを Spyder 内の PYTHONPATH マネージャーに追加しても、何も変わりません。

どんな助けでも大歓迎です。ありがとう

4

1 に答える 1

2

Pyomo の GLPK インターフェイスglpsolは、別のプロセスとして起動することで機能します。環境変数glpsolを検索して実行可能ファイルを見つけます。(あなたの場合は)へのパスがスパイダー環境の環境変数にあるPATHことを確認する必要があります。これは、いくつかの方法で行うことができます。glpsol/Users/myusername/anaconda/bin/PATH

  • [Windows のみ] これは、spyder IDE でTools-を使用して編集できます。Current user environment variables
  • [Windows のみ] Windows 内でユーザーの PATH を設定できます (オプションへのルートはバージョンによって異なります。たとえば、Windows 7またはWindows 8.1を参照してください。
  • [Unix/Linux/MacOS] シェルの初期化 ( ~/.bashrcBASH~/.cshrc用、CSH/TCSH 用など) を編集して、PATHそこに環境変数を設定できます。
  • [ Spyder内Toolsで] 数行PreferencesのPython コード、またはディレクトリを IPython コンソール PATH に追加する小さなスクリプトを指定できます。IPython consoleStartup

    import os
    os.environ['PATH'] = os.pathsep.join((os.environ['PATH'], '/Users/myusername/anaconda/bin/'))
    

注:PATHPYTHONPATHは同じではありません:PATHは実行可能な検索パスです。 PYTHONPATHPython がインポート可能なモジュールを見つけるために使用する検索パスです。

于 2016-12-27T16:45:56.513 に答える