タグ

Pythonと最適化に関するpetite_blueのブックマーク (3)

  • Python言語による実務で使える100+の最適化問題 | opt100

    指針 厳密解法に対しては、解ける問題例の規模の指針を与える。数理最適化ソルバーを使う場合には、Gurobi かmypulpを用い、それぞれの限界を調べる。動的最適化の場合には、メモリの限界について調べる。 近似解法に対しては、近似誤差の指針を与える。 複数の定式化を示し、どの定式化が実務的に良いかの指針を示す。 出来るだけベンチマーク問題例を用いる。OR-Libraryなどから問題例をダウンロードし、ディレクトリごとに保管しておく。 解説ビデオもYoutubeで公開する. 主要な問題に対してはアプリを作ってデモをする. 以下,デモビデオ: 注意 基的には,コードも公開するが, github自体はプライベート そのうちにするかもしれない(予約はしているが, 保証はない). プロジェクトに参加したい人は,以下の技量が必要(github, nbdev, poetry, gurobi); ペー

  • Python + Pyomoによる(非線形)数値最適化 - Easy to type

    TL; DR Pythonのデータマネジメント技術と数値最適化をスムーズに繋げたい Pyomoを使うことで自然な記法でモデルを組み立てることが出来る Webドキュメントは貧弱だが、コミュニティは活発! 概要 数値最適化は機械学習や数値モデリングの基礎も基礎ですが、単に役に立ちます。Pythonという観点を度外視すれば、いろいろな手段がありますが、基的には共通するフローがあります。 現象から最適化したい目的関数を決定する 目的関数に付随する制約条件を立式化する データを用意し、モデリング言語を記述する モデルをソルバーへ投入し、解を得る こういった作業をするための環境は商用でも色々と売られていまして、例えばAIMMS社とか、GAMS社、AMPL社といった会社は最適化の開発環境や言語を作って販売しています。 もちろん非商用でも、こういう団体は存在し、COIN-ORではライブラリやソルバーを開

    Python + Pyomoによる(非線形)数値最適化 - Easy to type
  • Pythonでベイズ最適化を行うパッケージ GPyOpt - Qiita

    #ベイズ最適化とは ベイズ最適化は,ガウス過程(Gaussian Process)というベイズ的にカーネル回帰を行う機械学習手法を使って,何らかの関数を最適化する手法です.このベイズ最適化のメリットは様々で,例えば,入力が連続値でない(微分不可能な)関数に適用できたり,局所解がある関数に強かったりします.これらのメリットのため,今後様々な問題に適用可能だと考えられます.ここでは,Pythonでベイズ最適化を行うパッケージであるGPyOptについて使い方を説明します. #GPyOptのインストール 環境としてanacondaを使います.最新のscipyとGPy(ガウス過程)のパッケージが必要となっています. #入力が1次元の関数最適化(解説) まずは,入力が1次元の非線形関数を最適化しましょう. 今回は,$f(x)=\cos(1.5x)+0.1x$の関数を,$0\leq x \leq 10$

    Pythonでベイズ最適化を行うパッケージ GPyOpt - Qiita
  • 1