重要なお知らせ:
LEDA の開発元 Algorithmic Solutions Software GmbH は、LEDA 製品の販売と保守を 2022 年 12 月 31 日で終了するとアナウンスしました。現在ライセンス(バイナリ版)をお持ちのお客様には開発元よりソースコードライセンスに移行するための特別なオファーがあります。詳細は弊社までお問い合わせください。

効率的なデータ構造とアルゴリズムを支援する C++ ライブラリ

LEDA は、効率的なデータ構造とアルゴリズムのための C++ クラスライブラリです。グラフ理論、ネットワーク問題、幾何学計算、組合せ最適化などの分野における広範なアルゴリズムを提供します。

  • テレコミュニケーション、GIS (地理情報システム) 、VLSI 設計、スケジューリング、交通計画、計算生物学、およびコンピュータを利用する様々な分野で利用されます。
  • アルゴリズムの基本要素はいずれも、グラフ、配列、辞書、ツリー、ポイント、流れ、マッチング、線分、最短経路といった利用しやすく効率的な形式のオブジェクトとして提供されますので、オブジェクト指向の一般的なプログラミングをおこなうあらゆるソフトウェア開発に最適です。

LEDA の特徴

  • C++ のクラス・ライブラリで、殆どのコンパイラが使用できます。
  • 直感的にプログラムが書けるように工夫されています。
  • 豊富なデータ型と制御構造が提供されています。
  • アルゴリズム記述との差が少ない分かりやすいプログラムです。
  • 様々なデータ構造が用意されています。(List, PQueue, D_array)
  • 代表的なアルゴリズムはクラスとして利用可能です。(最短経路)
  • 多くのアルゴリズムをクラス(Object)の形で提供。
  • 高機能 GUI が種々のウィンドウ(グラフィック・ウィンドウ、グラフ・ウィンドウ、幾何ウィンドウ) で利用可能です。
  • 頑強性: 万全の計算誤差対策が配慮されています。例えば、桁数制限なしの整数型 (Integer)、有理数型 (Rational) が用意されています。
  • 高信頼性: バグのない成熟したソフトウェアです。
  • 高効率: コードが洗練されているので、容易に高速化が可能です。

使用例

グラフ:最小費用・流量最大化アルゴリズムの LEDA GraphWin による実装。 辺は流動容量と費用のスライダを持つ;対応する流量が計算され結果が辺の太さで表示される。
幾何:一般的なポリゴンに対する操作の例。