Muy buenas, Tengo la siguiente duda/problema, He optimizado con éxito un problema de este tipo: \sum f(x_i) donde f es una curva exponencial (función no lineal) sujeto a: a_i < x_i < b_i y \sum f(x_i) < Presupuesto Vamos, es repartir un presupuesto forzando a que inviertas como poco a_i y como mucho b_i para cada i Esto lo hecho correctamente usando el paquete: http://cran.r-project.org/web/packages/nloptr/index.html Uso un algoritmo que no necesita gradiente: NLOPT_LN_COBYLA (Aunque el gradiente se podría calcular, es fácil) Ahora bien, Quiero hacer una variación de este problema incluyendo que x_i pueda ser cero (no se invierte en i) o si es mayor que cero ya tenga que ser como mínimo a_i y como máximo b_i Esto lo he puesto de la siguiente manera: \sum w_i * f(x_i) donde como antes a_i < x_i < b_i \sum w_i * f(x_i) < Presupuesto Y donde ahora, w_i quiero que sea binario (entero). Por lo que he estado viendo esto es un problema de MINLP: Mixed Integer Non Linear Problem Buscando un poco y mirando en el task view de optimización de cran no he conseguido encontrar nada para esto... See que a lo mejor R no es la herramienta más potente para esto, pero mi idea es hacer un pequeño interfaz con shiny y como en general en estos casos el paquete suele ejecutar código en C o Fortran creo que puede ser bastante eficiente.... ¿Alguna opción? De no ser posible una opción en R, alternativas libres para conseguirlo¿? Muchas gracias!! -- Jorge Ayuso Rejas [[alternative HTML version deleted]]