These are 26 instances for the Palliative Home Care Problem (PHCP); they have been generated starting from real data from a Home Care provider that for confidentiality reasons will remain anonymous. For a detailed description of the problem and of the instances, please refer to:
– P. Cappanera, M.G. Scutellà “Home Care optimization: impact of pattern generation policies on scheduling and routing decisions”, Electronic Notes in Discrete Mathematics, 41, 53 – 60, 2013, doi: 10.1016/j.endm.2013.05.075
– P. Cappanera, M.G. Scutellà “Joint assignment, scheduling and routing models to Home Care optimization: a pattern based approach”, (with related Online Supplement) Transportation Science 49(4), 830 – 852, 2015.
The instances are packed all together with “tar” and compressed with “gzip”, and they are contained in PHCP.tar.gz. Once the file PHCP.tar.gz has been downloaded, it must be first decompressed (gzip -d PHCP.tar.gz under unix) and then un-tarred (tar PHCP.tar under unix) to retrieve the original files.
The name of the instance files is a string reporting the following fields separated by a “-” character: the week, the number of municipalities, the number of patients, the number of operators, and the instance identifier in the group (i.e. 0, 1 or 2). The instances refer to two representative weeks from the historical database of the provider, i.e. January 2006 (0106) and April 2007 (0407). Specifically, for each week a big instance and 12 smaller instances are provided, summing up to 2 * (1+12) = 26 instances. As an example “0106-5-40-4-0” refers to the week in January 2006, 5 municipalities, 40 patients, 4 operators, and instance number 0. The instance identifier in the group is “0” for the biggest instances in the test bed, i.e. for 0106-10-128-11-0 and for 0407-8-162-11-0.
In regards to the patterns, they have been generated by means of the Flow Based policy (with parameter set to 0.5) described in the aforementioned papers.
In the following we give the description of the instance file and a small instance example (referred to as toy).
Input file format
The first row contains the following fields:
- number_of_nodes = number_of_patients + 1 (6 in toy)
- number_of_operators (2 in toy)
- number_of_municipalities (3 in toy)
- number_of_patterns (10 in toy)
A block of number_of_nodes – 1 rows follows (one for each patient). Each row contains the following 5 fields:
- patient_identifier
- max_number_of_operators_for_patient (1 if care continuity is ensured)
- number_of_skill_1_requests
- number_of_skill_2_requests
- municipality_identifier (a number comprised in 0..number_of_municipalities – 1)
A block of number_of_operators rows follows (one for each operator). Each row contains the following 3 fields:
- operator_identifier
- skill (1 or 2)
- maximum_daily_workload expressed in hours
The (number_of_municipalities x number_of_municipalities) travel_time matrix follows that reports the travel_time between couples of municipalities. Travel_times are expressed in minutes.
Finally, a block of number_of_patterns rows follows (one for each pattern). Each row contains a field for each day in the planning horizon. The following notation is used:
- 0 is used to denote that no visit is performed on that day
- 1 is used to denote that a visit of skill 1 is performed on that day
- 2 is used to denote that a visit of skill 2 is performed on that day.
As an example the row
0 0 1 2 0
describes a five-day pattern according to which a visit of skill 1 is made on Wednesday and a visit of skill 2 is made on Thursday.
Special character “TAB” is used as field separator.
Toy input file
- 6 2 3 10
- 10090 2 1 0 0
- 10468 2 0 1 0
- 10329 2 2 0 1
- 11512 2 3 0 2
- 13207 2 1 1 2
- 44 1 8
- 97 2 8
- 3 7 9
- 6 3 13
- 9 13 3
- 1 0 0 0 0
- 0 0 1 0 0
- 0 0 0 0 1
- 1 0 0 0 1
- 0 1 0 1 0
- 1 0 1 0 1
- 2 0 0 0 0
- 0 0 0 0 2
- 2 1 0 0 0
- 0 0 1 2 0