Package google.research.middlemileoptimization.v1

Índice

MiddleMileOptimization

Servicio para administrar una red de logística y enrutar los envíos en el interior. Este protocolo no tiene estado (los mensajes son independientes), aunque el servicio detrás de él es altamente con estado (recibir un mensaje puede cambiar drásticamente las respuestas para muchos métodos; por ejemplo, enrutar un envío puede cambiar el enrutamiento de otros envíos).

CommitPath

rpc CommitPath(CommitPathRequest) returns (Path)

Confirma la ruta de un envío indicando que no puede ser cambiado en el futuro, ni siquiera por el usuario, excepto por fuerza mayor o acto fortuito indicado por los métodos MakeVehicleUnavailable, MakeHubUnavailable y MakeLineUnavailable. Este método no se utiliza para etiquetar una revisión en particular de una ruta de acceso.

CreateHub

rpc CreateHub(CreateHubRequest) returns (Hub)

Crea un concentrador.

CreateLine

rpc CreateLine(CreateLineRequest) returns (Line)

Crea una línea.

CreateLineRotation

rpc CreateLineRotation(CreateLineRotationRequest) returns (LineRotation)

Crea una LineRotation.

CreateNetwork

rpc CreateNetwork(CreateNetworkRequest) returns (Network)

Crea una red.

CreateVehicle

rpc CreateVehicle(CreateVehicleRequest) returns (Vehicle)

Crea un vehículo.

DeleteHub

rpc DeleteHub(DeleteHubRequest) returns (Empty)

Borra un concentrador.

DeleteLine

rpc DeleteLine(DeleteLineRequest) returns (Empty)

Borra una línea.

DeleteLineRotation

rpc DeleteLineRotation(DeleteLineRotationRequest) returns (Empty)

Borra una LineRotation.

DeleteNetwork

rpc DeleteNetwork(DeleteNetworkRequest) returns (Empty)

Borra una red.

DeleteShipment

rpc DeleteShipment(DeleteShipmentRequest) returns (Empty)

Borra un envío.

DeleteVehicle

rpc DeleteVehicle(DeleteVehicleRequest) returns (Empty)

Borra un vehículo.

GetHub

rpc GetHub(GetHubRequest) returns (Hub)

Obtiene los detalles de un concentrador.

GetLine

rpc GetLine(GetLineRequest) returns (Line)

Obtiene los detalles de una línea.

GetLineRotation

rpc GetLineRotation(GetLineRotationRequest) returns (LineRotation)

Obtiene los detalles de un LineRotation.

GetNetwork

rpc GetNetwork(GetNetworkRequest) returns (Network)

Obtiene los detalles de una red.

GetShipment

rpc GetShipment(GetShipmentRequest) returns (Shipment)

Obtiene los detalles de un envío.

GetVehicle

rpc GetVehicle(GetVehicleRequest) returns (Vehicle)

Obtiene los detalles de un vehículo.

ListHubs

rpc ListHubs(ListHubsRequest) returns (ListHubsResponse)

Enumera los concentradores.

ListLineRotations

rpc ListLineRotations(ListLineRotationsRequest) returns (ListLineRotationsResponse)

Enumera las LineRotations.

ListLines

rpc ListLines(ListLinesRequest) returns (ListLinesResponse)

Muestra una lista de las líneas.

ListNetworks

rpc ListNetworks(ListNetworksRequest) returns (ListNetworksResponse)

Muestra la red.

ListPaths

rpc ListPaths(ListPathsRequest) returns (ListPathsResponse)

Muestra todas las rutas de acceso que están disponibles actualmente. Este método es idempotente y no tiene efectos secundarios.

ListShipments

rpc ListShipments(ListShipmentsRequest) returns (ListShipmentsResponse)

Muestra una lista de los envíos.

ListVehicles

rpc ListVehicles(ListVehiclesRequest) returns (ListVehiclesResponse)

Muestra una lista de los vehículos.

MakeHubAvailable

rpc MakeHubAvailable(MakeHubAvailableRequest) returns (MakeHubAvailableResponse)

Permite que un concentrador esté disponible.

MakeHubUnavailable

rpc MakeHubUnavailable(MakeHubUnavailableRequest) returns (MakeHubUnavailableResponse)

Hace que un concentrador no esté disponible.

MakeLineAvailable

rpc MakeLineAvailable(MakeLineAvailableRequest) returns (MakeLineAvailableResponse)

Permite que una línea esté disponible.

MakeLineUnavailable

rpc MakeLineUnavailable(MakeLineUnavailableRequest) returns (MakeLineUnavailableResponse)

Hace que una línea no esté disponible.

MakeVehicleAvailable

rpc MakeVehicleAvailable(MakeVehicleAvailableRequest) returns (MakeVehicleAvailableResponse)

Permite que un vehículo esté disponible.

MakeVehicleUnavailable

rpc MakeVehicleUnavailable(MakeVehicleUnavailableRequest) returns (MakeVehicleUnavailableResponse)

Hace que un vehículo no esté disponible.

RouteShipment

rpc RouteShipment(RouteShipmentRequest) returns (RouteShipmentResponse)

Enrutar un nuevo envío Similar a la creación, esta operación implica un cambio de estado.

UpdateHub

rpc UpdateHub(UpdateHubRequest) returns (Hub)

Actualiza un concentrador.

UpdateLine

rpc UpdateLine(UpdateLineRequest) returns (Line)

Actualiza una línea.

UpdateLineRotation

rpc UpdateLineRotation(UpdateLineRotationRequest) returns (LineRotation)

Actualiza una LineRotation.

UpdateNetwork

rpc UpdateNetwork(UpdateNetworkRequest) returns (Network)

Actualiza una red.

UpdatePath

rpc UpdatePath(UpdatePathRequest) returns (Path)

Cambia la ruta de un envío: en lugar de usar la que calcula el servicio, el estado contendrá el que estableció el usuario a través de esta llamada.

UpdateVehicle

rpc UpdateVehicle(UpdateVehicleRequest) returns (Vehicle)

Actualiza un vehículo.

AnnotatedPathSegment

Representa una parte de una ruta de acceso con información más redundante que se puede calcular en función del PathSegment contenido y la red. Por lo general, el servidor de la API devuelve estos mensajes.

Campos
segment

PathSegment

Obligatorio. Se están anotando el segmento.

arrival_time

DateTime

Solo salida. Hora de llegada de este tramo.

departure_time

DateTime

Solo salida. Hora de salida de este tramo.

is_committed

bool

Solo salida. Si el cliente de la API decidió comprometer esta parte de la ruta

segment_cost_constant

double

Solo salida. Costo constante para este segmento.

segment_cost_due_to_vehicle

map<string, double>

Solo salida. Una entrada por dimensión.

segment_cost_due_to_departure

double

Solo salida. Costo debido a la rotación de líneas: salida

segment_cost_due_to_arrival

double

Solo salida. Costo debido a la rotación de la línea: llegada.

CommitPathRequest

El mensaje de solicitud para el método CommitPath

Campos
name

string

Obligatorio. El nombre del envío cuya ruta debe confirmarse. Formato: “networks/{network}/shipments/{shipment}”

Campo de unión path_to_commit. La ruta o las partes de la ruta que se deben confirmar. Las direcciones (path_to_commit) solo pueden ser una de las siguientes opciones:
complete_shipment_path

PathToCommit

Son los segmentos de una ruta desde un origen hasta un destino.

segments

IncompletePathToCommit

Es un subconjunto de los segmentos de una ruta desde un origen hasta un destino.

IncompletePathToCommit

Parte de la ruta que se confirma, es decir, algunos segmentos entre el origen y el destino.

Campos
segments[]

PathSegment

Obligatorio. Es un subconjunto de los segmentos de una ruta desde un origen hasta un destino.

PathToCommit

La ruta de acceso completa que se confirma, desde el origen hasta el destino.

Campos
segments[]

PathSegment

Obligatorio. Los segmentos deben estar en orden desde el origen hasta el destino.

CreateHubRequest

El mensaje de solicitud para el método CreateHub

Campos
parent

string

Obligatorio. El recurso superior en el que se creará este concentrador. Formato: "redes/{network}"

hub_id

string

Obligatorio. Identificador del concentrador que se creará.

hub

Hub

Obligatorio. El concentrador que se creará.

CreateLineRequest

El mensaje de solicitud para el método CreateLine

Campos
parent

string

Obligatorio. El recurso superior en el que se creará esta línea. Formato: "redes/{network}"

line_id

string

Obligatorio. Es el identificador de la línea que se creará.

line

Line

Obligatorio. Línea que se creará.

CreateLineRotationRequest

El mensaje de solicitud para el método CreateLineRotation

Campos
parent

string

Obligatorio. El recurso superior en el que se creará esta rotación de línea. Formato: "networks/{network}/lines/{line}"

line_rotation_id

string

Obligatorio. Es el identificador de la rotación de línea que se creará.

line_rotation

LineRotation

Obligatorio. La rotación de línea que se creará.

CreateNetworkRequest

El mensaje de solicitud para el método CreateNetwork

Campos
network_id

string

Obligatorio. Identificador de la red que se creará.

network

Network

Obligatorio. La red que se creará.

CreateVehicleRequest

El mensaje de solicitud para el método CreateVehicle

Campos
parent

string

Obligatorio. El recurso superior en el que se creará este vehículo. Formato: "redes/{network}"

vehicle_id

string

Obligatorio. Es el identificador del vehículo que se creará.

vehicle

Vehicle

Obligatorio. El vehículo que se creará.

CrossDockingCapacity

Capacidad general de interconexión entre conexiones para un concentrador.

Campos
capacity_per_hour[]

ValueDimension

Opcional. Capacidad de conexión cruzada para cada dimensión.

CrossDockingTime

Tiempo general de interconexión entre conexiones para un concentrador.

Campos
time_constant

Duration

Opcional. Tiempo constante para una operación de conexión cruzada.

time

SeparableNDFunction

Opcional. La separación es una suposición simplificada.

DateTimeRange

Rango de horas entre dos DateTime. Para una fecha y hora en punto, usa start == end.

google/type/interval.proto tiene un propósito similar, pero con el tiempo físico (solo nos importa el tiempo civil).

Campos
first_date

DateTime

Inicio del rango.

last_date

DateTime

Fin de la autonomía

DeleteHubRequest

El mensaje de solicitud para el método DeleteHub

Campos
name

string

Obligatorio. El nombre del concentrador que se borrará. Formato: "networks/{network}/hubs/{hub}"

DeleteLineRequest

El mensaje de solicitud para el método DeleteLine

Campos
name

string

Obligatorio. El nombre de la línea que se borrará. Formato: "networks/{network}/lines/{line}"

force

bool

Opcional. Si la estableces como verdadera, borra los recursos secundarios.

DeleteLineRotationRequest

El mensaje de solicitud para el método DeleteLineRotation

Campos
name

string

Obligatorio. El nombre de la rotación de línea que se borrará. Formato: "networks/{network}/lines/{line}/rotations/{rotation}"

DeleteNetworkRequest

El mensaje de solicitud para el método DeleteNetwork

Campos
name

string

Obligatorio. El nombre de la red que se borrará. Formato: "redes/{network}"

force

bool

Opcional. Si la estableces como verdadera, borra los recursos secundarios.

DeleteShipmentRequest

El mensaje de solicitud para el método DeleteShipment

Campos
name

string

Obligatorio. El nombre del envío que se borrará. Formato: “networks/{network}/shipments/{shipment}”

DeleteVehicleRequest

El mensaje de solicitud para el método DeleteVehicle

Campos
name

string

Obligatorio. El nombre del vehículo que se borrará. Formato: "redes/{network}/vehículos/{vehículo}"

DistanceMatrixEntry

Distancia entre un concentrador de origen y uno de destino.

Campos
source_hub

string

Obligatorio. Concentrador de origen.

destination_hub

string

Obligatorio. Concentrador de destino.

weights[]

ValueDimension

Obligatorio. Distancia entre los eje, medida en varias dimensiones.

EarlinessTardiness

Funciones de costo debido a un envío que llega o sale antes o después de lo necesario (restricciones leves).

Campos
maximum_earliness

Duration

Opcional. Anticipación máxima permitida Útil solo con los costos.

maximum_tardiness

Duration

Opcional. Tarde máxima permitida. Útil solo con los costos.

earliness_cost

Function1D

Opcional. Costo de anticipación Anula la configuración si no tiene costo para la anticipación.

tardiness_cost

Function1D

Opcional. Costo de las demoras. Desactivar si hay retrasos sin costo.

Función1D

Función de un argumento.

Campos
Campo de unión function. La unidad del argumento de la función debe ser la siguiente: - si es un peso: kg - si un tiempo: min - si una cantidad de palés: 1 function puede ser solo una de las siguientes opciones:
constant

double

La función es una constante.

pwl

PieceWiseAffineFunction

La función es lineal por partes.

GeneratedLineAndRotation

Una rotación de una línea que genera esta API y no el cliente de la API. Es inherentemente menos limitada y puede usar cualquier vehículo (a menos que el cliente de la API decida lo contrario en llamadas posteriores).

Campos
arrival_times

map<string, DateTime>

Solo salida. Mapa entre los IDs de los concentradores y las horas Se supone que este mapa tiene las mismas claves (menos el concentrador de origen, sin hora de llegada).

departure_times

map<string, DateTime>

Solo salida. Mapa entre los IDs de los concentradores y las horas Se supone que este mapa tiene las mismas claves (menos el centro de destino, sin hora de salida).

GetHubRequest

El mensaje de solicitud para el método GetHub

Campos
name

string

Obligatorio. El nombre del concentrador que se recuperará. Formato: "networks/{network}/hubs/{hub}"

GetLineRequest

El mensaje de solicitud para el método GetLine

Campos
name

string

Obligatorio. El nombre de la red que se recuperará. Formato: "networks/{network}/lines/{line}"

GetLineRotationRequest

El mensaje de solicitud para el método GetLineRotation

Campos
name

string

Obligatorio. El nombre de la rotación de línea que se recuperará. Formato: "networks/{network}/lines/{line}/rotations/{rotation}"

GetNetworkRequest

El mensaje de solicitud para el método GetNetwork

Campos
name

string

Obligatorio. El nombre de la red que se recuperará. Formato: "redes/{network}"

GetShipmentRequest

El mensaje de solicitud para el método GetShipment

Campos
name

string

Obligatorio. Es el nombre del envío que se recuperará. Formato: “networks/{network}/shipments/{shipment}”

GetVehicleRequest

El mensaje de solicitud para el método GetVehicle

Campos
name

string

Obligatorio. El nombre del vehículo que se recuperará. Formato: "redes/{network}/vehículos/{vehículo}"

Hub

Los envíos deben llevarse de un concentrador a otro.

Campos
name

string

Obligatorio. Identificador. No se puede actualizar.

position

LatLng

Opcional. Posición para calcular rutas del mundo real.

opening_times[]

DateTimeRange

Obligatorio. Horarios de apertura. Por ahora, usa una representación más aproximada: una entrada cada vez que se abra el centro (si los trabajadores tienen un descanso para almorzar y nadie trabaja en ese momento, habrá dos entradas para ese día).

cross_docking_capacity

CrossDockingCapacity

Opcional. Capacidad del concentrador completo.

cross_docking_time

CrossDockingTime

Opcional. Tiempo para realizar una operación de paso cruzado (por vehículo).

IntegerRange

Rango de números enteros.

Campos
start_value

int32

Si no se establece, el intervalo estará abierto.

end_value

int32

Si no se establece, el intervalo estará abierto.

Line

Es una línea que se opera a una frecuencia determinada.

Campos
name

string

Obligatorio. Identificador. No se puede actualizar.

hub_ids[]

string

Obligatorio. Lista de los concentradores a los que llama esta línea, en el orden en que los vehículos se detienen en ellos.

LineRotation

Un vehículo empieza a operar esta línea a una hora en particular.

Campos
name

string

Obligatorio. Identificador. No se puede actualizar.

arrival_times

map<string, DateTimeRange>

Opcional. Rango en el que se permite la salida sin costo (es decir, si no se trata de un punto determinado, el sistema decide los horarios de llegada reales). Se supone que este mapa tiene las mismas claves (menos el concentrador de origen, sin hora de llegada).

departure_times

map<string, DateTimeRange>

Opcional. Rango en el que se permite la llegada sin costo (es decir, si no se trata de un punto determinado, el sistema decide los horarios de salida reales). Se supone que este mapa tiene las mismas claves (menos el centro de destino, sin hora de salida).

departure_earliness_tardiness_costs

map<string, EarlinessTardiness>

Opcional. Costos de anticipación o retraso y límites de salida. Se supone que este mapa tiene las mismas claves (menos el centro de destino, sin hora de salida).

arrival_earliness_tardiness_costs

map<string, EarlinessTardiness>

Opcional. Costos de anticipación o retraso, y límites de llegada. Se supone que este mapa tiene las mismas claves (menos el concentrador de origen, sin hora de llegada).

vehicles[]

string

Opcional. Lista de vehículos que podrían estar realizando esta rotación de línea (es decir, lista de permitidos). Si number_vehicles se reduce a un valor que corresponde a la cantidad de vehículos, todos esos vehículos se asignarán a la rotación de la línea. Si no hay vehículos, se considerará que todos están disponibles.

fixed_price

PricingStrategy

Opcional. Es el costo de hacer que cualquier vehículo haga esta línea, independientemente del vehículo (conductor, mantenimiento, etcétera).

maximum_number_vehicles

IntegerRange

Opcional. Cantidad máxima de vehículos que se pueden asignar a esta rotación. Si no se establece, no habrá límite en relación con los vehículos para esta rotación. De lo contrario, el límite superior de la cantidad de vehículos que se pueden asignar a esta rotación (entre la lista de permitidos vehicle_ids). En particular, un valor de 0 inhabilita esta rotación (no se permiten vehículos).

ListHubsRequest

El mensaje de solicitud para el método ListHubs

Campos
parent

string

Obligatorio. El elemento superior, propietario de esta colección de concentradores. Formato: "redes/{network}"

page_size

int32

Opcional. La cantidad máxima de concentradores que se mostrarán. El servicio puede mostrar menos que este valor. Si no se especifica, se mostrarán 50 concentradores como máximo. El valor máximo es 1,000; valores superiores a 1,000 se convertirán en 1,000.

page_token

string

Opcional. Un token de página, recibido desde una llamada ListHubs anterior. Proporciona esto para recuperar la página siguiente.

Cuando se pagina, todos los demás parámetros proporcionados a ListHubs deben coincidir con la llamada que proporcionó el token de la página.

ListHubsResponse

El mensaje de respuesta para el método ListHubs.

Campos
hubs[]

Hub

Los concentradores de la red especificada.

next_page_token

string

Un token, que se puede enviar como page_token para recuperar la página siguiente. Si se omite este campo, no habrá páginas siguientes.

ListLineRotationsRequest

El mensaje de solicitud para el método ListLineRotations

Campos
parent

string

Obligatorio. El elemento superior, propietario de esta colección de rotaciones de línea. Formato: "networks/{network}/lines/{line}"

page_size

int32

Opcional. La cantidad máxima de rotaciones de líneas que se debe mostrar. El servicio puede mostrar menos que este valor. Si no se especifica, se mostrarán 50 rotaciones de línea como máximo. El valor máximo es 1,000; valores superiores a 1,000 se convertirán en 1,000.

page_token

string

Opcional. Un token de página, recibido desde una llamada ListLineRotations anterior. Proporciona esto para recuperar la página siguiente.

Cuando se pagina, todos los demás parámetros proporcionados a ListLineRotations deben coincidir con la llamada que proporcionó el token de la página.

ListLineRotationsResponse

El mensaje de respuesta para el método ListLineRotations.

Campos
line_rotations[]

LineRotation

Las rotaciones de línea de la red y la línea especificadas.

next_page_token

string

Un token, que se puede enviar como page_token para recuperar la página siguiente. Si se omite este campo, no habrá páginas siguientes.

ListLinesRequest

El mensaje de solicitud para el método ListLines

Campos
parent

string

Obligatorio. El elemento superior, propietario de esta colección de líneas. Formato: "redes/{network}"

page_size

int32

Opcional. La cantidad máxima de líneas que se mostrarán. El servicio puede mostrar menos que este valor. Si no se especifica, se mostrarán 50 líneas como máximo. El valor máximo es 1,000; valores superiores a 1,000 se convertirán en 1,000.

page_token

string

Opcional. Un token de página, recibido desde una llamada ListLines anterior. Proporciona esto para recuperar la página siguiente.

Cuando se pagina, todos los demás parámetros proporcionados a ListLines deben coincidir con la llamada que proporcionó el token de la página.

ListLinesResponse

El mensaje de respuesta para el método ListLines.

Campos
lines[]

Line

Son las líneas de la red especificada.

next_page_token

string

Un token, que se puede enviar como page_token para recuperar la página siguiente. Si se omite este campo, no habrá páginas siguientes.

ListNetworksRequest

El mensaje de solicitud para el método ListNetworks

Campos
page_size

int32

Opcional. La cantidad máxima de redes que se mostrarán. El servicio puede mostrar menos que este valor. Si no se especifica, se mostrarán 50 redes como máximo. El valor máximo es 1,000; valores superiores a 1,000 se convertirán en 1,000.

page_token

string

Opcional. Un token de página, recibido desde una llamada ListNetworks anterior. Proporciona esto para recuperar la página siguiente.

Cuando se pagina, todos los demás parámetros proporcionados a ListNetworks deben coincidir con la llamada que proporcionó el token de la página.

ListNetworksResponse

El mensaje de respuesta para el método ListNetworks.

Campos
networks[]

Network

Es la lista de redes.

next_page_token

string

Un token, que se puede enviar como page_token para recuperar la página siguiente. Si se omite este campo, no habrá páginas siguientes.

ListPathsRequest

El mensaje de solicitud para el método ListPaths

Campos
parent

string

Obligatorio. El nombre de la red a la que se deben enviar las rutas de acceso. Formato: "redes/{network}"

page_size

int32

Opcional. La cantidad máxima de redes que se mostrarán. El servicio puede mostrar menos que este valor. Si no se especifica, se mostrarán 50 redes como máximo. El valor máximo es 1,000; valores superiores a 1,000 se convertirán en 1,000.

page_token

string

Opcional. Un token de página, recibido desde una llamada ListNetworks anterior. Proporciona esto para recuperar la página siguiente.

Cuando se pagina, todos los demás parámetros proporcionados a ListNetworks deben coincidir con la llamada que proporcionó el token de la página.

ListPathsResponse

El mensaje de respuesta para el método ListPaths.

Campos
paths[]

Path

La lista de rutas.

next_page_token

string

Un token, que se puede enviar como page_token para recuperar la página siguiente. Si se omite este campo, no habrá páginas siguientes.

ListShipmentsRequest

El mensaje de solicitud para el método ListShipments

Campos
parent

string

Obligatorio. El publicador superior, propietario de esta colección de envíos. Formato: "redes/{network}"

page_size

int32

Opcional. La cantidad máxima de envíos que se deben devolver. El servicio puede mostrar menos que este valor. Si no se especifica, se devolverán 50 envíos como máximo. El valor máximo es 1,000; valores superiores a 1,000 se convertirán en 1,000.

page_token

string

Opcional. Un token de página, recibido desde una llamada ListShipments anterior. Proporciona esto para recuperar la página siguiente.

Cuando se pagina, todos los demás parámetros proporcionados a ListShipments deben coincidir con la llamada que proporcionó el token de la página.

ListShipmentsResponse

El mensaje de respuesta para el método ListShipments.

Campos
shipments[]

Shipment

Los envíos desde la red especificada.

next_page_token

string

Un token, que se puede enviar como page_token para recuperar la página siguiente. Si se omite este campo, no habrá páginas siguientes.

ListVehiclesRequest

El mensaje de solicitud para el método ListVehicles

Campos
parent

string

Obligatorio. El elemento superior, propietario de esta colección de vehículos. Formato: "redes/{network}"

page_size

int32

Opcional. La cantidad máxima de vehículos que se devolverán. El servicio puede mostrar menos que este valor. Si no se especifica, se devolverán 50 vehículos como máximo. El valor máximo es 1,000; valores superiores a 1,000 se convertirán en 1,000.

page_token

string

Opcional. Un token de página, recibido desde una llamada ListVehicles anterior. Proporciona esto para recuperar la página siguiente.

Cuando se pagina, todos los demás parámetros proporcionados a ListVehicles deben coincidir con la llamada que proporcionó el token de la página.

ListVehiclesResponse

El mensaje de respuesta para el método ListVehicles.

Campos
vehicles[]

Vehicle

Son los vehículos de la red especificada.

next_page_token

string

Un token, que se puede enviar como page_token para recuperar la página siguiente. Si se omite este campo, no habrá páginas siguientes.

MakeHubAvailableRequest

El mensaje de solicitud para el método MakeHubAvailable

Campos
name

string

Obligatorio. El nombre del concentrador que estará disponible. Formato: "networks/{network}/hubs/{hub}"

availability_starts[]

DateTime

Obligatorio. Son los períodos en los que comenzará la disponibilidad. Deben ser momentos futuros. Si no aparece este campo, la disponibilidad comienza cuando se recibe el mensaje.

MakeHubAvailableResponse

El mensaje de respuesta para el método MakeHubAvailable.

Campos
name

string

El nombre del concentrador cuya falta de disponibilidad se actualizó. Formato: "networks/{network}/hubs/{hub}"

path[]

Path

Las rutas que se actualizaron.

MakeHubUnavailableRequest

El mensaje de solicitud para el método MakeHubUnavailable

Campos
name

string

Obligatorio. El nombre del concentrador que dejará de estar disponible. Formato: "networks/{network}/hubs/{hub}"

unavailability_starts[]

DateTime

Obligatorio. Son los períodos en los que comenzará la falta de disponibilidad. Deben ser momentos futuros. Si no aparece este campo, la falta de disponibilidad comienza cuando se recibe el mensaje.

MakeHubUnavailableResponse

El mensaje de respuesta para el método MakeHubUnavailable.

Campos
name

string

El nombre del concentrador cuya falta de disponibilidad se actualizó. Formato: "networks/{network}/hubs/{hub}"

path[]

Path

Las rutas que se actualizaron.

MakeLineAvailableRequest

El mensaje de solicitud para el método MakeHubAvailable

Campos
name

string

Obligatorio. Es el nombre de la línea que estará disponible. Formato: "networks/{network}/lines/{line}"

availability_starts[]

DateTime

Obligatorio. Son los períodos en los que comenzará la disponibilidad. Deben ser momentos futuros. Si no aparece este campo, la disponibilidad comienza cuando se recibe el mensaje.

MakeLineAvailableResponse

El mensaje de respuesta para el método MakeLineAvailable.

Campos
name

string

Es el nombre de la línea cuya falta de disponibilidad se actualizó. Formato: "networks/{network}/lines/{line}"

path[]

Path

Las rutas que se actualizaron.

MakeLineUnavailableRequest

El mensaje de solicitud para el método MakeLineUnavailable

Campos
name

string

Obligatorio. Es el nombre de la línea que dejará de estar disponible. Formato: "networks/{network}/lines/{line}"

unavailability_starts[]

DateTime

Obligatorio. Son los períodos en los que comenzará la falta de disponibilidad. Deben ser momentos futuros. Si no aparece este campo, la falta de disponibilidad comienza cuando se recibe el mensaje.

MakeLineUnavailableResponse

El mensaje de respuesta para el método MakeLineUnavailable.

Campos
name

string

Es el nombre de la línea cuya falta de disponibilidad se actualizó. Formato: "networks/{network}/lines/{line}"

path[]

Path

Las rutas que se actualizaron.

MakeVehicleAvailableRequest

El mensaje de solicitud para el método MakeVehicleAvailable

Campos
name

string

Obligatorio. El nombre del vehículo que se pondrá a disposición. Formato: "redes/{network}/vehículo/{vehículo}"

availability_starts[]

DateTime

Obligatorio. Son los períodos en los que comenzará la disponibilidad. Deben ser momentos futuros. Si no aparece este campo, la disponibilidad comienza cuando se recibe el mensaje.

MakeVehicleAvailableResponse

El mensaje de respuesta para el método MakeVehicleAvailable.

Campos
name

string

El nombre del vehículo cuya disponibilidad se actualizó. Formato: "redes/{network}/vehículos/{vehículo}"

path[]

Path

Las rutas que se actualizaron.

MakeVehicleUnavailableRequest

El mensaje de solicitud para el método MakeVehicleUnavailable

Campos
name

string

Obligatorio. El nombre del vehículo que dejará de estar disponible. Formato: "redes/{network}/vehículos/{vehículo}"

unavailability_starts[]

DateTime

Obligatorio. Son los períodos en los que comenzará la falta de disponibilidad. Deben ser momentos futuros. Si no aparece este campo, la falta de disponibilidad comienza cuando se recibe el mensaje.

MakeVehicleUnavailableResponse

El mensaje de respuesta para el método MakeVehicleUnavailable.

Campos
name

string

El nombre del vehículo cuya disponibilidad se actualizó. Formato: "redes/{network}/vehículos/{vehículo}"

path[]

Path

Las rutas que se actualizaron.

Red

Describe la red existente completa que se puede usar. Un cliente de API determinado podría tener varias redes (p.ej., la red principal y una posible modificación futura para evaluar).

Campos
name

string

Obligatorio. Identificador. No se puede actualizar.

dimensions[]

ValueDimension

Distancia, peso, palés, etc., más escalamiento (para asignar números de punto flotante a números enteros).

pricing

PricingStrategy

Opcional. Es el precio que debe pagar el remitente por enviar un envío que no requiere una línea exclusiva.

currency_code

string

Opcional. Es la única unidad monetaria que se utiliza en toda la red. Un cliente de API determinado puede tener varias unidades diferentes para distintas redes; una red solo puede tener una unidad monetaria. La unidad debe estar codificada en ISO 4217, como google3/google/type/money.proto.

time_step

Duration

Opcional. Discretización del tiempo. Las decisiones se obtienen con esta precisión en el tiempo. A nivel interno, el estado se mantiene con esta precisión.

distance_matrix[]

DistanceMatrixEntry

Opcional. Matriz de distancia (representada por una lista de bordes dirigidos ponderados)

Ruta de acceso

Es la ruta de un envío dentro de la red.

Campos
shipment

string

Obligatorio. Envío cuya ruta se describe.

segments[]

AnnotatedPathSegment

Obligatorio. Segmentos de la ruta.

departure_time

DateTime

Solo salida. Hora real de salida del envío.

arrival_time

DateTime

Solo salida. La hora de llegada real del envío.

incurred_penalties

double

Solo salida. Las penalizaciones debido a restricciones leves no se respetan.

cost_constant

double

Solo salida. Costo constante para este envío.

cost

map<string, double>

Solo salida. Costo por componentes.

PathSegment

Representa una parte de una ruta de acceso enviada por el cliente de la API al servidor de API (p.ej., cambio de estado) o por el servidor de la API al cliente de la API (p.ej., enrutamiento de un envío).

Campos
source_hub

string

Obligatorio. Fuente del segmento.

destination_hub

string

Obligatorio. Destino del segmento.

line

string

Obligatorio. Línea que se sigue para este segmento.

line_rotation

string

Obligatorio. Sigue una rotación para este segmento.

vehicle

string

Obligatorio. Vehículo seguido de este segmento.

PieceWiseAffineFunction

Función lineal por partes, limitada a un argumento. Diseña de forma similar a https://github.com/google/or-tools/blob/stable/ortools/util/piecewise_linear_function.h

Campos
segments[]

PieceWiseAffineSegment

Segmentos lineales de la función.

PieceWiseAffineSegment

Un segmento de una función lineal por partes.

Campos
start_x

double

Inicio del segmento: x.

start_y

double

Inicio del segmento: y.

end_x

double

Fin del segmento: x.

end_y

double

Fin del segmento: y.

PricingStrategy

Una estrategia de precios

Campos
Campo de unión pricing_strategy. Una estrategia de precios Las direcciones (pricing_strategy) solo pueden ser una de las siguientes opciones:
separable

SeparableNDFunction

La estrategia de precios es una función separable de muchas variables.

RouteShipmentRequest

El mensaje de solicitud para el método RouteShipment

Campos
parent

string

Obligatorio. El elemento superior, la red dentro de la que se debe enrutar el envío. Formato: "redes/{network}"

shipment

Shipment

Obligatorio. Es el envío que se debe enrutar.

RouteShipmentResponse

El mensaje de respuesta para el método RouteShipment.

Campos
shipment

Shipment

El envío que se acaba de crear.

paths[]

Path

Las rutas que se modificaron debido al enrutamiento del envío. Este campo incluye al menos una entrada, la ruta del envío que se tuvo que enrutar. Puede contener más rutas para otros envíos, lo que refleja los cambios de estado internos.

lines[]

GeneratedLineAndRotation

Las rotaciones de línea que se crearon durante el enrutamiento del envío. Es posible que esté vacía o contenga rotaciones para otros envíos, lo que refleja los cambios de estado internos.

SeparableNDFunction

Función de N argumentos expresadas como la suma de las funciones de un argumento.

Campos
components

map<string, Function1D>

Componentes de la función, con una entrada por argumento o dimensión

constant_price

double

Parte constante de la función.

Envío

Envío para realizar.

Campos
name

string

Obligatorio. Identificador. No se puede actualizar.

source_hub

string

Obligatorio. Centro donde está disponible el envío.

destination_hub

string

Obligatorio. Centro al que se debe entregar el envío.

departure_time

DateTime

Obligatorio. Hora de salida.

arrival_time

DateTimeRange

Obligatorio. Hora de llegada esperada (es decir, restricción flexible).

arrival_earliness_tardiness_cost

EarlinessTardiness

Opcional. Los ANS indican que se podría exceder este tiempo con penalizaciones. (Si es posterior al máximo, el paquete no resulta más útil). La penalización se proporciona mediante una función del retraso (en minutos).

size[]

ValueDimension

Opcional. Se usa con capacidades del vehículo y del concentrador.

revenue

double

Opcional. Son los ingresos de este paquete (solo se usan para calcular la recompensa), es decir, el precio que paga la parte que paga. Si no se establece, el sistema calcula los ingresos (en función de si se genera una línea nueva para este envío o no).

UpdateHubRequest

El mensaje de solicitud para el método UpdateHub

Campos
hub

Hub

Obligatorio. El concentrador que se actualizará.

El campo name del concentrador se usa para identificarlo que se actualizará. Formato: "networks/{network}/hubs/{hub}"

update_mask

FieldMask

Opcional. La lista de campos que se deben actualizar.

UpdateLineRequest

El mensaje de solicitud para el método UpdateLine

Campos
line

Line

Obligatorio. Es la línea que se debe actualizar.

El campo name de la línea se usa para identificar la línea que se actualizará. Formato: "networks/{network}/lines/{line}"

update_mask

FieldMask

Opcional. La lista de campos que se deben actualizar.

UpdateLineRotationRequest

El mensaje de solicitud para el método UpdateLineRotation

Campos
line_rotation

LineRotation

Obligatorio. Red que se actualizará.

El campo name de la rotación se usa para identificar la rotación que se actualizará. Formato: "networks/{network}/lines/{line}/rotations/{rotation}"

update_mask

FieldMask

Opcional. La lista de campos que se deben actualizar.

UpdateNetworkRequest

El mensaje de solicitud para el método UpdateNetwork

Campos
network

Network

Obligatorio. Red que se actualizará.

El campo name de la red se usa para identificar la red que se actualizará. Formato: "redes/{network}"

update_mask

FieldMask

Opcional. La lista de campos que se deben actualizar.

UpdatePathRequest

El mensaje de solicitud para el método UpdatePath

Campos
path

Path

Obligatorio. Es la nueva ruta del envío.

UpdateVehicleRequest

El mensaje de solicitud para el método UpdateVehicle

Campos
vehicle

Vehicle

Obligatorio. El vehículo que se actualizará.

El campo name del vehículo se usa para identificar el vehículo que se actualizará. Formato: "redes/{network}/vehículos/{vehículo}"

update_mask

FieldMask

Opcional. La lista de campos que se deben actualizar.

ValueDimension

Es un valor junto a una dimensión predefinida. El campo value debe establecerse con el tipo correspondiente de dimension.

Campos
value

int64

Opcional. de conv.

dimension

string

Obligatorio. Dimensión.

Vehículo

Sin nombre; se almacena como una clave de mapa en la red.

Campos
name

string

Obligatorio. Identificador. No se puede actualizar.

capacities[]

ValueDimension

Opcional. Características del vehículo.

cost

PricingStrategy

Obligatorio. Costo del uso del vehículo. Estas son funciones de un argumento: la distancia que recorre el vehículo, el peso que transporta y la cantidad de palés que transporta el vehículo. Estas funciones contemplan los costos de mantenimiento, combustible y gestión. Estos costos pueden incluir un costo por adelantado (que se paga una vez que se usa el vehículo, que es muy útil para subcontratar).

pricing

PricingStrategy

Opcional. Es el precio que debe pagar la parte que realiza el pago, solo si el vehículo se usa en una línea generada (es decir, no como parte de la red de entrada).

allowed_for_generated_lines

bool

Obligatorio. Indica si este vehículo puede usarse para líneas generadas. Si se establece como false, el vehículo se limitará a líneas predefinidas en los lugares donde esté permitido.

vehicle_position_constraints[]

VehiclePositionConstraint

Opcional. Posiciones forzadas del vehículo actual, junto con los tiempos Por ejemplo, usa entradas para modelar el hecho de que un vehículo arranca o finaliza en un concentrador determinado.

VehiclePositionConstraint

Corresponde a una restricción de la posición de un vehículo.

Campos
time

DateTime

Tiempo de la restricción.

hub_id

string

Centro de la restricción.