I'm trying to find an optimal algorithm that, given a list of arcs $(x_i, y_i)$, where $x_i$ and $y_i$ are the starting and ending angle measurements of the arc in radians, maximizes the number of arcs that can be fit onto a circle.
I'm also curious as to how one might solve the problem of maximizing profit if each arc also had an associated price.
A dynamic programming approach seems relevant, but I'm not sure how to implement it.
For a simple implementation, I would suggest a variation on the increasing first fit algorithm (this is a fairly standard packing algorithm).
Rank each arc in order of size starting from the smallest to the largest. Size $= y_i-x_i$. The rationale here is that to fit as many as possible, you want the arcs to be as small as possible. If there is an associated profit then rank them by increasing value of $\frac{size}{profit}$.
Starting with the smallest arc (or the smallest $\frac{size}{profit}$ arc), add the arc to your circle. Only allow additional arcs if they do not overlap existing arcs.
Repeat until there are no more allowable arcs.