禁煙25日目

会社でビンパッキング問題*1を解くプログラムを書いた。
仮想化統合の提案を行うに当たり、最大限効率よく物理サーバに仮想サーバを集約した場合、一体何台の物理サーバが必要なのか、また、可用性向上のために同居を許さない組み合わせを考慮した場合、何台の物理サーバが必要かというのを、手作業で考えるのが面倒だったので、プログラムを書いた。
枝狩りが不十分につき、それなりに時間がかかるけど、一応解ける状態まで仕上げてみた。人間よりは早く&正確に解け、その上、配置例も出力するようにしたので、意外に役に立つかもしれない。