pydcop generate meetings¶
Meetings scheduling benchmark problem generator¶
Synopsis¶
pydcop generate meetings
--slots_count <slots_count>
--events_count <events_count>
--resources_count <resources_count>
--max_resources_event <max_resources_event>
[--max_length_event <max_length_event>]
[--max_resource_value <max_resource_value>]
Description¶
This commands generate a meeting scheduling problem, based on [MTB+04] with the Private Event As Variable (PEAV) model.
Note that this command generates both a DCOP and a distribution, as the PEAV model also specifies the list of agents (one for each resource) and where each variable is hosted.
Note: the generated DCOP and distribution are both written to the standard output.
To write in files, you can use the --output <file>
global option.
Options¶
--slots_count <slots_count>
Total number of time slots
--events_count
Number of events (aka meetings) to schedule
--resources_count <resources_count>
Number of resources
--max_resources_event <max_resources_event>
Maximum number of resources for each event: each event has a random number of requested resources in [1, max_resources_event]
--max_length_event <max_length_event>
Maximum number of time slot for an event: each event has a random length in [1, max_length_event]. Optional, defaults to 1.
--max_resource_value <max_resource_value>
Each resources has a random value in [1, max_resource_value] for each time slot and a value for being kept free (in [1, max_resource_value]) at a given time slot. Optional, defaults to 10.
Examples
Generating a meetings scheduling problem written directly to stdout:
pydcop generate meetings --slots_count 5 --events_count 4 --resources_count 3 --max_resources_event 2
Generating a meetings scheduling problem written in in meetings.yaml
. The
distribution is written in meetings_dist.yaml
:
pydcop --output meetings.yaml generate meetings \
--slots_count 5 --events_count 6 --resources_count 3 \
--max_resources_event 2 --max_length_event 2