Python で以下を実装したいのですが、どこから始めればよいかわかりません。このタイプの最短経路問題に適したモジュールはありますか?
3D 化学構造 (グラフ) の xyz 座標の特定のコレクションで、特定の原子 (ノード) から他のすべての原子 (ノード) への最短経路を定義しようとしています。原子 (ノード) 間の結合は、ノードからノードへの移動が許可されているエッジです。
選択した中央ノードから外側への接続性に基づいて、分子 (グラフ) から特定の原子 (ノード) を除外しようとしています。
**考慮されるパスについて、特定のアトム (ノード) が交差することを禁止したいと考えています。A から B への最短パスが禁止ノードを通過する場合、この回答は許可されません。A から B への最短パスには、禁止されたノードを含めてはなりません **
選択した中心原子 (A) から別の他のノード (B) への最短経路が禁止されたノードを含み、かつ A から B への使用可能なエッジ (結合) を通る経路が他にない場合、ノード B をから削除する必要があります。保存する xyz 座標 (ノード) の最終セット。
これを A から C、A から D、A から E など、構造 (グラフ) 内の他のすべてのアトム (ノード) に対して繰り返す必要があります。
よろしくお願いいたします。