rcc0023 Можно добавить сохранение текущих позиций при желании. Запомнив текущую позицию и прогнав скрипт на несколько итераций - можно получить следующие ходы.
PHP код:
<pre><?
$c=50; // Количество элементов для вывода
function findmin($array) {return array_search(min($array),$array);}
// $run - массив с тем же количеством ключей что и $weight. Тут можно задать начальные данные
$run = array_map(create_function('$a','return '.$max.'/$a;'),$weight);
print_r($run);
for ($i=0;$i<$c;$i++)
{
$j=findmin($run);
echo $j."\n";
$bonus=0; // Зануляем бонус, на всякий случай
// А тут можно добавить условие по добавке бонусов к инициативе
$run[$j]+=$max/($weight[$j]+$bonus); // Инкремент текущей позиции
}