Note that there are some explanatory texts on larger screens.

plurals
  1. POGain maximization on trees
    primarykey
    data
    text
    <p>Consider a tree in which each node is associated with a system state and contains a sequence of actions that are performed on the system. </p> <p>The root is an empty node associated with the original state of the system. The state associated with a node <code>n</code> is obtained by applying the sequence of actions contained in <code>n</code> to the original system state. The sequence of actions of a node <code>n</code> is obtained by queuing a new action to the parent's sequence of actions. </p> <p>Moving from a node to another (i.e., adding a new action to the sequence of actions) produces a gain, which is attached to the edge connecting the two nodes.</p> <p>Some "math":</p> <ul> <li>each system state <code>S</code> is associated with a value <code>U(S)</code></li> <li>the gain achieved by a node <code>n</code> associated with the state <code>S</code> cannot be greater than <code>U(S)</code> and smaller than <code>0</code></li> <li>If <code>n</code> and <code>m</code> are nodes in the tree and <code>n</code> is the parent of <code>m</code>, <code>U(n) - U(m) = g(n,m)</code>, i.e., the gain on the edge between <code>n</code> and <code>m</code> represents the reduction of <code>U</code> from <code>n</code> to <code>m</code></li> </ul> <p>See the figure for an example. <img src="https://i.stack.imgur.com/8jh4a.png" alt="Example of tree"></p> <p>My objective is the one of finding the path in the tree that guarantees the highest gain (where the gain of a path is computed by summing all the gains of the edges on the path):</p> <pre><code>Path* = arg max_{path} (sum g(n,m), for each adjacent n,m in path) </code></pre> <p>Notice that the tree is <strong>NOT</strong> known at the beginning, and thus a solution that does not require to visit the entire tree (discarding those paths that for sure do not bring to the optimal solution) to find the optimal solution would be the best option.</p> <p><strong>NOTE</strong>: I obtained an answer <a href="https://stackoverflow.com/questions/16962516/heuristic-for-using-a-to-find-the-path-with-the-highest-gain">here</a> and <a href="https://stackoverflow.com/questions/17092742/a-vs-trees-in-longest-path">here</a> for a similar problem in offline mode, i.e., when the graph was known. However, in this context the tree is not known and thus algorithms such as Bellman-Ford would perform no better than a brute-fore approach (as suggested). Instead, I would like to build something that resembles backtracking without building the entire tree to find the best solution (branch and bound?).</p> <p><strong>EDIT</strong>: U(S) becomes smaller and smaller as depth increases.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload