Балансировка нагрузки с использованием уравнения теплопроводности - PullRequest
1 голос
/ 25 июля 2011

Я не думал, что это было достаточно математически для mathoverflow, поэтому я решил попробовать здесь.Хотя это для задачи программирования, так что это своего рода по теме.

У меня есть график (как в математическом), где у меня есть несколько вершин, A, B, C .. каждая с нагрузкой«значение», они связаны какой-то произвольной топологией (существует по крайней мере связующее дерево).Задача задачи - передать нагрузку между каждой из вершин, предпочтительно используя минимально возможный поток.

Я хочу знать значения переноса по каждому ребру.

Решение проблемы, о которой я думал, состояло в том, чтобы рассматривать ее как проблему теплопередачи и итеративно переносить нагрузку или решатьТепловое уравнение в некотором роде, считая количество нагрузки, рассеиваемой вдоль каждого края.Таким образом, количество теплопередачи, пока сеть не достигнет устойчивого состояния, должно дать результат.

Хотя я думаю, что это будет работать, это кажется глупым решением.Мне интересно, есть ли какая-либо ссылка или примерная проблема, на которую кто-то может указать мне - я не уверен, какие ключевые слова искать.

Я не мог понять, как связать проблему как с симплексной проблемой, так и какпроблема сетевого потока - каждый фронт имеет неограниченную пропускную способность, как и каждый узел.Необходимо решить две проблемы минимизации одновременно, поэтому симплекс, кажется, не применим ??

1 Ответ

1 голос
/ 25 июля 2011

Если у вас есть связующее дерево, то есть решение O (n).

Рассчитать среднее значение.(В конце концов, у каждого узла будет это значение.) Затем выполните итерацию по листьям: вычислите изменение значения, необходимое для этого листа (среднее значение), добавьте это изменение к листу, назначьте его (как поток) на реброкоторый соединяет этот лист с деревом и вычитает его из другого узла.Уберите этот лист и ребро с дерева (не с графика, конечно);другой узел может стать новым листом, если у него есть только одно остающееся ребро в дереве.

Когда вы дойдете до последнего узла, если вы правильно сделали арифметику, он получит среднее значениекак и все остальные узлы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...