Regarding this question, I am asking about the current state of the art, that is, the proper algorithm for this problem.
To put an example, if I was asking for algorithms to parse, there is no opinion-based answer: context-free grammars are parsed by LL(K) to LR(K) parsers based on properties of the grammar itself. This is not opinion based.
To put another example, if I was asking about 3D shape optimization: there are strictly defined algorithms about it: octree, LoD, spacial indexing, etc. and the usage of each of them is defined by it usage (moving elements, etc.) There is not opinion-based answer.
Getting back to this question, it does not ask for "libraries" or "books" or "examples" where any web-page could fit, it ask for a specific problem with a specific solution.
Also, the answer is not trivial: you can search online and will find very little information about the topic.
Finally, asking for a "paper" is not any random opinion-based resource. Otherwise, asking for the c++ standard name would be "asking for resources", most of computer science algorithms, data structures, project management appeared in some paper. Asking for a paper is to ask for the reference for a specific solution/technology, asking for an algorithm or for it paper is about the same.
I conclude that this question is not opinion based, has value for future readers and fit in this community of "Software engineering" as described by "architecture, and design".
So my question here is: why is this question closed?