Closely related are the feedback vertex set, which is a set of vertices containing at least one vertex from every cycle in the graph, and the minimum spanning tree, which is the undirected variant of the feedback arc set problem.
As a simple example, consider the following imaginary situation:
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. Your goal is to get the lawnmower. 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 NP-hard problem called the minimum feedback arc set problem. It is particularly difficult in k-edge-connected graphs for large k, where each edge falls in many different cycles. The decision version of the problem, which is NP-complete, asks whether all cycles can be broken by removing at most k edges; this was one of Karp's 21 NP-complete problems, shown by reducing from the vertex cover problem.
The news gets worse: Viggo Kann showed in 1992 that the minimum feedback arc set problem is APX-hard, which means that there is a constant k, such that there is no polynomial-time approximation algorithm that always find an edge set at most k times bigger than the optimal result. As of 2006, the highest value of "k" for which this is k = 1.36. (Note that a related problem, the weighted feedback set on tournaments, does have a PTAS. )
On the other hand, if the edges are undirected, the problem of deleting edges to make the graph cycle-free is equivalent to finding a minimum spanning tree, which can be done easily in polynomial time.