MENU閉じる

HEXA BLOG

日記

HEXA BLOG日記2013.6.27

ソルバーを使ってみよう

お久しぶりです。
年初から腹筋ローラーを(毎日とはいかないものの)続け、
ついに立ちコロ(膝をつかずにコロコロを行うこと)ができるようになったコウスケですグッド(上向き矢印)
継続は力なりですねわーい(嬉しい顔)
さて、前回統計学のネタを紹介しましたが、
今回も統計学の勉強をしていた時に知った、エクセルの便利な機能を紹介したいと思います。
その名も「ソルバー」です。
これはどういうものかというと、わかりやすく言うのが難しいのですが・・
線形計画問題の解を求めて・・・というと馴染みにくいのでたらーっ(汗)
とにかく「何とかして問題を解いてくれるもの」ですexclamation
これがエクセルの機能に標準搭載されています。
使用の設定を行う必要があります。)
簡単な例で使い方を示したいと思います。

スタッフ10人に差し入れを買っていこうと思っています。
シュークリーム、チーズケーキ、カステラが各300円、500円、200円で、
予算は3000円以内で、人数分の個数を買い、トータルでできるだけ良い商品を
買っていきたい場合、各々何個買えばよいでしょうか。


この問題を解くために、まずは表を作ります。例えば下記のような表になります。
solver_1.png
ツールバーのデータ→ソルバーをクリックし、条件を入力します。
・求めたいのは各商品の数量[D4~D6]のセル
・目的は合計金額[E6]セルの最大化
制約条件は
・予算[C8]セルを3000円以内、
・人数[C9]セルを10人に
ですので、
solver_cond.png
となります。これをソルバーに設定し、「解決」を押すと・・
solver_2.png
見事、数量を求めてくれましたexclamation
このように、与えられた制約のもとで、目的関数を最大(最小)化する問題を、
線形、または非線形計画問題と呼びます。
この例題は簡単な線形計画問題ですが、エクセルのソルバーは高機能な解決エンジンを
つんでおり、一般的に解くのがかなり難しいとされる非線形計画問題でも
解くことができます。
様々な対象に対して使うことができますが、
ゲーム開発においても、最適なパラメータの決定などにも応用できそうですねexclamation
エクセルのない方でもOpenOfficeやLibreOfficeでもアドインをインストールすることで
ソルバーを使うことができますので、ぜひ試してみてくださいexclamation×2
それではまた。

RECRUIT

大阪・東京共にスタッフを募集しています。
特にキャリア採用のプログラマー・アーティストに興味がある方は下のボタンをクリックしてください

RECRUIT SITE