<p>I looked through the X-tree paper. The authors don't explain the choosing subtree algorithm. But according to the R*-tree paper, alternative methods didn't outperform Guttman's original algorithm (for choosing the best non-leaf node) and for the leaf nodes, minimizing the overlap is better.</p>

<p>However,  the main idea of X-tree is to reduce overlap in the split algorithm. Why do not use the same idea? For example, <br>
1. Try the R* algorithm.<br>
2. If the overlap cost &gt; MAX_OVERLAP, try to choose  the node with the minimum enlargement and overlap cost &lt; MAX_OVERLAP.</p>

<p>But it is my assumption, I haven't any benchmarks yet.</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">&mdash;<br>Reply to this email directly or <a href="https://github.com/mlpack/mlpack/pull/556#issuecomment-194480441">view it on GitHub</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/AJ4bFO--VYBXC9i1PgAfDFpS_AyjWC9zks5prydPgaJpZM4HsSai.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/mlpack/mlpack/pull/556#issuecomment-194480441"></link>
  <meta itemprop="name" content="View Pull Request"></meta>
</div>
<meta itemprop="description" content="View this Pull Request on GitHub"></meta>
</div>