Weight Balancer Algorithm
<p><strong>Problem</strong></p>

<p>Given a list of items with varying weights and a certain amount of containers that the weights can be stored in, find the solution set that balances the weights in the containers. The optimal solution will minimize the different between the container with the most weight and the container with the least weight.</p>

<p><strong>Criteria</strong></p>

<ul>
<li>All the weights must be used</li>
<li>The weights can not be divided into separate containers</li>
</ul>

<p><strong>Application</strong></p>

<p>The real application of this algorithm is to try to load balance a schedule in a real time operating system. The weights are the runtime of each scheduled function and the containers are the frames that the functions can scheduled to run in. That way you try to spread out the runtime of each functions in an effort to minimize the overall frame time.</p>

<p><strong>Thoughts</strong></p>

<p>This seems to be a cross between a 1/0 multiple knapsack problem and the bin packing problem. I am trying to come up with an algorithm that uses dynamic programming inorder to solve the problem. I am struggling to see how I could use it for this problem. Does anyone have any suggestions or material on similar problems?</p>