![]() |
vrpRouting
0.3
|
#include "vrp_vroom_problem.hpp"
Public Member Functions | |
void | add_matrix (vrprouting::base::Base_Matrix matrix) |
void | clear () |
Clears all the messages. More... | |
void | get_amount (vroom::Amount vroom_amount, Amount **amount) |
std::string | get_error () const |
gets the contents of error message More... | |
StepType | get_job_step_type (vroom::JOB_TYPE vroom_job_type) |
std::string | get_log () const |
gets the contents of log message More... | |
std::string | get_notice () const |
gets the contents of notice message More... | |
std::vector< Vroom_rt > | get_results (vroom::Solution solution) |
StepType | get_step_type (vroom::Step step) |
bool | has_error () const |
gets the contents of notice message More... | |
std::vector< vroom::Job > | jobs () const |
vrprouting::base::Base_Matrix | matrix () const |
std::vector< std::pair< vroom::Job, vroom::Job > > | shipments () const |
std::vector< Vroom_rt > | solve (int32_t exploration_level, int32_t timeout, int32_t loading_time) |
std::vector< vroom::Vehicle > | vehicles () const |
vroom time window wrapper | |
vroom::TimeWindow | get_vroom_time_window (const Vroom_time_window_t &time_window) const |
Gets the vroom time window from the C-style struct. More... | |
vroom::TimeWindow | get_vroom_time_window (Duration tw_open, Duration tw_close) const |
std::vector< vroom::TimeWindow > | get_vroom_time_windows (const std::vector< Vroom_time_window_t > &time_windows) const |
vroom amounts wrapper | |
vroom::Amount | get_vroom_amounts (const std::vector< Amount > &amounts) const |
Gets the vroom amounts from C-style array. More... | |
vroom::Amount | get_vroom_amounts (const Amount *amounts, size_t count) const |
vroom skills wrapper | |
vroom::Skills | get_vroom_skills (const Skill *skills, size_t count) const |
Gets the vroom skills. More... | |
vroom jobs wrapper | |
vroom::Job | get_vroom_job (const Vroom_job_t &job, const std::vector< Vroom_time_window_t > &job_tws) const |
Gets the vroom jobs. More... | |
void | problem_add_job (const Vroom_job_t &job, const std::vector< Vroom_time_window_t > &job_tws) |
void | add_jobs (const std::vector< Vroom_job_t > &jobs, const std::vector< Vroom_time_window_t > &jobs_tws) |
void | add_jobs (const Vroom_job_t *jobs, size_t count, const Vroom_time_window_t *jobs_tws, size_t total_jobs_tws) |
vroom shipments wrapper | |
std::pair< vroom::Job, vroom::Job > | get_vroom_shipment (const Vroom_shipment_t &shipment, const std::vector< Vroom_time_window_t > &pickup_tws, const std::vector< Vroom_time_window_t > &delivery_tws) const |
Gets the vroom shipments. More... | |
void | problem_add_shipment (const Vroom_shipment_t &shipment, const std::vector< Vroom_time_window_t > &pickup_tws, const std::vector< Vroom_time_window_t > &delivery_tws) |
void | add_shipments (const std::vector< Vroom_shipment_t > &shipments, const std::vector< Vroom_time_window_t > &shipments_tws) |
void | add_shipments (const Vroom_shipment_t *shipments, size_t count, const Vroom_time_window_t *shipment_tws, size_t total_shipment_tws) |
vroom breaks wrapper | |
vroom::Break | get_vroom_break (const Vroom_break_t &v_break, const std::vector< Vroom_time_window_t > &break_tws) const |
Gets the vehicle breaks from C-style breaks struct. More... | |
std::vector< vroom::Break > | get_vroom_breaks (const std::vector< Vroom_break_t > &breaks, const std::vector< Vroom_time_window_t > &breaks_tws) const |
vroom vehicles wrapper | |
vroom::Vehicle | get_vroom_vehicle (const Vroom_vehicle_t &vehicle, const std::vector< Vroom_break_t > &breaks, const std::vector< Vroom_time_window_t > &breaks_tws) const |
Gets the vroom vehicles. More... | |
void | problem_add_vehicle (const Vroom_vehicle_t &vehicle, const std::vector< Vroom_break_t > &breaks, const std::vector< Vroom_time_window_t > &breaks_tws) |
void | add_vehicles (const std::vector< Vroom_vehicle_t > &vehicles, const std::vector< Vroom_break_t > &breaks, const std::vector< Vroom_time_window_t > &breaks_tws) |
void | add_vehicles (const Vroom_vehicle_t *vehicles, size_t count, const Vroom_break_t *breaks, size_t total_breaks, const Vroom_time_window_t *breaks_tws, size_t total_breaks_tws) |
Public Attributes | |
std::ostringstream | error |
Stores the error information. More... | |
std::ostringstream | log |
Stores the hint information. More... | |
std::ostringstream | notice |
Stores the notice information. More... | |
Private Attributes | |
std::vector< vroom::Job > | m_jobs |
vrprouting::base::Base_Matrix | m_matrix |
std::vector< std::pair< vroom::Job, vroom::Job > > | m_shipments |
std::vector< vroom::Vehicle > | m_vehicles |
Definition at line 54 of file vrp_vroom_problem.hpp.
|
inline |
Definition at line 190 of file vrp_vroom_problem.hpp.
References jobs(), and problem_add_job().
Referenced by add_jobs(), and do_vrp_vroom().
|
inline |
|
inline |
Definition at line 424 of file vrp_vroom_problem.hpp.
References m_matrix, and matrix().
Referenced by do_vrp_vroom().
|
inline |
Definition at line 262 of file vrp_vroom_problem.hpp.
References problem_add_shipment(), and shipments().
Referenced by add_shipments(), and do_vrp_vroom().
|
inline |
|
inline |
Definition at line 382 of file vrp_vroom_problem.hpp.
References problem_add_vehicle(), and vehicles().
Referenced by add_vehicles(), and do_vrp_vroom().
|
inline |
|
inherited |
Clears all the messages.
Definition at line 59 of file pgr_messages.cpp.
References vrprouting::Pgr_messages::error, vrprouting::Pgr_messages::log, and vrprouting::Pgr_messages::notice.
Referenced by do_compatibleVehicles(), do_pgr_pickDeliver(), and do_pickDeliver().
|
inline |
|
inherited |
gets the contents of error message
Definition at line 53 of file pgr_messages.cpp.
References vrprouting::Pgr_messages::error.
Referenced by vrprouting::problem::Fleet::add_vehicle(), do_compatibleVehicles(), do_pgr_pickDeliver(), do_pgr_pickDeliverEuclidean(), do_pickDeliver(), vrprouting::problem::Fleet::is_fleet_ok(), anonymous_namespace{optimize_driver.cpp}::one_processing(), and vrprouting::problem::PickDeliver::PickDeliver().
|
inline |
Definition at line 435 of file vrp_vroom_problem.hpp.
Referenced by get_results(), and get_step_type().
|
inherited |
gets the contents of log message
Definition at line 36 of file pgr_messages.cpp.
References vrprouting::Pgr_messages::log.
Referenced by do_compatibleVehicles(), do_pgr_pickDeliver(), do_pgr_pickDeliverEuclidean(), do_pickDeliver(), vrprouting::problem::Fleet::get_unused_trucks(), vrprouting::problem::Fleet::invariant(), and anonymous_namespace{optimize_driver.cpp}::one_processing().
|
inherited |
gets the contents of notice message
Definition at line 42 of file pgr_messages.cpp.
References vrprouting::Pgr_messages::notice.
|
inline |
Definition at line 470 of file vrp_vroom_problem.hpp.
References get_amount(), get_job_step_type(), vrprouting::base::Base_Matrix::get_original_id(), get_step_type(), and m_matrix.
Referenced by solve().
|
inline |
Definition at line 451 of file vrp_vroom_problem.hpp.
References get_job_step_type().
Referenced by get_results().
|
inline |
Definition at line 131 of file vrp_vroom_problem.hpp.
References get_vroom_amounts().
|
inline |
Gets the vroom amounts from C-style array.
[in] | amounts | The amounts array (pickup or delivery) |
Definition at line 112 of file vrp_vroom_problem.hpp.
References m_vehicles.
Referenced by get_vroom_amounts(), get_vroom_job(), get_vroom_shipment(), and get_vroom_vehicle().
|
inline |
Gets the vehicle breaks from C-style breaks struct.
[in] | v_break | The vehicle break struct |
Definition at line 307 of file vrp_vroom_problem.hpp.
References Vroom_break_t::data, get_vroom_time_windows(), Vroom_break_t::id, and Vroom_break_t::service.
Referenced by get_vroom_breaks().
|
inline |
Definition at line 315 of file vrp_vroom_problem.hpp.
References get_vroom_break().
Referenced by get_vroom_vehicle().
|
inline |
Gets the vroom jobs.
[in] | job | The job C-style struct |
[in] | job_tws | The job time windows |
Definition at line 169 of file vrp_vroom_problem.hpp.
References Vroom_job_t::data, Vroom_job_t::delivery, Vroom_job_t::delivery_size, vrprouting::base::Base_Matrix::get_index(), get_vroom_amounts(), get_vroom_skills(), get_vroom_time_windows(), Vroom_job_t::id, Vroom_job_t::location_id, m_matrix, Vroom_job_t::pickup, Vroom_job_t::pickup_size, Vroom_job_t::priority, Vroom_job_t::service, Vroom_job_t::setup, Vroom_job_t::skills, and Vroom_job_t::skills_size.
Referenced by problem_add_job().
|
inline |
Gets the vroom shipments.
[in] | shipment | The shipment C-style struct |
[in] | pickup_tws | The pickup time windows |
[in] | delivery_tws | The delivery time windows |
Definition at line 227 of file vrp_vroom_problem.hpp.
References Vroom_shipment_t::amount, Vroom_shipment_t::amount_size, Vroom_shipment_t::d_data, Vroom_shipment_t::d_location_id, Vroom_shipment_t::d_service, Vroom_shipment_t::d_setup, vrprouting::base::Base_Matrix::get_index(), get_vroom_amounts(), get_vroom_skills(), get_vroom_time_windows(), Vroom_shipment_t::id, m_matrix, Vroom_shipment_t::p_data, Vroom_shipment_t::p_location_id, Vroom_shipment_t::p_service, Vroom_shipment_t::p_setup, Vroom_shipment_t::priority, Vroom_shipment_t::skills, and Vroom_shipment_t::skills_size.
Referenced by problem_add_shipment().
|
inline |
Gets the vroom skills.
[in] | skills | The skills array |
[in] | count | The size of skills array |
Definition at line 150 of file vrp_vroom_problem.hpp.
Referenced by get_vroom_job(), get_vroom_shipment(), and get_vroom_vehicle().
|
inline |
Gets the vroom time window from the C-style struct.
[in] | time_window | The C-style time window struct |
Definition at line 73 of file vrp_vroom_problem.hpp.
References Vroom_time_window_t::tw_close, and Vroom_time_window_t::tw_open.
Referenced by get_vroom_time_windows(), and get_vroom_vehicle().
|
inline |
Definition at line 80 of file vrp_vroom_problem.hpp.
|
inline |
Definition at line 85 of file vrp_vroom_problem.hpp.
References get_vroom_time_window().
Referenced by get_vroom_break(), get_vroom_job(), and get_vroom_shipment().
|
inline |
Gets the vroom vehicles.
[in] | vehicle | The vehicle C-style struct |
[in] | breaks_tws | The breaks time windows |
Definition at line 347 of file vrp_vroom_problem.hpp.
References Vroom_vehicle_t::capacity, Vroom_vehicle_t::capacity_size, Vroom_vehicle_t::data, Vroom_vehicle_t::end_id, vrprouting::base::Base_Matrix::get_index(), get_vroom_amounts(), get_vroom_breaks(), get_vroom_skills(), get_vroom_time_window(), Vroom_vehicle_t::id, m_matrix, Vroom_vehicle_t::max_tasks, Vroom_vehicle_t::skills, Vroom_vehicle_t::skills_size, Vroom_vehicle_t::speed_factor, Vroom_vehicle_t::start_id, Vroom_vehicle_t::tw_close, and Vroom_vehicle_t::tw_open.
Referenced by problem_add_vehicle().
|
inherited |
gets the contents of notice message
Definition at line 48 of file pgr_messages.cpp.
References vrprouting::Pgr_messages::error.
|
inline |
|
inline |
Definition at line 59 of file vrp_vroom_problem.hpp.
References m_matrix.
Referenced by add_matrix().
|
inline |
Definition at line 185 of file vrp_vroom_problem.hpp.
References get_vroom_job(), and m_jobs.
Referenced by add_jobs().
|
inline |
Definition at line 254 of file vrp_vroom_problem.hpp.
References get_vroom_shipment(), and m_shipments.
Referenced by add_shipments().
|
inline |
Definition at line 375 of file vrp_vroom_problem.hpp.
References get_vroom_vehicle(), and m_vehicles.
Referenced by add_vehicles().
|
inline |
Definition at line 57 of file vrp_vroom_problem.hpp.
References m_shipments.
Referenced by add_shipments().
|
inline |
Definition at line 593 of file vrp_vroom_problem.hpp.
References CHECK_FOR_INTERRUPTS, get_results(), vrprouting::base::Base_Matrix::get_vroom_cost_matrix(), vrprouting::base::Base_Matrix::get_vroom_duration_matrix(), m_jobs, m_matrix, m_shipments, and m_vehicles.
Referenced by do_vrp_vroom().
|
inline |
Definition at line 58 of file vrp_vroom_problem.hpp.
References m_vehicles.
Referenced by add_vehicles().
|
mutableinherited |
Stores the error information.
Definition at line 95 of file pgr_messages.h.
Referenced by vrprouting::problem::Fleet::add_vehicle(), vrprouting::Pgr_messages::clear(), vrprouting::Pgr_messages::get_error(), vrprouting::Pgr_messages::has_error(), vrprouting::problem::Fleet::is_fleet_ok(), and vrprouting::initialsol::tabu::Initial_solution::process_unassigned().
|
mutableinherited |
Stores the hint information.
Definition at line 91 of file pgr_messages.h.
Referenced by vrprouting::problem::Fleet::add_vehicle(), vrprouting::Pgr_messages::clear(), vrprouting::Pgr_messages::get_log(), vrprouting::problem::Fleet::get_unused_trucks(), vrprouting::optimizers::simple::Optimize::inter_swap(), vrprouting::problem::Fleet::invariant(), vrprouting::problem::Fleet::is_fleet_ok(), vrprouting::initialsol::simple::Initial_solution::one_truck_all_orders(), vrprouting::optimizers::simple::Optimize::Optimize(), vrprouting::optimizers::tabu::Optimize::Optimize(), vrprouting::optimizers::simple::Optimize::save_if_best(), vrprouting::problem::Fleet::set_compatibles(), vrprouting::problem::Vehicle_pickDeliver::set_initial_solution(), and vrprouting::problem::Vehicle_pickDeliver::set_unmovable().
|
private |
Definition at line 642 of file vrp_vroom_problem.hpp.
Referenced by jobs(), problem_add_job(), and solve().
|
private |
Definition at line 645 of file vrp_vroom_problem.hpp.
Referenced by add_matrix(), get_results(), get_vroom_job(), get_vroom_shipment(), get_vroom_vehicle(), matrix(), and solve().
|
private |
Definition at line 643 of file vrp_vroom_problem.hpp.
Referenced by problem_add_shipment(), shipments(), and solve().
|
private |
Definition at line 644 of file vrp_vroom_problem.hpp.
Referenced by get_vroom_amounts(), problem_add_vehicle(), solve(), and vehicles().
|
mutableinherited |
Stores the notice information.
Definition at line 93 of file pgr_messages.h.
Referenced by vrprouting::Pgr_messages::clear(), and vrprouting::Pgr_messages::get_notice().