Instance Generation

InstanceBuilder

class maenvs4vrp.core.env_generator_builder.InstanceBuilder(instance_type: str = None, set_of_instances: set = None, num_services: int = None, num_agents: int = None, seed: int = None, device: str = 'cpu', batch_size: Size = None)[source]

Instance generator base class.

maenvs4vrp.core.env_generator_builder.InstanceBuilder.__init__(self, instance_type: str = None, set_of_instances: set = None, num_services: int = None, num_agents: int = None, seed: int = None, device: str = 'cpu', batch_size: Size = None) None

Constructor

Parameters:
  • instance_type (str) – Instance type. Defaults to none.

  • set_of_instances (set) – Set of instances file names. Defaults to None.

  • num_services (int) – Total number of services. Defaults to None.

  • num_agents (int) – Total number of agents. Defaults to None.

  • seed (int) – Random number generator seed. Defaults to None.

  • device (str) – Type of processing. Defaults to “cpu”.

  • batch_size (torch.Size or None) – Batch size. If not specified, defaults to 1.

maenvs4vrp.core.env_generator_builder.InstanceBuilder._set_seed(self, seed: int | None)

Set the random seed used by the environment.

Parameters:

seed (int, optional) – Seed used.

Returns:

None.

maenvs4vrp.core.env_generator_builder.InstanceBuilder.read_instance_data(self, instance_name: str) Dict

Read instance data from file.

Parameters:

instance_name (str) – instance file name.

Returns:

Instance data.

Return type:

Dict

maenvs4vrp.core.env_generator_builder.InstanceBuilder.get_instance(self, instance_name: str, preloaded: bool = False) Dict

Combine read instance file and parse to Dict.

Parameters:
  • instance_name (str) – Instance file name.

  • preloaded (bool) – If instance data has been pre-loaded. Defaults to False.

Returns:

Instance data.

Return type:

Dict

maenvs4vrp.core.env_generator_builder.InstanceBuilder.load_set_of_instances(self, set_of_instances: set = None, already_loaded: bool = None)

Load every instance on set_of_instances set.

Parameters:
  • set_of_instances (set) – Set of instances file names. Defaults to None.

  • already_loaded (bool) – If instance data has been pre-loaded. Defaults to None.

maenvs4vrp.core.env_generator_builder.InstanceBuilder.get_instance_preloaded(self) Dict

Get preloaded instance.

Parameters:

n/a.

Returns:

Instance data.

Return type:

Dict

maenvs4vrp.core.env_generator_builder.InstanceBuilder.random_sample_instance(self, num_agents: int = None, num_services: int = None, seed: int = None) Dict

Sample one instance from instance space.

Parameters:
  • num_services (int) – Total number of services. Defaults to None.

  • num_agents (int) – Total number of agents. Defaults to None.

  • seed (int) – Random number generator seed. Defaults to None.

Returns:

Instance data.

Return type:

Dict

maenvs4vrp.core.env_generator_builder.InstanceBuilder.sample_name_from_set(self, seed: int = None) str

Sample one instance from insance set.

Parameters:

seed (int) – Random number generator seed. Defaults to None.

Returns:

instance name.

Return type:

str

maenvs4vrp.core.env_generator_builder.InstanceBuilder.sample_instance(self, num_agents: int = None, num_services: int = None, instance_name: str = None, random_sample: bool = True, seed: int = None) Dict

Sample one instance from insance space.

Parameters:
  • num_services (int) – Total number of services. Defaults to None.

  • num_agents (int) – Total number of agents. Defaults to None.

  • instance_name (str) – Instance name. Defaults to None.

  • random_sample (bool) – True to sample instance and False to use original instance data. Defaults to None.

  • seed (int) – Random number generator seed. Defaults to None.

Returns:

Instance data.

Return type:

Dict