![見出し画像](https://assets.st-note.com/production/uploads/images/12481222/rectangle_large_type_2_91b58861f76d75a16e7ad0ebb8a7279c.png?width=1200)
配送計画問題の可視化
配送計画問題に対する可視化を作ってみた。Plotlyを使えば簡単だ。
上に示したのは簡単な問題に対する最適化の結果で、80顧客程度の問題例なので10秒くらいで解ける。顧客の荷物量を重量ベースと容量ベースでみたときに、ボトルネックになっている方の大きさを点のサイズにしている。大きいのは容量が大きい顧客だ。
点の色は時間枠のきつさをcolormapを使って示したもので、赤色が時間枠のきついもの(時間枠幅の小さいもの)、白に近づくと時間枠幅の大きいものになっている。
顧客の荷物量をヒストグラムで示したり、時間枠の集中具合も可視化してみた。絵のセンスがないのであまり綺麗ではないが、とても簡単に描ける。
例として荷物量描画のコードを示しておく。
# weight and volume visualization
from plotly import tools
trace0 = Histogram(x=cust.volume,
nbinsx = 30,
name ="Volume"
)
trace1 = Histogram(x=cust.weight,
nbinsx = 30,
name = "Weight"
)
fig = tools.make_subplots(rows=1, cols=2)
fig.append_trace(trace0, 1, 1)
fig.append_trace(trace1, 1, 2)
plotly.offline.plot(fig);