タグ

kenji4569のブックマーク (2,576)

  • 配車業務の負担を大幅削減。時間単位で管理する「予約枠」の開発 - NearMe Tech Blog

    はじめに NearMe エンジニアの朝日開斗です。 NearMeは、シェア乗りのサービスを提供しています。複数のお客様の予約を効率的に組み合わせて、1台の車両で複数の目的地へお送りする「相乗り配車」が特徴です。 私は、このNearMeアプリケーションの新規機能開発や改修を主に行なっており、特に運行会社や社内向けの管理画面アプリケーションの開発に大きく携わっています。 NearMeではお客様からの予約を特定のドライバーと車両の組に割り当てをする作業があり、これを「配車」と呼びます。この配車の作業は以下のテックブログにもあるように、予約の数多くが自動配車によって効率的にドライバーにアサインされるようになっています。 tech.nearme.jp その配車業務の中で課題になっていた部分含め、その周辺の業務改善につながる開発を今回担当させていただきました。 まずはその配車業務の課題やその他開発する

    配車業務の負担を大幅削減。時間単位で管理する「予約枠」の開発 - NearMe Tech Blog
    kenji4569
    kenji4569 2026/01/08
  • ReactNative のアップグレード作業が (意外に)楽しかった話

    AgentCore BrowserとClaude Codeスキルを活用した 『初手AI』を実現する業務自動化AIエージェント基盤

    ReactNative のアップグレード作業が (意外に)楽しかった話
    kenji4569
    kenji4569 2025/09/08
  • 数理最適化とAIエージェントでシフト組み業務を自動化&効率化した話 - NearMe Tech Blog

    はじめに NearMeエンジニアの柿野上 拓真(Takuma Kakinoue)です。私は、数理最適化機械学習をはじめとする高度なアルゴリズムを含むテクノロジーによって実社会の問題を解決することに高いモチベーションを持っており、NearMeでは主に自動配車システムや相乗りマッチングシステムの開発に携わっております。単に高度なテクノロジーを使ったシステムを作るだけではなく、オペレーションを含め全体の業務を「デザイン」していくことに興味関心があります。 さて、今回のテーマは、直近新たな課題として社内で挙がった「シフト組業務の自動化およびシフトの効率化プロジェクト」です。NearMeは相乗りマッチングや車両割り当ての制御を行うプラットフォームの開発に焦点を当てており、車両やドライバーのマネジメントや実際の運行は他社のハイヤー会社(以下、運行会社と呼ぶ)に委託しています。なのでドライバーのシフト

    数理最適化とAIエージェントでシフト組み業務を自動化&効率化した話 - NearMe Tech Blog
    kenji4569
    kenji4569 2025/06/30
  • AIエージェント for 予約フォーム

    Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure

    AIエージェント for 予約フォーム
    kenji4569
    kenji4569 2025/04/25
  • 巨大近傍探索による継続的な最適化 - NearMe Tech Blog

    はじめに NearMeの相乗りサービスの特徴として、事前予約の注文が入るたびに相乗りの最適化を行っているという点があげられます。 これは、特定の時間で締め切りして一気に相乗りを決めるという素朴な方法に比べると、 相乗り状況が事前に把握できることで配車手配しやすくなったり、直前まで最適化できたりするといったメリットがあります(参考1、参考2)。 一方で、最適化の観点では、注文のたびに最適化しようとすると計算リソースが限られてしまうので、妥協した解に留まる可能性あります。 特に、現実装では計算量を減らすため、入ってきた注文に対して時間的・空間的に近しい注文同士で再計算していますが、 その場合、部分部分、瞬間瞬間で最適化できても、刻々と注文が入ってくる中で、その部分的な解が"陳腐化"していきます。 全体の注文数が限られている状況ではそれでも満足な解は得られていたのですが、注文数が増えるにつれて、

    巨大近傍探索による継続的な最適化 - NearMe Tech Blog
    kenji4569
    kenji4569 2024/12/27
  • Pulumi at NearMe: Embracing True Infrastructure as Code - NearMe Tech Blog

    Introduction Infrastructure as Code (IaC) has revolutionized how organizations manage their cloud infrastructure, and at NearMe, our journey led us to choose Pulumi as our primary IaC tool. This article explores how Pulumi's unique approach to infrastructure management has transformed our Platform Engineering practices, enhanced developer productivity, and improved our infrastructure reliability.

    Pulumi at NearMe: Embracing True Infrastructure as Code - NearMe Tech Blog
    kenji4569
    kenji4569 2024/11/25
  • Architecture Decision Record (ADR)

    12 Architecture Decision Record (ADR) • Architecture Decision (AD) ‒ システム設計に⼤きな影響を与える意思決定 • Architecture Decision Record (ADR) ‒ ADを記録するためのドキュメント • Architecture Decision Log (ADL) ‒ 組織やプロジェクトのためのADRの集合 • Architecture Knowledge Management (AKM) ‒ 上記全てのための枠組み 13 Architecture Decision Log (ADL) Architecture Knowledge Management (AKM) Architecture Decision Record (ADR) Architecture Decision Record (AD

    Architecture Decision Record (ADR)
    kenji4569
    kenji4569 2024/09/09
  • VRPの近傍操作SWAP*について調べてみた

    純粋なイミュータブルモデルを設計してからイベントソーシングと組み合わせるDeciderの実践方法の紹介 /Introducing Decider Pattern with Event Sourcing

    VRPの近傍操作SWAP*について調べてみた
    kenji4569
    kenji4569 2024/07/05
  • ⼤規模⾔語モデルの拡張(RAG)が 終わったかも知れない件について

    CEDEC2025 長期運営ゲームをあと10年続けるための0から始める自動テスト ~4000項目を50%自動化し、月1→毎日実行にした3年間~

    ⼤規模⾔語モデルの拡張(RAG)が 終わったかも知れない件について
    kenji4569
    kenji4569 2024/04/09
  • 「シェア乗り時刻表」について - NearMe Tech Blog

    はじめに 先日、空港送迎のシェア乗りサービスの空席を埋めるための時刻表機能をリリースしました。 構想は昔からあったのですが、ようやく開発を進めて世に出すことができました。 ここではその機能概要やシステムについて説明します。 時刻表について NearMeではユーザー同士がタクシー/シャトルの車両をシェアして乗車するサービスを構築してきました(※同じシェアですが、昨今、ドライバー不足で議論されている"ライドシェア"は一般ドライバーと乗客のマッチングによるもので、それとは異なります)。 特に、空港送迎のような事前に予約するシナリオにおいて運行効率を高める機能を作ってきました。 ユーザー同士のマッチングを最適化したり(参考、参考)、 車両と運行のマッチングも最適化して密な運行セットを作ったりしました(参考)。 また、既にある運行の空席を埋める施策として、時間をずらしたら乗れるというレコメンド機能も

    「シェア乗り時刻表」について - NearMe Tech Blog
    kenji4569
    kenji4569 2024/03/22
  • 「シェア乗り」を活用して効率良く人を運ぶために “バスよりも便利でタクシーよりも安い”を実現するマッチングのアルゴリズム | ログミーBusiness

    「Startup Day 2023」は日中のAWSを利用するStartupが、AWSの知見を披露するHubとなる1日です。2023年はサブテーマに「スタートアップ冬の時代を共に乗り越える」を掲げて、スタートアップが面しているこの逆境をどうやって跳ね除け、成長につなげていけるかを共有します。ここで、株式会社NearMe(以下、ニアミー)の細田氏が登壇。まずは、ニアミーが提供しているサービスの仕組みについて話します。 ニアミーについて細田謙二氏:ニアミーの細田です。よろしくお願いします。今日は、「交通の最適化で強化学習を使い始めた話」というところで。強化学習というと、みなさんもそうだし私もそうなのですが、「ちょっと難しそう」「使い勝手が悪そう」みたいなイメージがあって。 実際にそういう部分はあるのですが、いろいろ調査をして、最新の技術などをいろいろキャッチアップすると、「案外ワンチャンありか

    「シェア乗り」を活用して効率良く人を運ぶために “バスよりも便利でタクシーよりも安い”を実現するマッチングのアルゴリズム | ログミーBusiness
    kenji4569
    kenji4569 2023/11/29
  • 配車組作業(6時間 / 日)を自動化した話 - NearMe Tech Blog

    はじめに NearMeエンジニアの柿野上 拓真(Takuma Kakinoue)です。私は今年4月に新卒としてNearMeに入社いたしました。担当領域としては、主にデータサイエンスやMLOps、新規機能のPOCを担当しています。記事では、私が設計・実装している自動配車システムの概要および今後の展望として深層強化学習の導入について解説します。 NearMeでは事前予約で注文を集めて、時間的・距離的に近い注文同士をAIによって自動的にマッチング(相乗り)させて乗車人数 / 移動距離を最大化しています。マッチングした注文の集合、あるいは、マッチングしなかった単独の注文をトリップと呼んでいます。車両へのアサイン(トリップに対して運行する車両を紐づけること)はトリップ単位で行います。自動配車システムでは、トリップを最適な車両にアサインし、効率的な運行計画を作成することを目標にしています。 記事で

    配車組作業(6時間 / 日)を自動化した話 - NearMe Tech Blog
    kenji4569
    kenji4569 2023/11/02
  • 応用から学ぶ強化学習

    Exadata Database Service on Dedicated Infrastructure セキュリティ、ネットワーク、および管理について

    応用から学ぶ強化学習
    kenji4569
    kenji4569 2023/06/06
  • 初めてのKubernetes (ハンズオン)

    あまり知られていない MCP 仕様たち / MCP specifications that aren’t widely known

    初めてのKubernetes (ハンズオン)
  • ChatGPT + JsonLogicの可能性 - NearMe Tech Blog

    はじめに 技術ブログのネタとして、JsonLogicを利用した柔軟なシステムカスタマイズについて考えてはいたのですが、もう一捻り欲しいなというところで、最近話題のChatGPTと組み合わせたらどうだろうと思い試してみたところ、思いのほかいい感じの結果が得られたので、タイトルを改めて書いてみました。 JsonLogicについて JsonLogicは汎用的なルールエンジンで、現在、NearMeのサービスにおいて複雑な料金計算等で利用しています。例えば、ユーザーに提示する料金は、需給のバランスを整えるために、時間帯や配車までの時間等で金額を調整することがあります。また、配車コストを算出するために、タクシー会社と契約する料金表があるのですが、これも、エリアや人数(大人、子供)、荷物の数、時間などの変数が複雑に絡んだものがあります。これらを計算するために、一つはハードコーディングして解決するという手

    ChatGPT + JsonLogicの可能性 - NearMe Tech Blog
    kenji4569
    kenji4569 2023/04/10
  • 外部向けAPIプラットフォームの設計について - NearMe Tech Blog

    はじめに NearMeでは最近、相乗り配車サービスのための外部向けAPIプラットフォームを構築しました。 これにより、他アプリからシームレスに注文したり、Lineミニアプリのような新しいチャネルのUIを独自に構築することを可能にしました。 その設計においては様々な考慮が必要でしたので、ここにまとめたいと思います。 提供方法 APIを利用するにはまず、外部連携先の"組織"を作成し、登録した"組織"で「〇〇 地域シャトル」「〇〇スクール送迎」などの"サービス"を作成します。これにより、ユーザー管理、車両管理、注文管理などが管理画面から利用できるようになります。マルチテナント方式なので専用の"サービス"が構築されます。 次に、API連携に関する基情報を格納する"アプリケーション"という項目を作成します。 認証情報やWebhookのURLなどもここで設定します。 この"アプリケーション"のIDが

    外部向けAPIプラットフォームの設計について - NearMe Tech Blog
    kenji4569
    kenji4569 2022/12/30
  • ArgoによるCI構築 - NearMe Tech Blog

    はじめに 今回は、NearMeにおけるCIの仕組みについて説明します。 CIとは、Continuous Integration(継続的インテグレーション)の略で、 コード変更の度にビルドとテストを自動で実行するプラクティスを指します(参考)。 NearMeではCIを実現する方法として、Kubernetes(k8s)上に動作するArgoを利用しました。 k8sはコンテナ化されたアプリケーションを管理するためのオープンソースのシステムです。 Argoはk8s上でCIやCD(Continuous delivery)を実現するツール群です。 一般に、CI構築では外部サービスを利用することも多いですが、 他システムの障害や料金に依存せずCIを管理したかったのと、 既にk8sを中心にシステムを構築していたので、 多少の煩雑さはありつつも自前で構築しました。 システム構成 CIシステムはイベントの処理を

    ArgoによるCI構築 - NearMe Tech Blog
    kenji4569
    kenji4569 2022/07/28
  • インターン生・新卒向け、学校でもっと教えてほしいITエンジニア基本スキル

    0→1と1→10の狭間で Javaという技術選定を振り返る/Reflecting on the Decision to Choose Java Between Scaling from 0 to 1 and 1 to 10

    インターン生・新卒向け、学校でもっと教えてほしいITエンジニア基本スキル
    kenji4569
    kenji4569 2022/06/10
  • 相乗り配車の注文処理について - NearMe Tech Blog

    はじめに 配車サービスの注文処理はECサイトのそれと似ています。 ECサイトでは商品を検索し、カートに入れて、注文します。 このとき、在庫が確保できていれば注文できます。 もしくは、後から在庫確保または在庫切れの通知が届く場合もあります。 その後、配送手配が行われ、お届け日などが通知されます。 配車サービスでは、商品に対応するのが、出発地と目的地を結ぶ移動手段になります。 在庫確保の流れはドライバーの予定を押さえる形になります。 このとき配車確定まで時間がかかる場合もあります。 その後、配車手配が行われ、ピックアップ時刻などが通知されます。 今回は、NearMeの相乗りサービスにおける注文処理について説明します。 当サービスでは事前予約で注文を貯めつつ、注文が入る度に最適な相乗りの組み合わせを計算して配車確定を逐次的に行えるようにしています。 このような相乗りにおいてどのようなパタンが発生

    相乗り配車の注文処理について - NearMe Tech Blog
    kenji4569
    kenji4569 2022/03/23
  • 配車オーケストレーション - NearMe Tech Blog

    はじめに NearMeでは相乗りシャトルのサービスを展開していますが、その配車ルーティングを実装してきて気づいた点があります。 クラウドの基盤技術である"コンテナオーケストレーション"と似た構造がある点です。 コンテナオーケストレーションは、コンピューティング環境で動くアプリケーションをコンテナと呼ばれる単位で管理し、コンピューティングリソースを適切に割り当て、協調的に動作させる技術です。 コンテナオーケストレーションを実現する代表的なツールとしてKubernetes(クーバネティス、以降k8sと略します)があり、ここでは特にk8sと配車ルーティングとのアナロジーについて考えてみます。 構成要素 k8sでは、コンテナ・ポッド・ノードという階層的な構成要素があります。コンテナは単独のアプリケーションを動かす実行環境です。ポッドは、複数の密接に関連したコンテナをまとめたものです。コンテナはその

    配車オーケストレーション - NearMe Tech Blog