What is it used for
Edit: my comment sounds a bit rude on second read. My apologies, it is the limitations of this medium.
If you have a bunch of chat users and a bunch of chat servers, and you want to figure out how to assign users to servers in a way that minimizes the number of messages going between your chat servers, then you're solving a min cut problem on a graph where users are nodes, edges are communications, and edge weights are communications volumes. Any links that you cut in order to partition the graph end up being cross-server traffic.
(Copy paste from viecut github repo)
Research these days mostly focuses on deep learning though.