2012-02-16 3 views
1

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

Я создам различные группы клиентов. Каждая группа будет иметь определенные параметры, которые будут определять, что клиенты хотят купить. Пример этих параметров: качество, возможности, маркетинг и т. Д.

Каждый игрок в моей игре будет создавать различные продукты и попытаться заполнить потребности разных групп клиентов. Затем они будут устанавливать цену на каждый продукт и решать, сколько они будут производить (ограниченное количество).

Итак, с одной стороны у вас ограниченное количество клиентов. На другой стороне у вас ограниченное количество продуктов. Они не должны быть равны (но это может быть). Таким образом, у вас может быть слишком много продуктов для количества клиентов или слишком много клиентов для количества продуктов. Но одно можно сказать наверняка: каждый клиент хочет купить продукт, если нет недостатка.

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

Этот вопрос связан с предыдущим постом о подобной теме: An algorithm for economic simulation?

ответ

3

Один способа думать об этой проблеме в качестве максимального веса проблемы двудольного соответствия. В вашей установки, вы можете думать о проблеме в виде графа с двумя группами узлов:

  1. Ноды, соответствующие клиентам
  2. Узлы, соответствующие продукты

Существует ребро спаривания каждого клиента с продуктами, которые они заинтересованы в покупке, при этом стоимость края заключается в том, насколько клиент хочет этот конкретный продукт. Поскольку клиенты не сопряжены с клиентами, а продукты не сопряжены с продуктами, этот график является двудольным.

Учитывая эту настройку, одним из вариантов было бы найти совпадение на этом графике с максимально возможной возможной общей выгодой (то есть максимизировать общий объем полезности, предоставляемый людьми, покупающими соответствующие продукты). Таким образом, каждый, кто может что-то купить, в конечном итоге сделает это, если другие люди так непропорционально не хотят, чтобы продукты, которые хочет этот клиент, имеют более важное значение для того, чтобы этот человек не получал ни одного из своих предпочтительных продуктов. Существует много алгоритмов для двухстороннего согласования с максимальным весом, и они работают довольно быстро.

Надеюсь, это поможет!

+0

Здравствуйте. Это действительно хорошее решение для моей проблемы! Итак, если я хорошо понимаю, я создаю двухсторонний график с клиентами с одной стороны и продуктами на другом. Затем я создаю ребро со значением между каждым клиентом и каждым продуктом. Это значение определяет, желает ли клиент купить этот продукт или нет. 100 = очень желательно и 0 = не перепробовали. Чем я могу найти максимальный вес. Но только один вопрос: как я могу убедиться, что сначала продаются самые дешевые продукты? Я ставлю цену в качестве параметра для расчета веса? Благодаря! – NLemay

 Смежные вопросы

  • Нет связанных вопросов^_^