Let G be an unweighted directed graph containing cycles. I\'m looking for an algorithm which finds/creates all acyclic graphs G\', composed of all vertices in G and a subset of
This may be helpful: An Algorithm for Enumerating all Directed Spanning Trees in a Directed Graph.
This problem is called Feedback Arc Set. Since it is NP-hard, it is unlikely that you will find a scalable fast algorithm. However, if your instances are small, then algorithms such as the one from the paper “On enumerating all minimal solutions of feedback problems” by B. Schwikowski and E. Speckenmeyer might work.
If your goal is to remove cycle edges (breaking cycles) while preserving graph hierarchies (structures) as much as possible, this work maybe helpful: https://github.com/zhenv5/breaking_cycles_in_noisy_hierarchies