2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


В этом разделе нельзя создавать новые темы.



Начать новую тему Ответить на тему
 
 задача по оптимизации (распределение ресурсов)
Сообщение12.06.2014, 17:35 


12/06/14
1
Добрый день!
Возникла потребность решить следующую задачу, обращаюсь за помощью к форумчанам

Распределить величину ресурса $Q между $N претендентов, описывающихся парами нормированных показателей $(q_i, g_i), т. е. фактически рассчитать значение веса $p_i для каждой пары i-го претендента, которому достанется $p_i \cdot Q
Однако, существуют следующие ограничения:
1. $\sum\limits_{i=1}^N (p_i \cdot Q) = Q
2. $p_i \cdot Q \leqslant q_i
при этом оба параметра $(q_i, g_i) влияют на распределяемый объем прямо пропорционально, т. е. чем больший параметр $p_i или $q_i, тем больший объем необходимо распределить. Параметры можно считать равнозначными.

Мое решение:
отсортировать пары по возрастанию $q_i и итеративно для каждого $q_i рассчитывать
$p_i = \min {(\frac {g_i \cdot q_i}{\sum\ q_i \cdot g_i} , q_i)}
Возможный остаток ресурса распределить между парами с максимальными значениями $q_i , т. е. как только $Q - \sum\limits_{k=1}^i p_i \cdot q_i = \sum\limits_{k=i+1}^N q_i, претенденты начиная с i+1 получают веса, равные 1
Вопрос, а можно придумать другую формулу, позволяющую рассчитать значения весов, желательно не итеративную, и изначально учитывающее ограничения?

Заранее спасибо

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group