Google Cloud NEXT '19 in Tokyo での発表資料です。 https://cloud.withgoogle.com/next/tokyo
三井 康行GCP を活用した物流倉庫内の異常検知アスクル株式会社先端テクノロジー 主任研究員
View Slide
自己紹介
自己紹介氏名: 三井 康行略歴: 2003 年 ~ 国内大手電機メーカー研究員テキスト音声合成等,音声言語処理の基礎研究 2016 年 10 月 ~ 現職現在のテーマ: 機械学習を用いた最適化 在庫配置,配送,需要予測,etc. その他諸々(予知保全,データ基盤整備,庫内自動化,etc.)
アスクルのご紹介
事業概要1993 年 事業所向け (BtoB) 通販事業開始2012 年 個人消費者向け (BtoC) 通販事業開始 (LOHACO)
連結売上高の推移FY2018FY2010FY2000FY1994(億円)3,5003,0002,5002,0001,5001,000500
取扱商品BtoB BtoC
アスクルの物流基盤
アスクルの物流倉庫における自動化
ASKUL Value Center 関西(AVC関西)稼働開始:2018 年延床面積:約 5 万坪
ASKUL Value Center 関西(AVC関西)稼働開始:2018 年延床面積:約 5 万坪コンセプト:人が歩かない物流センターコンベヤ長:20km 超自動化比率:約 80%
紹介動画(イベント時のみ再生)
自動化推進に伴う課題
膨大な量の設備● 24/7 のメンテナンス○ 設備故障がお客様に直結○ サービスレベルの維持● 設備専門スタッフの現場常駐○ 特殊な技能を有する人材確保○ 全国に展開する倉庫「明日来る」のために
保全コスト● 定期的なメンテナンス○ 故障していない箇所も点検/交換対象○ コスト大予防保全の限界
予知保全への転換● 故障を事前に予測○ サービスレベルの維持○ 人員配置の適正化● 適切なタイミングで保全○ 保全コストの最適化
GCP を活用した異常検知
バーコードリーダー(BCR)● バーコードを読み取る機械○ 段ボール○ コンテナ● 固定式
コンテナ
BCR の用途● バーコードの持つ情報○ 商品情報:倉庫管理システム(WMS)と連携● バーコード読取後の処理○ コンベア分岐部での進路決定○ 後工程への商品情報伝達
No Read Error● BCR のエラー○ バーコードの読取に失敗● 原因○ 高速移動○ バーコードの擦れ○ 振動等による BCR 本体のズレ○ BCRの異常(設定ミス,故障)
対応● エラー時の個別対応は困難○ 日常的に読取失敗が発生○ 少数回のエラーは様子見● 頻発する場合○ 点検○ 調整○ 交換主に事後対応エラー 故障
事前把握は可能?● 倉庫内でのエラー確認は困難○ 数百台 @ AVC 関西○ エラー表示端末が倉庫内に点在○ 全件確認に数時間● 異常判断が困難○ 何回エラーを出したら異常?○ 徐々に/急に増えたら異常?従来設備では不可能
やりたかったこと1. No Read Error の時系列変化が見たい!2. No Read Error が頻発する BCR をいち早く把握したい!
GCP の活用データ処理ログ蓄積見える化
データフロー設備稼働 log確認点検処置
BigQuery によるデータ蓄積● 設備稼働ログを BigQuery に蓄積○ 全 BCR について■ 正常通過回数■ No Read Error 回数● データ可用性を重視
Compute Engine によるデータ処理1. Data Portal 用データ加工○ BigQuery + python(pandas + pandas_gbq) にて実装○ 一定期間毎のエラー率,エラー回数累計等を計算2. Slack を用いたアラート発報○ 1 日1 回アラートを発報○ 対話形式で対応済機器を登録
Slack 画面イメージ(アラート時)日付 BCR位置 NR率 NR回数 通過回数20190701 3F_A_GTP_15_S 1.09 20 180920190701 4F_C_GTP_03_S 3.56 98 275620190701 3F_A_GTP_IN_A1_E 2.53 25 9872019年7月1日分のBCR No Readアラートをお知らせします。AVCK_bot アプリ 10:15過去5日間で 「3F_A_GTP_15_S」が3回【 2019/06/29 対応済 】 「4F_C_GTP_03_S」が2回それぞれ閾値を超えています。送信+
Slack 画面イメージ(対応時)送信+過去5日間で 「3F_A_GTP_15_S」が3回【 2019/07/01 対応済 】 「4F_C_GTP_03_S」が2回それぞれ閾値を超えています。
Slack 画面イメージ(対応時)送信+ 4F_C_GTP_03_S 対応完了@AVCK_bot過去5日間で 「3F_A_GTP_15_S」が3回【 2019/07/01 対応済 】 「4F_C_GTP_03_S」が2回それぞれ閾値を超えています。
Slack 画面イメージ(対応時)4F_C_GTP_03_S 対応完了三井_yasuyuki_mitsui 12:30送信+過去5日間で 「3F_A_GTP_15_S」が3回【 2019/07/01 対応済 】 「4F_C_GTP_03_S」が2回それぞれ閾値を超えています。@AVCK_bot
Slack 画面イメージ(対応時)三井_yasuyuki_mitsui 12:30@yasuyuki_mitsui: 「4F_C_GTP_03_S」を対応済リストに登録しました。送信+アプリAVCK_bot 12:30過去5日間で 「3F_A_GTP_15_S」が3回【 2019/07/01 対応済 】 「4F_C_GTP_03_S」が2回それぞれ閾値を超えています。4F_C_GTP_03_S 対応完了@AVCK_bot
Data Portal によるグラフ化● BigQuery に蓄積されたデータをグラフ化○ No Read Error 率を時系列可視化○ Error 率の推移を確認● 現場スタッフによる UI 利用○ 対象 BCR のフィルタリング○ 表示期間指定
Data Portal によるグラフ化の例
Data Portal によるグラフ化の例● 直感的で分かりやすい UI● BigQuery と連動してグラフが自動更新
現場からの声● 「エラーが頻発している BCR をいち早く把握することで重大な問題に発展する前に対応できるようになった」● 「エラー多発の要因分析ができるようになった」● 「他の機器にも展開したい」
おわりに
今後の展開● 予知保全の実現へ○ No Read Error 傾向と現場対応実績との相関分析○ 対応方針を推測○ 故障時期の予測● BCR 以外への設備への展開
GCPとの連携強化(予知保全以外)● スタンドアロンなデータ同士の GCP 上で連携○ 在庫○ 売上○ 配送○ 販促 etc.● 未来の姿:全てのデータを GCP 上で処理○ 分析○ 予測(機械学習)