Introduction, motivations and literature review

Scheduling is a decision-making process that deals with the allocation of resources to tasks and seeks to optimize one or more objectives. Scheduling is used on regular basis in sports, software design, transportation, timetabling, project planning, etc. (Pinedo 2012). However, probably the most important application of these techniques is in manufacturing. Scheduling models in manufacturing usually include determining the optimal order/schedule according to which jobs should be processed on machines. The terms job, machine and process can be described as follows:

  • Job refers to any typical order that is received and should be produced, assembled, etc. and delivered to the customer.

  • Machine is applied to a wide spectrum of production resources ranging from a small machine or office to a large and complex factory.

  • Process refers to the act of production, assembling, etc. of the jobs by machines.

The objective function of scheduling models is mostly time based. Minimization of total completion times, tardiness costs, number of tardi jobs, makespan, etc. are instances of these objectives. However, the authors recently encountered a problem for which the suitable objective function was not among the traditional temporal cases.

The motivation for new objectives in scheduling: A real-life example

Saipapress company is a respected subsidiary company working in Iranian automotive industry. They are a pioneer member of metal working society. In September 2014, a representative of Saipapress co. contacted the authors regarding some financial issues. What was needed can be expressed as some financially measurable improvements in the production system of Saipapress co. To tackle this problem, the authors devised new objective functions toward increasing the average and minimum available cash in the system. What the representative mentioned is summarized in the next paragraphs.

As part of the duties of Saipapress co., they are provided with orders of no more than twenty jobs on a seasonal base by the parent company. As a natural characteristic of metal working industry, most of the efforts, time and human capacity for each job are usually focused on designing the jigs, fixtures and more importantly the dies. Once this process is done and the prototyping confirms the quality of job to be manufactured, the rest is quickly carried out via automatic metal working lines. Therefore, although jobs can be processed simultaneously, this usually jeopardizes the efficiency as the aforementioned designing process occupies the resources very heavily. Hence, it is preferred to process the jobs one at a time and, thus, the problem can be observed as a single stage or single machine model.

Each job has a process time, a process cost and a final price. The process cost is paid gradually during processing the job. The prices of jobs, however, are nearly always collected on delivery. Saipapress co. is technically and managerially an independent firm. However, financially it is entirely dependent on the parent company. Therefore, at the time of paying costs, an expense form is filled out and passed to the purchasing secretary of the parent company. The secretary will do the rest and deliver the item. When the processing of a job is completed, it is delivered to the customers division of the parent company and they will collect the price.

According to the representative, the financial problem had emerged in the recent weeks when the parent company had informed Saipapress co. of a regulation that had been passed by the committee of strategic monitoring. In short, the regulation stated that every division of the parent company, including the subsidiaries, must adopt appropriate plans for operational improvement towards better survival in the competitive market. The improvement was general and could include cost reduction, productivity enhancement, efficiency augmentation, and so on. However, it must be financially measurable and should not impose any further costs.

The representative also added that the operations they perform are quite standard and they have little, if any, chance of making any significant cost reduction, productivity improvement, etc. Hence, the authors concluded that any improvement must be obtained via the scheduling policy.

When asked, the representative mentioned that they usually do not have any preferred scheduling policy. Nonetheless, on rare occasions that some jobs have due dates that must be met, they use the earliest due date first (EDD) rule (Pinedo 2012). On some occasions, the shortest processing time first (SPT) has also been adopted to minimize the average number of waiting jobs (Pinedo 2012).

Nonetheless, to make a vivid financially measurable improvement, none of the traditional objectives seem appropriate. Instead, one can focus on the flow of cash in and out of the system and try to maximize the average and minimum cash status. To explain more, let us focus on one of the recent orders received from the parent company. Table 1 contains the data regarding the order. Jobs have been numbered according to the sequence they were actually processed. Process times are reported in days and costs and prices are reported in hundred thousand dollars (HTDs).

Table 1 Processing data of an order delivered to Saipapress co

Figure 1 has been developed which shows the Gantt chart and the profit status of the schedule adopted. For each job, it is assumed that the cost is paid linearly during its processing and the price is received in one installment at the end of its processing. By the end of day 82, approximately a four-million-dollar profit has been made. Two observations are inferable from Fig. 1 which can be used for the desired financial improvement:

Fig. 1
figure 1

Description of the schedule adopted by Saipapress co. for the data of Table 1

  1. 1.

    Regardless of the schedule adopted, a total profit of 40.4 HTDs will be obtained at the end of day 82. However on average, only 10.16 HTD’s of this profit is available during the order processing. If this average available cash is low, it means that more cash is engaged in the act of scheduling. Thus, the opportunity cost of this engaged cash can raise a debate. On the other hand, if more cash is freed, this cash can be used to enhance the productivity of the system in any possible and legitimate way. Hence, the parent company would consider any increase in the value of average available revenue as a productivity enhancement.

  2. 2.

    During the period [10, 18] a 25.3 HDTs load has been imposed to the assets of the parent company. During the period [22, 30] a very similar situation can be seen. Even if it is temporary, the parent company is not in favor of this kind of situations which weakens its current asset arsenal. In other words, it is logical to try and minimize any major cash deficiency that occurs during the scheduling period. The conventional rules of single machine scheduling do not focus on this issue.

As a short answer to the two aforementioned issues, the authors proposed another schedule to Saipapress co. Comparing to Fig. 1, Fig. 2 shows a schedule in which the flow of cash is managed in such a way that more revenue is available on average and no major cash deficiency happens. In Sect. 3 and 4, the systematic method for obtaining this schedule is discussed.

Fig. 2
figure 2

Description of the schedule proposed to Saipapress co. for the data of Table 1

Review of closely related literature

To the best of our knowledge, managing the flow of prices and costs over time has rarely been considered in the literature of scheduling. However, similar issues have been addressed.

Morady Gohareh et al. (2014) is the only paper which directly addresses the issue of cash management in scheduling. The authors mainly focused on deriving some results regarding the complexity of scheduling problems where the flow of cash in and out of the scheduling system follows a general form. In this research we have gone one step further and considered a special form of flow of cash in which the cash is consumed almost linearly and injected at once. As discussed later, this flow behavior is observed in real-world situations. Moreover, here we will devise some scheduling rule for the case of bi-objective scheduling cash management and demonstrate the results of our models numerically.

A little further from our topic, consider the well-researched field of resource management in scheduling. In project scheduling one can refer to Elazouni (2009) about multi-project finance-based scheduling as an instance. In single machine scheduling, the paper of Gafarov et al. on non-renewable resource and the paper of Xie (1997) on managing multiple financial resource constraints can be pointed out (Gafarov et al. 2011; Xie 1997). In these problems, while performing each operation, a specific amount of one or more resources, such as cash, are occupied and then released. This could be interpreted as paying the cost and receiving the price. However, two facets distinguish our work:

  1. 1.

    In resource management, the same amount of a resource is occupied and released for each operation. In our problem, however, the price of each job is naturally more than the cost.

  2. 2.

    In resource management, the focus is on scheduling the operations in such a way that enough resources are available when needed. Thus, the resource issue is inserted as a constraint in the model. In our problem, the focus is on optimizing the use of the resource, i.e., cash, toward more average availability and less deficiency. Thus, cash management is mirrored in the objective function.

The topic single machine scheduling with deteriorating job values has been extensively researched. In this field, the value of jobs, which can be interpreted as the prices, deteriorates over time. Usually, traditional objective functions are used in this kind of problems. However, maximizing the total revenue has also been considered (Voutsinas and Pappis 2002, 2010; Yang 2009). In comparison with deteriorating values, Szmerekovsky (2007) has gone further and considered profit maximization in the existence of stochastic prices. Nonetheless, the cost of processing jobs is not involved in these researches and, unlike our model, creating a balance between payments and revenues is not intended.

When pure scheduling is not intended, some authors have considered integrated financial-production models. Jiaoa et al. have considered a flexible manufacturing system (FMS) where the price of jobs is not fixed beforehand and it is desired to determine the prices via real options in order to create a tradeoff between the costs and benefits of flexibility level (Jiaoa et al. 2006). The paper of Lusa et al. can be pointed out as a representative of many researches on the combination of production planning and pricing (Lusa et al. 2012). Some authors have even incorporated cash management issues into the realm of supply chain management (Guillén et al. 2006; Badell et al. 2004, 2005). All in all, although these models incorporate financial management issues such as cash management, they do not vividly and purely consider devising scheduling rules for this purpose.

Research problem description and assumptions

We are considering a single machine scheduling problems with the following main assumptions:

  • The problem is deterministic.

  • Preemption is not allowed.

  • All jobs are available from the start.

  • Each job entails a cost that is paid linearly during its processing.

  • Each job entails a price that is received at the end of its processing.

  • The profit margin of each job is positive.

  • Two new objectives are considered: maximizing the average available cash, maximizing the minimum available cash.

In finance, creating a balance between payments and revenues is referred to as asset–liability management. Assets represent cash inflows or revenues and liabilities represent cash outflows or payments. The same terminology is used in this paper. Now, the following notations must be introduced (\(j = 1,2, \ldots ,n\) represents the job index):

  • \(c_{j}\): cost of processing job j

  • \({\text{pr}}_{\text{j}}\): price of job j

  • \(p_{j}\): processing time of job j

Moreover, the following notations are put forward for any arbitrary schedule:

  • \(t_{j}\): start time of processing job j

  • \(A_{j}\): set of jobs that precede job j in the schedule

  • \(al\left( t \right)\): asset–liability balance at time t (net value of available cash at time t)

  • \({\text{al}}_{j}\): minimum value of \(al\left( t \right)\) during processing job j, i.e. \(\hbox{min} \left( {al\left( t \right)|t \in \left[ {t_{j} ,t_{j} + p_{j} } \right)} \right)\)

  • \(al_{0}\): initial value of cash available in the system before any processing starts

It was assumed that the profit margins of jobs are positive. This is usually correct for manufacturing operations and yields \(pr_{j} - c_{j} > 0, \, \forall j = 1,2, \ldots ,n\). Given that \(al_{0} = 0\), the instantaneous revenue curve in Figs. 1 and 2 is actually the graph of \(al\left( t \right)\). These figures show that \(al_{j}\) occurs just before the processing of job j ends. For a typical job j in any arbitrary schedule the following equations can be mentioned as well:

$$al\left( {t_{j} } \right) = al_{0} + \sum\limits_{{e \in A_{j} }} {\left( {pr_{e} - c_{e} } \right)}$$
(1)
$$al_{j} = al\left( {t_{j} } \right) - c_{j}$$
(2)
$$al\left( {t_{j} + p_{j} } \right) = al_{j} + {\text{pr}}_{\text{j}}$$
(3)

Moreover, if job j is immediately followed by job i in the schedule:

$$t_{i} = t_{j} + p_{j}$$
(4)
$$al_{i} = al_{j} + pr_{j} - c_{i}$$
(5)

Single machine scheduling for maximizing the average asset–liability balance

Let us define \(\overline{al}\) as the average asset–liability balance. Hence, \(\overline{al} = \frac{{\int_{0}^{{\sum\nolimits_{j = 1}^{n} {p_{j} } }} {al(t){\text{d}}t} }}{{\sum\nolimits_{j = 1}^{n} {p_{j} } }}\). According to the display framework of Pinedo (2012), the problem that we are considering here can be displayed as \(1// - \overline{al}\). As mentioned before, \(\overline{al}\) is a measure of the productivity of the manufacturer and should be maximized. Therefore, the symbol \(- \overline{al}\) implies that the negative value of \(\overline{al}\) should be minimized.

Problem \(1// - \overline{al}\) gives rise to a very straightforward rule for finding the optimal schedule, namely the most profit ratio first (MPRF) rule. According to this rule, jobs are ordered in decreasing order of \(\frac{{{\text{pr}}_{\text{j}} - c_{j} }}{{p_{j} }}\). \(pr_{j} - c_{j}\) is the profit gained from processing job j. Thus, \(\frac{{{\text{pr}}_{\text{j}} - c_{j} }}{{p_{j} }}\) can be interpreted as the profit ratio of job j, i.e., the profit gained from devoting one unit of the time of the machine to processing job j. However, before we can prove the optimality of the MPRF rule, there is a need to put forward Lemma 1.

Lemma 1

Consider an arbitrary schedule for a single machine scheduling problem. It can be stated that \(\int_{{t_{j} }}^{{t_{j} + p_{j} }} {al\left( t \right)dt} = p_{j} \left( {al\left( {t_{j} } \right) - \frac{{c_{j} }}{2}} \right)\).

Proof

For \(t \in \left[ {t_{j} ,t_{j} + p_{j} } \right)\) the function \(al\left( t \right)\) is the line demonstrated in Fig. 3. It is easy to obtain the equation of this line and the result is \(al\left( t \right) = \frac{{ - c_{j} }}{{p_{j} }}t + \frac{{c_{j} t_{j} }}{{p_{j} }} + al\left( {t_{j} } \right)\). Hence,

Fig. 3
figure 3

Linear behavior of \(al\left( t \right)\) during processing job j

$$\begin{gathered} \int_{{t_{j} }}^{{t_{j} + p_{j} }} {al(t){\text{d}}t} = \int_{{t_{j} }}^{{t_{j} + p_{j} }} {\left( {\frac{{ - c_{j} }}{{p_{j} }}t + \frac{{c_{j} t_{j} }}{{p_{j} }} + al(t_{j} )} \right){\text{d}}t = } \left( {\frac{{ - c_{j} }}{{2p_{j} }}t^{2} + \left( {\frac{{c_{j} t_{j} }}{{p_{j} }} + al(t_{j} )} \right)t} \right)_{{t_{j} }}^{{t_{j} + p_{j} }} \hfill \\ \quad = p_{j} \left( {al(t_{j} ) - \frac{{c_{j} }}{2}} \right)\quad \square \hfill \\ \end{gathered}$$

Theorem 1

The MPRF rule is optimal for \(1// - \overline{al}\).

Proof

By contradiction. Suppose a schedule S, that is not MPRF, is optimal and \(al\left( t \right)\) is its asset–liability function. In this schedule, there must be at least two adjacent jobs, say job j followed by job k, such that \(\frac{{pr_{j} - c_{j} }}{{p_{j} }} < \frac{{pr_{k} - c_{k} }}{{p_{k} }}\).

Assume job j starts its processing at time t 0 . Perform a so-called adjacent pairwise interchange on jobs j and k. Call the new schedule S′ and denote its notations by the symbol “′”. Under S the average asset–liability is

$$\overline{al} = \frac{{\int_{0}^{{\sum\nolimits_{e = 1}^{n} {p_{e} } }} {al(t){\text{d}}t} }}{{\sum\nolimits_{e = 1}^{n} {p_{e} } }} = \frac{{\int_{0}^{{t_{0} }} {al(t){\text{d}}t + \int_{{t_{0} }}^{{t_{0} + p_{j} }} {al(t){\text{d}}t + \int_{{t_{0} + p_{j} }}^{{t_{0} + p_{j} + p_{k} }} {al(t){\text{d}}t + \int_{{t_{0} + p_{j} + p_{k} }}^{{\sum\nolimits_{e = 1}^{n} {p_{e} } }} {al(t){\text{d}}t} } } } }}{{\sum\nolimits_{e = 1}^{n} {p_{e} } }}$$

while under S′ it is \(\overline{al}^{\prime } = \frac{{\int_{0}^{{\sum\nolimits_{e = 1}^{n} {p_{e} } }} {al^{{\prime }} (t){\text{d}}t} }}{{\sum\nolimits_{e = 1}^{n} {p_{e} } }} = \frac{{\int_{0}^{{t_{0} }} {al^{{\prime }} (t){\text{d}}t + \int_{{t_{0} }}^{{t_{0} + p_{k} }} {al^{{\prime }} (t){\text{d}}t + \int_{{t_{0} + p_{k} }}^{{t_{0} + p_{k} + p_{j} }} {al^{{\prime }} (t){\text{d}}t + \int_{{t_{0} + p_{k} + p_{j} }}^{{\sum\nolimits_{e = 1}^{n} {p_{e} } }} {al^{{\prime }} (t){\text{d}}t} } } } }}{{\sum\nolimits_{e = 1}^{n} {p_{e} } }}\).

While under the original schedule S job j starts its processing at t 0 (t j  = t 0) and is followed by job k (t k  = t 0 + p j ), under the new schedule S′ job k starts its processing at t 0 (t k  = t 0 ) and is followed by job j (t j  = t 0  + p k ). All other jobs remain in their original position. The values of \(\int_{0}^{{t_{0} }} {al(t){\text{d}}t}\) and \(\int_{{t_{0} + p_{j} + p_{k} }}^{{\sum\nolimits_{e = 1}^{n} {p_{e} } }} {al(t){\text{d}}t}\) are not affected by the interchange. Hence

$$\overline{{al}} ^{\prime } = \frac{{\int_{0}^{{t_{0} }} {al(t){\text{d}}t + \int_{{t_{0} }}^{{t_{0} + p_{k} }} {al^{\prime } (t){\text{d}}t + \int_{{t_{0} + p_{k} }}^{{t_{0} + p_{k} + p_{j} }} {al^{\prime } (t){\text{d}}t + \int_{{t_{0} + p_{k} + p_{j} }}^{{\sum\nolimits_{{e = 1}}^{n} {p_{e} } }} {al(t){\text{d}}t} } } } }}{{\sum\nolimits_{{e = 1}}^{n} {p_{e} } }}$$

Since S is optimal we can write \(\overline{{al}} ^{\prime } \le \overline{{al}}\) which yields \(\int_{{t_{0} }}^{{t_{0} + p_{k} }} {al^{\prime}(t){\text{d}}t + \int_{{t_{0} + p_{k} }}^{{t_{0} + p_{k} + p_{j} }} {al^{\prime}(t){\text{d}}t} } \,\le \int_{{t_{0} }}^{{t_{0} + p_{j} }} {al(t){\text{d}}t + \int_{{t_{0} + p_{j} }}^{{t_{0} + p_{j} + p_{k} }} {al(t){\text{d}}t} }\). Consequently, using Lemma 1 and Eqs. 2 and 3 we can write

$$p_{k} \left( {al\left( {t_{0} } \right) - \frac{{c_{k} }}{2}} \right) + p_{j} \left( {al\left( {t_{0} } \right) + pr_{k} - c_{k} - \frac{{c_{j} }}{2}} \right) \le p_{j} \left( {al\left( {t_{0} } \right) - \frac{{c_{j} }}{2}} \right) + p_{k} \left( {al\left( {t_{0} } \right) + pr_{j} - c_{j} - \frac{{c_{k} }}{2}} \right)$$

which yields \(\frac{{pr_{k} - c_{k} }}{{p_{k} }} \le \frac{{pr_{j} - c_{j} }}{{p_{j} }}\). This contradicts the initial assumption that \(\frac{{pr_{j} - c_{j} }}{{p_{j} }} < \frac{{pr_{k} - c_{k} }}{{p_{k} }}\). □

Single machine scheduling for maximizing the minimum available cash

Minimum asset–liability is defined as \(al_{\hbox{min} } = \hbox{min} \left( {al_{1} ,al_{2} , \ldots ,al_{n} } \right)\). The value of \(al_{\hbox{min} }\) can be seen as a cash safety stock for dealing with instability in the environment. High values of \(al_{\hbox{min} }\) provide a tool for handling unanticipated situations such as adverse changes in costs or prices. Using the display framework of Pinedo, the problem at hand can be displayed as \(1// - al_{\hbox{min} }\).

As mentioned before, it is of great value to search for a schedule with less cash deficiency (remember the problem of Saipapress co.). However, minimizing the maximum cash deficiency is equivalent to maximizing \(al_{\hbox{min} }\). To explain this, consider that \(1// - al_{ \hbox{min} }\) is solved and the optimal value (i.e., maximum value) of \(al_{\hbox{min} }\) is obtained. If this value is positive, then we have obtained a schedule with no cash deficiency. However, if the maximum value of \(al_{\hbox{min} }\) is negative, no schedule exists which creates a maximum cash deficiency lower than \(\left| {al_{\hbox{min} } } \right|\). Consequently, solving \(1// - al_{\hbox{min} }\) delivers the schedule with the least maximum cash deficiency as well.

To solve problem \(1// - al_{\hbox{min} }\), a combination of two simple rules is used; least cost first (LCF) rule and most price first (MPF) rule. According to LCF, jobs are sequenced in increasing order of c j . MPF rule demands jobs to be arranged in decreasing order of pr j . As expressed in Theorem 2, LCF/MPF yields the optimal solution for \(1// - al_{\hbox{min} }\). According to this rule, jobs are first scheduled under LCF and ties are broken under MPF. However, let us first express the rationale that leads to the optimal solution.

Lemma 2

At least one of the optimal solutions of \(1// - al_{\hbox{min} }\) satisfies the LCF rule.

Proof

Consider an optimal schedule S for \(1// - al_{\hbox{min} }\). If S satisfies LCF, the proof is complete. If not, there must be at least two adjacent jobs, say job j followed by job k, such that c j  > c k Perform the Adjacent Pairwise Interchange on jobs j and k and call the new schedule S′ and denote the notations of S′ by the symbol “′”. It can be stated that

$$al_{\hbox{min} } = \hbox{min} \left( {al_{i} } \right) = \hbox{min} \left( {\hbox{min} \left( {al_{i} |i \ne j,k} \right),\hbox{min} \left( {al_{j} ,al_{k} } \right)} \right)$$

and

$$al_{\hbox{min} }^{{\prime }} = \hbox{min} \left( {al_{i}^{{\prime }} } \right) = \hbox{min} ( {\hbox{min} \left( {al_{i}^{{\prime }} |i \ne j,k} \right),\hbox{min} ( {al_{j}^{{\prime }} ,a_{k}^{{\prime }} } )} )$$

It can be easily observed that the values of \(al_{i}\)’s are not affected by the interchange, where \(i = 1,2, \ldots ,n\) and \(i \ne j,k\). In the following paragraph, we will demonstrate that \(\hbox{min} \left( {al_{j}^{{\prime }} ,al_{k}^{{\prime }} } \right)\) cannot be less than \(\hbox{min} \left( {al_{j} ,al_{k} } \right)\). Hence, \(al_{\hbox{min} }^{{\prime }}\) cannot be less than al min as well. Finally, since \(al_{\hbox{min} }\) is optimal (i.e., the maximum value), \(al_{\hbox{min} }^{{\prime }}\) is also optimal.

To prove that \(\hbox{min} \left( {al_{j}^{{\prime }} ,al_{k}^{{\prime }} } \right) > \hbox{min} \left( {al_{j} ,al_{k} } \right)\), we define \(B = al_{0} + \sum\nolimits_{{i \in A_{j} }} {\left( {pr_{i} - c_{i} } \right)} \ge 0\) or equivalently \(B = al_{0} + \sum\nolimits_{{i \in A^{\prime}_{k} }} {\left( {pr_{i} - c_{i} } \right)} \ge 0\). Notice that \(A_{j} = A^{\prime}_{k}\). Considering Eqs. 1 and 2 we can write \(al_{j} = B - c_{j}\) and \(al^{\prime}_{k} = B - c_{k}\). Moreover, considering Eq. 5 we can write \(al_{k} = B - c_{j} + pr_{j} - c_{k}\) and \(al^{\prime}_{j} = B - c_{k} + pr_{k} - c_{j}\). One can easily verify that \(al_{j} < al_{k}\) (notice that \(c_{j} > c_{k}\) yields \(pr_{j} > c_{k}\)) which yields \(\hbox{min} \left( {al_{j} ,al_{k} } \right) = al_{j}\). Since \(c_{j} > c_{k}\), one can also see that \(al_{k}^{{\prime }} > al_{j}\). Moreover, it is obvious that \(al_{j}^{{\prime }} > al_{j}\). Accordingly, \(al_{k}^{{\prime }} > al_{j}\) and \(al_{j}^{{\prime }} > al_{j}\) require that \(\hbox{min} \left( {al_{j}^{{\prime }} ,al_{k}^{{\prime }} } \right) > al_{j} = \hbox{min} \left( {al_{j} ,al_{k} } \right).\quad \square\)

If there are no jobs with identical costs, there is exactly one schedule that satisfies LCF; so Lemma 2 implies that LCF yields the optimal schedule. Otherwise, Theorem 2 can be used to find the optimal solution.

Theorem 2

The LCF/MPF rule is optimal for \(1// - al_{\hbox{min} } .\)

Proof

According to Lemma 1, at least of the schedules that satisfies LCF is optimal. It can be proved, via contradiction, that the ties in the optimal LCF schedule(s) must be broken by MPF. Consider an optimal schedule S for \(1// - al_{\hbox{min} }\) that is LCF but not LCF/MPF. There must be at least two adjacent jobs, say job j followed by job k, such that \(c_{j} = c_{k}\) and \(pr_{j} < pr_{k}\). Perform the Adjacent Pairwise Interchange on jobs j and k and call the new schedule S′. Also, denote the notations of S′ by the symbol “′”. Eqs. 1 and 2 yield that \(al_{i}^{{\prime }} = al_{i}\) where \(i = 1,2, \ldots ,n\) and \(i \ne j,k\). Moreover

$$al_{\hbox{min} } = \hbox{min} \left( {al_{i} } \right) = \hbox{min} \left( {\hbox{min} \left( {al_{i} |i \ne j,k} \right),\hbox{min} \left( {al_{j} ,al_{k} } \right)} \right)$$

and

\(a_{\hbox{min} }^{{\prime }} = \hbox{min} \left( {al_{i}^{{\prime }} } \right) = \hbox{min} \left( {\hbox{min} \left( {al_{i}^{{\prime }} |i \ne j,k} \right),\hbox{min} \left( {al_{j}^{{\prime }} ,al_{k}^{{\prime }} } \right)} \right)\).

Hence, the difference in the values of \(al_{\hbox{min} }\) and \(al_{\hbox{min} }^{{\prime }}\) is only due to the difference in the values of \(\hbox{min} \left( {al_{j} ,al_{k} } \right)\) and \(\hbox{min} \left( {al_{j}^{{\prime }} ,a_{k}^{{\prime }} } \right)\). Similar to the proof of Lemma 2 we can write

\(al_{j} = B - c_{j}\), \(al_{k} = B - c_{j} + pr_{j} - c_{k}\), \(a_{k}^{{\prime }} = B - c_{k}\) and \(al^{\prime}_{j} = B - c_{k} + pr_{k} - c_{j}\) where \(B = al_{0} + \sum\nolimits_{{i \in A_{j} }} {\left( {pr_{i} - c_{i} } \right)} \ge 0\) or equivalently \(B = al_{0} + \sum\nolimits_{{i \in A^{\prime}_{k} }} {\left( {pr_{i} - c_{i} } \right)} \ge 0\). Since \(c_{j} = c_{k}\) and \(pr_{j} < pr_{k}\), it is obvious that \(al_{j} = al_{k}^{{\prime }}\) and \(al_{k} < al_{j}^{{\prime }}\). Therefore, \(\hbox{min} \left( {al_{j}^{{\prime }} ,al_{k}^{{\prime }} } \right) \ge \hbox{min} \left( {al_{j} ,al_{k} } \right)\) which yields that \(al^{\prime}_{\hbox{min} } \ge al_{\hbox{min} }\). This contradicts the optimality of S. □

Maximizing the average and minimum available cash simultaneously

The schedule proposed to Saipapress co. and depicted in Fig. 2 is neither obtained via MPRF nor via LCF/MPF. In fact, the authors intended to obtain a schedule for which \(al_{\hbox{min} } > - 3\) and \(\overline{al}\) is maximized. Hence, a combination of the two rules was used. More generally, assume \(al_{\hbox{min} }^{*}\) is the optimal objective value of \(1// - al_{\hbox{min} }\). Thus, \(1// - \overline{al} |al_{\hbox{min} } > x\) refers to scheduling problem where the objective is to maximize \(\overline{al}\) on condition that \(al_{\hbox{min} } > x\) and \(x \ge al_{\hbox{min} }^{*}\). The algorithm depicted in Fig. 4 is very simple and yield the optimal schedule for this bi-objective scheduling problem.

Fig. 4
figure 4

Algorithm for solving \(1// - \overline{al} |al_{\hbox{min} } > x\)

Computational experiments

In order to demonstrate the effect of our financial assumptions on the outcome of single machine scheduling problems, we have used extensive simulation. We have compared four problems: \(1// - \overline{al}\),\(1// - al_{\hbox{min} }\), \(1// - \overline{al} |al_{\hbox{min} } > x\), and \(1//\sum {C_{j} }\).

\(1//\sum {C_{j} }\) is a well-known classic scheduling problem. \(C_{j}\) is the completion time of job j. Therefore, the objective of \(1//\sum {C_{j} }\) is to minimize the average number of jobs waiting for processing. The shortest processing time first (SPT) rule has been shown to yield the optimal schedule for this problem. \(1//\sum {C_{j} }\) is chosen as one of our benchmark problems to demonstrate the effect of neglecting our financial assumption in traditional scheduling techniques.

Regarding \(1// - \overline{al} |al_{\hbox{min} } > x\), let \(\alpha = \frac{{\left| {al_{\hbox{min} }^{*} - x} \right|}}{{al_{\hbox{min} }^{*} }}\). Hence, α is the deviation ratio (i.e., trade-off ratio) from the optimal value of \(al_{\hbox{min} }\) that is created as a result of focusing on two objectives simultaneously.

To have a suitable basis of comparison, some scenarios have been considered regarding three parameters of the model:

  • \(n = 5, \, 20, \, 50, \, 100\): These values for number of jobs cover a spectrum of scheduling problems ranging from small ones to rather large ones.

  • \(al_{0} = 0, \, 100, \, 200\): If \(al_{0} = 0\), the scheduling system struggles with issues regarding cash deficiency right from the outset of scheduling. The other scenarios mirror more wealthy scheduling systems.

  • \(\alpha = 0.01, \, 0. 0 5, \, 0. 1 5\): If \(\alpha = 0.01\), we are willing to make only a small sacrifice in the quality of \(al_{\hbox{min} }\) in order to obtain better values of \(\overline{al}\). Other scenarios mirror more willingness towards trading \(al_{\hbox{min} }\) for \(\overline{al}\).

Based on the combination of above scenarios, 36 test problems were made. For each test problem, 50 random instances were developed (i.e., simulated) as follows. Processing times were chosen from \({\text{Uniform }}\left[ {5,20} \right]\); costs were chosen from \({\text{Uniform }}\left[ {10,50} \right]\); and prices were chosen from \(Uniform \, \left[ {1.01 \times c_{j} ,2 \times c_{j} } \right]\). Considering \(1.01 \times c_{j}\) for the minimum possible value of \(pr_{j}\) ensures that \(pr_{j} - c_{j} > 0\). Each random instance was solved by MPRF, LCF/MPF, SPT, and the algorithm of Fig. 4. The academic version of the simulation software Arena was used for this regard. The experiments were implemented on a PC with 2.53 GHz of CPU and 768 MB of RAM. The simulation ended in about 20 min and the average results of \(\overline{al}\), \(al_{\hbox{min} }\) and \(\sum {C_{j} }\) are reported in Table 2. The following results may be interpreted from Table 2:

Table 2 Results of test problems
  • Using traditional techniques of scheduling, which neglect the cash management issues, can have drastic adverse effects on \(al_{\hbox{min} }\) and \(\overline{al}\). In the case of our test problems, if SPT is used, \(- \overline{al}\) is increased by 18 % on average from its optimal value. For \(al_{\hbox{min} }\) the situation is worse and a 72 % deterioration is observed.

  • On average, optimizing \(\overline{al}\) creates a 47 % distance between \(al_{\hbox{min} }\) and its optimal value while, optimizing \(al_{\hbox{min} }\) creates a 92 % distance between \(\overline{al}\) and its optimal value. Hence, and as mentioned in the following, a trade-off works better if \(\overline{al}\) and \(al_{\hbox{min} }\) are both important for the scheduler.

  • If a 15 % deviation from the optimal value of \(al_{\hbox{min} }\) is acceptable, one can find a schedule for which the distance between \(\overline{al}\) and its optimal value is only 8.2 % on average. For 5 and 1 % acceptable deviation from the optimal value of \(al_{\hbox{min} }\), schedules with 11.9 and 15 % average deviation between \(\overline{al}\) and its optimal value are obtainable.

Conclusions and suggestions for future studies

This paper considered the cash management in single machine scheduling for manufacturing industries. It was assumed that the cost of processing each job is paid by the manufacturer gradually during the processing. Moreover, it was assumed that the price of each job is collected by the manufacturer upon the end of its processing. The goal was to develop optimal scheduling rules in order to create a balance between payments and revenues over time. Altogether, five important conclusions can be drawn from this research:

  • If jobs are scheduled according to decreasing order of profit ratio, the average liquidity (i.e., available cash) is maximized and the manufacturer experiences more financial productivity.

  • If jobs are scheduled according to increasing order of cost and ties are broken according to decreasing order of prices, the minimum available cash is maximized and the manufacturer is more protected against instability in financial parameters.

  • Given that a schedule with no cash deficiency exists, the above scheduling rule can be used to find it. Moreover, given that cash deficiency is inevitable, the above rule minimizes the maximum cash deficiency.

  • It was numerically demonstrated that traditional rules of scheduling might endanger indexes of cash management and, hence, result in less financial productivity, more cash deficiency, and less protection against instability of financial parameters.

  • It was numerically demonstrated that indexes of cash management can be simultaneously approached via the algorithm of Fig. 4 and with no major trade-off.

Future studies for cash management in single machine scheduling can be focused on integrating the objective function of this paper with the traditional ones via multi objective scheduling approaches. Specially, objectives that involve due dates can be focused on. Cash management of more complex scheduling environments, such as jobshops and flowshops, is also of great practical value.