Archives

LINKSのイベント開催記録やコラム

学生たちが挑戦、LINKSのオープンデータとAWSで何を作る⁉
Progateハッカソン powered by Project LINKS & AWS 2025.09

EVENT

2025-09-13 ~ 2025-09-14

プログラミング学習サービス運営会社Progateが主催する2日間のハッカソン「Progateハッカソン powered by ProjectLINKS & AWS 2025.09」が、9月13日~14日にAWS Startup Loft Tokyoで開催された。

国土交通省が推進する行政情報のオープンデータ化プロジェクト「Project LINKS」(以下、LINKS)、およびAWS(Amazon Web Services)が協力する同ハッカソンは、LINKSのデータとAWS環境を使って開発したプロダクトの出来栄えをグループで競うもの。開発のスキルや経験を問わず、エンジニアを目指している学生であれば誰でも参加できる。イベントは、約1週間の事前オンライン開発期間と、AWS Startup Loft Tokyoに集まってオフライン開発と成果物のプレゼンを行う本番2日間のスケジュールで進行された。審査基準は、開発したアプリケーションの完成度とデモプレイ、LINKSのオープンデータ活用レベル、AWS活用レベルに加えて、生成AIをはじめとしたAI技術の活用レベルとなる。

11種類の行政情報オープンデータを使いこなせ

今回のハッカソンで使用できるLINKSのデータは、
(1)G空間情報センターで公開されている6種類の地理空間データ
(2)GTFSデータ(公共交通機関の情報)
(3)今回のハッカソン向けに試験的に作成した4種の未公開データ――無人航空機飛行計画データ、観光地域づくり法人形成・確立計画データ、貸渡実績報告書データ(レンタカー事業)、自家用有償旅客運送輸送実績報告書データ(公共ライドシェア)――
の計11種類。

 AWSのサービスは何を使ってもよく(AWSの利用は必須)、AWS以外の技術も利用制限はなし。ハッカソン1日目はAWS社員によるハンズオン(専用環境へのログイン)からスタートした。1日目後半から2日目前半にかけてグループでプロダクト開発を行い、その後、各グループが開発したプロダクトの仕様と動作を紹介する成果発表、審査、表彰が行われた。

グループワークの様子

 それでは、成果発表の中から代表的なものをピックアップして紹介していく。

衛星チーム:“ディープ”なシューティングゲーム

 衛星チームは、無人航空機飛行計画データを使って、ドローン操作型の2Dシューティングゲームを開発した。複数端末でリアルタイムに操作を共有しながら遊べる設計になっている。

 フロントエンドはNext.jsとReact、TypeScriptで構築され、Canvas APIで描画を行う設計。バックエンドにはtRPCとWebSocketを使い、複数端末でのリアルタイム同期を可能にした。また、本ハッカソンの審査点加算があるAI要素として、ディープフェイクのツールを活用。画面に「敵」として現れる踊っている人の顔を自動生成しているという。AWSのサービスはEC2とBedrockを使用し、ゲームオーバーになった際のアドバイスを生成している。

「シューティングゲーム」の概要(Topa’z)

衛星チーム

観光チーム:物流データを“風”に見立ててSNS投稿を世界中へ飛ばす

 観光チームは、モーダルシフト関連データといった物流データを「風」に見立て、ユーザーの投稿を紙飛行機にのせて世界中へ届けるような体験を提供するSNSアプリ「Postcard」を開発した。

 フロントエンドはNext.jsとReactで構築。ユーザー認証にはAWS AmplifyのCognitoを使用した、バックエンドはPythonのFastAPIで開発している。Amazon ECS上で稼働し、インフラはTerraformを用いてデプロイメントを行った。SNS投稿はAmazon Location Serviceによって地図上に可視化され、物流に関するオープンデータを活用して風の流れを再現している。

「Postcard」の概要(Topa’z)
観光チーム

地図チーム:“エコ”な移動ルートを提案するWebアプリ

 地図チームは、内航海運業データとモーダルシフト関連データを用いて、出発地・目的地を入力するとCO₂排出量・時間・コストを比較し、最適な移動ルートを提案するWebアプリ「EcoRoute(エコルート)」を開発した。

 フロントエンドにはTypeScriptとReactなどを用いて、入力フォームなどのUIを提供。バックエンドはNode.js + Expressで構成し、LINKSのオープンデータをCSV形式でAWS S3から読み込んでルート探索とスコア最適化を行う。インフラはAWS(App Runner、Amplify、S3、Docker等)を使用した。

「EcoRoute(エコルート)」の概要(Topa’z)
地図チーム

図書チーム:チーム開発を体験できるシミュレーションツール

 図書チームは、Git初心者がチーム開発を体験できるシミュレーションツール「GitSim」を開発した。モーダルシフト関連データの内航船舶輸送統計調査に入っている上位150レコードをカラーコードに変換し、背景色としている。

 ユーザーは決められた開発時のお題を選び、ブラウザ上でGitコマンド(add, commit, mergeなど)を入力して操作を行う。フロントエンドはNext.jsとTypeScript、バックエンドはFastAPI(Python)で構築した。インフラにはAWS EC2を使用している。

「GitSim」の概要(Topa’z)
図書チーム

公共施設チーム:ルート上の“最悪な自動車事故シナリオ”を表示するサービス

 公共施設チームは、自動車運送事業事故データを使って、ユーザーの通る経路上での事故リスクを可視化する体験型サービス「Go島てる」を開発した。ユーザーは出発点と目的地をマップ上で指定すると、その区間周辺における過去の事故情報を地図上に描画。さらに、AI(学習済みモデル)が事故パターンを解析し、最悪の交通事故シナリオをホラーストーリー仕立てで生成して表示する。

 フロントエンドはNext.js、データベースはPostgreSQL(Aurora Serverless)を使用した。地理情報検索にはPostGIS、AI部分にはAmazon Bedrockを活用し、インフラはAWS Amplifyを中心にLocation ServiceやBedrock Agent Coreなどで構築している。

「Go島てる」の概要(Topa’z)
公共施設チーム

トラッキングチーム:モーダルシフトを楽しく学ぶゲーム

 トラッキングチームは、モーダルシフト関連データを使って、すごろく形式で物流におけるモーダルシフト(複数輸送手段の組み合わせ)を学べるゲームを開発した。

 ユーザーはサイコロを振って移動しながら、配送チャレンジでルートを選び、CO₂排出量をなるべく抑えた輸送を目指す。地図上に表示される複数の拠点をクリックで選択すると、線分表示でルートが可視化される。ルート選択に応じて距離やCO₂排出量を計算する仕様になっている。

 地図描画とUIはMapLibre GL JS とNext.jsで構築。拠点データはGeoJSONを採用。港を使った移動は現実の取引ルートに限定し、陸上移動距離は直線距離ではなく現実の道路距離を考慮するよう設計したのがポイントだ。

「モーダルシフトを楽しく学ぶゲーム」の概要(Topa’z)
トラッキングチーム

データとAIエージェントの活用レベルで高い評価

 審査の結果、最優秀賞はルート上で起こる自動車事故の最悪シナリオを表示するサービス「Go島てる」を開発した公共施設チームに贈られた。サービスのコンセプトをはじめ、オープンデータの使い方、自然言語で過去の交通事故データを閲覧できるAIエージェントとしての「Bedrock Agent Core」の活用レベルの高さ、インフラのセキュリティへの配慮などが評価された。

 優秀賞には、すごろく形式でモーダルシフトを学べるゲームを開発したトラッキングチームが選ばれた。プロダクトの完成度の高さ、遊びながら環境について学べるというコンセプトが評価された。

最優秀賞を受賞した公共施設チーム
優秀賞を受賞したトラッキングチーム

 最後に、LINKSのテクニカル・ディレクターを務める国土交通省の内山氏が全体を総括して挨拶を述べた。「このハッカソンは、“powered by Project LINKS”ということで、LINKSが提供するオープンデータを活用することがテーマのひとつ。LINKSは国土交通省が進めているプロジェクトで、紙の状態で長年蓄積されてきた多様な行政情報をデータ化し、新たな活用の可能性を見いだそうと取り組んでいる。このハッカソンに取り組んだみなさんは、まさにその最前線にいたことになる。今回、みなさんにはいろんな活用アイデアを出していただいた。今日見せてもらったアイデアを持ち帰り、今後のプロジェクトの参考にさせていただこうと思う。みなさんのがんばりに感謝したい」と話し、今回のハッカソンを締めくくった。

国土交通省 総合政策局 公共交通政策部門 モビリティサービス推進課 総括課長補佐の内山裕弥氏
PageTop