GDSS-PROMETHEE — グループ意思決定支援システム(PROMETHEE II)

Web

概要

PROMETHEE II に基づく「グループ意思決定支援システム(GDSS)」を実装したリポジトリです。複数の意思決定者(決定者)がそれぞれの評価基準、重み、および選好関数を指定し、候補(アクション)を比較評価して総合ランキング(正味フロー)を算出します。バックエンドは Flask、フロントエンドは Streamlit を利用した軽量なウェブアプリケーション構成で、CSVなどのデータ入力・出力をサポートします。PROMETHEE のペアワイズ比較や優越度計算、個人評価の集約方法などのロジックを含み、教育・プロトタイプ用途に適した実装です。

GitHub

リポジトリの統計情報

  • スター数: 1
  • フォーク数: 0
  • ウォッチャー数: 1
  • コミット数: 2
  • ファイル数: 11
  • メインの言語: Python

主な特徴

  • PROMETHEE II による多基準評価と総合ランキング(正味フロー)を提供
  • 複数意思決定者の評価・重みを入力してグループ的に集約・可視化可能
  • Flask(API/バックエンド)と Streamlit(インタラクティブUI)を組み合わせた構成
  • CSV 等のデータ管理による簡単な入出力と学習用プロトタイプ実装

技術的なポイント

本プロジェクトは、PROMETHEE のコアアルゴリズム(ペアワイズ比較、優越度関数、得点化→正味フローの計算)を Python で実装し、複数の意思決定者の入力を集約してグループランキングを算出する点が最大の特徴です。PROMETHEE II は代替案間の一対比較から得られる優越度 pij を各基準ごとに計算し、基準重みによる加重合計で総合優越度を出し、正フロー(Φ+)・負フロー(Φ−)の差で最終順位を決定します。本実装では、選好関数の種類や重みの入力、基準の方向(得点を大きいほど良い/小さいほど良い)の扱い、欠損値の処理など実務的な課題に配慮したデータ前処理が行える設計になっています。

アーキテクチャ面では Flask が API 層を担い、Streamlit がユーザインタフェースを担当することで、迅速なプロトタイプ作成とインタラクティブな操作性を両立しています。Python 3.8+ を前提に、数値計算やデータフレーム操作は pandas・numpy 等を利用すると想定され、CSV ベースのデータ入出力により外部データソースと容易に連携可能です。複数決定者の集約戦略(単純平均、重み付き平均、コンセンサス手法への拡張)はコード構造上拡張しやすく、教育目的でのアルゴリズム可視化や実務でのカスタム集約ロジックへの導入がしやすい点も注目できます。デプロイ時の留意点としては、Streamlit の公開設定、Flask API の CORS/認証、計算負荷に応じたスケーリング設計が挙げられます。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .vscode: dir
  • README.md: file
  • backend: dir
  • data: dir
  • data_matrixe_exterieur: dir

…他 6 ファイル

まとめ

PROMETHEE II を用いた教育向け/プロトタイプのグループ意思決定支援ツールです。拡張性が高く学習用途に最適。

リポジトリ情報: