Computational Intelligence and Neuroscience

Computational Intelligence and Neuroscience / 2020 / Article

Research Article | Open Access

Volume 2020 |Article ID 3607547 |

Mafawez Alharbi, Mahdi Jemmali, "Algorithms for Investment Project Distribution on Regions", Computational Intelligence and Neuroscience, vol. 2020, Article ID 3607547, 13 pages, 2020.

Algorithms for Investment Project Distribution on Regions

Academic Editor: José Alfredo Hernández-Pérez
Received10 Feb 2020
Revised06 Jul 2020
Accepted10 Jul 2020
Published01 Aug 2020


This paper proposes an optimization system for solving an NP-hard problem by using several new algorithms and application programs. This study aims to identify a suitable distribution of investment projects across several developed industrial regions. It is assumed that all industrial regions involved have the same economic and strategic characteristics. The problem involves a set of projects that are to be assigned across regions. Each project creates an estimated number of new jobs, and the distribution of projects can be guided by minimizing the maximum total number of newly created jobs. The problem is NP-hard one, and it is difficult to determine the most appropriate distribution. We apply scheduling algorithms in order to solve the analyzed problem. Severalheuristics are developedto obtain the appropriate distribution of newly created jobs across all regions. A branch-and-bound method is employed in order to obtain the exact solution. The performance of the algorithm is demonstrated by the experimental results for a total number of 1850 instances.

1. Introduction

It is important to distribute investments throughout a given country. A “good” distribution of investment resources is very important both from an economic and a social perspective since this may have a direct effect on the behavior of cities in terms of business and economic cycles. The context of this paper is the regional allocation of industrial projects. The problem is as follows: when there are several projects to be assigned across different industrial regions, how should these projects be allocated?

The solution to this problem may be based either on the principle of equity distribution or on a distribution process which is meant to minimize the maximum total number of projects to be assigned. We start with a set of projects to be undertaken in several regions, each of which represents an amount of newly created jobs and will be entirely undertaken in the chosen region. For the sake of equity, certain heuristics are applied to guide the allocation of industrial projects to different regions in order to increase the minimum total number of new jobs created [1]. To answer the research question, it is necessary to choose between minimizing the maximum total number of new jobs created and maximizing the minimum total number of new jobs created. In this study, we assume that the industrial regions involved are identical and that they share the same characteristics that affect both investment allocation and investment opportunities. For example, if the investment project consists in the creation of a marine port, then it should be allocated to a coastal region since this is an investment with specific economic characteristics. All types of investments with such specific characteristics will be excluded from this work. Heuristics and exact solutions will be used to ensure a good distribution of all investment projects to industrial regions.

The solutions to the aforementioned problem affect individuals and their everyday activities and have significant impacts on the public and private sectors and on society at large. A wide variety of resource allocation methods with different mathematical approaches to medialization have previously been used in various application areas to compute optimal solutions to the problem of the distribution of projects to several regions. The present work aims to determine the distribution of investment projects across regions by using a new objective function and newly proposed mathematical model. New solutions were developed based on the utilization of the heuristics and the optimal solutions for (minimizing the maximum total completion time for parallel machines) and (maximizing the minimum total completion time for parallel machines). For the first problem, which is , we use the heuristics and optimal solution cited by Haouari and Jemmali [2]. The respective derived bounds cited in latter work were embedded in an exact procedure which yielded an exact and effective algorithm based on a symmetry-breaking branching strategy. For the second problem, , a branch-and-bound () algorithm was developed by Haouari and Jemmali [1] based on enhanced lower and upper bounds. The problem is also referred to as “machine covering.” A study of Walter et al. [3] also proposed an exact method.

The rest of this paper is structured as follows. Section 2 discusses previous work related to the aforementioned problem, while Section 3 sets forth the analyzed problem. Section 4 develops the lower bound for the analyzed problem, and Section 5 introduces and describes several heuristics. Section 6 presents the proposed solution, and Section 7 describes the experimental tests applied and their results. Section 8 concludes this paper.

The theory of optimal control is used to tackle the unequal distribution of income between regions associated with high rates of aggregate growth for the regional allocation of investments [4]. Other applications for optimizing the allocation of investments include linear dynamic programming problems. The objective of a study by Ohtsuki [5] was to search for the optimum solution to the regional allocation problem. Bagchi et al. [6] provided a formulation for the problem of investment allocation across cities in the framework of a planning model, and a case study examining the impact of investment on the economies of Japan was carried out [7]. The study by Castells and Solé-Ollé [8] was undertaken in order to help managers make decisions, and in order to address the need for a system that provided data and information, two metaheuristic algorithms were compared, the first of which was based on a genetic algorithm and the second on the mean variance technique. The work of Salo et al. [9] focused on improved methods of resource allocation compared to the previous work that would facilitate decision analytics by helping public organizations and firms allocate resources for “lumpy” investment opportunities. Resource allocation problems are ubiquitous in governmental organizations and business. In addition to the aforementioned cited works, Luss [10] specifically addressed equitable resource allocation problems with applications in manufacturing, networks, communication, and other areas.

Ranjbar et al. [11] investigated the problem of investment project scheduling with the purpose of reducing the related costs and the amount of necessary resources and of avoiding any delay in the implementation of those projects. The project in this case consisted in a set of interrelated activities, and the authors suggested two methods for resolving the project scheduling problem, which are a genetic algorithm and relinking, whereby a schedule is created with a list of priorities. Shadrokh and Kianfar [12] suggested a genetic algorithm to solve the resource investment problem. The performance of this algorithm has been noticed to be satisfactory when compared with that of other algorithms.

Castells and Solé-Ollé [8] analyzed the main determinants of investment distribution across different regions. The expected objectives of the investment were set based on a general description of the objectives of the respective country, which focused on effective and fair trade and on the rules arising from political factors. This study employed a dynamic equation that allowed for gradual adjustment and readjustment, and the results indicated that criteria of effective trade played an important part in the geographical distribution of investment within the government infrastructure. Hartmann and Briskorn [13] provided an overview of the aforementioned extensions, which were designed based on the structure of the resource-constrained project scheduling problem (). This paper gave a general summary related to the concepts of activity, precedence relationships, and resource constraints and also gave a summary of many lesser-known concepts. Singh [14] developed an algorithm that incorporated the priority of a project with the development of a programmed schedule, with the objective of reducing the project makespan and the penalty cost when some projects have higher priority. The proposed algorithm was shown to be an improvement of the current priority rules.

Rodrigues and Yamashita [15] developed a new precise algorithm that solved the cost of the resource availability () problem in scheduling projects. This new algorithm relied on a hybrid method in which an initial feasible solution was determined heuristically. The branching scheme resolved an at each node, where the resources of the were fixed. The new algorithm can be employed for reducing the cost of making resources available.

Sanaei et al. [16] studied the firefly algorithm, which was originally developed by Yang to optimize numerical tasks. This method was employed for solving an . The difficulty in solving this type of problem arises from a lack of resources and priority of constraints. The algorithm begins by configuring a set of random scheduling solutions, and the primitive scheduling is then repeatedly improved using the firefly algorithm. Qi et al. [17] developed a model for multimode resources that reduced the cost of making resources available for all activities, with the aim of completing all activities of a project on schedule. When the deadline for a project is confirmed, the contractor will attempt to reduce the project cost, and this study proposes an optimization method and a useful heuristic algorithm for identifying the optimal solution. Rahmani et al. [18] proposed a new method for solving an based on a differential search. Their approach could provide a set of preliminary schedules. Rabbani et al. [19] suggested a new approach to the multiobjective time-cost constrained .

Several other problems related to scheduling problem applications can be cited in [2023] and [24].

More recently, several works have proposed solutions for the fair distribution problem. For example, Jemmali [25] gave different approximate solutions for the project revenue assignment problem. Another study [26] focused on budget-balancing algorithms for solving the aforementioned problem and gave several algorithms. An application of load balancing of the files on different storage supports was treated in [27].

3. Description of the Problem

The problem analyzed in this paper can be described as follows. Given a set of industrial investment projects to be undertaken in different industrial regions , each project can be assigned to only one industrial region with . Each project with can be evaluated by applying three indicators. The number of newly created jobs is denoted by . The objective of this study is to ensure a suitable distribution of projects, and it is essential to define a variable that can be evaluated in order to measure the performance of the project allocation process. In the first approach, the number of new jobs created was set as the objective variable, and the overall objective was to maximize the minimum total number of new jobs created. The question then arises as to whether minimizing the maximum total number of new jobs created yields the same result.

When assigning a project to an industrial region , the total cumulative number of new jobs created is denoted by . The total number of new jobs created in each region after the project allocation is completed is denoted by . Example 1 illustrates the analyzed problem. The maximum number of new jobs created for all regions is denoted by , and the minimum number of new jobs created for all regions is denoted by . For each schedule, the values of are indexed as follows: .

Example 1. We assume that, in the case of industrial investment projects, there are five new projects, i.e., . In addition, there are two regions, i.e., . Table 1 displays the number of new jobs created for each project.
Now, let us suppose that the assignment of projects to regions will be as follows. Projects 1, 4, and 5 are allocated to region 1, while projects 2 and 3 are allocated to region 2. Figure 1 illustrates this allocation.
From Figure 1, it can be noticed that there is a large gap between regions 1 and 2, which is equal to . This means that more new jobs were created in region 2 than in region 1. The objective is to decrease this gap in order to ensure a better distribution between the regions involved. There is also another arrangement that can be used in order to ameliorate the manner of project assignment with the purpose of achieving a good project distribution. Figure 2 illustrates the new arrangement.
It can be seen from Figure 2 that the gap between regions is lower compared with the one in the first arrangement shown in Figure 1. After rearrangement, the gap is reduced to three.


Remark 1. The gap for each region is given by .

Proof. The maximum number of new jobs created is . Thus, for each region, gives the difference between the number of new jobs created in region and that in the region with the maximum number of new jobs.
The indicator that can be measured to minimize the gap between regions is represented by the following formula:

Proposition 1. The objective described in equation (1) can be expressed as

Proof. From equation (1), we haveBy applying the minimum function to the latter result, we obtain equation (2).
Hereafter, the gap between regions that was obtained by using a given heuristic is denoted by . The objective of this study is to minimize . It is worth mentioning that the constraint applied in this work consists in the fact that the project cannot be divided (i.e., the number of new jobs created by a project cannot be divided across two or more industrial regions). The optimal solution is denoted by , and denotes the lower bound and the heuristic value for the problem.

4. Lower Bounds

Two lower bounds are proposed for the analyzed problem. The first is obtained from the optimal solution to and the optimal solution to . Hence, the balance between and will be considered. The second lower bound is obtained from the lower bound on . denotes the optimal solution for , and denotes the optimal solution for .

4.1. Min-Max-Based Lower Bound ()

This lower bound is determined based on the following proposition:

Proposition 2. . The obtained value () is a valid lower bound.

Proof. In any schedule , the value is calculated after is evaluated. This value is the difference between and for each region. This also indicates that the difference between and for all the remaining regions (excluding the region that has ) will be zero in this case.
In addition, is the schedule obtained by applying the optimal solution to . In this schedule, it is obvious that no is greater than , and hence, this schedule is the optimal one, with being minimized. Let us suppose that the aforementioned problem may be re-envisaged as follows. Let us assume that, in the ideal case, when the two regions with and are excluded, the remaining regions have the same number of new jobs, which is equal to . In this case, the comparison is only between and . Now, if this relaxation is applied while applying the schedule , the minimum value can be obtained when the value of is maximized. Thus, the difference will be . Accordingly, is then selected, which is the schedule obtained by applying the optimal solution to and the relaxation; the ideal case has a difference of . The proposition can also be written mathematically. For any schedule, can be written asFurthermore, in any schedule, we haveCombining equations (5) and (4) yieldsFrom equation (6), it can be deduced that is a valid lower bound.

4.2. Cmax-Based Lower Bound ()

This lower bound is based on the one.

The Cmax-based lower bound, denoted by , is based on the following proposition:

Proposition 3. For a given lower bound on the problem, , let . The obtained value for is a valid lower bound.

Proof. From the objective function described in equation (2), we have .
Furthermore, for any schedule, we have . Therefore,When considering the lower bound on the problem, we haveFrom equation (8), after multiplication by a positive integer, we obtainThen, is subtracted from equation (9) to giveFrom equations (7) and (10), it can be deduced that is the lower bound for the problem.
In this study, two lower bounds from the literature for the problem are used for developing two versions of . Denoted by and , these two lower bounds are based on and , respectively, as described by Haouari and Jemmali [2].

5. Approximate Solutions

In this section, certain heuristics developed for the problem under study are presented, and these are compared to demonstrate their performance. The first heuristic is based on the nonincreasing dispatching rule, while the second is based on the nondecreasing dispatching rule. The multifit method is employed for deriving the third heuristic. In the fourth approach, we apply several times the resolution of the subset-sum problem in order to calculate the value of the heuristic. In a similar way, the fifth heuristic will solve a well-known problem iteratively; difference lies in choosing the knapsack problem which is used rather than the subset-sum problem. The last heuristic is based on rescheduling of the most charged and least charged regions to find a better result.

5.1. Heuristic 1: Nonincreasing Number of New Jobs Created ()

For this schedule, the total number of new jobs created for all projects is placed in a nonincreasing order. Highest is then allocated to the first region on the list, i.e., the one with the lowest number of new jobs created.

Example 2. In this example, the same instance cited in Example 1 is considered. Figure 3 shows the schedule after applying .

5.2. Heuristic 2: Nondecreasing Number of New Jobs Created ()

In this schedule, the total number of new jobs created for all projects is placed in a nondecreasing order. Lowest is then allocated to the first region on the list, i.e., the one with the lowest number of new jobs created. The schedule obtained after applying is as follows: region 1: and region 2: . Thus, .

5.3. Heuristic 3: Multifit Heuristic Based on the Number of New Jobs Created ()

This approximate solution is inspired by the machine job scheme presented by LEE and David Massey [28]. This method uses the bin-packing method for determining the minimum capacity that will allow all new jobs created to fit into the regions. For each bin capacity, the first-fit decreasing () method is employed for fitting the number of newly created jobs to the bin. Let us assume that the number of new jobs was ordered such that . The method successively assigns the project to the lowest indexed region with the necessary capacity for that respective number of new jobs. Hence, , and is the value achieved by applying the heuristic for . Here, denotes the number of bins used after applying , and is a predetermined, fixed number of iterations for . In this study, .

The algorithm is illustrated in Algorithm 1.

. Set , , and .
. Set . Set .
. Apply with capacity .
. If all projects can be assigned to regions, then set and go to Step 4; else, and go to Step 4.
. If then STOP; otherwise, go to Step 1.
. If or , then the result given by is accepted; otherwise, the result given by is accepted.

Example 3. Assume that, in case of industrial investment projects, the number of projects is equal to , i.e., . In addition, there are two regions, i.e., . Table 2 presents the number of new jobs created for each project.
For the instance given in Table 2, and . . Now, function should be applied for a capacity equal to and the items represented by instance after arranging them in the nonincreasing order The first bin contains items with weights , while the second contains items with weights . The first bin has a total load of , and the second has a total load of , giving . Comparing this value with the results obtained using , we see that the associated is equal to . This example shows that the results obtained using are better than those obtained using . However, the difference in the number of new jobs created in regions and after applying is only .



5.4. Heuristic 4: Subset-Sum Problem-Based Approach

This heuristic is based on a greedy algorithm. It is denoted by as follows:(i) and , where is an optimal subset sum for .(ii) denotes a valid lower bound for on the makespan of a reduced instance, defined by regions and a subset of the number of new jobs created . Hence, the first region will be the number of new jobs created until on is reached. The remaining number of new jobs created in the remaining regions will constitute the second problem , which will consist in solving the new until is reached, and so on [29]. The subset-sum problem will be solved by using the dynamic programming algorithm developed by Pisinger [30] to solve the subset-sum problem.

5.5. Heuristic 5: Knapsack Problem-Based Approach

This heuristic is based on the division of the main problem into smaller problems, each of which involves scheduling of the projects to regions. In the first region, a knapsack problem is used to assign a project to region 1, and the remaining projects are assigned to the remaining regions using a further knapsack problem, and so on. For each region, a knapsack problem must be solved as follows:(i) and , where is an optimal knapsack for .(ii), where is the number of remaining projects, and is the number of remaining regions. Hence, for the first region, the new jobs created are assigned until on is reached. The remaining number of new jobs created and the remaining regions form the second problem to be solved via a new knapsack problem until is reached, and so on.

5.6. Heuristic 6: Min-Max Iteration Heuristic ()

This heuristic is based on the reformulation of as a subset-sum problem [29]. In each iteration, the most loaded region and the least loaded region were fixed, and a subset-sum problem was solved with the projects assigned to and . This procedure was repeated several times, and the best solution was identified. The number of iterations was set to based on an experimental study.

6. Exact Solution

The exact solution was developed using the method.

Corollary 1. is equivalent to .

Proof. Proof. For each schedule, , and the objective of the studied problem can therefore be written as follows: . The total number of regions involved and the summation of all new jobs created are determined in advance and are fixed. This indicates that is equivalent to , which is equivalent to .

Lemma 1. The optimal solution to the approached problem is

Proof. Based on the Corollary 1 above, is equivalent to .
Based on the definition of , the problem is . Hence, is equal to .

7. Experimental Results

In this section, we present the results given after the implementation of all algorithms coded in C++ using an Intel(R) Xeon(R) CPU E5-2687W v4 @ 3.00 GHz and 64 GB RAM. Several instances and statistical analyses are presented in order to illustrate the results obtained by applying the algorithms described in the previous sections. Different instances were generated which were inspired by Dell’Amico and Martello [31]. The overall instances were based on the choice of , , and the type of new jobs created, which is denoted by . The selection of the pair was as follows: and . Table 3 shows the fixed distribution of .

The number of new jobs created was calculated according to the 5 distributions in the following, where denotes the discrete uniform distribution and the normal distribution.

: ; : ; : ; : ; and : . For each fixed (), 10 instances were generated, giving instances in total. The following notations were used:(i) indicates the best (minimum) value obtained after execution of all heuristics.(ii) represents the analyzed heuristic.(iii) is the number of instances for which the analyzed upper bound is equal to .(iv) represents the gap between the value obtained by applying the analyzed heuristic and the one obtained by executing the single best heuristic.(v) is the average for all heuristics.(vi) is the best (maximum) value obtained after execution of all lower bounds.(vii) is the lower bound for the problem.(viii) is the number of instances for which the analyzed lower bound is equal to .(ix) represents the gap between the value obtained by applying the analyzed lower bound and the one obtained by executing the single best lower bound.(x) is the average for all lower bounds.(xi) represents the time required to execute the heuristic or lower bound or exact solution for a corresponding instance. It is measured in seconds and is denoted by “” if it is less than .(xii) is the average time for all lower bounds (or heuristics). It is measured in seconds and is denoted by “” if it is less than .(xiii) is the average number of nodes created in the method.(xiv) is the total number of instances that is unsolved by the algorithm.

In this study, the aforementioned analyses are based on several criteria. The main criterion lies in analyzing the results obtained based on the variations in the gap and time according to the variation in , , and . A comparison between the lower bounds provides information on the time spent and the related gap.

The results of comparing the best lower bound and the best heuristic are significant. The average total gap between and in all instances is , with an average time of . This result was obtained based on the performance of the heuristic and lower bounds. Another notable result is the number of times that the lower bound was equal to the upper bound: from a total of instances (representing of the total number of instances). This indicates that the optimal solution is reached when the lower and upper bounds are calculated. An exact solution is required for only of the overall instances. It is worth mentioning that, for the lower bound which is based on the solution provided by the method, if the instance is not solved by the method, then the value of is not determined. In this case, the best lower bound for is chosen. The same procedure is followed for .

In Table 4, it is obvious that the gap increases when increases for . This phenomenon is not applicable for and . For , when , , and when , , but when , the value of the gap decreases to . The values of , as illustrated by Table 4, do not vary along with other values. The maximum time was 467.640 s and was reached when for the bound. This is because this last lower bound is a consequence of solving two different problems in an exact way. The shortest time was achieved for and was less than . The total minimum gap was and was obtained for .


Other analyses are illustrated in Table 5, which shows the variation in the gap and time according to the number of new jobs created.


Time increases when increases for and . The smallest gap of zero is obtained for when , and . The maximum gap value, which is , was obtained for when . The total maximum time was for . This explains the nonresolved exact solution provided by employing the method for calculation of .

Table 6 presents the variation in gap and time according to . Table 6 shows that all classes are approximately characterized by the same magnitude of difficulty.


In Table 7, indicates that the percentage of the analyzed lower bound is equal to the best value of all lower bounds for all total number of instances.


In Table 7, it can be noticed that the best lower bound, which reaches a maximum percentage of , is , with an average gap of and an average execution time of . The minimum percentage of approximately is obtained by , with a gap of and an execution time of .

Further information on the results obtained is included in Table 8.








To show how the analyzed heuristics perform, several tables of results are presented and discussed. The analyses are based on the variations in and with , , and . Table 9 presents the variations in gap and time based on the number of regions.


It is obvious in Table 9 that the heuristic has a constant gap of zero for all values of . The heuristics and are much faster than the others, and the necessary execution time for these heuristics is lower than . The maximum gap of is achieved for when . Furthermore, the highest time consumption of is seen for for . The results show that, in almost all cases, provides better results than other heuristics, but there is no dominance amongst the heuristics. Table 10 compares and based on .


As it can be noticed in Table 10, the gap does not vary along with the variation of values. The time increases according to for . The results of all executed heuristics are shown in Figure 4, where an increasing curve can be noticed.

From Table 11, it is vivid that there is a difference between the classes in terms of difficulty.


For the heuristic, the greatest values for the gap can be noticed for and 3, meaning that these classes are more difficult to solve than the others for . The same behavior was noticed for the , , , and heuristics. It can be concluded that this problem is more difficult to solve for and 3. Furthermore, this heuristic is more time-consuming, reaching for .

In Table 12, it is vivid that the best heuristic is , with the highest percentage of , an average gap of zero, and an average execution time of . The lowest percentage that is was obtained by , with a gap of and a time of less than . Further information on the results obtained is included in Table 13.









Now, the experimental study focuses on the gap between the values of the minimum heuristic and the maximum lower bound. This requires a comparison between the best lower bound () and the best heuristic (), denoted by . In Table 14, the maximum gap is , which is obtained when , and the average time is . For , , and , the gap is zero, indicating that the optimal solution is obtained.


Figure 5 shows the variation in with the number of new jobs created, which peaks when and tends asymptotically to zero when is higher.

Table 15 illustrates the impact of the number of regions on the analyzed problem and shows that the maximum gap of is reached when . However, a minimum gap of zero is reached for with a reasonable time of and for with a time of .


Table 16 shows the variation in and with . This table confirms once again that Classes 2 and 3 are more difficult to solve and require more time for that by comparison with Classes 1, 4, and 5. The maximum gap of is obtained for , and a value of is seen for .


The performance of the exact solution was determined by applying the method, and the time limit settled at . If the time required for solving an instance and obtaining the exact solution exceeded this time limit, the resolution process was stopped, and it was noted that the respective instance remained unresolved.

Table 17 presents the results obtained by employing the method based on the number of new jobs created. It is vivid that the number of unsolved instances is higher when with and for with . The corresponding numbers of nodes are and , respectively. However, when the number of new jobs created is greater than 100, the problem is solved rapidly and easily, with a time of for as compared with a time of for . A total of 70 instances remained unresolved when employing the method which represents of the total number of instances that is .


Table 18 shows that the instances that remained unresolved when using the exact method are concentrated for , , and . The maximum value of Time was observed when and was equal to .


Table 19 shows the differences between classes for the exact solution .


In Table 19, it obvious that the maximum number of unsolved instances was obtained for with . Further results obtained by employing the method is presented in Table 20.