Krautkanal.com

Veröffentlicht am 2015-08-19 16:37:17 in /prog/

/prog/ 7578: Graphen in Python

carlosgavina Avatar
carlosgavina:#7578

Bernd, welche Datenstrukturen (oder gleich eine externe Datenbank?) nehme ich für interne Repräsentation der Graphen?

Hintergrund: ich beabsichtige eine Art "TODO-Liste", einzelne Knoten sind Tasks, die auch Untertasks haben, wobei es wilde Verknotungen und Loops zwischen verschiedensten Punkten geben wird.

anass_hassouni Avatar
anass_hassouni:#7580

Was sollen denn die Verbindungen zwischen den einzelnen Tasks (Kanten) repräsentieren? Reihenfolge? Hierarchie? Eltern-Kind-Beziehungen?
Spielt das Kantengewicht eine Rolle?
Willst du auf dem Graphen Breiten-/Tiefensuche oder Kürzeste-Wege-Algorithmen anwenden?
Man Bernd, ein paar meer Informationen musst du uns schon geben.

thierrymeier_ Avatar
thierrymeier_:#7581

Adjazenzlisten?

Wenn OP hipster genug ist kann er ja mal eine Graphen-DB, wie neo4j oder ArangoDB ausprobieren. Ist aber vermutlich Übertötung für OPs Problem.

motionthinks Avatar
motionthinks:#7582

Die Graphen-Bibliothek networkx kommt mir da in den Sinn. Dort sind Knoten (und Kanten) bewusst so abstrakt definiert, dass Knoten quasi alles sein können, also auch Prozesse, Dokumente, etc. Gleichzeitig hast du natürlich zugriff auf viele gelegene Graphalgorithmen, Statistiken, etc.

anass_hassouni Avatar
anass_hassouni:#7584

Vermutlich ist ein Graph auch nicht das, was ich brauche. Bernd, stell mal vor, du hast ein anspruchvolleres Questspiel vor dir und willst alle Quest + Nebenquest irgendwie auffassen.

Ich habe es mir als eine Art Graph vorgestellt, wo jeder Knoten ein Quest/Task sein könnte. Es gibt zwar eine Hierarchie in den Knotenketten, aber keine zwingende. Ketten können sich überschneiden, so könnte ein und der gleiche Knoten zur verschiedenen Ketten gehören. Überhaupt von einer Knotenkette ist auch nicht immer die Rede.

Ich habe einen Fallbeispiel konstruiert, schau mal das Bild an. Da ist noch nicht alles mit der Hierarchie in Ordnung, also lass dich nicht von der Pfeilrichtungen verwirren. (Es sind auch keine Bedienungen abgebildet)

Hier ist ein Auszug als Liste - http://pastebin.com/KEzkGm7e

mactopus Avatar
mactopus:#7594

>>7584
Schon mal an RDF und SPARQL gedacht?

nateschulte Avatar
nateschulte:#7595

>>7594
Okee deinem Link gefolgt und gesehen, dass das hier vermutlich nicht ganz reinpasst. Naja, Bernd arbeitet wohl zu viel damit und Goldener Hammer etc pp.

Neuste Fäden in diesem Brett: