« AAU Project に戻る

How to parse a graph in ADOxx?

構造的に表示 平面上に表示 ツリー上に表示
スレッド [ 前へ | 次へ ]
toggle
How to parse a graph in ADOxx?
community documentation transformation adoscript
答え
14/03/27 11:03
How to to calculate possible outcomes of a defined starting object to end of the object's context? Is there any  An implementation of a graph algorithm (search) can be used to perform this logic, specific consideration should be given to:
a) Alternatives in the model (more than one start object)
b) Include submodel references in the calculation
c) Include detection mechanism for potential starts and ends?

RE: How to parse a graph in ADOxx?
答え
14/02/04 12:51 Fadiへのコメント
Since all models in ADOxx could be intepreted as graphs, graph-based algorithms can be applied. Please find attached the implementation of 2 algorithms that build on a search approach to find all potential paths in a model and return them as a list. The second algorithm builds upon that implementation and adds the functionality to go through all nodes to find the possible paths from this element to the end of the graph. The algorithms dynamically identify the start object (as the object without incoming relations) and end object (as the object without outgoing relations) and als subgraphs are supported.

Attached to this post, the ABL file, implementing the AdoScript can be found. In order to adapt to your needs, have a look at the attached AdoScript file and modify the mapping section at the beginning. The functionality is provided through menu items added to ADOxx.
添付ファイル: Example model.adl (5.6k), Graph Analysis Library.abl (10.1k), graphSearch.asc (5.5k), graphSearchIndividual.asc (6.0k)

RE: How to parse a graph in ADOxx?
答え
14/11/25 8:14 Fadiへのコメント
Attached an enhancement of the above to deal with back-loop cycles - the algorithm is enhanced in a sense that only simple paths are considered, meaning that in case of a re-visit of a node/vertex, the recursion skips the node and path.
添付ファイル: graphSearchV2.asc (5.4k)