Class SigmoidMortalityStrategy

java.lang.Object
epidemic.strategies.mortality.SigmoidMortalityStrategy
All Implemented Interfaces:
MortalityStrategy

public class SigmoidMortalityStrategy extends Object implements MortalityStrategy
Zaawansowana strategia modelująca śmiertelność populacji przy użyciu krzywej sigmoidalnej (funkcji logistycznej). Pozwala na realistyczne odzwierciedlenie procesu biologicznego starzenia się, gdzie szansa na zgon jest niska w młodości i rośnie drastycznie po przekroczeniu zdefiniowanego punktu przegięcia (wieku podeszłego). Strategia ta współpracuje z infrastrukturą ochrony zdrowia – aktywna hospitalizacja znacząco redukuje śmiertelność wywołaną powikłaniami wirusowymi.
  • Field Details

    • baseDiseaseLethality

      private final double baseDiseaseLethality
    • k

      private final double k
    • x0

      private final int x0
  • Constructor Details

    • SigmoidMortalityStrategy

      public SigmoidMortalityStrategy()
  • Method Details

    • shouldDieFromDisease

      public boolean shouldDieFromDisease(Agent agent)
      Przeprowadza stochastyczną ewaluację ryzyka śmierci na skutek infekcji. Wyjściowa zjadliwość wirusa jest weryfikowana na tle statusu medycznego agenta; przebywanie na oddziale szpitalnym aplikuje mnożnik ratujący życie, redukujący szansę na zgon.
      Specified by:
      shouldDieFromDisease in interface MortalityStrategy
      Parameters:
      agent - Agent zmagający się z chorobą.
      Returns:
      true, jeśli losowa próba znalazła się w przedziale aktualnej zjadliwości, oznaczając zgon agenta.
    • shouldDieNaturally

      public boolean shouldDieNaturally(Agent agent)
      Oblicza prawdopodobieństwo naturalnego zgonu na podstawie wieku agenta dystrybuowanego wzdłuż krzywej S-kształtnej. Wykorzystuje parametry konfiguracyjne określające stromość krzywej (k) oraz punkt 50% prawdopodobieństwa zgonu (x0).
      Specified by:
      shouldDieNaturally in interface MortalityStrategy
      Parameters:
      agent - Agent weryfikowany pod kątem naturalnej śmierci ze starości.
      Returns:
      true, jeśli wygenerowana wartość losowa padła ofiarą obliczonego prawdopodobieństwa .