Мне было интересно, смогу ли я решить проблему оптимизации с помощью scipy.optimize или другого пакета Python.Это проблема.У меня есть две матрицы из 0 и 1.
import numpy as np
from numpy import random
event1 = random.choice([0, 1], size=(20,10), p=[9./10, 1./10])
event2 = random.choice([0, 1], size=(20,10), p=[5./10, 5./10])
Я хочу найти оптимальное подмножество строк (если я выберу строку x для события матрицы 1, тогда я должен выбрать строку x также для события матрицы 2), так что:
sum(event2[rows_select].sum(axis=0) > 0)
является минимальным
при условии
mean(event1[rows_select].sum(axis=0) > 0) >= p --where 0<p<1
, где в этом примере row_Select является случайным, но это именно то, что необходимо оптимизировать.
rows_select = random.choice([False, True], size=(20,), p=[5./10, 5./10])