Press "Enter" to skip to content

osaphex lab. Posts

Go言語で GraphML をパースする

このブログでは今まで、グラフの出力形式に edgelist を使ってきました。この edgelist は csv のような形で処理できるのでシンプルで良かったのですが、最近扱うグラフが複雑化してきたので別のファイル形式に変更しようと決めました。 調べてみると、複雑なグラフを記述するのには Graph…

gonum graph を用いて Ego Graph を求める

Ego Graph は Neighborhood Graph とも呼ばれるもので、グラフGの中からノードを1つ選び、そのノードから距離 k までの範囲に含まれるノードの集合で構成されるグラフのことになります。 たとえば このグラフでノード0に関して、1ホップまでの範囲内にあるグラフは となります。 …

gonum graph の使い方(Go言語でグラフ理論)

Go言語でグラフ理論のグラフを扱うパッケージには gonum があります。しかしリファレンスには単純な GoDoc しか用意されていないみたいでして、初めて使おうとするときにはちょっと困ります。 graph/simple と graph/multi どうやって使えばよいのかわからないという疑問を抱い…

5G ネットワークと MEC サーバの通信

以前に5Gにおける MEC (Mobile Edge Computing) の概要という記事を書き、ここで5GにおけるMECの実装の概要を簡単にまとめました。それを踏まえて今回はパケットの転送方法に関して調べました。 5G システムアーキテクチャ 5Gのシステムは次の図で表されます。 データパケット…

マイコンへのプログラムの書き込みの仕組み(JTAG, SWD, シリアル)

Arduinoを使わず、自分でマイコンを選定し組込みシステムを実装しようと考えた時に避けて通れないJTAGやSWD。プログラムの書き込みといった初歩的なところを支える技術であるにも関わらずネットにはあまり説明してくれているサイトが無い印象です。またArduinoはなぜJTAG,SWDを使わずに済んだ…

処理能力が有限の施設による被覆問題

以前、施設配置問題としての被覆問題と Gurobi による実装 という記事を書きました。被覆問題は例えば 飲食チェーン店を展開させようと思った時、どういうお店の配置にすれば少ない店舗数で多くの客を取り込めるか ECサービスで、日本全国どこでも商品を2日以内に届けられるようにするためには配送センターを…

NetworkX のグラフ描画における座標の自動生成

グラフ理論におけるグラフは基本的にはトポロジが重要なので、ノードの座標情報については特に定義がありません。一方でグラフを描画するときは、ノードの座標情報がなければ描画時にそもそも筆をすすめることができなくなるため座標情報は必須です。 私はこの「ネットワーク自体には座標情報は存在しないけれど、描画をす…

施設配置問題としての被覆問題と Gurobi による実装

この投稿は以前 qiita に上げた記事を移行させたものになります

前回の記事では施設配置問題の概観と、その中で特に

  • 容量制約なし施設配置問題
  • p-median 問題
  • p-center 問題

を取り上げました。今回の記事ではまだ取り上げていない問題の中から 被覆問題 を取り上げます。

施設配置問題 (Facility Location Problem) と Gurobi による実装

この投稿は以前 qiita に上げた記事を移行させたものになります

施設配置問題の種類

施設配置問題 (Facility Location Problem) とは、日本オペレーションズ・リサーチ学会の Wiki に基づくと

施設の配置可能地点, 需要をもつ顧客の集合が与えられて, ある基準を満たす施設の配置場所を決定する問題の総称

と定義されます。