Supponiamo di avere una funzione obiettivo f (x) non convessa (x può essere un vettore), ma una volta aggiunti i vincoli diventa un problema convesso. Per mostrare cosa intendo, considera questo banale esempio: let f (x) = cos (x). Chiaramente, cos (x) non è convesso, ma se considero solo x in [0, pi / 2], la funzione è convessa quando si limita x a questi valori.
CVXPY non accetta questo problema perché non soddisfa le regole DCP. Un'opzione, nell'esempio precedente, è ridurre al minimo f (x) + g (x) dove g è una funzione indicatore tale che: g (x) = 0 per x in [0, pi / 2] eg (x) = + infinito altrimenti, ma non so come implementarlo in CVXPY. Cosa posso usare in Pitone sfruttare la "convessità" del problema?
Grazie.