マガジンのカバー画像

Pythonによる最適化

249
最適化やデータ解析はPythonを使うと瞬時にできるよ,という話です.
運営しているクリエイター

2020年3月の記事一覧

統計で嘘をつく方法

統計で嘘をつく方法の基礎に,図のスケーリングを変えるというのがある.

コロナの感染数の増加と病床数の容量の図をたまに目にするが,あれは典型的な嘘だ.

病床の容量はほとんどx軸と見分けが付かないほどに小さく,感染数は,色々な手をうったとしてもそれを軽く超える.

テレビなどで示している図にはy軸のスケールがなく,数値も表示されていない所謂概念図だ.これを信用して,容量を超えないという説を信じるの

もっとみる

法律

こういった非常時に、法律に寄ればこうなので、こうすべきだという「専門家」が多いことは残念だ。

非常には、非常時の意思決定が重要になる。例えば、津波が迫っているときに、幼稚園児を避難させるためにトラックの荷台に載せることが違法だという人がいたとする。彼(彼女)は法律は遵守しているが、人間としては問題がある。

似たようなことが、コロナ騒動でも起きている。法律通りだと、外へ行くなとは言えない、法律通

もっとみる

今後の世界

私が唯一フォローしている安田先生の記事で,コロナ後の世界についての展望について述べていた.

全文は新聞を読んでいないので分からないが,激しく共感した.

彼はまだ若い経済学者で,義理のパパが友人だ.しかし,考え方は義理のパパとか私(両者とも精神年齢が低いことで有名だ)を超えて,正しい道を指し示している.

今回のコロナの犯人を捜したり,愚痴を言うのではなく,これを機会に世界を変えようというのは,

もっとみる

続シフト最適化

シフト最適化だが、学生が作ったものを直すより自分で一から作成した方が早そうだったので作ってみた。

コード量は1/3くらいになった。実際問題に、最適化ソルバーを使う場合の参考になるかと思うので、指針を書いておく。

1 クラスなど作らずに、全て0からの通し番号で管理した。

2 データはlinuxやgitで泣きが入るExcelではなく、csvファイルで管理して、それを読んでデータフレームで処理をす

もっとみる

サービスネットワーク設計システム

宅配便のネットワークを最適化するアプリをstreamlitで書いてみた。

最適化ソルバーで解いた後の変数やモデルのオブジェクトはハッシュ可能ではないので、Streamlitのキャッシュに保管できない。適当な形式(辞書など)に変換して、返り値にすればキャッシュにのる。

数時間でデータアプリを作成するツール

数時間でデータアプリを作成するツールというキャッチフレーズでお馴染みのStreamlitだが,サンプルの例題を解説しているに過ぎないものが(英語を含めても)ほとんどだ.

本家はこちら.

実践的な使用法を自分と学生用にメモしておく.

Streamlitでは上から順に実行して,それをWebに吐き出すのだが,ロジックのコントロールに注意する必要がある.

たとえば,buttonでユーザーがボタンを

もっとみる

scmopt

Streamlitでweb appを作ってみた.scmoptプロジェクトのページはこちら.

ABC分析とランク分析 abc

配送計画ソルバー vrp : METRO (MEta Truck Routing Optimizer)

これはDashで作ったのでペンディング.

在庫最適化、安全在庫配置 inv : MESSA (MEta Safety Stock Allocation system

もっとみる

logistic network design system using streamlit

Streamlitを使ってロジスティック・ネットワーク設計システムを作成してみました。

Streamlitによるダッシュボード

ダッシュボードを作るライブラリとしてはDashを使っているが、ちょっと難しくて初心者には敷居が高いと感じていた。学生や共同研究者に依頼してもPlotlyまではかけるが、Dashは難しいようだ。

もっと簡単なものを探していたら、Streamlitというのを見つけた。

Plotlyの図オブジェクトも入れられる。例えば、ガントチャートはこんな感じだ。

import streamlit as st

もっとみる
シフトスケジューリング

シフトスケジューリング

昔、学生さんがやったU社のシフトスケジューリングの最適化をscmoptに入れてみた。

バグだらけで苦労したが、なんとかExcel を入れると、画面を出すところまでできた。あとは、データベース(Webアプリ;Django+MOngoDBとか)から入れて、Dashなどで可視化するだけだ。

最適化の部分はGurobiかSCOPで切り替えできる。性能は同等だが、時間制限付きで大規模問題例(U社では80

もっとみる