algorithm - sustitucion - estrategia de reemplazo sistemas operativos
¿Cuál es el diseño de algoritmo óptimo para un urinario que ahorra agua? (6)
En el trabajo, tenemos uno de esos desagradables urinarios comunales. No hay mango de descarga. Por el contrario, tiene un sensor de movimiento que a veces se activa cuando te paras delante de él y otras veces no. Cuando se dispara, se llena un tanque, que cuando está lleno se usa para enjuagar el orinal.
En mis muchos viajes antes de esta nastrapción, he reflexionado tanto sobre qué algoritmo usa la caja para determinar cuándo encender y cuál sería el algoritmo óptimo, en términos de conservación del agua mientras se mantiene una experiencia relativamente agradable en el orinal.
Compartiré mi respuesta una vez que la gente haya tenido la oportunidad de compartir sus ideas.
¿Cómo sabes que realmente no es una cámara que alimenta su video a un banco de monitores en el sótano donde Milton desencadena el color cuando te ve salir del urinario?
/ me pongo su sombrero de hojalata
A riesgo de sonar Ludditish, creo que la mejor solución es manejarlo. Pero esa no es la pregunta. Yo asumiría que el mecanismo es muy simple. Alguien se mueve delante de él, comienza un conteo. Cuando se completa el conteo, el urinario está "cebado". Cuando la persona se aleja, se tira del gatillo y el sensor se apaga por un período de tiempo arbitrario (no creo que tenga ni necesite conocimiento sobre el acto de enjuagar / llenar el tanque).
¿Estoy pensando demasiado en esto?
Me dispararía por sentido pero usaría un relleno lento con la esperanza de que, cuando se sonrojara, alguien más haya recibido un golpe. Este enfoque minimizaría el estancamiento apestoso y ocasionalmente saltaría un ciclo de descarga.
OnUserEnter()
{
if (UsersDetected == 0)
{
FirstDetectionTime = Now();
}
UsersDetected++;
CurrentlyInUse = true;
}
OnUserExit()
{
CurrentlyInUse = false;
if (UsersDetected >= MaxUsersBetweenFlushes ||
Now() - FirstDetectionTime > StinkInterval)
{
Flush();
}
}
OnTimer()
{
if (!CurrentlyInUse &&
UsersDetected > 0 &&
Now() - FirstDetectionTime > StinkInterval)
{
Flush();
}
}
Flush()
{
FlushTheUrinal();
UsersDetected = 0;
}
El mejor algoritmo de conservación de agua es un urinario sin mango y un sensor roto.
Este parece ser el estado de nuestro orinal la mayor parte del tiempo, por lo que supongo que tiene que estar intencionalmente diseñado para hacer eso con el fin de conservar el valioso agua potable.
Los urinarios de "procesamiento en paralelo" (también conocido como "multiusuario") en nuestra escuela siempre activaron una descarga completa cada vez antes de que suene la campana de descanso y, por supuesto, poco después de la campana de "descanso". Muy simple y efectivo.