Package main

## Class Greedy

- java.lang.Object
- - main.Greedy

-     public class Greedy
      extends java.lang.Object

  Modulo de ejecución del algoritmo greedy presentado en el articulo. Antes de ejecutar el greedy deben cargarse la ubicación de los contenedores y las matrices de distancia/tiempo utilizando sus respectivos getters.
  Author:
    Toyos, Vallcorba

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `int` | `COSTO_FIJO` |
    `int` | `COSTO_POR_DISTANCIA` |
    `float` | `COSTO_POR_TIEMPO` |
    `double` | `MAX_TIME` |
    `double` | `TIEMPOXCONTENEDOR` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Greedy()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `float[][]` | `getTiempo()` |
    `float[]` | `getTiempoFromStartpoint()` |
    `float[]` | `getTiempoToStartpoint()` |
    `Greedy` | `setBasuraInicialContenedores​(int[] basuraInicialContenedores)` |
    `Greedy` | `setCantidadCamiones​(int cantidadCamiones)` |
    `Greedy` | `setCAPACIDAD_MAXIMA​(int CAPACIDAD_MAXIMA)` |
    `Greedy` | `setDistancia​(float[][] distancia)` |
    `Greedy` | `setDistanciaFromStartpoint​(float[] distanciaFromStartpoint)` |
    `Greedy` | `setDistanciatoStartpoint​(float[] distanciatoStartpoint)` |
    `Greedy` | `setTiempo​(float[][] tiempo)` |
    `Greedy` | `setTiempoFromStartpoint​(float[] tiempoFromStartpoint)` |
    `Greedy` | `setTiempotoStartpoint​(float[] tiempotoStartpoint)` |
    `Itinerario` | `solve​(int contIni)` | Calcula un itinerario utilizando el algoritmo greedy presentado en el articulo

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### COSTO_POR_DISTANCIA

          public final int COSTO_POR_DISTANCIA

      See Also:
        Constant Field Values

    - #### COSTO_POR_TIEMPO

          public final float COSTO_POR_TIEMPO

      See Also:
        Constant Field Values

    - #### COSTO_FIJO

          public final int COSTO_FIJO

      See Also:
        Constant Field Values

    - #### MAX_TIME

          public final double MAX_TIME

      See Also:
        Constant Field Values

    - #### TIEMPOXCONTENEDOR

          public final double TIEMPOXCONTENEDOR

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### Greedy

          public Greedy()

  - ### Method Detail

    - #### solve

          public Itinerario solve​(int contIni)

      Calcula un itinerario utilizando el algoritmo greedy presentado en el articulo

      Todas las matrices del problema deben estar cargadas antes de poder ejecutar esta función. Es decir, deben ejecutarse los getters respectivos para cargar las matrices.

      Parameters:
        `contIni` - : primer contenedor al cual el camion viajará desde el basurero. Si contIni=-1, se tomará como primer destino el contenedor más cercano al basurero.
      Returns:
        retorna float[] donde la primer entrada es la distancia recorrida en metros del recorrido y la segunda entrada es el tiempo empleado para hacerlo

    - #### setTiempo

          public Greedy setTiempo​(float[][] tiempo)

    - #### setDistancia

          public Greedy setDistancia​(float[][] distancia)

    - #### setTiempotoStartpoint

          public Greedy setTiempotoStartpoint​(float[] tiempotoStartpoint)

    - #### setTiempoFromStartpoint

          public Greedy setTiempoFromStartpoint​(float[] tiempoFromStartpoint)

    - #### setDistanciatoStartpoint

          public Greedy setDistanciatoStartpoint​(float[] distanciatoStartpoint)

    - #### setDistanciaFromStartpoint

          public Greedy setDistanciaFromStartpoint​(float[] distanciaFromStartpoint)

    - #### setCantidadCamiones

          public Greedy setCantidadCamiones​(int cantidadCamiones)

    - #### setCAPACIDAD_MAXIMA

          public Greedy setCAPACIDAD_MAXIMA​(int CAPACIDAD_MAXIMA)

    - #### setBasuraInicialContenedores

          public Greedy setBasuraInicialContenedores​(int[] basuraInicialContenedores)

    - #### getTiempo

          public float[][] getTiempo()

    - #### getTiempoToStartpoint

          public float[] getTiempoToStartpoint()

    - #### getTiempoFromStartpoint

          public float[] getTiempoFromStartpoint()