WaterStrategy
Español
Español
  • WaterStrategy Documentación
  • Soporte
  • Cómo empezar
    • Creación de una cuenta
    • Iniciar sesión
    • Recorrido por la interfaz
    • Creación de un nuevo proyecto y red
    • Compartir proyectos y redes
    • Exportación e importación de modelos
    • Cómo tratar los errores del modelo
    • Carga de datos externos
  • Conceptos básicos de modelado
    • ¿Modelado de sistemas de recursos hídricos?
    • ¿Qué es Pywr?
    • Conceptos de Pywr
    • Tipos de nodos
      • Entrada de agua
        • Nodo de entrada
        • Nodo de captación
        • Nodo de entrada proporcional
      • Transporte acuático
        • Link Node
        • Nodo fluvial
        • Nodo de retardo
        • RiverSplit Node
        • RiverSplitWithGauge Node
        • Nodo RiverGauge
        • BreakLink Node
        • PiecewiseLink Node
        • MultiSplitLink Node
      • Almacenamiento de agua
        • Storage Node
        • Nodo de embalse
        • VirtualStorage Node
        • Nodo de almacenamiento virtual rodante
        • Nodo de almacenamiento virtual anual
        • Nodo de almacenamiento virtual estacional
        • Nodo de almacenamiento agregado
      • Salida de agua
        • Nodo de salida
        • Pérdida Link Node
      • Energía hidroeléctrica
        • Nodo de turbina
      • Otros
        • Nodo agregado
    • Sanciones de asignación
    • Escenarios
      • WaterStrategy Escenarios
      • Escenarios Pywr
        • Integración de parámetros y pywr-scenario
    • Parámetros
      • Clase de parámetro base
        • Parámetro
        • Parámetro de índice
      • Parámetros simples
        • Constante
        • Parámetro de escenario constante
        • Parámetro de índice de escenario constante
      • Combinación de varios parámetros
        • Parámetro agregado
        • Parámetro de índice agregado
        • Parámetro de división
        • Parámetro negativo
        • Parámetro máximo
        • Parámetro máximo negativo
        • Parámetro mínimo
        • Parámetro mínimo negativo
        • Parámetro de compensación
      • Series temporales y perfiles
        • Perfil diario
        • Perfil semanal
        • Perfil mensual
        • Perfil de reducción uniforme
        • Perfil diario de Scenario
        • Perfil semanal de Scenario
        • Perfil mensual del escenario
        • Factores mensuales del escenario indexado de matrices
        • Perfil RBF
      • Parámetro DataFrame
      • Parámetro HDF5
      • Parámetros basados en matrices
        • Parámetro indexado de matriz
        • Parámetro de escenario indexado de matriz
        • Parámetro de matriz indexada
      • Parámetros de umbral
        • Umbral abstracto
        • Umbral de almacenamiento
        • Umbral de nodo
        • Umbral de parámetros
        • Umbral de grabación
        • Umbral del año actual
        • Umbral de días ordinales actuales
      • Parámetros de interpolación
        • Parámetro interpolado
        • Cuadratura interpolada
        • Flujo interpolado
        • Volumen interpolado
      • Parámetros de la curva de control
        • Curva de control base
        • Parámetro interpolado de la curva de control
        • Parámetro interpolado por partes de la curva de control
        • Parámetro de índice de curva de control
      • Parámetros de energía hidroeléctrica
      • Otros
        • Parámetro de serie armónica anual
        • Parámetro de déficit
        • Parámetro de contenedor de escenarios
        • Parámetro integral por partes
        • Parámetro de flujo
        • Parámetro de retardo de flujo
        • Parámetro de factor de descuento
    • Grabadoras
      • Grabadora básica
        • Grabadora
        • Grabador de nodos
        • Grabador de almacenamiento
        • Registrador de parámetros
        • Registrador de parámetros de índice
        • Agregador
      • Grabadoras Numpy Array
        • Grabador de nodos Numpy Array
        • Grabador de almacenamiento Numpy Array
        • Registrador de niveles Numpy Array
        • Grabador de área Numpy Array
        • Registrador de parámetros Numpy Array
        • Registrador de parámetros de índice Numpy Array
        • Registrador de parámetros de perfil diario Numpy Array
      • Registradores de curvas de duración de flujo
        • Registrador de curvas de duración de flujo
        • Registrador de curvas de duración de almacenamiento
        • Registrador de desviación de la curva de duración del flujo
        • Registrador de curvas de duración de flujo estacional
      • Registradores de déficit
        • Registrador de déficit de nodos Numpy Array
        • Registrador de ratios suministrado por Numpy Array Node
        • Registrador de ratios de reducción de nodos Numpy Array
        • Registrador de nodos con déficit total
        • Registrador de nodos de frecuencia deficitaria
      • Registradores estadísticos
        • Grabador agregado
        • Registrador de nodos Mean Flow
        • Grabador de nodos de flujo total
        • Registrador de flujo total anual
        • Registrador de parámetros medios
        • Registrador de parámetros totales
        • Registrador de nodos Rolling Mean Flow
        • Grabador de almacenamiento de volumen mínimo
        • Grabador de volumen mínimo de almacenamiento
        • Registrador de parámetros de índice de recuento de pasos de tiempo
        • Registrador de umbrales del índice de recuento anual
        • Registrador de parámetros Rolling Window
      • Registradores de índices
        • Registrador de parámetros del índice de recuento anual
      • Grabadoras de archivos
        • Grabador CSV
        • Grabador de tablas
      • Grabadoras de energía hidroeléctrica
        • Registrador de energía hidroeléctrica
        • Registrador Total Hydro Energy
  • Modelado aplicado
    • Nodos de depósito y almacenamiento
  • Tutoriales
    • Creación y ejecución de un modelo sencillo
      • Creación y ejecución de un modelo
        • Configuración de un proyecto y una red
        • Añadir nodos y enlaces (bordes)
        • Agregar datos a los nodos
        • Establecer el horizonte temporal
        • Ejecución del modelo y visualización de sus resultados
        • Creación de un nuevo escenario
        • Ejercicio
      • Realizar cambios en un modelo
        • Añadir un depósito
        • Agregar reglas operativas básicas
    • Modelización de sistemas de embalses de
      • Creación de un nuevo proyecto y red
      • Agregar una presa (embalse)
      • Agregar una demanda
      • Agregar un tratamiento de agua funciona con pérdidas
      • Agregar una fuente que represente el agua subterránea
      • Ejercicios adicionales
      • Añadir batimetría de reservorios, evaporación y precipitaciones
        • Antecedentes de la evaporación y la precipitación en los embalses
        • Añadir batimetría de yacimientos (área)
        • Añadir batimetría de reservorio (nivel)
        • Agregar evaporación y lluvia mensuales
      • Uso de reglas de control y penalizaciones de asignación para equilibrar las fuentes
      • Curvas de control y ahorro en la demanda
        • Añadir curvas de control de yacimientos y ahorrar en la demanda (reducciones)
    • Uso de penalizaciones de asignación para asignar agua
    • Escenarios de PyWR que leen un DataFrame externo y agregan reglas personalizadas
      • Carga de archivos
      • Lectura de CSV DataFrame
      • Ejecución de pywr-scenarios
      • Lectura de h5 DataFrame para escenarios de pywr
      • Crear regla personalizada - TranscientDecisionParameter
Powered by GitBook
On this page

Was this helpful?

Export as PDF
  1. Conceptos básicos de modelado

Sanciones de asignación

PreviousNodo agregadoNextEscenarios

Last updated 6 months ago

Was this helpful?

Las penalizaciones de asignación son atributos de nodo que permiten a Pywr simular la asignación de agua. También pueden denominarse «prioridades de asignación» o «costos».

Una penalización baja tendrá la prioridad de asignación más alta, mientras que un número alto tendrá la más baja.

Por ejemplo, si tres nodos tienen prioridades 100, 3 y -2, el nodo con -2 recibe el agua primero, luego 3 y luego 100.

Estas son algunas preguntas sobre las multas por asignación de agua que puede tener y algunas respuestas breves:

  1. ¿Por qué y cómo distribuye Pywr el agua de esta manera? En cada paso del tiempo, el algoritmo de asignación de Pywr (un programa lineal) minimiza la penalización de asignación de todo el sistema. El flujo a través de los nodos se multiplica por sus respectivas penalizaciones de asignación. Esta técnica ha estado en uso desde la década de 1950 por los planificadores de energía, transporte y agua y por las empresas de logística. Todas quieren sistemas que funcionen a bajo costo, por lo que, por lo general, utilizan los costos operativos financieros como pena de penalización. Esto tiene sentido, ya que permite usar el modelo para equilibrar una red de oferta y demanda al menor costo.

  2. ¿Le parece confusa la idea de una penalización negativa? Si es así, piensa en una penalización negativa como un coste negativo, ¿qué es eso? ¡un beneficio! Por lo tanto, si quieres asignar el agua a los lugares donde genere más beneficios en tu modelo Pywr, utilizarás penalizaciones negativas. En este caso, en lugar de denominar penalizaciones o costes de asignación a estos atributos de nodo, podrías llamarlos prioridades de asignación. En este caso, un nodo con una prioridad de asignación de -99 recibirá agua mucho antes que -10. Como se muestra en el ejemplo de la tercera oración anterior, en el mismo modelo se pueden usar penalizaciones de asignación tanto negativas como positivas.

  3. ¿Las penalizaciones por asignación tienen algún significado especial? No, no lo tienen. Solo están ahí para ayudar a su modelo a asignar el agua de una manera que tenga sentido para usted, el administrador y planificador del agua.

  4. ¿Cómo sé si he establecido correctamente las penalizaciones por asignación de agua? Si su modelo asigna el agua de manera adecuada en condiciones normales, pero también durante inundaciones y sequías, ha establecido las penalizaciones adecuadas. ¡Felicidades! su modelo está en camino de estar «bien calibrado».

  5. Si realizo un cambio importante en mi modelo, como añadir una nueva infraestructura grande o añadir un nuevo tipo de usuario de agua, ¿tengo que cambiar las penalizaciones de mi modelo? Sí, es posible que algunas penalizaciones de su modelo deban refinarse, según la importancia del cambio. Pruébalo y verás.

  6. ¿Puedo usar cualquier número para los penaltis? Por ejemplo, si mi modelo tiene 2 nodos, ¿puedo usar un millón negativo y positivo como penalizaciones? Sí, pero es una mala idea. Usa números que estén lo más cerca posible. De lo contrario, a medida que su modelo crezca, podría quedarse sin penalizaciones disponibles y su modelo empezará a cometer errores de redondeo. Sin embargo, si utiliza penalizaciones demasiado similares, es posible que su modelo no sea sensible a ellas (es decir, no las tenga en cuenta adecuadamente al simular las asignaciones). Con un poco de experiencia, aprenderás a establecer penalizaciones que funcionen bien. Para obtener esa experiencia, prueba a cambiar las penalizaciones y comprueba cómo afectan a los resultados de tu modelo.

Por último, proporcionamos algunos detalles técnicos más sobre las penalizaciones:

  • Los nodos de depósito y almacenamiento tienen penalizaciones de asignación asignadas. Una penalización negativa significa que el depósito tenderá a acumular agua, a menos que una penalización más baja en otro nodo haga que el almacenamiento del depósito tenga una prioridad más baja.

  • Las penalizaciones de asignación pueden ser constantes (parámetros constantes) o perfiles (mensuales, diarios o semanales) que cambian con el tiempo. Además, las penalizaciones por asignación pueden tener diferentes niveles definidos por diferentes curvas de control en función del volumen del depósito. A pesar de que las penalizaciones por la asignación de depósitos y depósitos influyen en el almacenamiento de agua, las liberaciones de esos nodos se deben a que el sistema tendrá en cuenta las penalizaciones de asignación aguas abajo, ya que el algoritmo intenta minimizar la penalización general del sistema en cada fase temporal.