Самый быстрый способ создания всех комбинаций заданных переменных, а также их максимума, минимума и интервала с ограничеPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Самый быстрый способ создания всех комбинаций заданных переменных, а также их максимума, минимума и интервала с ограниче

Сообщение Anonymous »

У меня есть словарь с диапазонами для нескольких переменных [min,max,interval]:

Код: Выделить всё

dict = { 'v1': [0,10,1], 'v2':[2,20,2], 'v3':[0,10,5]}
Каков самый быстрый способ сгенерировать все существующие комбинации?
например. {'v1': 0,'v2':2,'v3':0}, {'v1':0,'v2':2,'v3':5}, {'v1':0,'v2' :2,'v3':10}, {'v1':0,'v2':4,'v3':0}.......
Одно предостережение заключается в том, что у меня есть определенные ограничения, например, если v3 > 5: v2 < 4 должно быть удовлетворено, поэтому ['v1':0,'v2':6,'v3':10] недействителен и не должен генерироваться.
У меня около 15-20 переменных и около 5 ограничений, всего, вероятно, будет около 1 миллиарда различных комбинаций (чем больше комбинаций, тем лучше, но необходимо должно быть сделано в разумные сроки). Какой самый быстрый способ сгенерировать это?
У меня есть доступ к 20 процессорам, поэтому рабочая нагрузка будет распределена.
Я знаю, что могу использовать np .mgrid или itertools.product, как показано здесь: Numpy: эффективный способ создания комбинаций из заданных диапазонов, но с учетом того, что у меня есть определенные ограничения, я не уверен, как быстро его реализовать

Подробнее здесь: https://stackoverflow.com/questions/790 ... ax-min-and
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»