Google Cloud Optimization V1 Client - Class TimeWindow (0.2.0)

Reference documentation and code samples for the Google Cloud Optimization V1 Client class TimeWindow.

Time windows constrain the time of an event, such as the arrival time at a visit, or the start and end time of a vehicle.

Hard time window bounds, start_time and end_time, enforce the earliest and latest time of the event, such that start_time <= event_time <= end_time. The soft time window lower bound, soft_start_time, expresses a preference for the event to happen at or after soft_start_time by incurring a cost proportional to how long before soft_start_time the event occurs. The soft time window upper bound, soft_end_time, expresses a preference for the event to happen at or before soft_end_time by incurring a cost proportional to how long after soft_end_time the event occurs. start_time, end_time, soft_start_time and soft_end_time should be within the global time limits (see ShipmentModel.global_start_time and ShipmentModel.global_end_time) and should respect:

  0 <= `start_time` <= `soft_start_time` <= `end_time` and
  0 <= `start_time` <= `soft_end_time` <= `end_time`.

Generated from protobuf message google.cloud.optimization.v1.TimeWindow

Methods

__construct

Constructor.

Parameters
NameDescription
data array

Optional. Data for populating the Message object.

↳ start_time Google\Protobuf\Timestamp

The hard time window start time. If unspecified it will be set to ShipmentModel.global_start_time.

↳ end_time Google\Protobuf\Timestamp

The hard time window end time. If unspecified it will be set to ShipmentModel.global_end_time.

↳ soft_start_time Google\Protobuf\Timestamp

The soft start time of the time window.

↳ soft_end_time Google\Protobuf\Timestamp

The soft end time of the time window.

↳ cost_per_hour_before_soft_start_time float

A cost per hour added to other costs in the model if the event occurs before soft_start_time, computed as: max(0, soft_start_time - t.seconds) * cost_per_hour_before_soft_start_time / 3600, t being the time of the event. This cost must be positive, and the field can only be set if soft_start_time has been set.

↳ cost_per_hour_after_soft_end_time float

A cost per hour added to other costs in the model if the event occurs after soft_end_time, computed as: max(0, t.seconds - soft_end_time.seconds) * cost_per_hour_after_soft_end_time / 3600, t being the time of the event. This cost must be positive, and the field can only be set if soft_end_time has been set.

getStartTime

The hard time window start time. If unspecified it will be set to ShipmentModel.global_start_time.

Returns
TypeDescription
Google\Protobuf\Timestamp|null

hasStartTime

clearStartTime

setStartTime

The hard time window start time. If unspecified it will be set to ShipmentModel.global_start_time.

Parameter
NameDescription
var Google\Protobuf\Timestamp
Returns
TypeDescription
$this

getEndTime

The hard time window end time. If unspecified it will be set to ShipmentModel.global_end_time.

Returns
TypeDescription
Google\Protobuf\Timestamp|null

hasEndTime

clearEndTime

setEndTime

The hard time window end time. If unspecified it will be set to ShipmentModel.global_end_time.

Parameter
NameDescription
var Google\Protobuf\Timestamp
Returns
TypeDescription
$this

getSoftStartTime

The soft start time of the time window.

Returns
TypeDescription
Google\Protobuf\Timestamp|null

hasSoftStartTime

clearSoftStartTime

setSoftStartTime

The soft start time of the time window.

Parameter
NameDescription
var Google\Protobuf\Timestamp
Returns
TypeDescription
$this

getSoftEndTime

The soft end time of the time window.

Returns
TypeDescription
Google\Protobuf\Timestamp|null

hasSoftEndTime

clearSoftEndTime

setSoftEndTime

The soft end time of the time window.

Parameter
NameDescription
var Google\Protobuf\Timestamp
Returns
TypeDescription
$this

getCostPerHourBeforeSoftStartTime

A cost per hour added to other costs in the model if the event occurs before soft_start_time, computed as:

   max(0, soft_start_time - t.seconds)
                          * cost_per_hour_before_soft_start_time / 3600,
t being the time of the event.

This cost must be positive, and the field can only be set if soft_start_time has been set.

Returns
TypeDescription
float

hasCostPerHourBeforeSoftStartTime

clearCostPerHourBeforeSoftStartTime

setCostPerHourBeforeSoftStartTime

A cost per hour added to other costs in the model if the event occurs before soft_start_time, computed as:

   max(0, soft_start_time - t.seconds)
                          * cost_per_hour_before_soft_start_time / 3600,
t being the time of the event.

This cost must be positive, and the field can only be set if soft_start_time has been set.

Parameter
NameDescription
var float
Returns
TypeDescription
$this

getCostPerHourAfterSoftEndTime

A cost per hour added to other costs in the model if the event occurs after soft_end_time, computed as:

   max(0, t.seconds - soft_end_time.seconds)
                    * cost_per_hour_after_soft_end_time / 3600,
t being the time of the event.

This cost must be positive, and the field can only be set if soft_end_time has been set.

Returns
TypeDescription
float

hasCostPerHourAfterSoftEndTime

clearCostPerHourAfterSoftEndTime

setCostPerHourAfterSoftEndTime

A cost per hour added to other costs in the model if the event occurs after soft_end_time, computed as:

   max(0, t.seconds - soft_end_time.seconds)
                    * cost_per_hour_after_soft_end_time / 3600,
t being the time of the event.

This cost must be positive, and the field can only be set if soft_end_time has been set.

Parameter
NameDescription
var float
Returns
TypeDescription
$this