Моделирование рынка с помощью Google OR-Tools - PullRequest
1 голос
/ 05 июня 2019

Я пытаюсь смоделировать рынок с несколькими товарами, когда несколько продавцов и покупателей предлагают цену за один или несколько товаров.Для продавца, который, например, продает 6 яблок, разрешено продавать 2 покупателю, предлагающему самую высокую цену, и 4 покупателю, предлагающему немного худшую цену.Рынок также должен поддерживать условные предложения, то есть я хочу продать 4 яблока, но только если я могу купить 2 груши.

Я смоделировал это несколькими способами сейчас, используя Google OR-Tools, но самый близкий способя могу найти решение этой проблемы с использованием CP-SAT, однако для меня не сразу очевидно, как моделировать условные предложения.

Каков наилучший способ моделирования рынка, подобного этому?

1 Ответ

0 голосов
/ 05 июня 2019

Вы должны взглянуть на:

https://github.com/google/or-tools/blob/stable/ortools/sat/doc/channeling.md

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

...