0 / 0
Volver a la versión inglesa de la documentación
Referencia a datos importados y definición de salida de solución en un modelo
Última actualización: 12 ago 2024
Referencia de datos importados en un modelo en un experimento de Decision Optimization

Para los modelos Python DOcplex u OPL, puede hacer referencia a los datos importados utilizando la sintaxis siguiente.

Python modelos

Para los modelos DOcplex de Python , los datos que ha importado en Preparar datos vista en IU de experimento son accesibles desde el diccionario de entrada. Para acceder a los datos importados, debe definir cada tabla con la siguiente sintaxis inputs['tablename']. Por ejemplo, en esta línea de código, food es una entidad definida a partir de la tabla denominada diet_food:
food = inputs['diet_food']
De forma similar, para mostrar tablas en lavista Explorar solución de la IU de experimento debe especificarlas utilizando la sintaxis outputs['tablename']. Por ejemplo:
outputs['solution'] = solution_df
define una tabla de salida que se denomina solution. La entidad solution_df del modelo Python define esta tabla.

Puede encontrar este ejemplo de dieta en la carpeta Model_Builder de DO-samples. Para importarlo y ejecutarlo (resolverlo) en la UI del experimento, consulte Resolver y analizar un modelo de Decision Optimization: el problema de la dieta.

Modelos OPL

En un modelo OPL debes declarar untupleset , para cada tabla que importó en el preparar datos vista y con los mismos nombres. El esquema para cada conjunto de tuples debe tener el mismo número de columnas que la tabla y utilizar los mismos nombres de campo. Por ejemplo, si tiene una tabla de entrada en Preparar datos vista denominada Product con los atributos name, demand, insideCost, y outsideCost, el modelo OPL debe contener la definición siguiente:
tuple TProduct {
   key string name;
   float demand;
   float insideCost;
   float outsideCost;
 };

{TProduct}     Product = ...;

La limitación de utilizar sólo tuplas y conjuntos de tuplas como entrada OPL es para facilitar la integración con fuentes de datos. Por ejemplo, se puede acceder a fuentes de datos SQL y realizar un flujo de datos con un mínimo esfuerzo; NoSQL y transformar los datos automáticamente en tablas. Si es necesario, el desarrollador de modelos de optimización puede reformular los datos para llenar otras estructuras de datos durante la optimización, pero esta manipulación no debe afectar a los datos de entrada o salida.

De manera similar, si desea mostrar una tabla en el Explorar solución vista , debes definir untupleset para esta tabla de salida en su modelo OPL. Por ejemplo, este código genera una tabla de salida con 3 columnas en la solución.
/// solution
 tuple TPlannedProduction {
   key string productId;
   float insideProduction;
   float outsideProduction;
 }

{TPlannedProduction} plan = {<p.name, Inside[p], Outside[p]> | p in Products};

Puede encontrar este modelo OPL de ejemplo para un problema de producción de pasta en la carpeta Model_Builder de la DO-samples. Puede descargar y extraer todos los ejemplos. Seleccione la subcarpeta de producto y versión relevante.

Más información

Búsqueda y respuesta de IA generativa
Estas respuestas las genera un modelo de lenguaje grande en watsonx.ai que se basa en el contenido de la documentación del producto. Más información