In graph theory, a directed graph may contain directed cycles, a oneway loop of edges. In some applications, such cycles are undesirable, and we wish to eliminate them and obtain a directed acyclic graph (DAG). One way to do this is simply to drop edges from the graph to break the cycles. A feedback arc set (FAS) or feedback edge set is a set of edges which, when removed from the graph, leave a DAG. Put another way, it's a set containing at least one edge of every cycle in the graph.
Closely related are the feedback vertex set, which is a set of vertices containing at least one vertex from every cycle in the directed graph, and the minimum spanning tree, which is the undirected variant of the feedback arc set problem.
A minimal feedback arc set (one that can not be reduced in size by removing any edges) has the additional property that, if the edges in it are reversed rather than removed, then the graph remains acyclic. Finding a small edge set with this property is a key step in layered graph drawing.^{[1]}^{[2]}
Sometimes it is desirable to drop as few edges as possible, obtaining a minimum feedback arc set (MFAS), or dually a maximum acyclic subgraph. This is a hard computational problem, for which several approximate solutions have been devised.
As a simple example, consider the following hypothetical situation, where in order to achieve something, certain things must be achieved before other things:
We can express this as a graph problem. Let each vertex represent an item, and add an edge from A to B if you must have A to obtain B. Unfortunately, you don't have any of the three items, and because this graph is cyclic, you can't get any of them either.
However, suppose you offer George $100 for his piano. If he accepts, this effectively removes the edge from the lawnmower to the piano, because you no longer need the lawnmower to get the piano. Consequently, the cycle is broken, and you can trade twice to get the lawnmower. This one edge constitutes a feedback arc set.
As in the above example, there is usually some cost associated with removing an edge. For this reason, we'd like to remove as few edges as possible. Removing one edge suffices in a simple cycle, but in general figuring out the minimum number of edges to remove is an NPhard problem called the minimum feedback arc set or maximum acyclic subgraph problem.
This problem is particularly difficult in kedgeconnected graphs for large k, where each edge falls in many different cycles. The decision version of the problem, which is NPcomplete, asks whether all cycles can be broken by removing at most k edges; this was one of Richard M. Karp's 21 NPcomplete problems, shown by reducing from the vertex cover problem.^{[3]}^{[4]}
Although NPcomplete, the feedback arc set problem is fixedparameter tractable: there exists an algorithm for solving it whose running time is a fixed polynomial in the size of the input graph (independent of the number of edges in the set) but exponential in the number of edges in the feedback arc set.^{[5]} Alternatively, a fixedparameter tractable algorithm is given by a dynamic programming technique that depends only exponentially on the dimension of the cycle space of the graph.^{[6]}
The minimum feedback arc set problem is APXhard, which means that (assuming P ? NP) there is a hard limit on its approximation quality, a constant c > 1 such that every polynomialtime approximation algorithm will sometimes return an edge set larger than c times the optimal size. The proof involves approximationpreserving reductions from vertex cover to feedback vertex set, and from feedback vertex set to feedback arc set.^{[7]}^{[8]}^{[9]} More specifically, because vertex cover has no approximation better than 1.3606 unless P ? NP, the same is true for feedback arc set. That is, it is possible to take c = 1.3606.^{[10]} If the unique games conjecture is true, this inapproximability threshold could be increased to arbitrarily close to 2.^{[11]}
On the other hand, the best known approximation algorithm has the nonconstant approximation ratio O(log n log log n).^{[9]}^{[12]} For the dual problem, of approximating the maximum number of edges in an acyclic subgraph, an approximation somewhat better than 1/2 is possible.^{[13]}^{[14]} Determining whether feedback arc set has a constantratio approximation algorithm, or whether a nonconstant ratio is necessary, remains an open problem.
Unsolved problem in mathematics: Does the feedback arc set problem have an approximation algorithm with a constant approximation ratio? (more unsolved problems in mathematics)

If the input digraphs are restricted to be tournaments, the resulting problem is known as the minimum feedback arc set problem on tournaments (FAST). This restricted problem does admit a polynomialtime approximation scheme, and this still holds for a restricted weighted version of the problem.^{[15]} A subexponential fixed parameter algorithm for the weighted FAST was given by Karpinski & Schudy (2010).^{[16]}
On the other hand, if the edges are undirected, the problem of deleting edges to make the graph cyclefree is equivalent to finding a minimum spanning tree, which can be done easily in polynomial time.
Several approximation algorithms for the problem have been developed^{[17]}  including Monte Carlo randomized algorithm that solves the problem in polynomial time with arbitrary probability.^{[18]} A particularly simple algorithm is the following:
Now both L and R are acyclic subgraphs of G, and at least one of them is at least half the size of the maximum acyclic subgraph.^{[19]}^{:348}