En bref: J'essaie de traverser un graphe non orienté en prologue, mais je ne sais pas comment, tout conseil serait grandement apprécié.Traverse graphique non orienté dans prolog
Contexte:
Essayer de modéliser le système ferroviaire, avec des stations comme des noeuds et leurs liens comme bords avec un poids 1.
J'ai eu aucun problème à faire d'une manière dirigée, mais ne peux pas le faire dans un graphe non orienté.
sur le net en général, je l'ai appris que le graphique est déclaré non orienté de la manière suivante:
node(1).
node(2).
node(3).
node(4).
node(5).
node(6).
arc(1,2):-node(1),node(2),1==2.
arc(1,4):-node(1),node(4),1==4.
arc(2,3):-node(2),node(3),2==3.
arc(3,5):-node(3),node(5),3==5.
arc(4,5):-node(4),node(5),4==5.
arc(5,6):-node(5),node(6),5==6.
path(X,Z,A) :- (arc(X,Y),path(Y,Z,A1),A is A1+1;arc(X,Z), A is 1).
ainsi, le chemin de requête (1,2, X). devrait retourner 1, mais il ne le fait pas ... vraiment besoin d'aide/d'orientation .. merci!
1 == 2 est toujours faux ... – Kaarel