## 1 Introduction  
Unrelated parallel machine scheduling is the most general setting of parallel machine scheduling, where \(n\) non-preemptive jobs, all available at time zero, have to be processed on \(m\) machines. Each job can be processed by any free machine; however, the processing of job \(j\) on machine \(i\) takes an amount of time that has no relation to the processing times on the other machines. It is assumed that all of the machines are capable of processing all jobs; nevertheless, if a given machine is not capable of processing a given job, the corresponding processing time can be set to a very large value [1]. In this paper, an unrelated parallel machine scheduling problem with job (product) and machine acceptance and with renewable resources (such as manpower, industrial machines or tools, and computing devices) was considered. The main idea of this research was to establish a production facility without (or with a minimum) capital or infrastructure. The machines and resources required for processing the jobs were rented during their operating time. Each machine or resource can be rented for only one time interval, i.e., even for their idle times, the renting cost should be paid. Multiple resources of a given type can be used. The problem is to determine:  
1. The set of accepted jobs, considering their revenue, required processing times and resources, fixed costs, transportation costs, and penalty costs for rejected jobs;
2. The set of machines that will be rented, taking into account their rent cost per time unit;
3. The set of resource units that will be rented, taking into account their rent cost per time unit and transportation times and costs (typically tools or manpower);
4. The time intervals for renting the selected machines;
5. The time intervals for renting the selected renewable resource units;
6. The assignment of the selected jobs to the selected machines;
7. The start dates for processing the selected jobs. The objective is to maximize the net profit, which is composed of revenues and costs. The revenues are given by the selected jobs, and the costs are composed of the penalties of rejected jobs and various costs of the selected jobs. The latter include the fixed costs of jobs, transportation costs (jobs and resources), and rent costs (machines and resources). The real-case application motivating this study comes from a small company renting co-working spaces in different locations and employing freelance programmers. We are, however, unable to divuleg the name of the company, nor all of the details of its operations. Broadly speaking, the company acts as a subcontractor in the software development field. From a scheduling perspective, the jobs correspond to software projects, the machines correspond to co-working sites, and the resources correspond to the programmers, grouped based on their core competences. Each time a co-working site is used, the space needs to be set up for the freelancers, hence the initial transportation time and cost. Projects are also taken in batches, motivating the use of penalties when jobs are not carried out in the allotted time frame. Furthermore, we extended certain aspects of the problem, such as including processing times depending on the selected machine, which was not the case in the original case study. The scheduling problem with job acceptance (also called \"job selection\" or \"job rejection\") has been studied by many papers in the literature [2; 3; 4; 5; 6; 7; 8]. The scheduling problem with machine acceptance (called \"not-all-machines\" or \"optional machines\") has also been investigated by many researchers [9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19]. The scheduling problem with renewable resource constraints has also been widely studied in the literature due to its wide applicability to real problems [20; 21; 22; 23; 24; 25; 26; 27]. A cross-disciplinary survey on this subject may be found in [28].