Instances for a complex parallel machine scheduling problem
================================================================================================================================================================================

For a complete description of the problem that originated the instances and the instances generation process, we refer to the paper entitled: Iterated greedy algorithms for a complex parallel machine scheduling problem (Mecler et al., 2021).

The instance name indicates the number of operations(o), jobs(n), families(f) and machines(m). The final part of the name contains an index that differentiates instances with the same combination of operations, machines, families, and jobs. For example, instance o50n10f3m5_01 contains 50 operations, 10 jobs, 3 families, and 5 machines. Its index is 01. 

=================================================================================================================================================================================

The instance file is organized as follows:

Operations(o) - INTEGER	    Jobs(n) - INTEGER        Families(f) - INTEGER	      Machines(m) - INTEGER

"p" - processing times of operations, indexed by i - VECTOR

"r" - release dates of operations, indexed by i - VECTOR

"l" - sizes of operations, indexed by i - VECTOR

"g" - families of operations, indexed by i - VECTOR

"w" - Weights of jobs, indexed by j - VECTOR

"s" - Setup time durations of families, indexed by g - VECTOR

"q" - Capacities of machines, indexed by k - VECTOR

"r" - Release dates of machines, indexed by k - VECTOR

"ON" - Operations x job associations, indexed by i and j (1 if operation i is associated with job j and 0, otherwise) - MATRIX

"OM" - Operations x machines elegibilities, indexed by i and k (1 if operation i can be processed by machine k and 0, otherwise) - MATRIX