# 【Cチーム】西日本技術者GHP2020 実践研修記録シート ## リンク集 * [Teams(グループ用会議室)](https://teams.microsoft.com/l/meetup-join/19%3ameeting_MzcxMTkxNmEtN2IxMy00ZmRlLWE2NTgtMGQ1MTc0NDVmZGJm%40thread.v2/0?context=%7b%22Tid%22%3a%22c387f318-c61f-475f-9b20-990594e0caf1%22%2c%22Oid%22%3a%221b276270-0f51-4039-8a1e-ed0dccfdded1%22%7d) * [Mural(グループ用ホワイトボード)](https://app.mural.co/t/hackcamp2810/m/hackcamp2810/1613875390148/8243a4f6d61a1a31aac32a9316c147260c04e315) * [参加者リスト](https://docs.google.com/spreadsheets/d/1qFlSBd5i2kSMFsEqOSfcG4kP9W9CuDKyP2_PrfFDQKA/edit?usp=sharing) ## チームメンバー * ミヤモト リョウタ * かしわぎ * おいわけ * おざき ### チームで策定したコミュニケーションルール ``` (例/前回までの実践研修で出たルール) * 複数でのディスカッションでは発言に対して肯定的な意見(協調)を出すことで議論を進める * コミュニケーションを図るには、一人ひとりの発言が重要であるので、意見がない場合でもその旨を発言する * 60分間に1度、意見交換の時間をとります * 悩んでいる時も必ず声を出して温度感を伝えます etc... ``` * 意見発言に対して否定的な反応は禁止する * 55分作業を進めたらTeamsに集まって5分で進捗課題(KPT)を確認する * (後ほど再検討) 課題に対しもっとも熱意のある人物をリーダーとし、意見が対立した場合はリーダーの意見を採用する `↑↑ Day1 14:00くらいまでを目処に入力` --- ## 1. 取り組む課題 `あなたのチームが取り組む課題は?` ### 課題一覧 ``` 1. 断水が多く発生しているにも関わらず、給水所が少ないエリアがある。給水所をニーズに合わせて配置したいが、必要なエリアの特定ができていない。 2. 住家被害が特に多く発生している地域があり、避難所のキャパシティが足りていない。避難所をニーズに合わせて配置したいが、必要なエリアの特定ができていない。 3. 市民からすると空いている避難所がどこか分からないので、一部の避難所は定員オーバー、コロナ禍にも関わらず密な状況を避けるのが難しい状態。空きのある避難所にバランス良く市民が避難できることが理想。 4. 土地勘のない外国人観光客に避難所情報や食糧等の配給情報が行き渡りません 5. 近隣自治体から集まってきた多くのボランティアのマンパワーを有効活用できていません。各ボランティアセンターでの情報管理はアナログで、どこに人手が必要で、どんなボランティア活動が可能なのか、リアルタイムで情報が届かないためボランティアの方々の待機時間がとても長くなっており、勿体無い状況です。 6. その他 ``` ### 取り組む課題 1. 断水が多く発生しているにも関わらず、給水所が少ないエリアがある。給水所をニーズに合わせて配置したいが、必要なエリアの特定ができていない。 #### 選定理由 グループワークで意見を出し合った際に、全メンバーがこの課題に対して言及していたため、共通認識として設定しやすかったため。 ## 2. 課題に対するアプローチ 「(なんの課題に)断水(給水)問題」を解決するために、 「(なんのテクノロジー)エリアに対する重み付けから空間演算を使った最適分割」と 「(なんのデータ)人口分布図、断水エリア、標高などのデータ」を使い、 「(誰に/どこに)自治体」に対して、 「(どういう方法で)給水するべき地点の可視化」をして、 「(どんな風に解決する)ニーズに合わせた設置が出来る」ようになる。 ### メンバー意見 - 自治体職員が味付けできるようになってれば汎用性高いかも? - 参照するデータの差し替えが容易とか? - (市民目線)拠点からの給水作業も大変なので、ラストワンマイルも考慮してくれると嬉しい? ### メンター意見 - 実際の状況は時間軸で変わっていくと思うが、そこまで組み込むのは難しいかも? - どの場面かに絞った方が良いかも? - 水道復旧する場所、川・井戸から(飲用ではない)水が取れる - 人口は[RESAS](https://resas.go.jp/)、標高は標高APIで取れる - 例えば水ではなく食料配布の拠点も計算できるようにしてみる? - ターゲットを絞った方が良いので、例えばラストワンマイルであれば、高齢者向けの給水などを課題にした方がユーザのニーズに添える? ## 3. 役割分担 `あなたのチームに必要な役割のみ項目を残して活用してください` * 進行管理:おざき<タイムキーパー> * データ収集:柏木を中心に * ドキュメント整備(このHackMDの利用を推奨):追分 * コミュニケーションデザイン:宮本 * 開発: web(柏木、宮本)、空間情報(尾崎、追分) * デザイン:宮本 `↑↑ Day1 15:30くらいまでを目処に入力` ### データ収集 実際のデータを扱うにあたり、想定県を合わせた方が良い → 熊本地震による過去の断水データなどが存在していると思われる熊本県を選定 → 県だと広すぎてデータが大きくなるため熊本市に絞る - 人口:宮本 [国土数値情報 | 500mメッシュ別将来推計人口データ(H30国政局推計)(shape形式版)](https://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-mesh500h30.html#prefecture43) - 標高:尾崎 国土地理院 [基盤地図情報](https://fgd.gsi.go.jp/download/menu.php) ダウンロードに会員登録(無料)が必要 - 過去の断水データ:追分 N2EM [給水・断水データ](https://www.n2em.jp/opendata/) 福島県沖の地震:断水情報 → 熊本県の断水データは存在しなかった → [熊本地震の復興記録](https://www.kumamoto-waterworks.jp/wp-content/uploads/2018/03/91463c5df3641f9a37df4bd88facc6e1-2.pdf)から断水被害の大きい地域を推定し、仮想の断水データを作ることで代用  - 避難所:追分 国土数値情報ダウンロード [避難施設データ](https://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-P20.html) ### 課題に対する理解の深掘り:柏木 [応急給水](https://www.kumamoto-waterworks.jp/waterworks_article/15881/) ##### 運搬給水 断水地域、各避難所、主要施設及び病院等重要施設に、給水車や給水タンク(車載型)で飲料水を運搬 ###### 給水車 5台配備 ###### 給水タンク ラック等に搭載し、運搬給水を行うためのタンク29個 ##### 消火栓の活用 道路上に100~200メートル間隔で設置されている消火用の水栓 使用可能な消火栓がある場合 - 仮設給水所 - 給水車等への水の補給 ##### 応急給水を実施する箇所 優先して実施 - 災害医療活動拠点病院や人工透析治療病院等の重要医療施設 - 重度身体障がい者施設や老人ホーム等の災害弱者施設 - 重要公共施設(市役所・区役所等) - 避難所(小学校・公園等) 応急給水を実施する箇所・方法・時間は、災害の種類・規模・被害状況・断水範囲により異なります。応急給水活動を実施する際には、広報車両を用いて、現地広報(応急給水方法、実施場所、給水時間等の周知)を行います。 ##### 給水基地・災害対策用貯水施設 ###### 給水塔 給水車に水を補給する施設。合計5ヶ所 - 健軍水源地に2ヶ所 - 上下水道局内に1ヶ所 - 西部・北部上下水道センターに各1ヶ所 #### 熊本地震の応急給水の振り返り [熊本地震の応急給水の振り返り資料](https://t.co/XCZZxXUFDb?amp=1) ##### 時間経過と復旧の割合 - 4日で5割 - 1週間で6-7割 - 2週間で8-9割 - 3週間で10割 memo - 復旧状況に応じて需要が減る給水拠点が出てくる - 一方、供給が不足し続ける給水拠点もある - 濁りで使用不可になる水源地があり、充水速度が追いつかない - 初動が決まってない自治体もある ##### 機能の考察(理想) - 水道復旧後、消火栓を使った簡易給水所を作る場合、どこから着手するのが良いか知りたい? - ① 設置候補場所の優先順位の見える化? - 時間経過によって発生する給水所ごとの需要量変化を捕らえ、給水計画を是正したい? - ② 給水需要量の見える化? - 応援自治体による応急給水の体制づくりの支援? - 給水需要量の見える化? - 新規給水拠点の優先順位の見える化? - 応援規模ごとの最適化?(1000Lならココ、500Lならココ、みたいに?) ##### ①②の実現に向けて? ###### データ - 給水拠点の候補場所? - 消火栓の位置情報 - 熊本市はない? - [指定緊急避難場所](https://www.geospatial.jp/ckan/dataset/hinanbasho) - 熊本県Shapefile、GeoJSONともにあり - 指定「緊急」避難場所は一時的な避難場所(堅牢な建物など) - 給水拠点として使うのは[指定避難場所]( https://www.city.kumamoto.jp/opendata/pub/detail.aspx?c_id=38&id=5) - 応急給水の施設 - 今回は給水拠点の設置なので、対象外とする - 医療施設 - 探し中... ないかも? - [福祉施設SHAPE形式データ?](https://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-P14.html) - [上水道関連施設として、給水区域および浄水場の位置情報](https://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-P21.html) - あまり使う必要ないかも? ##### 給水地点のアルゴリズム - 給水計画 [神戸市を参考](https://www.city.kobe.lg.jp/a75879/bosai/prevention/water/02.html) | 地震発生からの日数 | 目標水量 | 主な給水の方法(お客さまの水の運搬距離) | | -------- | -------- | -------- | | 3日まで | 3リットル/人・日 | タンク車による運搬給水、耐震貯水槽からの給水(概ね1キロメートル以内) | | 10日 | 20リットル/人・日 | 配水幹線付近に設置する仮設給水栓からの給水(概ね250メートル以内) | | 21日 | 100リットル/人・日 | (2)に加え、配水支線上に設置する仮設給水栓からの給水(概ね100メートル以内) | | 28日 | 250リットル/人・日 | 仮配管からの各戸給水や共有栓による給水(概ね10メートル以内) | つまり... その地域の水の必要量 - 0-3日… 人口*3L - 3-10日… 人口*20L - 10-21日… 人口*100L - 21-28日… 人口*250L 人口データの粒度が500mメッシュを前提とした場合 ``` メッシュごとの水の必要量=500mメッシュの人口 * 上記の数値 (実際は避難所などに移動するため、参考指標程度にとどまる) ``` ``` 給水候補地:メッシュの内の中心地(重心?)に近い給水候補地(各メッシュに1箇所?) 優先順位:水の必要量が多い順番に、給水候補地に順位付け? ``` ミーティングでの意見紹介を踏まえた実装方針 - 給水候補地は避難場所に限る - 断水エリアと人口などのデータを用いて、給水拠点として開設した方が良い拠点を優先順位付して表示させる - その断水エリアの必要な水の量などは分かったほうが良いが、まずは給水拠点の位置決定支援を目的とする - 余裕があれば実装する --- ## 4. 中間報告 ### a. 選択した課題 「1. 断水が多く発生しているにもかかわらず、給水所が少ないエリアがあるようです」 ### b. 開発進捗概要 - 使用するデータの選定 - 担当の割り当て - 開発領域の割り当て (Web担当・空間情報担当) ### c. チーム運営・コミュニケーションについて #### コミュニケーションルール - 意見発言に対して否定的な反応は禁止する - 55分作業を進めたらTeamsに集まって5分で進捗課題(KPT)を確認する - 課題に対しもっとも熱意のある人物をリーダーとし、意見が対立した場合はリーダーの意見を採用する ### d. 技術について Webアプリケーションとして実装する。 可能であれば、給水所の配置地点を決定するロジックを差し替えられるようにする。 ### e. チームの成長・得られた観点 - 給水について詳しくなれた!!! - 給水計画は割とあらかじめ決められてしまっている - その計画の外を想定することが出来た - その他、給水を妨げる要因についても考察できた - データのすり合わせが難しい - メッシュ単位だったり、市区町村単位だったり... - 希望するデータがあるとは限らない - これをチームごとにすり合わせることも難しい ### f. 困っていること・ヘルプが欲しいこと - 断水した地域の過去のデータが見つからない - 市町村単位での断水地域の総計のみ発見 `↑↑ Day1 17:00までに入力` --- <!-- ## 5. サービス内容 --> <!-- ### サービスの名前「ミズリーチ」 --> # ミズリーチ 断水エリアとオープンデータを組み合わせて可視化し、給水所開設の優先順位の決定を支援する。  ### a. ターゲット(主人公) 熊本市の自治体職員、給水所配置の計画担当。 災害時のため他の業務に忙殺されており、データに基づいた給水所の配置計画が作成できていない。 ### b. 課題の背景 断水が発生した際に、給水所が少ないエリアがある。 人口に応じた給水所の配置が必要である。 また、外出先などQGISが使えない環境でもデータを見る必要がある。 ### c. 使う技術 - QGIS - GeoPackage (地理データの保存フォーマットのひとつ) - Leaflet - geopackage-js [技術面詳細](https://hackmd.io/gMoZ9jDORrmFlFU9-LVu1g) ### d. 使うデータ - 避難所のポイント - 断水エリア (今回は自作) - 人口 - 標高 2016年に熊本地震があったことから今回のシナリオに沿ったデータが得られると見込み、 今回は**熊本市**を想定した。 #### データ変換 基盤地図情報 DEMデータ ダウンロードしたGMLデータのままでは扱えないので変換する手順を記す。 1. 以下のページから「基盤地図情報ビューア」をダウンロード - https://fgd.gsi.go.jp/download/documents.html 3. ダウンロードした圧縮ファイル「FGDV.zip」を解凍 4. 解凍されたFGDV.exeを実行 5. メニューのファイルから新規プロジェクトの作成を実行  6. 新規プロジェクトダイヤログの追加ボタンをクリックしてダウンロードした数値情報のzipファイルを選択(複数同時選択可能)、ファイルをD&Dでも追加できる  6. OKボタンをクリックするとデータが読み込まれて表示される。  7. メニューのエクスポートから「標高メッシュをシェープファイルへ出力」を選択する。  8. 出力先ファイルを指定してOKボタンをクリックする。 ※広範囲のデータの場合、実行PCのメモリ容量などが不足して一度に出力できないことがある。その場合は適宜出力範囲を限定したり読み込むファイルを減らすなどして対応する。  9. 設定した場所にシェープファイルが生成される。<完了> #### 等高線作成 標高ポイントからうまく等高線に変換ができなかったので別の方法で作成 参考: https://midoriit.com/2018/12/qgis%E3%81%A7dem%E3%81%8B%E3%82%89%E7%AD%89%E9%AB%98%E7%B7%9A%E3%82%92%E4%BD%9C%E3%81%A3%E3%81%A6google%E3%83%9E%E3%83%83%E3%83%97%E3%81%AB%E8%BF%BD%E5%8A%A0%E3%81%99%E3%82%8B.html [農研機構の切り取りアプリ](https://aginfo.cgk.affrc.go.jp/rstprv/index.html.ja)でGeoTiffをダウンロードしてQGISのラスタ変換で等高線を生成  #### QGISレイヤ設定 人口密度500mメッシュ  ### 給水検索ロジックの実装 QGISのグラフィカルモデラー機能を使用して給水検索の実装を行う。 グラフィカルモデラーを使用することでプログラミング技術がなくても算出ロジックの組み換えが行える。 給水地点のボロノイ多角形を生成して断水エリアに掛る給水地点を絞り込む。  各プロセシング工程の詳細設定 1. ボロノイ多角形 給水ポイントからボロノイ多角形を生成  2. 交差 断水エリアをボロノイ多角形で交差処理  3. 属性テーブルで結合 交差結果に含まれる給水所番号と結合して給水所を絞り込み  #### 優先度付きの処理 より発展的なものとして、断水エリア内の人口から**給水所の優先度**を算出する処理についても考案した。 時間の都合上、QGIS上での自動化は出来なかったが手順は確立できた。 以下の手順により断水エリアの人口を概算することで優先度を決定する。  ### e. サービスの内容・特徴 熊本市で発生した断水エリアに対して、必要な給水所の配置を表示する。 - 断水エリアおよび人口データをもとに、配置する給水所の数に応じて優先順位をつけて最適な場所を表示する。 - Web上に給水所の配置を表示することが可能(オフライン) ### f. 課題と解決に関わるステークホルダーとその役割  - 自治体職員(水を届けたい) - 断水地域をいち早く把握し、本システムを使用して適切な給水拠点を決定する - 市民(給水を受けたい) - 自分の地域が断水していることを、正確に迅速に自治体職員に報告する ### g. サービスによって課題が解決された世界のイメージ 災害で断水が発生した際に、自治体の方がWebアプリで示された給水所の配置結果を利用して、迅速に給水活動を行っていく。 ### h. そのサービスが実際にターゲット(主人公)に届き活用されるまでのストーリー 断水が発生した熊本市の**自治体職員**が、 **適切な給水所の配置**を考える必要があり、 本サービスの断水エリア・そのエリアの人口・標高に応じた**最適な給水所の配置を確認できる点**に魅力を感じ、 デバイスや接続環境を選ばず**Web上で給水所の最適な候補地**を確認し 給水所を必要としているエリアに対して確実に**給水所を配置**することができる。 ### i. サービスへのリンクURL(あれば) https://pal4de.github.io/ghp2020-c/ #### デモ動画 {%youtube RdlcdPXh834 %} --- ## 6. 振り返り ### a. ユーザーフレンドリーなコミュニケーションデザインの設計について - 数値を入れたらその分だけ、というコンセプトは究極に近い - Webでデバイスや環境を問わずというのもよかった - 「汎用的なシステム」という点では、裏のロジックの差し替えやすさを考慮する余地はある ### b. 技術・デザインについて - 一つ一つのデータについては、難しいことをしていなかったが、目的に合わせて重ね合わせることで有用な可視化ができた - オープンなデータ・技術を用いていたため、汎用性が高かった - 他のグループが既存サービスを多く活用しているのを見て、SaaSやライブラリの利用は積極的に行う方が高品質なプロダクトを素早く作成できるなと気づかされた ### c. 「社会課題に資するG空間人材のあるべき姿」について(作ったサービス・プロセス) - 目標が定まったあたりから議論がより活発になった - 目標の振り返りが定期的にあったのもとてもよかった ### d. 役割分担は適切だったか・他にどんな役割が欲しかったか - 最初にメインとなる役割が決まったが、稼働の不足や、重要度に応じて流動的に動けたのが良かった - 担当をマルごと分けられるのではなく、個人の知識量などに応じて、宿題(調べる時間)などがあったのが良かった - 慣れていない中でも、ダミーデータの作成など、重要なことを担当してもらえてとても良かった ### e. どのような知識・スキル・データが欲しかったか - 例えばボノロイ・クラスタ分析など、そういう手法がパッと思い浮かばなかった - 入り口が違うと思いつかないのが盲点 - 俯瞰してみることも必要 - 地図の描画など、初めての試みだったので基礎知識として知っておいたほうが良いと思った - QGISを用いてデータを目的通りに加工する方法 ### f. 本日の学びや作ったものを今後どのように活かしたいか - 地図がメインのシステムなら、地図を画面いっぱいにしてしまう思い切りの良さ(インターフェース) - チームビルディングのやり方。仕事やCIVIC TECHに活かす ### g. これから地理空間技術を学びたいと思った人に伝えたいことは? - となりの友達がぼやいてたらどう声をかける? - GHPに参加するといいよ!と伝える `↑ Day2 最終発表後にチームで振り返りながら入力` ## 7. ワーキングメモ ### 断水エリアと人口メッシュで給水地点の優先順位を決める ``` 1. 断水エリア に フィールド計算機 で 面積情報($area)を持たせる 新規フィールド名: area 式: $area 2. 断水エリア と 人口メッシュ で交差レイヤー(断水×人口)を作る レイヤー名: dansui_intersect 3. 交差レイヤー(断水×人口) に フィールド計算機 で 断水人口情報を持たせる 新規フィールド名: dansui_jinkou 式: ( $area / (650 * 650) ) * ptn_2015 4. 断水エリア に フィールド計算機 で 断水人口集計情報を持たせる 新規フィールド名: dansui_jinkou_sum 式: aggregate('dansui_intersect','sum',"dansui_jinkou",id=attribute(@parent, 'id')) "dansui_jinkou" だけ ダブルクォート なので注意 5. 避難所でボロノイ分割を作る レイヤー名: voronoi_hinanjyo 6. ボロノイ と 断水エリア で交差レイヤー(ボロノイ×断水)を作る レイヤー名: voronoi_intersect 7. 交差レイヤー(ボロノイ×断水) に フィールド計算機で 断水人口情報($area / 断水エリアの面積 * 断水人口集計) を持たせる フィールド名: dansui_jinkou 式: ($area / area) * dansui_jinkou_sum 8. 避難所に優先順位をつける フィールド名: priority 式: aggregate('voronoi_intersect','sum',"dansui_jinkou",p20_002=attribute(@parent, 'p20_002')) "dansui_jinkou" だけ ダブルクォート なので注意 ``` 交差レイヤー(断水×人口)に人口情報を持たせた例   断水エリア に フィールド計算機 で 断水人口集計情報を持たせた例   避難所に優先順位をつけた例  ###### tags: `GHP2020`
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up