es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

En mi modelo de AMPL, apareció un error de sintaxis.

Utilizo AMPL para mi tesis, ¿alguien puede ayudarme? Siempre aparece un “error de sintaxis” en el área de restricción. ¿Alguien puede ayudarme con esto?
Espero que alguien pueda ayudar a mi modelo, ya que es para mi tesis.

#VARIABLE
var Allocated {I,D,T} integer; # asignado al grupo i en el distrito d en el período de tiempo t (y_idt)
var Stored {D,T}integer; # almacenado en el almacén del distrito d en el período de tiempo t (w_dt)
var Shipped {K,D,T} integer; # enviado desde el centro de distribución k al almacén del distrito d en el período de tiempo t (x_kdt)
var Distribution_Center_set_up {K} binary; # 0/1 si el centro de distribución k está configurado / no se configura (omega_k)
var miu integer; # nueva variable libre

#OBJECTIVE FUNCTION
maximize Z: miu

#CONSTRAINT
sujeto a Newcon {i en I, d en D, t en T}:
miu <= Asignado [i, d, t] / demanda_total [i, d];

sujeto a con_2 {i en I, d en D}:
sum {t en T} Asignado[i, d, t] >= tasa_cobertura[i] * demanda_total[i, d];

sujeto a con_3 {d en D, t en {1}}:
sum {DistributionCenter} Shipped[k, d, t] – sum {GroupType} Asignado;

sujeto a con_4 {d en D, t en T diff {1}}:
sum {DistributionCenter} Shipped[k, d, t] – sum {GroupType} Asignado;

sujeto a con_5 {k en K, t en T}:
sum {DemandPoint} Shipped[k, d, t] <= la_capacidad_maxima[k, t];

sujeto a con_6 {k en K, d en D, t en T}:
Shipped[k, d, t] * Distribution_Center_set_up [k];

sujeto a con_7:
sum {DistributionCenter} costo_de_configuracion[k] * Distribución_Center_set_up[k]
+ sum {DistributionCenter, DemandPoint, TimePoint} costo_de_compra_por_dosis * Shipped[k, d, t]
+ sum {DistributionCenter, DemandPoint, TimePoint} costo_de_transporte_por_dosis[k, d] * Shipped[k, d, t]
+ sum {DemandPoint, TimePeriode} costo_de_mantenimiento_por_dosis [d] * Almacenamiento [d, t] <= presupuesto;

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Es difícil diagnosticar el error de sintaxis sin más información, pero aquí hay algunos consejos generales que podrían ayudar:

    1. Verifique que todas las variables y conjuntos estén definidos y escritos correctamente. Asegúrese de haber usado el caso correcto para cada nombre de variable y conjunto en todo su código.
    2. Busque comas o puntos y comas faltantes. Cada línea de código debe terminar con un punto y coma, y cada conjunto de código dentro de una restricción debe separarse por una coma.
    3. Tenga en cuenta la precedencia del operador. Si está utilizando múltiples operadores en una restricción, asegúrese de agruparlos correctamente usando paréntesis.
    4. Utilice el mensaje de error proporcionado por AMPL para guiar su proceso de depuración. El mensaje de error debería darle una pista de dónde se produjo el error, para que pueda volver atrás y encontrar el problema.

    Si todo lo demás falla, considere buscar ayuda de un usuario de AMPL más experimentado o consulte la documentación del software. ¡Buena suerte con su tesis!

Comments are closed.