1 Introduction

We consider a scheduling problem where a set of unit-time jobs has to be sequenced on a single machine without any idle times between the jobs. Preemption of processing is not allowed. The ordering of the jobs must satisfy a given precedence relation derived from a directed acyclic graph. The processing cost of a job is determined by the position in the sequence, i.e., for each job and each position, there is an associated weight (which can be any rational number), and one has to determine a sequence of jobs which minimizes the total weight incurred by the positions of the jobs.

Formally, let \(\mathcal {J}= \{J_1,\ldots ,J_n\}\) be the set of unit-time jobs, that is, each job \(J_j\) has processing time \(p_j=1\). For a given schedule S and job \(J_j\) let \(\sigma ^S_j \in \{1,\ldots ,n\}\) indicate the position of the job in the sequence (that is, \(\sigma ^S_j = k\) if exactly \(k-1\) jobs are scheduled before \(J_j\)). For each job \(J_j\) and position k there is a weight \(w_{j,k} \in {\mathbb {Q}}\), and thus the weight of job \(J_j\) for a given schedule S is \(w_{j,\sigma ^S_j}\). The goal of the problem is to determine a schedule S that minimizes the total weight \(\sum _{j=1}^n w_{j,\sigma ^S_j}\). Using the classification of deterministic sequencing and scheduling problems introduced by Graham et al. (1979), we denote the problem as \(1\,|p_j=1|\,\sum w_{j,\sigma _j}\). In the case of precedence relations we have a directed acyclic graph, where the nodes correspond to the jobs, and if there is an arc from \(J_i\) to \(J_j\), then job \(J_i\) must be assigned to an earlier position than job \(J_j\). This problem is denoted as \(1\,|prec,p_j=1|\,\sum w_{j,\sigma _j}\), and if the directed acyclic graph decomposes into chains (that is, each job has at most one immediate predecessor and at most one immediate successor), then the problem is \(1\,|chains,p_j=1|\,\sum w_{j,\sigma _j}\). Note that problem \(1\,|p_j=1|\,\sum w_{j,\sigma _j}\) is equivalent to the well-known assignment problem (Kuhn 1955), thus problem \(1\,|prec,p_j=1|\,\sum w_{j,\sigma _j}\) can be considered as a generalized assignment problem, where the set of positions is ordered, and the assignment must satisfy the given precedence constraints.

In our model, the positions of the jobs in the solution determine the job-weights in the objective function. Another, more thoroughly studied model is scheduling with position-dependent processing times, i.e., the processing time of each job is a function of its position in the sequence, see e.g., (Bachman and Janiak 2004; Rudek 2012).

In this paper we study the scheduling problem \(1\,|chains,p_j=1|\,\sum w_{j,\sigma _j}\), and provide new complexity, polyhedral, and computational results. We show that this scheduling problem is NP-hard in the strong sense, even if each chain consists of two jobs only. We also provide a natural integer programming formulation whose integer feasible solutions represent all the feasible schedules. For the corresponding polyhedron, we derive new valid inequalities strongly related to the chain structure of the precedence constraints. Our inequalities are obtained by establishing a connection to the parity polytope, investigated in Lancia and Serafini (2018). We also provide a polynomial time separation procedure. Further on, for 2-chains, i.e., where all chains consist of two jobs, we show that a sub-class of the new inequalities induces facets of the convex hull of feasible solutions of the scheduling problem. Since the problem is NP-hard in the strong sense, identifying non-trivial facets becomes even more significant. We have tested the effectiveness of our inequalities in a branch-and-cut based exact method which was implemented in C++ and tested on a number of problem instances. Our computational results show that for 2-chains, the new cuts are very effective as they accelerate the solution procedure by orders of magnitude.

The paper is organized as follows. In Sect. 3, we give an integer programming formulation for problem \(1\,|prec,p_j=1|\,\sum w_{j,\sigma _j}\), which is also appropriate for problem \(1\,|chains,p_j=1|\,\sum w_{j,\sigma _j}\). In Sect. 4, we derive valid inequalities for the convex hull of feasible solutions of the problem \(1\,|chains,p_j=1|\,\gamma \) after establishing a linear relation to the parity polytope, and we also describe a polynomial-time separation procedure. In Sect. 5 we consider a special case of \(1\,|chains,p_j=1|\,\gamma \), where each chain consists of two jobs (i.e., the precedence graph is a directed perfect matching). We denote this problem by \(1\,|2\text {-}chains,p_j=1|\,\gamma \), where the term \(2\text {-}chains \) indicates that each chain consists of exactly two jobs. In Sect. 5.1 we define the polytope \(Q^{2\text {-}chains}\) of the feasible solutions of the class of problems \(1\,|2\text {-}chains,p_j=1|\,\gamma \). In Sect. 5.2 we prove that the problem \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\) is NP-hard in the strong sense. In Sect. 5.3, we determine the dimension of \(Q^{2\text {-}chains}\), and in Sect. 5.4 we reconsider the valid inequalities derived for the general case, and we prove that some of these inequalities are facet-defining for \(Q^{2\text {-}chains}\). Finally, in Sect. 6 we present our computational experiments, where we demonstrate that separating the facet-defining inequalities of Sect. 5.4 can significantly speed up a linear programming based branch-and-bound procedure to solve problems \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\) and \(1\,|chains,chain\text {-}length\in \{1,2\}, p_j=1|\,\sum w_{j,\sigma _j}\), where in the latter case each chain consists of one or two jobs.

2 Literature review

For a given schedule S, let \(C^S_j\) denote the completion time of a job \(J_j\). The makespan of some schedule S is the maximum of the job completion times, i.e., \(C_{\max }^S := \max _jC^S_j\). If a due-date \(d_j\) is given for each job \(J_j\), then the tardiness of the job is \(T^S_j := \max \{0,C^S_j-d_j\}\), while \(U^S_j\) indicates if the job is late, i.e., \( U^S_j = 1\), if \(C^S_j > d_j\), and 0 otherwise. The jobs may also have some non-negative weight \(w_j\). The optimality criterion for minimizing the makespan, the sum of completion times, the weighted sum of completion times, the total tardiness and the throughput is denoted by \(C_{\max }\), \(\sum C_j\), \(\sum w_jC_j\), \(\sum T_j\) and \(\sum U_j\), respectively.

Lenstra and Rinnooy Kan (1980) and Leung and Young (1990) present complexity results for scheduling unit-time jobs on a single machine with chain-precedence constraints, i.e., problems of the form \(1\,|chains,p_j=1|\,\gamma \). Clearly, the problems with \(\gamma = C_{\max }\) and \(\gamma =\sum C_j\) are trivial (since each feasible schedule is optimal), and polynomially solvable for \(\gamma = \sum w_jC_j\) [see e.g., Lawler (1978)]. Lenstra and Rinnooy Kan (1980) and Leung and Young (1990) show that problems with \(\gamma =\sum U_j\) and \(\gamma =\sum T_j\) are strongly NP-hard, respectively. Our results in this paper imply that the problem with \(\gamma =\sum w_{j,\sigma _j}\) is NP-hard in the strong sense even if each chain in the precedence relation has length 2. We summarize these results in Table 1. Although we do not consider multiple-machine scheduling problems in this paper, for the sake of completeness we also refer to some results about scheduling unit-time jobs on parallel machines under precedence constraints, i.e., problems of the form \(P\,|prec,p_j=1|\,\gamma \), where P indicates identical parallel machines. Ullman (1975) shows that problem \(P\,|prec,p_j=1|\,C_{\max }\) is strongly NP-hard, however, problems \(P\,|chains,p_j=1|\,C_{\max }\) and \(P2\,|prec,p_j=1|\,C_{\max }\) are polynomially solvable [see e.g., Hu (1961) and Coffman and Graham (1972), respectively], where P2 refers to the case of two parallel identical machines. Hoogeveen et al. (2001) show that problem \(P\,|prec,p_j=1|\,\sum C_j\) is APX-hard, however, problems \(P\,|chains,p_j=1|\,\sum C_j\) and \(P2\,|prec,p_j=1|\,\sum C_j\) are polynomially solvable [see e.g., Hu (1961) and Coffman and Graham (1972), respectively]. Finally, Timkovsky (2003) shows that problem \(P2\,|chains,p_j=1|\,\sum w_jC_j\) is strongly NP-hard.

The traditional precedence constraints can be considered as AND-precedence constraints, that is, a job can only be started after all of its (immediate) predecessors are completed. In contrast, in case of OR-precedence constraints, a job can be started as soon as one of its immediate predecessors is completed. Note that in this case the precedence graph can be cyclic, however, one can decide in linear time whether the problem has a feasible solution [see e.g., Möhring et al. (2004)]. According to this, problem \(1\,|or\text {-}prec,p_j=1|\,\gamma \) is trivial for \(\gamma = C_{\max }\) and \(\gamma = \sum C_j\), where \(or\text {-}prec\) refers to the presence of OR-precedence constraints. Among other results, Johannes (2005) shows that problem \(1\,|or\text {-}prec,p_j=1|\,\sum w_jC_j\) is strongly NP-hard. Note that the chain-precedence constraints are both AND- and OR-precedence constraints, since in this case each job has at most one immediate predecessor, thus problems of the form \(1\,|chains,p_j=1|\,\gamma \) considered in this paper are special cases of problem \(1\,|or\text {-}prec,p_j=1|\,\gamma \). We also summarize these results in Table 1.

Table 1 Scheduling unit-time jobs on a single machine under precedence constraints (\(1\,|\beta ,p_j=1|\,\gamma \))

Wan and Qi (2010) introduce new scheduling models where time slot costs have to be taken into consideration. In their models the planning horizon is divided into \(K \ge \sum _{j=1}^n p_j\) time slots with unit length, where the kth time slot has cost \(\pi _k\), and the time slot cost of a job \(J_j\) with starting time t is \(\sum _{k\in s_j}\pi _k\), where \(s_j=\{t+1,\ldots ,t+p_j\}\). The objective of their models is a combination of the total time slot cost with a traditional scheduling criterion, that is, they consider problems of the form \(1\,|slotcost|\,\gamma + \sum _j\sum _{k\in s_j} \pi _k\). Wan and Qi (2010) show that in case of non-decreasing time slot costs (that is, \(\pi _1 \le \cdots \le \pi _K\)) the problem can be reduced to one without slot costs. Under the assumption of arbitrarily varied time slot costs they prove that the problems with \(\gamma = \sum C_j\), \(\gamma = L_{\max }\), \(\gamma = T_{\max }\), \(\gamma = \sum U_j\) and \(\gamma = \sum T_j\) are strongly NP-hard. They also show that in case of non-increasing time slot costs some of these problems can be solved in polynomial or pseudo-polynomial time. Zhao et al. (2016) prove that in case of non-increasing time slot costs, problem \(1\,|slotcost|\,\sum (C_j + \sum _{k\in s_j} \pi _k)\) is NP-hard in the strong sense. Kulkarni and Munagala (2012) introduce a model similar to that of Wan and Qi (2010), however, they deal with online algorithms to minimize the total time slot costs plus the total weighted completion time. Note that the problem investigated in this paper can be considered as a generalization of a special case of the model of Wan and Qi (2010). That is, in case of unit-time jobs (with \(K=\sum _{j=1}^n p_j=n\)) problem \(1\,|slotcost,p_j=1|\,\sum _j\sum _{k\in s_j} \pi _k\) is similar to that of \(1\,|p_j=1|\,\sum w_{j,\sigma _j}\), however, in the latter problem the time slot costs depend on the jobs.

3 Problem formulation

Recall that \(\mathcal {J}= \{J_1,\ldots ,J_n\}\) is the set of unit-time jobs, and let \(\mathcal {P}= \{1,\ldots ,n\}\) be the set of positions. Let \(D=(\mathcal {J},A)\) be the directed acyclic precedence graph whose nodes are the jobs. We will denote by \(J_{i_1} \prec \prec J_{i_2}\) if \(J_{i_1} \ne J_{i_2}\) and there is a directed path from \(J_{i_1}\) to \(J_{i_2}\) in D. In this case we say that \(J_{i_1}\) is a predecessor of \(J_{i_2}\), and \(J_{i_2}\) is a successor of \(J_{i_1}\). Further on, we say that \(J_{i_1}\) is an immediate predecessor of \(J_{i_2}\) (denoted by \(J_{i_1} \prec J_{i_2}\)) if and only if \(J_{i_1} \prec \prec J_{i_2}\), but there exists no job \(J_{i_3}\) such that \(J_{i_1} \prec \prec J_{i_3}\) and \(J_{i_3} \prec \prec J_{i_2}\). In any schedule which satisfies \(\prec \), for each pair of jobs \(J_{i_1}\) and \(J_{i_1}\) such that \(J_{i_1} \prec J_{i_2}\), job \(J_{i_1}\) must be scheduled before \(J_{i_2}\).

Let \(x_{i,j}\) be the binary variable indicating whether job \(J_i\) is assigned to position j. The problem \(1\,|prec,p_j=1|\,\sum w_{j,\sigma _j}\) can be formulated as

$$\begin{aligned} \text {minimize}\ \sum \limits _{i=1}^n\sum \limits _{j=1}^n w_{i,j}x_{i,j}&\end{aligned}$$
(1)
$$\begin{aligned} \sum \limits _{j=1}^n x_{i,j} = 1,&i\in \{1,\ldots ,n\},\end{aligned}$$
(2)
$$\begin{aligned} \sum \limits _{i=1}^n x_{i,j} = 1,&j\in \{1,\ldots ,n\},\end{aligned}$$
(3)
$$\begin{aligned} \sum \limits _{j=1}^{k+1} x_{i_2,j} \le \sum \limits _{j=1}^{k} x_{i_1,j},&J_{i_1} \prec J_{i_2},\ k\in \{1,\ldots ,n-1\},\end{aligned}$$
(4)
$$\begin{aligned} x_{i,j} \in \{0,1\},&i\in \{1,\ldots ,n\},\ j\in \{1,\ldots ,n\}, \end{aligned}$$
(5)

where constraints (2) and (3) model the job-position assignment constraints. Constraint set (4) ensures that the precedence constraints are satisfied. That is, for each pair of jobs \(J_{i_1}\) and \(J_{i_2}\) such that \(J_{i_1} \prec J_{i_2}\), there are \(n-1\) linear constraints ensuring that job \(J_{i_2}\) cannot be assigned to the same or to an earlier position than job \(J_{i_1}\). Let \(P^{prec}_n := \{ x \in \{0,1\}^{n\cdot n} :\ x\ \text {satisfies}\) (2)–(4)} be the set of the feasible solutions, and the polytope \(Q^{prec}_n := {\text {conv}}(P^{prec}_n)\) the convex hull of feasible solutions of (2)–(5). By construction, we have the following proposition.

Proposition 1

\(P^{prec}_n\) is the set of incidence vectors corresponding to feasible job-position assignments.

For later use we provide some valid equations for \(Q^{prec}_n\). Let \(\mathcal {J}_i^+ = \{J_{i'} \in \mathcal {J}: J_i \prec \prec J_{i'} \}\) (\(\mathcal {J}_i^- = \{J_{i'} \in \mathcal {J}: J_{i'} \prec \prec J_i \}\)) be the set of successors (predecessors) of job \(J_i\). Clearly, for each point \(x\in P^{prec}_n\) we have

$$\begin{aligned} x_{i,j} = 0,&i\in \{1,\ldots ,n\},\quad j\in \{1,\ldots ,|\mathcal {J}_i^-|\}, \end{aligned}$$
(6)
$$\begin{aligned} x_{i,j} = 0,&i\in \{1,\ldots ,n\},\quad j\in \{n-|\mathcal {J}_i^+|+1,\ldots ,n\}. \end{aligned}$$
(7)

Since \(Q^{prec}_n\) is the convex hull of the points \(P^{prec}_n\), these equations are valid for \(Q^{prec}_n\).

4 Problem \(1\,|chains,p_j=1|\,\gamma \)

In this section we present a class of valid inequalities for the case of chain-precedence constraints along with a polynomial time separation procedure. We derive these inequalities by using the so-called parity inequalities, which constitute the non-trivial facets of the parity polytope (see Sect. 4.1).

For chain-precedence constraints, let \(P^{chain}_n\) and \(Q^{chain}_n\) denote the set of feasible solutions and the convex hull of feasible solutions, respectively, of the integer program (1)–(5). Let \(\mathcal {C}=\{C_1,\ldots ,C_m\}\) be the set of chains (i.e., chain-precedence constraints), where \(C_i = (J_{i_1},\ldots ,J_{i_{\ell }})\) with \(J_{i_1} \prec \cdots \prec J_{i_{\ell }}\) for each \(i\in \{1,\ldots ,m\}\). The length of a chain C, i.e., the number of its jobs, denoted by \(\text {len}(C)\). For a given integer k we denote the index set \(\{1,\ldots ,k\}\) by [k].

4.1 Parity polytope, parity inequalities

Let \(Q^{even}_d\) (\(Q^{odd}_d\)) be the convex hull of those d-dimensional 0-1 vectors in which the number of 1’s is even (odd). The characterization of the parity polytope \(Q^{even}_d\) is attributed to Jeroslow (1975), however, for a direct proof of this result we refer to Lancia and Serafini (2018).

Theorem 1

(Lancia and Serafini (2018))

$$\begin{aligned} Q^{even}_d= & {} \left\{ z \in [0,1]^d : \sum \limits _{i \in S} z_i - \sum \limits _{i \notin S} z_i \le |S|-1,\quad \text {for all odd-subset}\ S \subset [d] \right\} ,\\ Q^{odd}_d= & {} \left\{ z \in [0,1]^d : \sum \limits _{i \in S} z_i - \sum \limits _{i \notin S} z_i \le |S|-1,\quad \text {for all even-subset}\ S \subset [d] \right\} . \end{aligned}$$

We say that a subset \(S \subseteq [d]\) is an odd-subset (even-subset) if its cardinality |S| is odd (even), and we call the inequalities of Theorem 1 parity inequalities.

4.1.1 Separation of the parity inequalities

Since we have not been able to find any paper that provides a separation procedure for the parity inequalities, we provide our own procedure. First, we reformulate the parity inequalities as

$$\begin{aligned} 1 \le \sum \limits _{i \in S} (1-z_i) + \sum \limits _{i \notin S} z_i,\quad \text {for each odd-subset}\ S \subseteq [d], \end{aligned}$$
(8)

and

$$\begin{aligned} 1 \le \sum \limits _{i \in S} (1-z_i) + \sum \limits _{i \notin S} z_i,\quad \text {for each even-subset}\ S \subseteq [d]. \end{aligned}$$
(9)

Note that in the sake of convenience we allow S to be the complete set [d], with this the corresponding inequality is still valid but redundant.

Theorem 2

Inequalities (8) and (9) can be separated in polynomial time, that is, for a given vector \({\bar{z}}\in [0,1]^{d}\) the following problems can be solved in polynomial time:

$$\begin{aligned}&{\mathrm{maximize}}\ \left\{ 1 - \left( \sum _{i \in S} (1-{\bar{z}}_i) + \sum _{i \notin S} {\bar{z}}_i \right) : S \subseteq [d]\ \text {is an odd-subset} \right\} , \end{aligned}$$
(10)
$$\begin{aligned}&{\mathrm{maximize}}\ \left\{ 1 - \left( \sum _{i \in S} (1-{\bar{z}}_i) + \sum _{i \notin S} {\bar{z}}_i \right) : S \subseteq [d]\ \text {is an even-subset} \right\} . \end{aligned}$$
(11)

Clearly, if the maximum value is less than or equal to zero then all of the inequalities are satisfied, otherwise, the corresponding subset gives one of the most violated inequalities.

Lemma 1

Let \(1 \ge v_1 \ge v_2 \ge \cdots \ge v_d \ge 0 \), and let \(f(S) := \sum _{i \in S} (1-v_i) + \sum _{i \notin S} v_i\) for all \(S \subseteq [d]\). Consider the following problems:

$$\begin{aligned}&{\mathrm{minimize}}\ \left\{ f(S) :\ S \subseteq [d]\ \text {is an odd-subset} \right\} , \end{aligned}$$
(12)
$$\begin{aligned}&{\mathrm{minimize}}\ \left\{ f(S) :\ S \subseteq [d]\ \text {is an even-subset} \right\} . \end{aligned}$$
(13)
  1. (a)

    Let \(S_0 := \emptyset \) and \(S_i := [i]\) for all \(i = 1,\ldots ,d\). There is an optimal solution \(S_{OPT}\) for problem (12) [problem (13)] such that \(S_{OPT} = S_i\) for some \(i\in \{0,\ldots ,d\}\).

  2. (b)

    Let \(t:=0\) if \( 1 - v_i > v_i \) holds for all \(i=1,\ldots ,d\), and let \(t:=\max \{i:\ 1-v_i \le v_i\}\) otherwise. One of the sets \(S_{t-1}\), \(S_t\) and \(S_{t+1}\) is an optimal solution for problem (12) [problem (13)].

Proof

To prove statement (a), consider an optimal solution \(S_{OPT}\) for problem (12) which maximizes the parameter \(p := \max \{i:\ S_i \subseteq S_{OPT}\}\), i.e., for any optimal solution \(S^*\) we have \( \max \{i:\ S_i \subseteq S^*\} \le p\). Clearly, \(p+1 \notin S_{OPT}\). Suppose for the sake of a contradiction that there is an index \(q > p+1\) such that \(q \in S_{OPT}\). Let \(S':=(S_{OPT} \cup \{p+1\}) {\setminus } \{q\}\). Now, we have \(f(S_{OPT}) \le f(S') = f(S_{OPT}) + (1 - v_{p+1}) - v_{p+1} - (1 - v_q) + v_q = f(S_{OPT}) + 2(v_q - v_{p+1}) \le f(S_{OPT})\), thus \(S'\) is also an optimal solution for problem (12), however \( p < \max \{i:\ S_i \subseteq S'\}\) which contradicts our assumption for \(S_{OPT}\).

According to statement (a) problems (12) and (13) can be restricted to subsets of the form \(S_i\), \(i \in \{0,\ldots ,d\}\). For each \(i < t\), \( 1 - v_{i+1} \le v_{i+1} \), thus \( f(S_{i+1}) = f(S_i) + (1-v_{i+1}) - v_{i+1} \ge f(S_i) \). For each \(i > t\), \( 1 - v_i > v_i \), thus \( f(S_i) = f(S_{i-1}) + (1-v_i) - v_i < f(S_{i+1})\). Therefore, we have

$$\begin{aligned} f(S_1) \ge \cdots \ge f(S_{t-1}) \ge f(S_t)\ \text {and}\ f(S_t)< f(S_{t+1})< \cdots < f(S_n), \end{aligned}$$

thus if \(S_t\) has odd (even) cardinality, then it is an optimal solution for problem (12) (problem (13)), otherwise, \( \arg \min \{ f(S_{t-1}), f(S_{t+1}) \}\) is an optimal solution for problem (12) [problem (13)]. \(\square \)

Proof (Theorem 2)

For a given vector \({\bar{z}} \in [0,1]^d\) let \(v_i := {\bar{z}}_{i}\) for all \(i=1,\ldots ,d\), and let \(f(S) := \sum _{i \in S} (1-v_i) + \sum _{i \notin S} v_i\) for all \(S \subseteq [d]\). Without loss of generality (e.g., by sorting and reindexing the values), we can assume that \(v_1 \ge v_2 \ge \cdots \ge v_d\). By this, separation problem (10) [problem (11)] is equivalent to problem (12) [problem (13)] which can be solved in polynomial time according to Lemma 1. \(\square \)

4.2 Valid inequalities for \(Q^{chain}_n\)

We introduce the variables \(z_{i,j}\) (\(i\in \{1,\ldots ,m\}\), \(j\in \{1,\ldots ,n\}\)) indicating whether the number of jobs from chain \(C_i\) that are assigned to one of the positions from \(\{1,\ldots ,j\}\) is odd (\(z_{i,j}=1\)) or even (\(z_{i,j}=0\)).

Claim

Let \(x\in P^{chain}_n\). For each chain \(C_i = (J_{i_1},\ldots ,J_{i_{\ell }})\) and each position \(j \in \{1,\ldots ,n\}\) we have

$$\begin{aligned} z_{i,j} = \sum _{k=1}^{\ell } (-1)^{k-1}\sum _{p=1}^j x_{i_k,p}. \end{aligned}$$

Proof

For an \(x \in P^{chain}_n\) the value \(\delta _k := \sum _{p=1}^j x_{i_k,p}\) (\(k=1,\ldots ,\ell \)) equals to 1 if and only if job \(J_{i_k}\) is assigned to one of the positions \(\{1,\ldots ,j\}\), otherwise it is 0. Clearly, for jobs \(J_{i_1} \prec \cdots \prec J_{i_{\ell }}\) we have \( 1 \ge \delta _1 \ge \cdots \ge \delta _{\ell } \ge 0 \), thus summing these values with alternating factors \((-1)^{k-1}\)\((k=1,\ldots ,\ell )\), the sum (i.e., \(z_{i,j}\)) is 1 if the number of \(\delta \)-values that are equal to 1 is odd, otherwise it is 0. \(\square \)

Claim

For an even (odd) position \(j \in \{1,\ldots ,n\}\) the number of 1’s in vector \((z_{1,j},\ldots ,z_{m,j})\) is even (odd).

Proof

If j is even (odd), then the number of chains \(C_i\) such that the cardinality of the set \(\left\{ k \in \{1,\ldots ,j\} \ :\ z_{i,k} = 1 \right\} \) is odd (i.e., \(C_i\) has an odd number of jobs assigned to the positions \(1,\ldots ,j\)) must be even (odd). \(\square \)

According to the second claim, the corresponding parity inequalities are valid for the convex hull of the feasible solutions of the formulation extended by the z-variables. However, due to the first claim, one can transform these inequalities to the original x-variables, thus we have the following theorem.

Theorem 3

The following inequalities are valid for \(Q^{chain}_n\):

$$\begin{aligned}&\sum \limits _{i\in S} \left( \sum _{k=1}^{\text {len}(C_i)} (-1)^{k-1}\sum _{p=1}^j x_{i_k,p}\right) - \sum \limits _{i\notin S} \left( \sum _{k=1}^{\text {len}(C_i)} (-1)^{k-1}\sum _{p=1}^j x_{i_k,p}\right) \le |S|-1,\nonumber \\&\quad \qquad \qquad \text {for each even position}\ j\ \text {and odd-subset}\ S\subseteq [m], \end{aligned}$$
(14)

and

$$\begin{aligned}&\sum \limits _{i\in S} \left( \sum _{k=1}^{\text {len}(C_i)} (-1)^{k-1}\sum _{p=1}^j x_{i_k,p}\right) - \sum \limits _{i\notin S} \left( \sum _{k=1}^{\text {len}(C_i)} (-1)^{k-1}\sum _{p=1}^j x_{i_k,p}\right) \le |S|-1,\nonumber \\&\quad \qquad \qquad \text {for each odd position}\ j\ \text {and even-subset}\ S\subseteq [m]. \end{aligned}$$
(15)

The separation procedure of inequalities (14) [inequalities (15)] is similar to the separation procedure of inequalities (8) [inequalities (9)], that is, for a given vector \({\bar{x}} \in [0,1]^{n\cdot n}\), fix an even (odd) position j, and let \({\bar{z}}_i := \sum _{k=1}^{\ell } (-1)^{k-1}\sum _{p=1}^j {\bar{x}}_{i_k,p}\) for each chain \(C_i=(J_{i_1},\ldots ,J_{i_{\ell }})\), \(i=1,\ldots ,m\). By this, one can use the separation procedure of inequalities (8) [inequalities (9)] described above.

5 Problem \(1\,|2\text {-}chains,p_j=1|\,\gamma \)

In this section we investigate the problem \(1\,|2\text {-}chains,p_j=1|\,\gamma \). Recall that in this problem we have an even number of jobs, i.e., 2n, and the relation \(\prec \) partitions the set of jobs into n disjoint pairs, i.e., each jobs has exactly one predecessor or one successor, but not both. In Sect. 5.1 we reformulate the integer program of Sect. 3 to make our notation easier and reflect that each chain consists of two jobs. The problem \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\) is shown to be strongly NP-hard in Sect. 5.2. In Sect. 5.3 we analyze the polyhedron spanned by the feasible solutions of our integer programming formulation, namely, we determine its dimension, and then in Sect. 5.4 we show that some of the inequalities from Sect. 4 are facet-defining. For basic concepts of polyhedral combinatorics we refer the reader to Nemhauser and Wolsey (1988) or Conforti et al. (2014).

5.1 Problem formulation

In order to simplify our notation, in this section let \(\mathcal {J}= \{J_1,\ldots ,J_{2n}\}\) be the set of unit-time jobs, and \(\mathcal {C}=\{C_1,\ldots ,C_n\}\) be the set of 2-chains, where \(C_{i} = (J_{2i-1},J_{2i})\), that is, \(J_{2i-1} \prec J_{2i}\) for each \(i\in \{1,\ldots ,n\}\). We say that job \(J_{2i-1}\) (\(J_{2i}\)) is the first (second) job of chain \(C_i\). In addition, let \(\mathcal {P}= \{1,\ldots ,2n\}\) be the set of positions.

Let \(s_{i,j}\) (\(e_{i,j}\)) indicate whether the first (second) job of chain \(C_i \in \mathcal {C}\) is assigned to position \(j \in \mathcal {P}\). Note that we just renamed the variables of the formulation (2)–(7), that is, \(s_{i,j} := x_{2i-1,j}\) and \(e_{i,j} := x_{2i,j}\), thus we get the following equivalent formulation:

$$\begin{aligned}&\displaystyle \sum \limits _{j=1}^{2n} s_{i,j} = 1, \quad i\in \{1,\ldots ,n\},\end{aligned}$$
(16)
$$\begin{aligned}&\displaystyle \sum \limits _{j=1}^{2n} e_{i,j} = 1, \quad i\in \{1,\ldots ,n\},\end{aligned}$$
(17)
$$\begin{aligned}&\displaystyle s_{i,2n} = 0, \quad i\in \{1,\ldots ,n\},\end{aligned}$$
(18)
$$\begin{aligned}&\displaystyle e_{i,1} = 0, \quad i\in \{1,\ldots ,n\},\end{aligned}$$
(19)
$$\begin{aligned}&\displaystyle \sum \limits _{i=1}^{n} s_{i,1} = 1, \quad \end{aligned}$$
(20)
$$\begin{aligned}&\displaystyle \sum \limits _{i=1}^{n} \left( s_{i,j} + e_{i,j}\right) = 1, \quad j\in \{2,\ldots ,2n-1\},\end{aligned}$$
(21)
$$\begin{aligned}&\displaystyle \sum \limits _{i=1}^{n} e_{i,2n} = 1, \quad \end{aligned}$$
(22)
$$\begin{aligned}&\displaystyle \sum \limits _{j=1}^{k+1}e_{i,j}\le \sum \limits _{j=1}^{k}s_{i,j}, \quad i\in \{1,\ldots ,n\},\quad k\in \{1,\ldots ,2n-2\},\end{aligned}$$
(23)
$$\begin{aligned}&\displaystyle s_{i,j},\ e_{i,j} \in \{0,1\} \quad i\in \{1,\ldots ,n\},\ j\in \{1,\ldots ,2n\}. \end{aligned}$$
(24)

Constraints (16)–(17) and (20)–(22) are the job-position assignment constraints [see (2) and (3)]. Constraint (23) ensures that each first-job precedes the corresponding second-job [see (4)]. Finally, constraints (18)–(19) forbid to assign a first-job to the last, or a second-job to the first position [see (6)–(7)]. Similarly to the general case in Sect. 3, we introduce the set of feasible solutions \(P^{2\text {-}chains}_{2n} := \{ (s,e) \in \{0,1\}^{n\cdot (2n)} \times \{0,1\}^{n\cdot (2n)} : (16){-}(23)\ \text {holds} \}\), and the polytope \(Q^{2\text {-}chains}_{2n} := {\text {conv}}(P^{2\text {-}chains}_{2n})\).

For a given point \(P = (s,e) \in P^{2\text {-}chains}_{2n}\), let \(s(P,i)=j\) (\(e(P,i)=j\)) if \(s_{i,j}=1\) (\(e_{i,j}=1\)). For a given \(i\in \{1,\ldots ,n\}\) let \(\sigma _i(P)\) be a 2-dimensional vector such that \(\sigma _i(P) = (s(P,i),e(P,i))\), and \(\sigma (P)\) be a 2n-dimensional vector such that \(\sigma (P) = (\sigma _1(P), \ldots , \sigma _n(P))\). For example, for the point P indicated in Fig. 1 we have \(P=(1,0,0,0,\ 0,1,0,0,\ 0,0,1,0,\ 0,0,0,1)\), \(\sigma _1(P) = (1,3)\), \(\sigma _2(P) = (2,4)\), and \(\sigma (P) = (1,3,2,4)\).

Fig. 1
figure 1

Representation of point \(P =(s,e) \in P^{2\text {-}chains}_4\) with \(s_{1,1} =e_{1,3} =s_{2,2} =e_{2,4} =1\)

5.2 Complexity of problem \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\)

In Theorem 4 we will show that problem \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\) is NP-hard in the strong sense.

Sketch of proof of Theorem 4 We will transform the Independent Set (IS) problem to problem \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\). An instance of IS is given by an undirected graph \(G=(V,E)\) with node set \(V = \{v_1,\ldots ,v_n\}\), and a maximum size subset of nodes \(I \subseteq V\) is sought such that for each edge \(\{u,v\} \in E\), \(|\{u,v\}\cap I| \le 1\). The basic idea of the transformation can be seen in Fig. 2, where we depict the construction for the 2-length path (without the dummy chains). Briefly stated, we will create a chain \(t_i\) for each node \(v_i\) and two chains \(f_{i,j}\) and \(g_{i,j}\) for each edge \(\{v_i,v_j\}\) of the IS instance, and some additional dummy chains. To each of these chains we will designate two potential start and two potential end positions. First, by determining appropriate weights we ensure that in each solution with non-positive total weight, each of these chains either starts and ends at its first start and end position, respectively, or at its second start and end position. In Fig. 2 we depict the two potential states of these chains. Second, by designating these positions properly, it is guaranteed that each solution with a non-positive total weight represents an independent set in the IS instance and vice versa. Namely, a node is in the independent set if and only if the corresponding chain starts and ends its second start and end position, respectively. Note that the role of the edge-chains is to ensure that for adjacent vertices one of the corresponding node-chains must start and end at its first start and end position, respectively, i.e., at most one of these nodes can be in the independent set. For example, in Fig. 3 we depict the solution that represents the independent set \(\{v_2\}\) (without the dummy chains). Note that since chain \(t_2\) starts/ends at its second start/end position, i.e., \(v_2\) is in the independent set, thus chains \(g_{1,2}\), \(f_{1,2}\) and therefore \(t_1\) must start/end at its first start/end position, i.e., \(v_1\) cannot be in the independent set. Similarly, \(t_3\) cannot start/end at its second start/end position, that is, \(v_3\) cannot be in the independent set. In Fig. 4 we depict the solution that represents the independent set \(\{v_1,v_3\}\) (without the dummy chains).

Fig. 2
figure 2

Construction for the 2-length path

Fig. 3
figure 3

Solution representing independent set \(\{v_2\}\)

Fig. 4
figure 4

Solution representing independent set \(\{v_1,v_3\}\)

Theorem 4

Problem \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\) is NP-hard in the strong sense.

Proof

We transform the Independent Set (IS) problem to problem \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\). Let \(G=(V,E)\) be an instance for the independent set problem with node set \(V = \{v_1,\ldots ,v_n\}\), and edge set E, and let \(\overrightarrow{E} = \{ (v_i,v_j) : \{v_i,v_j\} \in E,\ i < j \}\) be the set of directed edges, i.e., we replace undirected edge \(\{v_i,v_j\}\) by directed edge \((v_i,v_j)\) for \(i<j\). For a node \(v_i\) let \(\text {succ}(i) = \{ v_j:\ (v_i,v_j) \in \overrightarrow{E} \}\) (\(\text {pred}(i) = \{ v_j:\ (v_j,v_i) \in \overrightarrow{E} \}\)) denote its immediate successors (predecessors).

Based on the IS instance we will construct an instance for problem \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\) with \(2|V|+3|E|\) chains (that is, we will create 1 chain for each node, 2 chains for each edge, and \(|V|+|E|\) additional dummy chains) and \(4|V|+6|E|\) positions.

For each \(v_i \in V\) we create a node-chain \(t_i\), and for each edge \((v_i,v_j) \in \overrightarrow{E}\) we create edge-chains \(f_{i,j}\) and \(g_{i,j}\). Let \(\mathcal {T}_V = \{t_i:\ v_i \in V \}\) and \(\mathcal {T}_{\overrightarrow{E}} = \{ f_{i,j}, g_{i,j}:\ (v_i,v_j) \in \overrightarrow{E}\}\).

Fig. 5
figure 5

Designated positions for node-chains

Fig. 6
figure 6

Designated positions for edge-chains (part 1)

Fig. 7
figure 7

Designated positions for edge-chains (part 2)

To each node-chain \(t_i \in \mathcal {T}_V\) we designate four distinct positions: \(\alpha (t_i)< \beta (t_i)< \bar{\alpha }(t_i) < \bar{\beta }(t_i)\) such that

  1. (i)

    \( 2i-1 = \alpha (t_i) = \beta (t_i) - 1\), for all \(i\in \{1,\ldots ,n\}\),

  2. (ii)

    \( 2n+1 = \bar{\alpha }(t_1) = \bar{\beta }(t_1)-1 \),

  3. (iii)

    \(\bar{\beta }(t_i) < \bar{\alpha }(t_{i+1}) = \bar{\beta }(t_{i+1}) - 1\), for all \(i\in \{1,\ldots ,n-1\}\),

see Fig. 5. To each edge-chain \(f_{i,j} \in \mathcal {T}_{\overrightarrow{E}} \) we designate four distinct positions: \(\alpha (f_{i,j})< \beta (f_{i,j})< \bar{\alpha }(f_{i,j}) < \bar{\beta }(f_{i,j})\). Consider a node \(v_i \in V\) and its immediate successors \(\text {succ}(i) = \{v_{j_1},\ldots ,v_{j_{|\text {succ}(i)|}}\}\). Let

  1. (iv)

    \(\alpha (f_{i,j_1}) = \bar{\beta }(t_i)\),

  2. (v)

    \(\alpha (f_{i,j_{\ell }}) = \beta (f_{i,j_{\ell }})-1 = \bar{\alpha }(f_{i,j_{\ell }})-2\), for all \(\ell \in \{1,\ldots ,|\text {succ}(i)|\}\),

  3. (vi)

    \(\bar{\alpha }(f_{i,j_{\ell }}) = \alpha (f_{i,j_{\ell +1}})\), for all \(\ell \in \{1,\ldots ,|\text {succ}(i)|-1\}\),

  4. (vii)

    \(\bar{\alpha }(f_{i,j_{|\text {succ}(i)|}}) = \bar{\beta }(f_{i,j_1})-1 = \bar{\beta }(f_{i,j_2})-2 = \cdots = \bar{\beta }(f_{i,j_{|\text {succ}(i)|}})-|\text {succ}(i)|\),

  5. (viii)

    \(\bar{\beta }(f_{i,j_{|\text {succ}(i)|}}) < \bar{\alpha }(t_{i+1})\),

see Fig. 6. Finally, to each edge-chain \(g_{i,j} \in \mathcal {T}_{\overrightarrow{E}} \) we designate four distinct positions: \(\alpha (g_{i,j})< \beta (g_{i,j})< \bar{\alpha }(g_{i,j}) < \bar{\beta }(g_{i,j})\). Consider a node \(v_j \in V\) and its immediate predecessors \(\text {pred}(j) = \{v_{i_1},\ldots ,v_{i_{|\text {pred}(j)|}}\}\). Let

  1. (ix)

    \(\bar{\beta }(g_{i_1,j}) = \bar{\alpha }(t_j)\),

  2. (x)

    \(\beta (g_{i_{\ell },j}) = \bar{\alpha }(g_{i_{\ell },j})-1 = \bar{\beta }(g_{i_{\ell },j})-2\), for all \(\ell \in \{1,\ldots ,|\text {pred}(j)|\}\),

  3. (xi)

    \(\beta (g_{i_{\ell },j}) = \bar{\beta }(g_{i_{\ell +1},j})\), for all \(\ell \in \{1,\ldots ,|\text {pred}(j)|-1\}\),

  4. (xii)

    \(\alpha (g_{i_{\ell },j}) = \bar{\beta }(f_{i_{\ell },j})\), for all \(\ell \in \{1,\ldots ,|\text {pred}(j)|\}\),

  5. (xiii)

    \(\bar{\beta }(t_{j-1}) < \beta (g_{i_1,|\text {pred}(j)|})\),

see Fig. 7.

For each \(v_i \in V\) we have created 1 chain and designated 4 positions, and for each \((v_i,v_j) \in \overrightarrow{E}\) we have created 2 chains and designated 8 positions, however, positions \(\alpha (f_{i,j})\), \(\bar{\beta }(g_{i,j})\) and \(\bar{\beta }(f_{i,j})\) coincide with other positions [see (iv), (vi), (ix), (xi), and (xii)], hence we have \(|V| + 2|E|\) chains, and \(4|V| + 5|E|\) distinct positions. Thus, we also create \(|V|+|E|\) dummy chains and |E| dummy positions, therefore we have \(2|V| + 3|E|\) chains and \(2\times (2|V| + 3|E|)\) positions, that is, we have a valid instance for problem \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\).

Let \(M > n\). For each \(t_i \in \mathcal {T}_V\) let

$$\begin{aligned} w^s(t_i,j) := \left\{ \begin{array}{rl} M &{}\quad \text {if}\ j = \alpha (t_i),\\ 0 &{}\quad \text {if}\ j = \bar{\alpha }(t_i),\\ 2M &{}\quad \text {otherwise},\\ \end{array} \right. \quad \text {and}\quad w^e(t_i,j) := \left\{ \begin{array}{rl} -M &{}\quad \text {if}\ j = \beta (t_i),\\ -1 &{}\quad \text {if}\ j = \bar{\beta }(t_i),\\ 2M &{}\quad \text {otherwise}.\\ \end{array} \right. \end{aligned}$$

For each \(t_{i,j} \in \mathcal {T}_{\overrightarrow{E}}\) (\(t_{i,j}\) is either \(f_{i,j}\) or \(g_{i,j}\)) let

$$\begin{aligned} w^s(t_{i,j},k) := \left\{ \begin{array}{rl} M &{}\quad \text {if}\ k = \alpha (t_{i,j}),\\ 0 &{}\quad \text {if}\ k = \bar{\alpha }(t_{i,j}),\\ 2M &{}\quad \text {otherwise},\\ \end{array} \right. \quad \text {and}\quad w^e(t_{i,j},k) := \left\{ \begin{array}{rl} -M &{}\quad \text {if}\ k = \beta (t_{i,j}),\\ 0 &{}\quad \text {if}\ k = \bar{\beta }(t_{i,j}),\\ 2M &{}\quad \text {otherwise}.\\ \end{array} \right. \end{aligned}$$

Finally, let \( w^s(t,j) := w^e(t,j) := 0 \), for each dummy chain t and for all \(j=1,\ldots ,(4|V| + 6|E|)\).

Remark 1

By construction, in any feasible solution for the constructed problem, for each \(t \in \mathcal {T}_V\) we have

$$\begin{aligned} \sum \limits _j w^s(t,j) + \sum \limits _j w^e(t,j) = \left\{ \begin{array}{rl} 0 &{}\quad \text {if}\ s_{t,\alpha (t)} = e_{t,\beta (t)} = 1,\\ -\,1 &{}\quad \text {if}\ s_{t,\bar{\alpha }(t)} = e_{t,\bar{\beta }(t)} = 1,\\ \ge M &{}\quad \text {otherwise}, \end{array} \right. \end{aligned}$$

and for each \(t \in \mathcal {T}_{\overrightarrow{E}}\) we have

$$\begin{aligned} \sum \limits _j w^s(t,j) + \sum \limits _j w^e(t,j) = \left\{ \begin{array}{ll} 0 &{} \quad \text {if}\ s_{t,\alpha (t)} = e_{t,\beta (t)} = 1\ \text {or}\ s_{t,\bar{\alpha }(t)} = e_{t,\bar{\beta }(t)} = 1,\\ \ge M &{}\quad \text {otherwise}. \end{array} \right. \end{aligned}$$

Remark that \(M>n=|\mathcal {T}_V|\), thus a solution for the created problem has non-positive total weight if and only if each chain \(t \in \mathcal {T}_V \cup \mathcal {T}_{\overrightarrow{E}} \) starts/ends either its first start/end or its second start/end position.

Proposition 2

Let \(I\subseteq V\) an independent set in \(G = (V,E)\). Then the corresponding scheduling problem instance admits a feasible solution of total weight \(-|I|\).

Proof

If \(v_i \notin I\), then let \( s_{t_i,\alpha (t_i)} := e_{t_i,\beta (t_i)} := 1 \), for each \((v_i,v_j) \in \overrightarrow{E}\) let \( s_{f_{ij},\alpha (f_{ij})} := e_{f_{ij},\beta (f_{ij})} := 1 \), and for each \((v_k,v_i) \in \overrightarrow{E}\) let \( s_{g_{ki},\bar{\alpha }(g_{ki})} := e_{g_{ki},\bar{\beta }(g_{ki})} := 1 \) (see Fig. 8).

Fig. 8
figure 8

Assignments for node \(v_i \in V{\setminus } I\)

Otherwise, if \(v_i \in I\), then let \( s_{t_i,\bar{\alpha }(t_i)} := e_{t_i,\bar{\beta }(t_i)} := 1 \), for each \((v_i,v_j) \in \overrightarrow{E}\) let \( s_{f_{ij},\bar{\alpha }(f_{ij})} := e_{f_{ij},\bar{\beta }(f_{ij})} := 1 \), and for each \((v_k,v_i) \in \overrightarrow{E}\) let \( s_{g_{ki},\alpha (g_{ki})} := e_{g_{ki},\beta (g_{ki})} := 1 \) (see Fig. 9). The variables for dummy chains can be arbitrarily fixed.

Fig. 9
figure 9

Assignments for node \(v_i \in I\)

First, we claim that this assignment yields a feasible solution. We need to show, that each position that designated to multiple jobs is assigned to a single job. It is easy to check that it is true for positions \(\alpha (f_{i,j})\) and \(\bar{\beta }(g_{i,j})\). We also know, that \( \bar{\beta }(f_{i,j}) = \alpha (g_{i,j}) \) for all edge \((v_i,v_j) \in \overrightarrow{E}\) [see (xii)], however, we assigned position \(\bar{\beta }(f_{i,j})\) to job \(f_{i,j}\) and position \(\alpha (g_{i,j})\) to job \(g_{i,j}\) if and only if \(v_i \in I\) and \(v_j \in I\), respectively, however it is impossible, since I is independent. Second, it is clear that the weight of the solution is equal to \(-|I|\). \(\square \)

Proposition 3

For an independent set problem in graph \(G = (V, E)\), suppose the corresponding scheduling problem admits a feasible solution of value \(W < 0\). Then there is an independent set I in G with \(|I| = -W\).

Proof

Since W is non-positive, according to Remark 1, for each \(t \in \mathcal {T}_V \cup \mathcal {T}_{\overrightarrow{E}} \) we have either \( s_{t,\alpha (t)} = e_{t,\beta (t)} = 1 \) or \( s_{t,\bar{\alpha }(t)} = e_{t,\bar{\beta }(t)} = 1 \). We claim that the node set \( I = \{v_i \in V:\ s_{t_i,\bar{\alpha }(t_i)} = e_{t_i,\bar{\beta }(t_i)} = 1 \}\) is independent.

Suppose for a contradiction that there is an edge \((v_i,v_j) \in \overrightarrow{E} \) such that \(v_i, v_j \in I\). Let \(succ(i) = \{ v_{j_1}, \ldots , v_{j_{|succ(i)|}} \}\) be the set of the immediate successors of node \(v_i\). Since \(e_{t_i,\bar{\beta }(t_i)} = 1\) and by construction \(\bar{\beta }(t_i) = \alpha (f_{ij_1})\), thus \( s_{f_{ij_1},\alpha (f_{ij_1})} = 0 \) and therefore \( s_{f_{ij_1},\bar{\alpha }(f_{ij_1})} = e_{f_{ij_1},\bar{\beta }(f_{ij_1})} = 1 \). Again, by construction \(\bar{\alpha }(f_{ij_1}) = \alpha (f_{ij_2}) \), thus \( s_{f_{ij_2},\alpha (f_{ij_2})} = 0 \) and therefore \( s_{f_{ij_2},\bar{\alpha }(f_{ij_2})} = e_{f_{ij_2},\bar{\beta }(f_{ij_2})} = 1 \). Similarly, we can show that \( s_{f_{ij_{\ell }},\bar{\alpha }(f_{ij_{\ell }})} = e_{f_{ij_{\ell }},\bar{\beta }(f_{i,j_{\ell }})} = 1 \) holds for all \(\ell = 1,\ldots ,|succ(i)|\), moreover, since \(j = j_{\ell }\) for some \(\ell \in \{1,\ldots ,|succ(i)|\}\) we have \( e_{f_{ij},\bar{\beta }(f_{ij})} = 1 \).

Let \(pred(j) = \{ v_{i_1}, \ldots , v_{i_{|pred(j)|}} \}\) be the set of the immediate predecessors of node \(v_j\). Similarly, we can show that \( s_{g_{i_{\ell } j},\alpha (g_{i_{\ell } j})} = e_{g_{i_{\ell } j},\beta (g_{i_{\ell } j})} = 1 \) holds for all \(\ell = 1,\ldots ,|pred(j)|\), and since \(i = i_{\ell }\) for some \(\ell \in \{1,\ldots ,|pred(j)|\}\) we have \( s_{g_{ij},\alpha (g_{ij})} = 1 \).

To sum up, we have \( e_{f_{ij},\bar{\beta }(f_{ij})} = s_{g_{ij},\alpha (g_{ij})} = 1 \) which yields a contradiction, since by construction \(\bar{\beta }(f_{ij}) = \alpha (g_{ij}) \). \(\square \)

Finally, it is easy to see that our transformation is a pseudo-polynomial transformation, thus the problem is NP-hard in the strong sense. \(\square \)

Corollary 1

Problem \(1\,|chains,p_j=1|\,\sum w_{j,\sigma _j}\) is strongly NP-hard even in the case of chains of length at most 2.

Corollary 2

Problem \(1\,|prec,p_j=1|\,\sum w_{j,\sigma _j}\) is strongly NP-hard.

Corollary 3

Problem \(1\,|or\text {-}prec,p_j=1|\,\sum w_{j,\sigma _j}\) is strongly NP-hard.

5.3 Dimension of \(Q^{2\text {-}chains}_{2n}\)

In this section we investigate the dimension of the polytope \(Q^{2\text {-}chains}_{2n}\).

Theorem 5

$$\begin{aligned} \dim (Q^{2\text {-}chains}_{2n}) = \left\{ \begin{array}{rl} 0 &{} \quad \text {if}\ n = 1,\\ 4 &{}\quad \text {if}\ n = 2,\\ 4n^2-6n+1 &{}\quad \text {if}\ n\ge 3. \end{array} \right. \end{aligned}$$

Sketch of the proof of Theorem 5 (\(n\ge 3\)) In the case of \(n\ge 3\) we will apply the well-known theorem about the dimension of a non-empty polyhedron \(Q = \{x \in {\mathbb {R}}^d : Ax \le b\}\) claiming that \(\dim (Q) + rank(E) = d\) [see e.g., Nemhauser and Wolsey (1988)], where \(Ex = f\) is an equation system for Q, that is, any \(x\in Q\) satisfies \(Ex = f\), and if \(\alpha x = \beta \) is a valid equation for Q, then there exists a vector \(\lambda \) of suitable dimension such that \(\lambda E = \alpha \) and \(\lambda f = \beta \). So, we will provide an equation system for  \(Q^{2\text {-}chains}_{2n}\) (see Theorem 6) with rank \(6n-1\) (see Proposition 6), which gives that the dimension of \(Q^{2\text {-}chains}_{2n} \subseteq {\mathbb {R}}^{4n^2}\) is \(4n^2-(6n-1)\). The detailed proof of Theorem 5 can be found at the end of Sect. 5.3.

Theorem 6

Let \(n\ge 3\). The equation set \(\mathcal {E}{:=} \{(16){-}(22)\} \) is an equation system for \(Q^{2\text {-}chains}_{2n}\).

Proof

Clearly, the equations of \(\mathcal {E}\) hold for every point of \(Q^{2\text {-}chains}_{2n}\), since they are defining equations for this polyhedron. In order to show that \(\mathcal {E}\) is an equation system for \(Q^{2\text {-}chains}_{2n}\), we show that any other equation which holds for all points of \(Q^{2\text {-}chains}_{2n}\) is a linear combination of the equations of \(\mathcal {E}\). Assume that

$$\begin{aligned} \sum \limits _{i=1}^n\sum \limits _{j=1}^{2n}\alpha _{i,j}s_{i,j} + \sum \limits _{i=1}^n\sum \limits _{j=1}^{2n}\beta _{i,j}e_{i,j} = \gamma \end{aligned}$$
(25)

holds for all \((s,e) \in Q^{2\text {-}chains}_{2n}\). To show that Eq. (25) is a linear combination of Eqs. (16)–(22) we explicitly create a linear combination (26), and in Propositions 4 and 5we prove that (25) and (26) are the same. In those proposition we use Lemma 2, however, for its proofs we refer to the “Appendix”.

Lemma 2

Equation (25) satisfies the following properties:

  1. (i)

    \(\alpha _{p,j''} -\alpha _{p,j'} =\beta _{q,j''} -\beta _{q,j'}\quad \forall \ p,q\in \{1,\ldots ,n\},\ 1< j'< j''< 2n\),

  2. (ii)

    \(\alpha _{p,j''} -\alpha _{p,j'} =\alpha _{q,j''} -\alpha _{q,j'}\quad \forall \ p,q\in \{1,\ldots ,n\},\ 1\le j'< j''< 2n\),

  3. (iii)

    \(\beta _{p,j''} -\beta _{p,j'} =\beta _{q,j''} -\beta _{q,j'}\quad \forall \ p,q\in \{1,\ldots ,n\},\ 1< j'< j''\le 2n\).

Note that in case of (i) p may be equal to q.

Consider the linear combination of Eqs. (16)–(22) with coefficients \(\lambda _i^{16}\), \(\lambda _i^{17}\), \(\lambda _i^{18}\), \(\lambda _i^{19}\), \(\lambda ^{20}\), \(\lambda _j^{21}\), \(\lambda ^{22}\) (\(i\in \{1,\ldots ,n\}\), \(j\in \{2,\ldots ,2n-1\}\)), respectively, where

  • \(\lambda ^{16}_i = \alpha _{i,1} -\alpha _{1,1}\) for all \(i\in \{1,\ldots ,n\}\),

  • \(\lambda ^{17}_i = \beta _{i,2n} -\beta _{1,2n} +\beta _{1,2} -\alpha _{1,2}\) for all \(i\in \{1,\ldots ,n\}\),

  • \(\lambda ^{18}_i = \alpha _{i,2n} -\alpha _{i,1} +\alpha _{1,1}\) for all \(i\in \{1,\ldots ,n\}\),

  • \(\lambda ^{19}_i = \beta _{i,1} -\beta _{i,2n} +\beta _{1,2n} -\beta _{1,2} +\alpha _{1,2}\) for all \(i\in \{1,\ldots ,n\}\),

  • \(\lambda ^{20} = \alpha _{1,1}\),

  • \(\lambda ^{21}_j = \alpha _{1,j} \) for all \(j\in \{2,\ldots ,2n-1\}\),

  • \(\lambda ^{22} = \beta _{1,2n} -\beta _{1,2} +\alpha _{1,2} \).

Let

$$\begin{aligned} \sum \limits _{i=1}^n\sum \limits _{j=1}^{2n}{\hat{\alpha }}_{i,j}s_{i,j} + \sum \limits _{i=1}^n\sum \limits _{j=1}^{2n}{\hat{\beta }}_{i,j}e_{i,j} = {\hat{\gamma }} \end{aligned}$$
(26)

be the equation obtained. Note that the left-hand side can be written as

$$\begin{aligned} \begin{aligned}&\sum \limits _{i=1}^n \left( (\lambda _i^{16} +\lambda ^{20}) s_{i,1} +(\lambda _i^{16} +\lambda _i^{18}) s_{i,2n} +(\lambda _i^{17} +\lambda _i^{19}) e_{i,1} +(\lambda _i^{17} +\lambda ^{22}) e_{i,2n} \right) \\&\quad +\sum \limits _{i=1}^n\sum \limits _{j=2}^{2n-1} \left( (\lambda _i^{16} +\lambda _j^{21}) s_{i,j} +(\lambda _i^{17} + \lambda _j^{21}) e_{i,j} \right) . \end{aligned} \end{aligned}$$

Proposition 4

Equation (26) satisfies the following:

  1. (I)

    \({\hat{\alpha }}_{i,j} = \alpha _{i,j}\) for all \(i\in \{1,\ldots ,n\}\) and \(j\in \{1,\ldots ,2n\}\).

Proof

Let \(i\in \{1,\ldots ,n\}\) be fixed. For \(j=1\) we have

$$\begin{aligned} {\hat{\alpha }}_{i,1} = \lambda ^{16}_i +\lambda ^{20} = (\alpha _{i,1} -\alpha _{1,1}) +\alpha _{1,1} = \alpha _{i,1}, \end{aligned}$$

and for \(j=2n\) we have

$$\begin{aligned} {\hat{\alpha }}_{i,2n} = \lambda ^{16}_i +\lambda ^{18}_i = (\alpha _{i,1} -\alpha _{1,1}) +(\alpha _{i,2n} -\alpha _{i,1} +\alpha _{1,1}) = \alpha _{i,2n}. \end{aligned}$$

For a given \(j\in \{2,\ldots ,2n-1\}\) we have

$$\begin{aligned} {\hat{\alpha }}_{i,j} = \lambda ^{16}_i +\lambda ^{21}_j = (\alpha _{i,1} -\alpha _{1,1}) +\alpha _{1,j} {\mathop {=}\limits ^{(ii)}} \alpha _{i,j}, \end{aligned}$$

where for the last equation we use statement (ii) of Lemma 2 with \(p=1\), \(q=i\), \(j'=1\) and \(j''=j\). \(\square \)

Proposition 5

For linear combination (26) the following statement holds:

  1. (II)

    \({\hat{\beta }}_{i,j} = \beta _{i,j}\) for all \(i\in \{1,\ldots ,n\}\) and \(j\in \{1,\ldots ,2n\}\).

Proof

Let \(i\in \{1,\ldots ,n\}\) be fixed. For \(j=1\) we have

$$\begin{aligned} {\hat{\beta }}_{i,1}= & {} \lambda ^{17}_i +\lambda ^{19}_i = (\beta _{i,2n} -\beta _{1,2n} +\beta _{1,2} -\alpha _{1,2}) \\&\,+(\beta _{i,1} -\beta _{i,2n} +\beta _{1,2n} -\beta _{1,2} +\alpha _{1,2}) = \beta _{i,1}, \end{aligned}$$

and for \(j=2n\) we have

$$\begin{aligned} {\hat{\beta }}_{1,2n} = \lambda ^{17}_i +\lambda ^{22} = (\beta _{i,2n} -\beta _{1,2n} +\beta _{1,2} -\alpha _{1,2}) +(\beta _{1,2n} -\beta _{1,2} +\alpha _{1,2}) = \beta _{i,2n}. \end{aligned}$$

For a given \(j\in \{2,\ldots ,2n-1\}\) we have

$$\begin{aligned} \begin{aligned} {\hat{\beta }}_{i,j} = \lambda ^{17}_i +\lambda ^{21}_j = (\beta _{i,2n} -\beta _{1,2n} +\beta _{1,2} -\alpha _{1,2}) +\alpha _{1,j} {\mathop {=}\limits ^{(iii)}} \beta _{i,2} -\alpha _{1,2} +\alpha _{1,j} {\mathop {=}\limits ^{(i)}} \beta _{i,j}. \end{aligned} \end{aligned}$$

since \(\beta _{i,2n} -\beta _{1,2n} +\beta _{1,2} =\beta _{i,2}\) according to statement (iii) of Lemma 2, and \(\beta _{i,2} -\alpha _{1,2} +\alpha _{1,j} =\beta _{i,j} \) due to statement i) of Lemma 2. \(\square \)

Corollary 4

Equation (26) is equivalent to (25).

Proof

According to Propositions 4 and 5, the left-hand-sides of (26) and (25) are the same. Since both of them are satisfied by all the points in \(Q^{2\text {-}chains}_{2n}\), the right-hand-sides also coincide. \(\square \)

Proposition 6

Let \(n\ge 3\). The rank of the equation system \(\mathcal {E}= \{(16){-}(22)\}\) is \(6n-1\).

Proof

Consider a linear combination of Eqs. (16)–(22) with coefficients \(\lambda _i^{16}\), \(\lambda _i^{17}\), \(\lambda _i^{18}\), \(\lambda _i^{19}\), \(\lambda ^{20}\), \(\lambda _j^{21}\), \(\lambda ^{22}\) (\(i\in \{1,\ldots ,n\}\), \(j\in \{2,\ldots ,2n-1\}\)), respectively. This linear combination can be written as

$$\begin{aligned} \begin{aligned}&\sum \limits _{i=1}^n \left( (\lambda _i^{16} +\lambda ^{20}) s_{i,1} +(\lambda _i^{16} +\lambda _i^{18}) s_{i,2n} +(\lambda _i^{17} +\lambda _i^{19}) e_{i,1} +(\lambda _i^{17} +\lambda ^{22}) e_{i,2n} \right) \\&\qquad +\sum \limits _{i=1}^n\sum \limits _{j=2}^{2n-1} \left( (\lambda _i^{16} +\lambda _j^{21}) s_{i,j} +(\lambda _i^{17} + \lambda _j^{21}) e_{i,j} \right) \\&\quad = \lambda ^{20} +\lambda ^{22} +\sum \limits _{i=1}^n \left( \lambda _i^{16} +\lambda _i^{17} \right) +\sum \limits _{j=1}^{2n} \lambda _j^{21}. \end{aligned} \end{aligned}$$

The expression above reduces to the zero-equation (\(0\cdot s + 0\cdot e = 0\)) if and only if \( \lambda _i^{18} = -\lambda _i^{16} = \lambda ^{20} \), \( \lambda _i^{16} = -\lambda _j^{21} = \lambda _i^{17} \) and \(\lambda _i^{19} = -\lambda _i^{17} = \lambda ^{22} \) hold for all \(i\in \{1,\ldots ,n\}\), \(j\in \{2,\ldots ,2n-1\}\) and the right-hand side is zero. On the one hand, it is clear that we can easily choose non-zero coefficients that yield the zero-equation, thus the equations are linearly dependent. On the other hand, if we omit a single equation from (16)–(22), that is, we fix a single coefficient from \(\lambda _i^{16},\ldots ,\lambda ^{22}\) to zero, then all the remaining coefficients will be zero, that is, that remaining equations are linearly independent. Hence, the equation system {(16)–(22)} containing 6n equations has rank \(6n-1\). \(\square \)

Proof (Theorem 5)

In case of \(n=1\), \(P^{2\text {-}chains}_2\) consists of a single point P with \(\sigma (P) = (1,2)\), thus \(\dim (Q^{2\text {-}chains}_2) = 0\).

In case of \(n=2\) in order to prove that \(\dim (Q^{2\text {-}chains}_4) = 4\) we show that the maximum number of affinely independent points in \(P^{2\text {-}chains}_4\) is 5. We have \( P^{2\text {-}chains}_4 = \{P_1,\ldots ,P_6\} \), where \(\sigma (P_1) = (1,2,3,4)\), \(\sigma (P_2) = (1,3,2,4)\), \(\sigma (P_3) = (1,4,2,3)\), \(\sigma (P_4) = (2,3,1,4)\), \(\sigma (P_5) = (2,4,1,3)\), \(\sigma (P_6) = (3,4,1,2)\), see Fig. 10. The linear combination of these points with coefficients \(\lambda _1,\ldots ,\lambda _6\), respectively, is

$$\begin{aligned} \begin{aligned}&(\lambda _1 + \lambda _2 + \lambda _3)s_{1,1} + (\lambda _4 + \lambda _5)s_{1,2} + \lambda _6s_{1,3} + (\lambda _4 + \lambda _5 + \lambda _6)s_{2,1} + (\lambda _2 + \lambda _3)s_{2,2} \\&\quad +\,\lambda _1s_{2,3} +\lambda _1e_{1,2} +(\lambda _2 + \lambda _4)e_{1,3} + (\lambda _3+\lambda _5+\lambda _6)e_{1,4} + \lambda _6e_{2,2} \\&\quad +\,(\lambda _3 + \lambda _5)e_{2,3} + (\lambda _1+\lambda _2+\lambda _4)e_{2,4}. \end{aligned} \end{aligned}$$

Clearly, we get the zero-vector if and only if \(\lambda _1 = 0\), \(\lambda _6=0\) and \(\lambda _2 = -\lambda _3 = \lambda _5 = -\lambda _4\). On the one hand, we can easily choose non-zero \(\lambda _2,\ldots ,\lambda _5\) coefficients to get the zero-vector such that \(\lambda _1+\cdots +\lambda _6=0\) also holds, thus points \( P_1,\ldots ,P_6 \) are affinely dependent. On the other hand, if we omit for example \(P_2\), i.e., we fix \(\lambda _2 = 0\), we could get the zero-vector if and only if \(\lambda _1 = \cdots = \lambda _6 = 0\), that is, points \(P_1,P_3,P_4,P_5,P_6\) are linearly and hence affinely independent. Therefore \(\dim (Q^{2\text {-}chains}_2) = 4\).

Fig. 10
figure 10

The six points of \(P^{2\text {-}chains}_4\)

Finally, assume that \(n\ge 3\). According to Theorem 6, the equation set \(\mathcal {E}= \{(16){-}(22)\}\) is an equation system for \(Q^{2\text {-}chains}_{2n}\), and according to Proposition 6, the rank of this system is \(6n-1\). Since we have \(4n^2\) variables, thus the dimension of \(Q^{2\text {-}chains}_{2n}\) is \(4n^2-(6n-1)\). \(\square \)

5.4 Parity inequalities

In the case of general chain-precedence constraints we showed that the parity inequalities (14) and (15) are valid for \(Q^{chain}_n\) (see Sect. 4), thus they are also valid in the case of 2-chains. Using the replacement of the variables (remark that \(s_{i,j} = x_{2i-1,j}\) and \(e_{i,j} = x_{2i,j}\)) the following parity inequalities are valid for \(Q^{2\text {-}chains}_{2n}\):

$$\begin{aligned}&\sum \limits _{i \in S}\sum \limits _{j=1}^{2k} \left( s_{i,j} - e_{i,j}\right) - \sum \limits _{i \notin S}\sum \limits _{j=1}^{2k} \left( s_{i,j} - e_{i,j}\right) \le |S|-1,\nonumber \\&\quad \text {for all odd-subset}\ S\subseteq [n],\ \text {and}\ k < n, \end{aligned}$$
(27)

and

$$\begin{aligned}&\sum \limits _{i \in S}\sum \limits _{j=1}^{2k-1} \left( s_{i,j} - e_{i,j}\right) - \sum \limits _{i \notin S}\sum \limits _{j=1}^{2k-1} \left( s_{i,j} - e_{i,j}\right) \le |S|-1,\nonumber \\&\quad \text {for all even-subset}\ S\subseteq [n],\ \text {and}\ k \le n. \end{aligned}$$
(28)

In this section we show that some of the inequalities (27) are facet-defining for \(Q^{2\text {-}chains}_{2n}\). Similarly, one can show that a subset of inequalities (28) are also facet-inducing.

Let \( 3 \le t < n \) be a fixed odd number; \( 1 \le k < n \) such that \( t < 2k \) and \( t < 2(n-k) \) hold; and \(S \subseteq [n]\) with cardinality \(|S|=t\). To simplify our notation, without loss of generality, we assume that \( S = \{1,\ldots ,t\} \). The corresponding parity inequality is:

$$\begin{aligned} \sum _{i=1}^t \sum _{j=1}^{2k} (s_{i,j} - e_{i,j}) \le t-1 + \sum _{i=t+1}^n \sum _{j=1}^{2k} (s_{i,j} - e_{i,j}). \end{aligned}$$
(29)

Theorem 7

Let \( 3 \le t < n \) be a fixed odd number; \( 1 \le k < n \) such that \( t < 2k \) and \( t < 2(n-k) \) hold; and \(S = \{1,\ldots ,t\}\). Inequalities (29) are facet-defining for \(Q^{chain}_n\).

Remark 2

Consider a point from \(P^{2\text {-}chains}_{2n}\). We say that a chain \(C_i=(J_{2i-1},J_{2i})\) is active in interval \([2k,2k+1]\) if \(\sum _{j=1}^{2k} (s_{i,j} - e_{i,j}) = 1\) holds (that is, its first job \(J_{2i-1}\) is assigned before position \(2k+1\), and its second job \(J_{2i}\) is assigned after position 2k). A point from \(P^{2\text {-}chains}_{2n}\) satisfies (29) with equality if and only if

  • exactly \(t-1\) chains from \(\{1,\ldots ,t\}\) and no chain from \(\{t+1,\ldots ,n\}\) are active in interval \([2k,2k+1]\); or

  • exactly t chains from \(\{1,\ldots ,t\}\) and exactly 1 chain from \(\{t+1,\ldots ,n\}\) are active in interval \([2k,2k+1]\).

Sketch of the proof of Theorem 7 Let us define the set of points

$$\begin{aligned} P^{parity}_{2n} := \{ (s,e) \in P^{2\text {-}chains}_{2n}\ : (s,e)\ \text {satisfies}\, (29) \text { with equality} \}, \end{aligned}$$

and the polyhedron of their convex hull \( Q^{parity}_{2n} := {\text {conv}}(P^{parity}_{2n}) \). Note that \(Q^{parity}_{2n}\) is a proper face of \(Q^{2\text {-}chains}_{2n}\). To prove that inequalities (29) are facet-defining for \(Q^{2\text {-}chains}_{2n}\), we will show that \(Q^{parity}_{2n}\) is a facet of \(Q^{2\text {-}chains}_{2n}\), i.e., \(\dim (Q^{parity}_{2n}) = \dim (Q^{2\text {-}chains}_{2n})-1\). To do this, we apply a similar procedure as in Sect. 5.3, that is, we will prove that the set \(\mathcal {E}':= \mathcal {E}\cup \{ (30) \} = \{(16){-}(22), (30)\} \) of equations contains a minimal equation system for \(Q^{parity}_{2n}\) with rank \(\dim (Q^{2\text {-}chains}_{2n})-1\), where we have

$$\begin{aligned} \sum \limits _{i=1}^t \sum \limits _{j=1}^{2k} (s_{i,j} - e_{i,j}) + \sum \limits _{i=t+1}^n \sum \limits _{j=1}^{2k} (e_{i,j} - s_{i,j}) = t-1. \end{aligned}$$
(30)

The detailed proof can be found in the end of Sect. 5.4.

Theorem 8

The equation set \(\mathcal {E}'= \{(16){-}(22), (30)\}\) is an equation system for \(Q^{parity}_{2n}\).

Proof

Clearly, the equations of \(\mathcal {E}'\) hold for every point of \(Q^{parity}_{2n}\) since they are defining equations for \(P^{parity}_{2n}\). Assume that

$$\begin{aligned} \sum \limits _{i=1}^n\sum \limits _{j=1}^{2n}\alpha _{i,j}s_{i,j} + \sum \limits _{i=1}^n\sum \limits _{j=1}^{2n}\beta _{i,j}e_{i,j} = \gamma \end{aligned}$$
(31)

holds for all \((s,e) \in Q^{parity}_{2n}\). In order to show that Eq. (31) is a linear combination of Eqs. (16)–(22) and (30) we explicitly create a linear combination (32), and in Propositions 710 we prove that (31) and (32) are the same. In those proposition we use Lemmas 3 and 4, however for their proofs we refer to the “Appendix”.

Lemma 3

For Eq. (31) the following statements hold:

  1. (i)

    \(\alpha _{p,j''} -\alpha _{p,j'} =\alpha _{q,j''} -\alpha _{q,j'}\quad \forall \ p,q\in \{1,\ldots ,t\},\ 1\le j'< j''\le 2k\),

  2. (ii)

    \(\alpha _{p,j''} -\alpha _{p,j'} =\alpha _{q,j''} -\alpha _{q,j'}\quad \forall \ p,q\in \{1,\ldots ,t\},\ 1\le j'\le 2k< j''\le 2n-1\),

  3. (iii)

    \(\beta _{p,j''} -\beta _{p,j'} =\beta _{q,j''} -\beta _{q,j'}\quad \forall \ p,q\in \{1,\ldots ,t\},\ 2k< j'< j''\le 2n\),

  4. (iv)

    \(\beta _{p,j''} -\beta _{p,j'} =\beta _{q,j''} -\beta _{q,j'}\quad \forall \ p,q\in \{1,\ldots ,t\},\ 2\le j'\le 2k< j'' \le 2n\),

  5. (v)

    \(\alpha _{p,j''} -\alpha _{p,j'} =\beta _{q,j''} -\beta _{q,j'}\quad \forall \ p,q\in \{1,\ldots ,t\},\ 1< j'< j''\le 2k\),

  6. (vi)

    \(\alpha _{p,j''} -\alpha _{p,j'} =\beta _{q,j''} -\beta _{q,j'}\quad \forall \ p,q\in \{1,\ldots ,t\},\ 2k< j'< j''< 2n\).

Note that in case of (v) and (vi) p may be equal to q.

Lemma 4

For Eq. (31) the following statements hold:

  1. (vii)

    \(\alpha _{p,j''} -\alpha _{p,j'} =\alpha _{{\bar{q}},j''} -\alpha _{{\bar{q}},j'}\quad \forall \ p\in \{1,\ldots ,t\},\ {\bar{q}}\in \{t+1,\ldots ,n\},\ 1 \le j' < j'' \le 2k\),

  2. (viii)

    \(\beta _{p,j''} -\beta _{p,j'} =\beta _{{\bar{q}},j''} -\beta _{{\bar{q}},j'}\quad \forall \ p\in \{1,\ldots ,t\},\ {\bar{q}}\in \{t+1,\ldots ,n\},\ 2k< j' < j'' \le 2n\),

  3. (ix)

    \(\alpha _{p,j''} -\alpha _{p,j'} =\beta _{{\bar{q}},j''} -\beta _{{\bar{q}},j'}\quad \forall \ p\in \{1,\ldots ,t\},\ {\bar{q}}\in \{t+1,\ldots ,n\},\ 1< j' < j'' \le 2k \),

  4. (x)

    \(\alpha _{p,j''} -\alpha _{p,j'} =\beta _{{\bar{q}},j''} -\beta _{{\bar{q}},j'}\quad \forall \ p\in \{1,\ldots ,t\},\ {\bar{q}}\in \{t+1,\ldots ,n\},\ 1< j' \le 2k< j'' < 2n \),

  5. (xi)

    \(\beta _{p,j''} -\beta _{p,j'} =\alpha _{{\bar{q}},j''} -\alpha _{{\bar{q}},j'}\quad \forall \ p\in \{1,\ldots ,t\},\ {\bar{q}}\in \{t+1,\ldots ,n\},\ 1< j' \le 2k< j'' < 2n \),

  6. (xii)

    \(\beta _{p,j''} -\beta _{p,j'} =\alpha _{{\bar{q}},j''} -\alpha _{{\bar{q}},j'}\quad \forall \ p\in \{1,\ldots ,t\},\ {\bar{q}}\in \{t+1,\ldots ,n\},\ 2k< j'< j'' < 2n \).

Consider the linear combination of Eqs. (16)–(22) and (30) with coefficients \(\lambda _i^{16}\), \(\lambda _i^{17}\), \(\lambda _i^{18}\), \(\lambda _i^{19}\), \(\lambda ^{20}\), \(\lambda _j^{21}\), \(\lambda ^{22}\) and \(\lambda ^{30}\), (\(i\in \{1,\ldots ,n\}\), \(j\in \{2,\ldots ,2n-1\}\)) respectively, where

  • \(\lambda ^{30} = \lambda \), where \( \lambda :=(\alpha _{1,2} -\alpha _{1,2k+1} -\beta _{1,2} +\beta _{1,2k+1})/2 \),

  • \(\lambda ^{16}_i = \left\{ \begin{array}{ll} \alpha _{i,1} -\alpha _{1,1} &{}\quad \text {if}\ i\in \{1,\ldots ,t\},\\ \alpha _{i,1} -\alpha _{1,1} +2\lambda &{}\quad \text {if}\ i\in \{t+1,\ldots ,n\},\\ \end{array} \right. \)

  • \(\lambda ^{17}_i = \mu _i\), where \(\mu _i := \left\{ \begin{array}{ll} \beta _{1,2} - \alpha _{1,2} +2\lambda &{}\quad \text {if}\ i=1,\\ \beta _{i,2n} -\beta _{1,2n} +\mu _1 &{} \quad \text {if}\ i\in \{2,\ldots ,n\}, \end{array} \right. \)

  • \(\lambda ^{18}_i = \left\{ \begin{array}{ll} \alpha _{1,2n} &{} \quad \text {if}\ i=1,\\ \alpha _{i,2n} -\alpha _{i,1} +\alpha _{1,1} &{}\quad \text {if}\ i\in \{2,\ldots ,t\},\\ \alpha _{i,2n} -\alpha _{i,1} +\alpha _{1,1} -2\lambda &{}\quad \text {if}\ i\in \{t+1,\ldots ,n\}, \end{array} \right. \)

  • \(\lambda ^{19}_i = \left\{ \begin{array}{ll} \beta _{i,1} +\lambda -\mu _i &{}\quad \text {if}\ i\in \{1,\ldots ,t\},\\ \beta _{i,1} -\lambda -\mu _i &{}\quad \text {if}\ i\in \{t+1,\ldots ,n\}, \end{array} \right. \)

  • \(\lambda ^{20} = \alpha _{1,1}-\lambda \),

  • \(\lambda ^{21}_j = \left\{ \begin{array}{ll} \alpha _{1,j} -\lambda &{}\quad \text {if}\ j\in \{2,\ldots ,2k\},\\ \alpha _{1,j} &{}\quad \text {if}\ j\in \{2k+1,\ldots ,2n-1\}, \end{array} \right. \)

  • \(\lambda ^{22} = \beta _{1,2n} -\mu _1 \).

Let

$$\begin{aligned} \sum \limits _{i=1}^n\sum \limits _{j=1}^{2n}{\hat{\alpha }}_{i,j}s_{i,j} + \sum \limits _{i=1}^n\sum \limits _{j=1}^{2n}{\hat{\beta }}_{i,j}e_{i,j} = {\hat{\gamma }} \end{aligned}$$
(32)

be the resulting equation. Note that the left-hand side can be written as

$$\begin{aligned}&\sum \limits _{i=1}^t \left( (\lambda _i^{16} +\lambda ^{20} +\lambda ^{30}) s_{i,1} +(\lambda _i^{17} +\lambda _i^{19} -\lambda ^{30}) e_{i,1} \right) \nonumber \\&\quad +\sum \limits _{i=t+1}^n \left( (\lambda _i^{16} +\lambda ^{20} -\lambda ^{30}) s_{i,1} +(\lambda _i^{17} +\lambda _i^{19} +\lambda ^{30}) e_{i,1} \right) \nonumber \\&\quad +\sum \limits _{i=1}^n \left( (\lambda _i^{16} +\lambda _i^{18}) s_{i,2n} +(\lambda _i^{17} +\lambda ^{22}) e_{i,2n} \right) \nonumber \\&\quad +\sum \limits _{i=1}^t\sum \limits _{j=2}^{2k} \left( (\lambda _i^{16} +\lambda _j^{21} +\lambda ^{30}) s_{i,j} +(\lambda _i^{17} + \lambda _j^{21} -\lambda ^{30}) e_{i,j} \right) \nonumber \\&\quad +\sum \limits _{i=t+1}^n\sum \limits _{j=2}^{2k} \left( (\lambda _i^{16} +\lambda _j^{21} -\lambda ^{30}) s_{i,j} +(\lambda _i^{17} + \lambda _j^{21} +\lambda ^{30}) e_{i,j} \right) \nonumber \\&\quad +\sum \limits _{i=1}^n\sum \limits _{j=2k+1}^{2n-1} \left( (\lambda _i^{16} +\lambda _j^{21}) s_{i,j} +(\lambda _i^{17} + \lambda _j^{21}) e_{i,j} \right) . \end{aligned}$$

Proposition 7

For linear combination (32) the following statement holds:

  1. (I)

    \({\hat{\alpha }}_{i,j} = \alpha _{i,j}\) for all \(i\in \{1,\ldots ,t\}\) and \(j\in \{1,\ldots ,2n\}\).

Proof

By construction, the statement clearly holds for \(i=1\). Let \(i\in \{2,\ldots ,t\}\) be fixed. For \(j=1\) we have

$$\begin{aligned} {\hat{\alpha }}_{i,1} = \lambda ^{16}_i +\lambda ^{20} +\lambda ^{30} = (\alpha _{i,1} -\alpha _{1,1}) +(\alpha _{1,1} -\lambda ) +\lambda = \alpha _{i,1}, \end{aligned}$$

and for \(j=2n\) we have

$$\begin{aligned} {\hat{\alpha }}_{i,2n} = \lambda ^{16}_i +\lambda ^{18}_i = (\alpha _{i,1} -\alpha _{1,1}) +(\alpha _{i,2n} +\alpha _{1,1} -\alpha _{i,1}) = \alpha _{i,2n}. \end{aligned}$$

For a given \(j\in \{2,\ldots ,2k\}\) we have

$$\begin{aligned} {\hat{\alpha }}_{i,j} = \lambda ^{16}_i +\lambda ^{21}_j +\lambda ^{30} = (\alpha _{i,1} -\alpha _{1,1}) +(\alpha _{1,j} -\lambda ) +\lambda = \alpha _{1,j} -\alpha _{1,1} +\alpha _{i,1} {\mathop {=}\limits ^{(i)}} \alpha _{i,j}, \end{aligned}$$

where for the last equation we use statement (i) of Lemma 3 with \(p=1\), \(q=i\), \(j'=1\), and \(j''=j\). Finally, for a given \(j\in \{2k+1,\ldots ,2n-1\}\) we have

$$\begin{aligned} {\hat{\alpha }}_{i,j} = \lambda ^{16}_i +\lambda ^{21}_j = \alpha _{1,j} -\alpha _{1,1} +\alpha _{i,1} {\mathop {=}\limits ^{(ii)}} \alpha _{i,j}, \end{aligned}$$

where for the last equation we use statement (ii) of Lemma 3 with \(p=1\), \(q=i\), \(j'=1\) and \(j''=j\). \(\square \)

Proposition 8

For linear combination (32) the following statement holds:

  1. (II)

    \({\hat{\beta }}_{i,j} = \beta _{i,j}\) for all \(i\in \{1,\ldots ,t\}\) and \(j\in \{1,\ldots ,2n\}\).

Proof

First, assume that \(i=1\). For \(j=1\) we have

$$\begin{aligned} {\hat{\beta }}_{1,1} = \lambda ^{17}_1 +\lambda ^{19}_1 -\lambda ^{30} = \mu _1 +(\beta _{1,1} +\lambda -\mu _1) -\lambda = \beta _{1,1}, \end{aligned}$$

and for \(j=2n\) we have

$$\begin{aligned} {\hat{\beta }}_{1,2n} = \lambda ^{17}_1 +\lambda ^{22} = \mu _1 +(\beta _{1,2n} -\mu _1) = \beta _{1,2n}. \end{aligned}$$

For a given \(j\in \{2,\ldots ,2k\}\) we have

$$\begin{aligned} {\hat{\beta }}_{1,j}= & {} \lambda ^{17}_1 +\lambda ^{21}_j -\lambda ^{30} = (\beta _{1,2} -\alpha _{1,2} +2\lambda ) +(\alpha _{1,j} -\lambda ) -\lambda \\= & {} \beta _{1,2} +\alpha _{1,j} -\alpha _{1,2} {\mathop {=}\limits ^{(v)}} \beta _{1,j}, \end{aligned}$$

where the last equation clearly holds for \(j=2\), and for \(2<j\) we can use statement (v) of Lemma 3 with \(p=q=1\), \(j'=2\) and \(j''=j\). For a given \(j\in \{2k+1,\ldots ,2n-1\}\) we have

$$\begin{aligned} {\hat{\beta }}_{1,j} = \lambda ^{17}_1 +\lambda ^{21}_j = \beta _{1,2} +\alpha _{1,j} -\alpha _{1,2} +2\lambda = \alpha _{1,j} -\alpha _{1,2k+1} +\beta _{1,2k+1} {\mathop {=}\limits ^{(vi)}} \beta _{i,j}, \end{aligned}$$

according to statement (vi) of Lemma 3 with \(p=q=1\), \(j'=2k+1\) and \(j''=j\). Now, let \(i\in \{2,\ldots ,t\}\). For \(j=1\) we have

$$\begin{aligned} {\hat{\beta }}_{i,1} =\lambda ^{17}_i +\lambda ^{19}_i - \lambda ^{30} =\mu _i +(\beta _{i,1} +\lambda -\mu _i) -\lambda =\beta _{i,1}, \end{aligned}$$

and for \(j=2n\) we have

$$\begin{aligned} {\hat{\beta }}_{1,2n} =\lambda ^{17}_i +\lambda ^{22} = (\beta _{i,2n} -\beta _{1,2n} +\mu _1) +(\beta _{1,2n} -\mu _1) =\beta _{i,2n}. \end{aligned}$$

For a given \(j\in \{2,\ldots ,2k\}\) we have

$$\begin{aligned} \begin{aligned} {\hat{\beta }}_{i,j}&=\lambda ^{17}_i +\lambda ^{21}_j -\lambda ^{30} =(\beta _{i,2n} -\beta _{1,2n} +\beta _{1,2} -\alpha _{1,2} +2\lambda ) +(\alpha _{1,j} -\lambda ) -\lambda \\&=\beta _{i,2n} -\beta _{1,2n} +\beta _{1,2} -\alpha _{1,2} +\alpha _{1,j} {\mathop {=}\limits ^{(v)}} \beta _{i,2n} -\beta _{1,2n} +\beta _{1,j} {\mathop {=}\limits ^{(iv)}} \beta _{i,j}, \end{aligned} \end{aligned}$$

since \(\beta _{1,2} -\alpha _{1,2} +\alpha _{1,j} =\beta _{1,j}\) according to statement (v) of Lemma 3 with \(p=q=1\), \(j'=2\) and \(j''=j\), and \(\beta _{i,2n} -\beta _{1,2n} +\beta _{1,j} =\beta _{i,j}\) due to statement (iv) of Lemma 3 with \(p=1\), \(q=i\), \(j'=j\) and \(j''=2n\). Finally, for a given \(j\in \{2k+1,\ldots ,2n-1\}\) we have

$$\begin{aligned} {\hat{\beta }}_{i,j}= & {} \lambda ^{17}_i + \lambda ^{21}_j = \beta _{i,2n} -\beta _{1,2n} +\alpha _{1,j} -\alpha _{1,2k+1} \\&+\,\beta _{1,2k+1} {\mathop {=}\limits ^{vi)}} \beta _{i,2n} -\beta _{1,2n} +\beta _{1,j} {\mathop {=}\limits ^{iv)}} \beta _{i,j}, \end{aligned}$$

since \(\alpha _{1,j} -\alpha _{1,2k+1} +\beta _{1,2k+1} =\beta _{1,j}\) according to statement (vi) of Lemma 3 with \(p=q=1\), \(j'=2k+1\) and \(j''=j\), and \(\beta _{i,2n} -\beta _{1,2n} +\beta _{1,j} =\beta _{i,j}\) due to statement (iv) of Lemma 3 with \(p=1\), \(q=i\), \(j'=j\) and \(j''=2n\). \(\square \)

Proposition 9

For linear combination (32) the following statement holds:

  1. (III)

    \({\hat{\alpha }}_{i,j} = \alpha _{i,j}\) for all \(i\in \{t+1,\ldots ,n\}\) and \(j\in \{1,\ldots ,2n\}\).

Proof

Let \(i\in \{t+1,\ldots ,n\}\) be fixed. For \(j=1\) we have

$$\begin{aligned} {\hat{\alpha }}_{i,1} = \lambda ^{16}_i +\lambda ^{20} -\lambda ^{30} = (\alpha _{i,1} -\alpha _{1,1} +2\lambda ) +(\alpha _{1,1} -\lambda ) -\lambda = \alpha _{i,1}, \end{aligned}$$

and for \(j=2n\) we have

$$\begin{aligned} {\hat{\alpha }}_{i,2n} = \lambda ^{16}_i +\lambda ^{18}_i = (\alpha _{i,1} -\alpha _{1,1} +2\lambda ) +(\alpha _{i,2n} -\alpha _{i,1} +\alpha _{1,1} -2\lambda ) = \alpha _{i,2n}. \end{aligned}$$

For a given \(j\in \{2,\ldots ,2k\}\) we have

$$\begin{aligned} {\hat{\alpha }}_{i,j}= & {} \lambda ^{16}_i +\lambda ^{21}_j -\lambda ^{30} = (\alpha _{i,1} -\alpha _{1,1} +2\lambda ) +(\alpha _{1,j} -\lambda ) -\lambda \\= & {} \alpha _{1,j} -\alpha _{1,1} +\alpha _{i,1} {\mathop {=}\limits ^{(vii)}} \alpha _{i,j}, \end{aligned}$$

where for the last equation we use statement (vii) of Lemma 4 with \(p=1\), \({\bar{q}}=i\), \(j'=1\) and \(j''=j\). Finally, for a given \(j\in \{2k+1,\ldots ,2n-1\}\) we have

$$\begin{aligned} \begin{aligned} {\hat{\alpha }}_{i,j}&= \lambda ^{16}_i +\lambda ^{21}_j = (\alpha _{i,1} -\alpha _{1,1} +\alpha _{1,2} -\beta _{1,2} +\beta _{1,2k+1} -\alpha _{1,2k+1}) +\alpha _{1,j}\\&{\mathop {=}\limits ^{(vi)}} \alpha _{i,1} -\alpha _{1,1} +\alpha _{1,2} -\beta _{1,2} +\beta _{1,j} {\mathop {=}\limits ^{(vii)}} \alpha _{i,2} -\beta _{1,2} +\beta _{1,j} {\mathop {=}\limits ^{(xi)}} \alpha _{i,j}, \end{aligned} \end{aligned}$$

since \(\beta _{1,2k+1} -\alpha _{1,2k+1} +\alpha _{1,j} =\beta _{1,j}\) according to statement (vi) of Lemma 3 with \(p=q=1\), \(j'=2k+1\) and \(j''=j\), and \(\alpha _{i,1} -\alpha _{1,1} +\alpha _{1,2} =\alpha _{i,2} \) according to statement (vii) of Lemma 4 with \(p=1\), \({\bar{q}}=i\), \(j'=1\) and \(j''=2\), and \(\alpha _{i,2} -\beta _{1,2} +\beta _{1,j} = \alpha _{i,j}\) due to statement (xi) of Lemma 4 with \(p=1\), \({\bar{q}}=i\), \(j'=2\) and \(j''=j\). \(\square \)

Proposition 10

For linear combination (32) the following statement holds:

  1. (IV)

    \({\hat{\beta }}_{i,j} = \beta _{i,j}\) for all \(i\in \{t+1,\ldots ,n\}\) and \(j\in \{1,\ldots ,2n\}\).

Proof

Let \(i\in \{t+1,\ldots ,n\}\) be fixed. For \(j=1\) we have

$$\begin{aligned} {\hat{\beta }}_{i,1} =\lambda ^{17}_i +\lambda ^{19}_i +\lambda ^{30} = \mu _i +(\beta _{i,1} -\lambda -\mu _i) +\lambda = \beta _{i,1}, \end{aligned}$$

and for \(j=2n\) we have

$$\begin{aligned} {\hat{\beta }}_{1,2n} =\lambda ^{17}_i +\lambda ^{22} = (\beta _{i,2n} -\beta _{1,2n} +\mu _1) +(\beta _{1,2n} -\mu _1) =\beta _{i,2n}. \end{aligned}$$

For a given \(j\in \{2,\ldots ,2k\}\) we have

$$\begin{aligned} \begin{aligned} {\hat{\beta }}_{i,j}&=\lambda ^{17}_i +\lambda ^{21}_j +\lambda ^{30} = \beta _{i,2n} +\alpha _{1,j} -\beta _{1,2n} -\alpha _{1,2k+1} +\beta _{1,2k+1}\\&{\mathop {=}\limits ^{(viii)}} \alpha _{1,j} -\alpha _{1,2k+1} +\beta _{i,2k+1} {\mathop {=}\limits ^{(x)}} \beta _{i,j}, \end{aligned} \end{aligned}$$

since \(\beta _{i,2n} -\beta _{1,2n} +\beta _{1,2k+1} =\beta _{i,2k+1}\) according to statement (viii) of Lemma 4 with \(p=1\), \({\bar{q}}=i\), \(j'=2k+1\) and \(j''=2n\), and \(\alpha _{1,j} -\alpha _{1,2k+1} +\beta _{i,2k+1} =\beta _{i,j}\) due to statement (x) of Lemma 4 with \(p=1\), \({\bar{q}}=i\), \(j'=j\) and \(j''=2k+1\). Finally, for a given \(j\in \{2k+1,\ldots ,2n-1\}\) we have

$$\begin{aligned} {\hat{\beta }}_{i,j}= & {} \lambda ^{17}_i + \lambda ^{21}_j = \beta _{i,2n} -\beta _{1,2n} +\alpha _{1,j} \\&-\,\alpha _{1,2k+1} +\beta _{1,2k+1} {\mathop {=}\limits ^{(vi)}} \beta _{i,2n} -\beta _{1,2n} +\beta _{1,j} {\mathop {=}\limits ^{(viii)}} \beta _{i,j}, \end{aligned}$$

since \(\alpha _{1,j} -\alpha _{1,2k+1} +\beta _{1,2k+1} =\beta _{1,j}\) according to statement (vi) of Lemma 4 with \(p=1\), \({\bar{q}}=i\), \(j'=2k+1\) and \(j''=j\), and \(\beta _{i,2n} -\beta _{1,2n} +\beta _{1,j} =\beta _{i,j}\) due to statement (viii) of Lemma 4 with \(p=1\), \({\bar{q}}=i\), \(j'=j\) and \(j''=2n\). \(\square \)

Corollary 5

Linear combination (32) yields Eq. (31).

Proof

According to Propositions 710, the left-hand sides of (31) and (32) are the same. Since both of them are satisfied for the points from \(P^{parity}_{2n}\), the right-hand sides also coincide with each other. \(\square \)

Proof (Theorem 7)

First, by definition, \(rank(\mathcal {E}') \le rank(\mathcal {E}) + 1\), thus (according to Theorems 6 and 8) \(\dim (Q^{parity}_{2n}) \ge \dim (Q^{2\text {-}chains}_{2n}) - 1\). Second, \(\dim (Q^{parity}_{2n}) \le \dim (Q^{2\text {-}chains}_{2n}) - 1\) since \(Q^{parity}_{2n}\) is a proper face of \(Q^{2\text {-}chains}_{2n}\), thus \(\dim (Q^{parity}_{2n}) = \dim (Q^{2\text {-}chains}_{2n}) - 1\) and \(Q^{parity}_{2n}\) is a facet of \(Q^{2\text {-}chains}_{2n}\). \(\square \)

6 Computational experiments

In this section we present the results of our computational experiments, where the main goal was to examine the effectiveness of our parity inequalities. Since we proved that some of these inequalities are facet-defining if each chain has length two, our experiments focused on problems \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\) and \(1\,|chain\text {-}length\in \{1,2\},p_j=1|\,\sum w_{j,\sigma _j}\), where in the latter case each chain has length at most two.

All the computational experiments were performed on a workstation with 8GB RAM and Intel(R) Xeon(R) CPU E5-2630 v4 of 2.20 GHz, and under Linux operating system using a single thread only. Our solution approach is implemented in C++ programming language using CPLEX (version 12.6.3.0) as the branch-and-cut framework.

In these experiments we compared three solution approaches, more precisely, four scenarios corresponding to the settings summarized in Table 2. Method BnB is pure branch-and-bound, where we turned off all the presolves, heuristics and forbid to generate built-in cuts. Method BnC (Default) refers to the default CPLEX settings (i.e., CPLEX performs presolves and heuristics, and generates built-in cuts). Methods BnC (Parity)-1 and BnC (Parity)-2 use the same solver settings as  BnB, but we also separate parity inequalities, i.e., both of these methods separate parity inequalities in search-tree node of depth at least 1, but BnC (Parity)-1 does not generate any cuts in the root, while BnC (Parity)-2 does. In each case we had a runtime limit of 600 s, i.e., the search was stopped upon reaching the time limit.

We generated two families of problem instances for \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\), and one family for \(1\,|chains,chain\text {-}length\in \{1,2\},p_j=1|\,\sum w_{j,\sigma _j}\). Each family consists of 30 instances, which can be subdivided according to the number of jobs, which was \(n\in \{50, 100, 150\}\), and we generated 10 instances for each n. In Tables 3, 4 and 5 we summarize our results on these families, and the detailed results are presented in the “Appendix” (see Tables 6, 7, 8, 9, 10, 11, 12, 13 and 14). In these tables we indicate the number of jobs (n), the settings of the solver (Method), the lower bound after the root node is solved (\(\hbox {LB}^r\)), the final lower and upper bounds (LB\(^f\), UB\(^f\)), the final gap (\(\hbox {Gap}^f\)) calculated as \(100\times (UB^f-LB^f)/LB^f\), the number of investigated branch-and-bound nodes (Nodes), the number of generated parity inequalities (Cuts), and the execution time (Time) in seconds.

Table 2 Solver settings of the different methods

6.1 Results on problem \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\)

For the problem \(1\,|2\text {-}chains,p_j=1|\,\sum w_{j,\sigma _j}\) we generated two families of instances, Family 1 and Family 2, that differ in the method of generating the cost functions. Both families consist of 30 instances, which can be further divided into problems with \(n \in \{ 50, 100, 150\}\) jobs, i.e., 10 instances for each n. In order to generate challenging instances, for each first-job we assigned higher weight for the early positions than for the late ones, however, for each second-job we assigned lower weight for the early positions than for the late ones. Formally, in case of Family 1, we partitioned the set of positions into 9 sets such that \(\mathcal {P}_k = \{\lceil (k-1)\cdot 2n/9 \rceil +1,\ldots ,\lceil k\cdot 2n/9 \rceil \}\) for each \(k\in \{1,\ldots ,9\}\), then for job \(J_i\) and position j we chose \(w_{i,j}\) uniformly at random such that

  • \(w_{i,j} \in \{10(10-k),\ldots ,10(11-k)-1\}\) if \(J_i\) is a first-job, and \(j\in \mathcal {P}_k\),

  • \(w_{i,j} \in \{10k,\ldots ,10(k+1)-1\}\) if \(J_i\) is a second-job, and \(j\in \mathcal {P}_k\).

In case of Family 2, we partitioned the set of positions into 17 subsets such that \(\mathcal {P}_k = \{\lceil (k-1)\cdot 2n/17 \rceil +1,\ldots ,\lceil k\cdot 2n/17 \rceil \}\) for each \(k\in \{1,\ldots ,17\}\), then for job \(J_i\) and position j we chose \(w_{i,j}\) uniformly at random such that

  • \(w_{i,j} \in \{10k,\ldots ,10(k+1)-1\}\) if \(J_i\) is a first-job, \(k\le 9\), and \(j\in \mathcal {P}_k\),

  • \(w_{i,j} \in \{10(18-k),\ldots ,10(19-k)-1\}\) if \(J_i\) is a first-job, \(9<k\), and \(j\in \mathcal {P}_k\),

  • \(w_{i,j} \in \{10(10-k),\ldots ,10(11-k)-1\}\) if \(J_i\) is a second-job, \(k\le 9\), and \(j\in \mathcal {P}_k\),

  • \(w_{i,j} \in \{10(k-9),\ldots ,10(k-8)-1\}\) if \(J_i\) is a second-job, \(9<k\), and \(j\in \mathcal {P}_k\).

In Tables 3 and 4 we summarize our results for Family 1 and Family 2, respectively, while the detailed results can be found in Tables 6, 7 and 8, and in Tables 9, 10 and 11, respectively. Our observations are the followings.

  • Methods BnC (Parity)-1 and BnC (Parity)-2 significantly outperformed the other ones in all aspects. First, only these methods were able to solve all instances to optimality (one can see that the average gap is always 0.0), Second, for each instance, method BnC (Parity)-1 needed shorter execution time than methods BnB and BnC (Default). Note that on average, method BnC (Parity)-2 was also significantly faster than methods BnB and BnC (Default) [often faster than method BnC (Parity)-1 as well], however, for some instances one of the other two methods outperformed it. Finally, both of the methods BnC (Parity)-1 and BnC (Parity)-2 significantly reduced the number of the explored tree-nodes as well.

  • Separating parity inequalities at the root node [method BnC (Parity)-2 ] yielded the best (i.e., highest) lower bounds at the root node, however, on large instances with 150 jobs the separation procedure at the root node took a lot of time, which resulted in longer execution times than the method BnC (Parity)-1. For example, in case of Family 1 and \(n=150\), where the LP-relaxation of the problem (see column LB\(^r\) of the pure branch-and-bound method BnB) is basically strong, separating these inequalities at the root node could not help a lot, and method BnC (Parity)-1 outperformed method BnC (Parity)-2.

To sum up, using parity inequalities [methods BnC (Parity)-1 and BnC (Parity)-2 ] can significantly improve a pure branch-and-bound procedure (method BnB), moreover, they also outperform the default CPLEX branch-and-cut procedure [method BnC (Default) ].

Table 3 Summarized computational results for Family 1 (averages over 10 instances)
Table 4 Summarized computational results for Family 2 (averages over 10 instances)

6.2 Results on problem \(1\,|chains,chain\text {-}length\in \{1,2\},p_j=1|\,\sum w_{j,\sigma _j}\)

Given an n-length path (in terms of number of its nodes) as the precedence graph. To obtain instances of Family 3 we randomly removed arcs from that path such that the remaining sub-paths (i.e, chains) have length at most two. For each \(n \in \{50,100,150\}\), we generated 10 instances with n jobs, giving a total of 30 instances. Again, to generate challenging instances, for each first-job we assigned higher weight for the early positions than for the late ones, however, for each second-job we assigned lower weight for the early positions than for the late ones (see Family 1).

In Table 5 we summarize our results, and for detailed results we refer to the “Appendix” (see Tables 12, 13 and 14). Similarly to the previous experiments, the methods BnC (Parity)-1 and BnC (Parity)-2 outperformed the other ones. For smaller instances with 50 and 100 jobs, BnC (Parity)-2 slightly outperformed BnC (Parity)-1 in terms of search-tree nodes and total running time, but on large instances with 150 jobs, the BnC (Parity)-1 proved better.

Table 5 Summarized computational results for Family 3 (averages over 10 instances)

7 Conclusions, final remarks and future work

In this paper we presented polyhedral and complexity results for a single machine scheduling problem where precedence constraints are given. Among several theoretical results we also presented a class of valid inequalities that turned out to be facet-defining for 2-chains precedence constraints. Our computational experiments show that separating these inequalities can significantly improve a linear programming based branch-and-bound procedure if the length of each chain is at most two. Although these inequalities are also valid in the case of chain-precedence constraints with arbitrary chain-lengths, according to our preliminary computational experiments, separating these inequalities could not improve a branch-and-bound procedure in that case.

Table 6 Detailed computational results for Family 1 with \(n=50\)
Table 7 Detailed computational results for Family 1 with \(n=100\)
Table 8 Detailed computational results for Family 1 with \(n=150\)
Table 9 Detailed computational results for Family 2 with \(n=50\)
Table 10 Detailed computational results for Family 2 with \(n=100\)
Table 11 Detailed computational results for Family 2 with \(n=150\)
Table 12 Detailed computational results for Family 3 with \(n=50\)
Table 13 Detailed computational results for Family 3 with \(n=100\)
Table 14 Detailed computational results for Family 3 with \(n=150\)

In the future we would like to direct our attention to the case of chain-precedence constraints with arbitrary chain-lengths, and to the case of general precedence constraints as well.