コード例 #1
0
 public Duenio(VectorEstado vectorEstado)
 {
     Libre();
     Cola              = 0;
     ACTiempoLibre     = 0;
     this.vectorEstado = vectorEstado;
 }
コード例 #2
0
ファイル: SCC.cs プロジェクト: lucasg18c/SimulacionTP5
 private void RegistrarMetricas(VectorEstado estado)
 {
     ocioEmpleado1   = estado.Empleado1.ACTiempoLibre * 100 / estado.Reloj;
     ocioEmpleado2   = estado.Empleado2.ACTiempoLibre * 100 / estado.Reloj;
     ocioDuenio      = estado.Duenio.ACTiempoLibre * 100 / estado.Reloj;
     colaDuenio      = estado.Duenio.MayorCola;
     colaEmpleados   = estado.MayorColaEmpleados;
     tiempoCafeteria = estado.ContadorClientes != 0 ? estado.ACTPermanenciaCafeteria / estado.ContadorClientes : 0;
     tiempoColas     = estado.ContadorClientes != 0 ? estado.ACTPermanenciaColas / estado.ContadorClientes : 0;
 }
コード例 #3
0
ファイル: SCC.cs プロジェクト: lucasg18c/SimulacionTP5
        private void Registrar(VectorEstado estado)
        {
            seccion1.Add(estado.MostrarSeccion1());
            seccion2.Add(estado.MostrarSeccion2());
            finConsumo.Add(estado.MostrarFinConsumo());
            finUsoMesa.Add(estado.MostrarFinUsoMesa());
            personas.Add(estado.MostrarPersonas());

            if (estado.HizoRK())
            {
                RKLimpieza.Add(new string[] { "", "", "", "", "", "", "", "", "", "", "", "", "" });
                RKLimpieza.AddRange(estado.GetRK());
            }
        }
コード例 #4
0
ファイル: SCC.cs プロジェクト: lucasg18c/SimulacionTP5
        public void Simular(int iteraciones, double mostrarDesde, double mostrarHasta, double mediaLlegada, double desviacionLlegada, double desdeFinConsumo, double hastaFinConsumo, double desdeFinUsoMesa, double hastaFinUsoMesa, double tiempoCompra, double mediaEntrega)
        {
            VectorEstado actual, anterior, temp;

            actual   = new VectorEstado(mediaLlegada, desviacionLlegada, desdeFinConsumo, hastaFinConsumo, desdeFinUsoMesa, hastaFinUsoMesa, tiempoCompra, mediaEntrega);
            anterior = new VectorEstado(mediaLlegada, desviacionLlegada, desdeFinConsumo, hastaFinConsumo, desdeFinUsoMesa, hastaFinUsoMesa, tiempoCompra, mediaEntrega);

            seccion1   = new List <string[]>();
            seccion2   = new List <string[]>();
            finConsumo = new List <string[]>();
            finUsoMesa = new List <string[]>();
            personas   = new List <string[]>();
            RKLimpieza = new List <string[]>();

            actual.Anterior   = anterior;
            anterior.Anterior = actual;

            anterior.Inicializar();
            anterior.Simular();

            if (mostrarDesde == 0)
            {
                Registrar(anterior);
            }

            for (int i = 0; i < iteraciones; i++)
            {
                actual.Preparar();
                actual.ElegirProximo();
                actual.ActualizarTiemposLibres();
                actual.ActualizarPermanencias();
                actual.Simular();

                if (mostrarDesde <= i && i < mostrarHasta)
                {
                    Registrar(actual);
                }

                temp     = actual;
                actual   = anterior;
                anterior = temp;
            }

            RegistrarMetricas(anterior);
        }
コード例 #5
0
ファイル: EventoBase.cs プロジェクト: lucasg18c/SimulacionTP5
 public EventoBase(VectorEstado vectorEstado)
 {
     this.vectorEstado = vectorEstado;
 }
コード例 #6
0
 public FinUsoMesa(VectorEstado vectorEstado, double desde, double hasta) : base(vectorEstado)
 {
     mesas      = new List <double>();
     this.desde = desde;
     this.hasta = hasta;
 }
コード例 #7
0
 public Persona(VectorEstado vectorEstado)
 {
     this.vectorEstado = vectorEstado;
     TiempoLlegada     = vectorEstado.Reloj;
 }
コード例 #8
0
 public Inicializar(VectorEstado vectorEstado) : base(vectorEstado)
 {
 }
コード例 #9
0
ファイル: FinEntrega.cs プロジェクト: lucasg18c/SimulacionTP5
 public FinEntrega(VectorEstado vectorEstado, double media) : base(vectorEstado)
 {
     this.media = media;
 }
コード例 #10
0
 public LlegadaPersona(VectorEstado vectorEstado, double media, double desviacion) : base(vectorEstado)
 {
     this.media      = media;
     this.desviacion = desviacion;
 }
コード例 #11
0
ファイル: Empleado.cs プロジェクト: lucasg18c/SimulacionTP5
 public Empleado(VectorEstado vectorEstado)
 {
     this.vectorEstado = vectorEstado;
     ACTiempoLibre     = 0;
     Libre();
 }
コード例 #12
0
 public FinCompra(VectorEstado vectorEstado, double tiempoEntrega) : base(vectorEstado)
 {
     this.tiempoEntrega = tiempoEntrega;
 }
コード例 #13
0
ファイル: Inestable.cs プロジェクト: lucasg18c/SimulacionTP5
 public Inestable(VectorEstado vectorEstado) : base(vectorEstado)
 {
 }
コード例 #14
0
 public FinLimpieza(VectorEstado vectorEstado) : base(vectorEstado)
 {
     rk = new RKLimpieza();
 }
コード例 #15
0
ファイル: Estrategia2.cs プロジェクト: lsofi/TP-SIM
 public void calcularCantidadPedidos(VectorEstado anterior, VectorEstado actual)
 {
     actual.Pedido = 23;
 }
コード例 #16
0
ファイル: Estrategia1.cs プロジェクト: lsofi/TP-SIM
 public void calcularCantidadPedidos(VectorEstado anterior, VectorEstado actual)
 {
     actual.Pedido = anterior.VentasRealizadas + anterior.VentasPerdidas;
 }