バックナンバー ( 2013 Vol.4 ) 2013 年 7 月 18 日 発行
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= 数理システム NUOPT メールマガジン http://www.msi.co.jp/nuopt/ 2013 Vol.4 ( 2013 年 7 月 18 日 発行 ) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= 数理システム NUOPT メールマガジンでは,数理計画法パッケージ NUOPT に関する様々な情報やご案内を提供していきます. ++++ [目次] ++++++++++++++++++++++++++++++++++++++++++++++++++++++ ■ <トピック> 最新パッチリリースのお知らせ ■ <トピック> シミュレーションから眺めた最適化(第 2 回) ■ <トピック> 数理計画用語集 用語追加 ■ < tips > NUOPT GUI に関する tips(第 2 回) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ****************************************************************** ■ <トピック> 最新パッチリリースのお知らせ ****************************************************************** NUOPT V15 がリリースされてから,はや 7 ヶ月が経ちました.大変お待た せしましたが,先日,リリース後に発見された不具合を修正するパッチを リリースしました. 本パッチを反映させることにより,より安定的に最適化計算を行えるよう になりますので,是非お試しください. 今回のパッチでは,次の問題点が修正されております. 1. アルゴリズム rcpsp 不具合修正 2. アルゴリズム wcsp の結果の再現性の問題解消 3. 分枝限定法の問題の解消 4. メモリーリークの除去 5. .val.print() で複雑な添字付けをしたオブジェクトの表示の強化 また,最新の開発環境である Visual Studio 2012 に正式に対応しました. これまで通り無償版である Express エディションもご利用できます. (*) Visual Studio 2012 から無償版の名称が変わりました. NUOPT で使用できるものは Visual Studio 2012 Express for Windows Desktop になります. 詳細およびダウンロードのページへは,次の URL からご覧ください. http://www.msi.co.jp/nuopt/user/patch/v15patch.html (新田 利博) ****************************************************************** ■ <トピック> シミュレーションから眺めた最適化(第 2 回) ****************************************************************** このコーナーでは,シミュレーションに関連したトピックを中心にご紹介 いたします. 第 2 回目となる今回は,シミュレーションに最適化を応用した具体的な例 についてご紹介いたします. シミュレーションでは,パラメータを様々な値に変化させ,システムの状 態変化の様子を分析します. 例えば,銀行の窓口を例にとると,窓口の担当者の人数(シミュレーション のパラメータ)を 2 人から 3 人,3 人から 4 人,と増やしていった時に, 行列の人数や,待ち時間がどのように変化するか(システムの状態変化)を 分析する事で適切な窓口の要員計画を行ったりします. 具体的に以下のような銀行の窓口における要員計画問題を考えてみましょ う. ・銀行には「預金」,「融資申し込み」,「投資相談」の 3 つの窓口があ ります ・窓口に人を一人配置する毎に「預金」20 万円,「融資申し込み」30 万 円,「投資相談」50 万円のコストがかかります ・お客にサービスを提供するとお客一人あたり「預金」2 万円,「融資申 し込み」3 万円,「投資相談」10 万円の利益を得る事ができます ・各窓口の担当人数は 5 人以下に抑えたいです ・配置する人数は 3 つの窓口をあわせて 10 人までにしたいです これらの条件の下,利益が最大になるようにするには各窓口に担当者をそ れぞれ何人ずつ配置したらよいでしょうか. 単純に考えると,条件を満たすような担当者の配置の組み合わせについて それぞれシミュレーションを実行し,全ての組み合わせの中で利益が最大 となるものを求めればこの問題の解は得られます. しかし,この方法では 1 回のシミュレーションに時間がかかる場合や, 問題設定が変化し調べる組み合わせ数が膨大になる場合には,現実的な時 間で解を得られないことがあるという問題があります. このような場合には,最適化アルゴリズムを使った,シミュレーションパ ラメータの最適化を行います.最適化アルゴリズムを使えば,全ての組み 合わせを探索することなく,最適なパラメータを高速に得る事ができます. NUOPT にも実装されている DFO はまさにシミュレーション最適化に適した アルゴリズムです. 次回は,この問題の具体的な実現方法についてご紹介いたします. (嶋田 佳明) ****************************************************************** ■ <トピック> 数理計画用語集 用語追加 ****************************************************************** 弊社数理計画部では「数理計画用語集」を公開しています. http://www.msi.co.jp/nuopt/glossary/index.html 今回の新語は以下の通りです. <新語> ・安定結婚問題 ・GRG <改修用語> ・Bunch-Parlett 分解 ご意見,ご要望等ございましたら,お気軽に用語集編集委員会 nuopt-glossary@msi.co.jp までご連絡ください. (村山 昇) ****************************************************************** ■ < tips > NUOPT GUI に関する tips(第 2 回) ****************************************************************** このコーナーでは,NUOPT GUI の効果的な利用方法について紹介いたした いと思います. 第 2 回では,前回に引き続いて NUOPT パラメータの設定とデータファイ ル取り込みについて取り上げたいと思います. << NUOPT パラメータの設定 (アルゴリズム) >> 前回はどちらかといいますとハードに関する NUOPT パラメータの設定をご 紹介いたしました.今回は NUOPT に内蔵されておりますアルゴリズムに関 する NUOPT パラメータの設定についてご紹介いたします. NUOPT には様々な数理計画アルゴリズムが実装されておりますが,大まか に分けますと内点法,単体法,分枝限定法の三つがございます. NUOPT パラメータではこれらに関わるパラメータを GUI 上で設定すること ができます.多くは計算機実装に伴う停止条件や探索の範囲といった境界 値の設定です.ですので,詳細を把握していないモデルや大規模なモデルを 扱う際,あるいは収束に時間がかかると感じたとき,各種の条件を緩和し て様子をみるという反復作業が容易となります.ここでどうやっても想定を 超えた計算時間となってしまう場合には,モデルの練り直しや扱うデータ ファイルを工夫したりといった根本的な改善が求められるでしょう.こう してマウス操作で項目を見ながら,早期に問題を発見することもでき,大 変便利です. << データファイル取り込み >> モデルファイルが一度できてしまえば,後はデータファイルを食わせて, 大量処理や自動化を行いたいところですよね. そこで最後にデータファイルにまつわる GUI ならではの利用方法について 紹介いたします. データファイルの作成方法はユーザ環境や目的によって様々なため,これ が原因となるエラーが,思いの外,起こりやすいものです. そのような躓きの回避のためには,はじめてモデルファイルとリンクする 際に自動的に立ちあがる画面“データインポート”での設定編集が有効で す. データインポートの様々な設定のうち,データファイル作成時に紛れ込ん だ非数についてのエラー対策について紹介したいと思います. 例えば整数パラメータとしての湿度についてのデータファイルがあったと き,NaN だとか ?? はたまた INFTY とかいった文字列入力がデータの中に 紛れ込んでいる可能性があります.このままではユーザが意図した計算を モデルが行うかは全く保証できません. このような問題に対処する一つの方法として,データインポートの列形式 選択の欄にて, 「エラー処理方法」:ユーザ指定 「エラー時補填値」:置換したい値 と例外処理を設定して,データの前処理を施すという手段があります.こ うすることで自動的にエラー処理を行ってくれます. 2 回に亘り GUI 上での NUOPT の tips を紹介させていただきました.こ れまでの内容で NUOPT GUI を一通り使いこなすことができるでしょう. 今後もよりユーザが取り扱い易いインターフェースの開発をスタッフ一同 続けていきたいと思います. (伊藤 元治) ================================================================== ※ このメールは,展示会・セミナー等で名刺交換をされた方,過去に NUOPT に関するお問い合わせを頂いたことのある方,および本メール マガジンの配信を希望された方にお送りしています. ※ バックナンバーはこちらから御覧頂けます. http://www.msi.co.jp/nuopt/mailmagazine/index.html ※ 本メールマガジンは等幅フォントでお読みになることを推奨します. ※ 今後このメールマガジンが不要な方は,誠にお手数ですが,「メール マガジン配信停止」という件名のメールを nuopt-ms@msi.co.jp にお送りください.なお,反映作業の都合上,数日間は旧情報にてメー ルが届く場合がございます.なにとぞご容赦ください. 発行:株式会社 数理システム << NUOPT >> 担当 東京都新宿区新宿二丁目 4 番 3 号 フォーシーズンビル 10 階 tel : 03-3358-6681 e-mail : nuopt-info@msi.co.jp ================================================================== |