The marginal wells in low-permeability oilfields are characterized by small storage size, scattered distribution, large regional span, low production, intermittent production, etc. The production mode of these wells is nonpipeline mode. In our previous work (Zhang et al., 2019), a novel mixed-integer linear programming (MILP) model using a discrete-time representation was presented for the operation scheduling of nonpipelined wells. However, too many discretization time points are required to ensure the accuracy of the model. Even for moderately sized problems, computationally intractable models can arise. The present paper describes a new continuous-time representation method to reformulate this schedule optimization problem. By introducing the continuous-time representation, the binary variables are largely reduced. The solution effect for different model sizes is also investigated. When the model size increases to a certain degree, a feasible solution cannot be obtained within a limited time. The results of a case study originated from a real oilfield in China show that the continuous-time model requires less time to obtain the optimal solution compared to the discrete-time model. In details, considering a same scale problem, the solution based on the continuous-time model saves 52.25% of the time comparing with the discrete-time model. The comparison validates the new model’s superiority.

Low-permeability oilfields are widely distributed in China, both large and medium-sized fields, as well as small ones. The wells in the marginal blocks with small reserve size, scattered distribution, and large regional span are artificial lift wells, which generally have low production, intermittent pumping, unreasonable operation parameters, difficult management, and low production timing. Establishing large-scale gathering pipelines in the marginal blocks, as shown in Figure 1(a), has high investment costs and low economic benefits. These wells are produced in a nonpipelined mode, i.e., using a single well tank to collect oil and tank trucks to transport oil periodically. The production mode for nonpipelined wells is shown in Figure 1(b), i.e., each well is equipped with one storage tank of known capacity, and there are several large storage tanks at the unloading point. The tank trucks depart from the garage and drive back and forth between each well and the unloading point to complete the crude oil transporting task.

Studies related to crude oil transportation scheduling can be broadly classified into two categories: pipelined network mode and nonpipelined well mode. As for pipelined mode, several mixed-integer linear programming (MILP) formulations have been proposed in the literature. Liao et al. presented a MILP model for detailed scheduling of a single-source multiproduct pipeline in pressure control mode, aiming to minimize pump cost and labor cost for pump shutdown/restart [1]. Mostafaei et al. addressed the scheduling of a multiproduct treelike pipeline through a MILP model that allows the execution of simultaneous deliveries from a unique refinery to multiple downstream terminals [2]. They also proposed a MILP model for the detailed scheduling of a straight pipeline with a single refinery and multiple depots [3]. Although plenty of valuable achievements have been made in transportation pipeline scheduling, the cost of pipeline construction is quite high in low-permeability fields with very low production per well.

For nonpipeline transportation problems, the research hotspots mainly focus on shuttle tanker scheduling in offshore oilfields [4, 5], which can be largely analogous to the classical vehicle routing problem (VRP) [6]. It focuses more on the type of transport vehicle (capacity limit) [7], single/multiple garages [8], time windows [9, 10], etc. The problem of crude oil production and transportation of nongathering and transporting oil wells studied in this paper has a certain correlation with VRP; that is, under a series of constraints, the optimal driving route and loading volume of tank trucks between garages, oil wells, and unloading points can be obtained. The difference is that in addition to the tank truck driving state, this paper considers the production process of the oil well; that is, the oil well is always in the production state during the scheduling period. So far, there are very few studies on crude oil scheduling in nonpipelined wells. Wang et al. studied petrol truck scheduling problem considering multipath selection and congestion, which is related to our work. Taking loading capacity, gas station demand, and unloading time window as constraints, they established an optimization model with the minimum cost of scheduling process as the objective function [11]. Our group members [12] presented the first paper on mixed-integer nonlinear programming (MINLP) model for crude oil production and transportation scheduling optimization of nonpipelined wells in 15th IEEE International Conference on Control and Automation (ICCA).

A large amount of very valuable research work has been done for the shuttle tanker scheduling problem with VRP in offshore oilfields, which also plays a key role in the research of this paper. Aspects that have been studied include heterogeneous tanker fleets, multiple products, port restrictions that limit access and cargo on board, physical restrictions on ships, and time windows [13]. Agra et al. developed two discrete-time models for a single-product maritime inventory routing problem (MIRP) [14]. As for large-scale refined oil shipping problem, Ye et al. developed two MILP models for the assignment between tasks, vessels, and timing issues. The first model uses a time-slot concept under a continuous-time representation, where the constraints that deal with vessel assignment, capacity, timing, demand, and slack stock control are considered. The second model uses a discrete-time representation with time assignment, portal counting, and strict stock control constraints [15]. Hennig et al. analogized the problem of shuttle tanker scheduling to a split pickup and split delivery problem [13] and formulated the problem as a path flow model with continuous loading and discharging variables. Later, they proposed a nested column generation approach [16]. All of the aforementioned scenarios for the scheduling of tanks in the marine crude oil transportation problem also provide the basis for the work presented in this paper.

It can be seen from the above analysis that in the process of building the model, according to the time-domain representation, all existing scheduling formulations can be classified into two main categories: discrete-time and continuous-time models [17, 18]. Based on the maximum common divisor of the process time parameters, the discrete-time model discretizes the entire scheduling horizon to obtain a number of time intervals of equal length, each of which requires variables and constraints to represent the occurrence or nonoccurrence of events, and each time interval is associated with each other through scheduling constraints. There are a large number of 0-1 variables and continuous variables in the discrete-time model, and the number of variables in the model grows exponentially as the case size increases, making it exceptionally difficult to solve. In addition, this modeling method discretizes the originally continuous-time, resulting in an inaccurate description of the actual situation. The main difference between discrete-time model and continuous-time model lies in the description of time. As shown in Figure 2, in the continuous-time model, the whole scheduling horizon is divided into several time intervals of different lengths according to the characteristics of the event itself, which requires continuous variables to represent the beginning and end moments of each time interval [19]. Although this introduces some big-M constraints, resulting in poor relaxation, and 0-1 variables are still required to represent the occurrence of events at each time interval in the continuous-time model, the number of 0-1 variables will be greatly reduced as the number of time intervals is greatly reduced (NH in Figure 2).

In the previous work, a discrete-time representation-based tank trucks scheduling optimization model of nonpipelined wells was proposed [12]. The comparison result shows its superiority over the widely used manual scheme. However, the unacceptable computational burden prevents its practical application use. The simulation experiments indicate that the large model scale is mainly caused by excessive discrete-time points, which balance the model precision and scale. Therefore, in this paper, we try to simplify the model formulation and reduce the solution time by introducing continuous-time representation.

This paper is organized as follows: first, the nonpipelined well scheduling problem is described in Section 2. The detailed mathematical model including the objective function and constraints is discussed in Section 3. A scheduling case originated from a real-world oilfield is shown in Section 4. Finally, conclusions are drawn in Section 5.

The tank truck scheduling problem for nonpipelined wells is studied in this paper. As shown in Figure 1(b), the nonpipelined wells are distributed across a large oilfield area. Each dedicated storage tank is linked to one particular oil well to receive the crude oil and its capacity is known as a priori. Several tank trucks travel between nonpipeline wells, garages, and unloading points. The unloading point has several big stock tanks to store the oil unloaded by tank trucks.

For this problem, the scheduling rules to be followed are listed as follows:

  • (a)

    Each tank truck can at most stay in one location at any time

  • (b)

    Each tank truck can have at most one task at any time

  • (c)

    Each well can only be visited by at most one tank truck at any time

  • (d)

    The tank truck must be in the garage at the initial and last moment

  • (e)

    All loaded oil must be unloaded at the unloading point before the tank truck returns to the garage

  • (f)

    Mass balance and capacity limit for all tanks should meet

The following information will be given:

  • (a)

    Capacity limitations and initial oil reserves of tank trucks, stock tanks, and unloading points

  • (b)

    The production rate of each well

  • (c)

    Loading and unloading capacity of tank trucks

  • (d)

    Time required for the tank truck to travel among wells, garages, and unloading points

  • (e)

    Time horizon under considered

Before outlining the mathematical model in the next section, we list the two assumptions pertinent to the problem.

  • (a)

    The production rate of the well is constant over the scheduling horizon. This is reasonable because the production rate period is longer enough than the scheduling horizon

  • (b)

    The tank truck travels at a constant flowrate all the way

To determine the following variables:

  • (a)

    Sequence and timing of tank trucks to garages, wells, and unloading points

  • (b)

    Time spent by tank trucks at oil wells, unloading points, and garages

  • (c)

    For each event, the amount of oil loaded by tank trucks at the well or unloaded at the unloading point

  • (d)

    The amount of oil stored in the respective tanks of tank trucks, wells, and unloading points during each event

The objective is to minimize the total travel time of all tank trucks. Based on the above description of the problem, the following mathematical model is proposed to solve it efficiently.

The constraints of the model proposed in this paper can be classified into three sets. Unlike the discrete-time model, the first set contains the time constraints that match a time point with the start (or finish) of an event. The second set contains tank truck scheduling among nonpipelined wells, unloading points, and garages. The last set contains the production constraints involving material balance and capacity constraints.

3.1. Time Constraints

The most difficult part of continuous-time modeling is the time description. Unlike the discrete-time model, in which each time interval of the time axis can be used to uniformly describe all scheduling objects, in the continuous-time model, different scheduling objects have their own time axis. For simplicity, set the same number of time intervals for all timelines. These scheduling objects also have corresponding relations in time. This is shown in Figure 3.

Take a tank truck loading oil from an oil well as an example. Tank truck k1 loads oil at well w1 during time interval 2. The start and end times describing the loading of oil by tank truck k1 are the same as the start and end times describing the unloading of oil from well w1, which belong to different time axes, and the time interval 2 of tank truck k1 corresponds exactly to the time interval 2 of well w1. And when tank truck k1 loads oil at well w1 again in the 4th time interval, the time interval corresponding to w1 is not equal to 4 but 6, because well w1 is loaded by truck k2, thus affects the time interval numbering. In most cases, the numbering of the corresponding time intervals between tank trucks and wells is not the same, which makes continuous-time modeling difficult because it is difficult to establish material balance constraints when the corresponding time intervals are marked differently. If the time interval corner markers are all represented by the same n, then after tank truck k1 loads a certain amount of oil in time interval 4, well w1 should be reduced by the same amount of oil in time interval 4, but in fact, the reduction of oil in well w1 occurs in time interval 6, which will lead to a wrong scheduling scheme or an unsolvable model. Therefore, time constraints need to be established to correctly describe their correspondence.

3.1.1. Constraints on the Correspondence between Different Timelines

Here, we set the tank truck, well, unloading point, and garage to belong to different timelines. The four types of scheduling elements, tank trucks, oil wells, unloading points, and garages, are given different time interval corner markers nN, n1N1, n2N2, and n3N3, representing the types of time intervals corresponding to the time axis of different scheduling elements. Among them, N=N1=N2=N3. The start and end times of each event on different timelines are described by Tksk,n, Tkfk,n, Twsw,n1, Twfw,n1, Tusu,n2, Tufu,n2, Tvsv,n3, and Tvfv,n3, respectively. To describe the correspondence between different time intervals, the 0-1 variables Wkwk,w,n,n1, Wkuk,u,n,n2, and Wkvk,v,n,n3 are introduced to indicate whether the n time interval of tanker k corresponds to the time intervals n1, n2, and n3 of the other three types of elements, respectively.
(1)H1Wkwk,w,n,n1Tksk,nTwsw,n1H1Wk,w,n,n1,kK,wW,nN,n1N1,(2)H1Wkwk,w,n,n1Tkfk,nTwfw,n1H1Wk,w,n,n1,kK,wW,nN,n1N1,(3)H1Wkuk,u,n,n2Tksk,nTusu,n2H1Wk,u,n,n2,kK,uU,nN,n2N2,(4)H1Wkuk,u,n,n2Tkfk,nTufu,n2H1Wk,u,n,n2,kK,uU,nN,n2N2,(5)H1Wkvk,v,n,n3Tksk,nTvsv,n3H1Wk,v,n,n3,kK,vV,nN,n3N3,(6)H1Wkvk,v,n,n3Tkfk,nTvfv,n3H1Wk,v,n,n3,kK,vV,nN,n3N3.

In the above constraints, U is a sufficiently large number.

3.1.2. Event Duration Constraints

Constraints (7)–(11) are used to specify the driving time between different places.
(7)H1Xvwk,v,w,nTkfk,n+1Tksk,n+1Tijv,wH1Xvwk,v,w,n,kK,vV,wW,nN,(8)H1Xwwk,w,w2,nTkfk,n+1Tksk,n+1Tijw,w2H1Xwwk,w,w2,n,kK,wW,w2W,ww2,nN,(9)H1Xuwk,u,w,nTkfk,n+1Tksk,n+1Tiju,wH1Xuwk,u,w,n,kK,uU,wW,nN,(10)H1Xwuk,w,u,nTkfk,n+1Tksk,n+1Tijw,uH1Xwuk,w,u,n,kK,wW,uU,nN,(11)H1Xuvk,u,v,nTkfk,n+1Tksk,n+1Tiju,vH1Xuvk,u,v,n,kK,uU,vV,nN.

3.1.3. The End Time of the Same Event Must Not be Earlier than the Start Time

(12)Tksk,nTkfk,n,kK,nN,Twsw,n1Twfw,n1,wW,n1N1,Tusu,n2Tufu,n2,uU,n2N2,Tvsv,n3Tvfv,n3,vV,n3N3.

3.1.4. The Constraints between the End Time and the Start Time of an Adjacent Event

(13)Tkfk,nTksk,n+1,kK,nN,Twfw,n1Twsw,n1+1,wW,n1N1,Tufu,n2Tusu,n2+1,uU,n2N2,Tvfv,n3Tvsv,n3+1,vV,n3N3.
  • (a)

    Time bound settings

(14)Twsw,n1=0,wW,n1N1,Twfw,n1=H,wW,n1N1,Tksk,n=0,kK,nN,Tkfk,n=H,kK,nN,Tusu,n2=0,uU,n2N2,Tufu,n2=H,uU,n2N2,Tvsv,n3=0,vV,n3N3,Tvfv,n3=H,vV,n3N3.

To ensure that the problem has a solution, we set an upper bound on all the time variables.

3.2. Logistic Constraints

3.2.1. Single State Constraints

Any tank truck can only be in one state at any given time.
(15)wXSk,w,n+uYSk,u,n+vZSk,v,n1,kK,nN,(16)vVZSk,v,1=1,kK,(17)vVZSk,v,Nmax=1,kK,
where XSk,w,n, YSk,u,n, and ZSk,v,n indicate whether tank truck k is located at the well w, unloading point u and garage v, during event n, respectively. Constraints (16) and (17) indicate that the tank truck must be in the garage at the beginning and end of the time horizon.

3.2.2. Single Task Constraints

Any tank truck can only have one task at any given time.
(18)vVwWXvwk,v,w,n+w2WwWXwwk,w2,w,n+uUwWXuwk,u,w,n+wWuUYk,w,u,n+uUvVZk,u,v,n1,kK,nN,(19)Xwwk,w,w,n=0,kK,wW,nN,
where Xwwk,w,w2,n indicates whether tank truck k departs from well w to well w2 during event n. Similarly, we have variables Xuwk,u,w,n, Xvwk,v,w,n, Yk,w,u,n, andZk,u,v,n. Constraint (19) indicates that if w is equal to w2, Xwwk,w,w2,n is equal to 0.

3.2.3. Single Visit Constraints

Each well can only be visited by at most one tank truck at any time.
(20)kXSk,w,n1,wW,nN.

3.2.4. Constraints on Tank Truck Traveling

Constraint (21) indicates that if tank truck k is in the garage during event n (ZSk,v,n=1) and it is not in the garage during event n+1 (ZSk,v,n+1=0), then the tank truck k must be going from the garage to well w at the end of event n (wWXvwk,v,w,n=1). Constraint (22) indicates that if tank truck k is located in the well w during event n (XSk,w,n=1) and it is not in the well w during event n+1 (XSk,w,n+1=0), then the tank truck k may travel from this well w to well w2 or the unloading point u at the end of event n (w2WXwwk,w,w2,n+uUYk,w,u,n=1). Constraint (23) indicates that if tank truck k is located in the unloading point u during event point n (YSk,u,n=1) and it is not in the unloading point u at the end of event n (YSk,u,n+1=0), then the tank truck k may travel from unloading point u to well w or the garage at the end of event n (wWXuwk,u,w,n=1).
(21)ZSk,v,nZSk,v,nZSk,v,n+1=wWXvwk,v,w,n,kK,vV,nNmax1,(22)XSk,w,nXSk,w,nXSk,w,n+1=w2WXwwk,w,w2,n+uUYk,w,u,n,kK,wW,nNmax1,(23)YSk,u,nYSk,u,nYSk,u,n+1=wWXuwk,u,w,n,kK,uU,nNmax1.

There are nonlinear terms in equations (21), (22), and (23). They are the products of two binary variables. You and Grossmann [20] presented a reformulation method for the bilinear terms by introducing additional variables. We reformulate them similarly as follows.

The bilinear terms are ZSk,v,nZSk,v,nZSk,v,n+1, XSk,w,nXSk,w,nXSk,w,n+1, and YSk,u,nYSk,u,nYSk,u,n+1. We reformulate these three terms, respectively, as follows.

For ZSk,v,nZSk,v,nZSk,v,n+1 in equation (21), we introduce an auxiliary binary variable, AXSk,v,n, and the following auxiliary constraints (24) and (25) to realize its linearization. After reformulation, we linearized the constraints (21)–(26).
(24)ZSk,v,nZSk,v,nZSk,v,nZSk,v,n+1=wWXv,w,k,n,kK,vV,nN,(25)ZSk,v,nZSk,v,nZSk,v,n+1=wWXv,w,k,n,kK,vV,nN,(26)ZSk,v,nAZSk,v,n=wWXv,w,k,n,kK,vV,nN.
Similarly, by introducing AYSw,k,n and AZSv,k,n, following two linearized constraints (27) and (28) can be obtained from constraints (22) and (23).
(27)XSk,w,nAXSk,w,n=w2WXk,w,w2,n+uUYk,w,u,n,kK,wW,nN,(28)YSk,u,nAYSk,u,n=wWXk,u,w,n+vVZk,u,v,n,kK,uU,nN.
Constraint (29) indicates that if tank truck k moves from unloading point u to the garage during event n1, then the tank truck k must be in the garage during the event n and it must not be in the garage during the event n1. Constraint (30) indicates that if tank truck k moves from the garage, well w2, or unloading point u to the well w during the event n1, then the tank truck k is in well w during event n and it must not be in well w during the event n1. Constraint (31) indicates that if tank truck k moves from well w to the unloading point u during event n1, then the tank truck k must be in the unloading point during the event n and it must not be in unloading point during the event n1.
(29)wWZk,u,v,n1=ZSk,v,nZSk,v,nZSk,v,n1kK,uU,nN,n2,(30)vVXvwk,v,w,n1+w2WXwwk,w2,w,n1+uUXuwk,u,w,n1=XSk,w,nXSk,w,nXSk,w,n1kK,uU,nN,n2,(31)wWYk,w,u,n1=YSk,u,nYSk,u,nYSk,u,n1kK,uU,nN,n2.
According to the above linearization method, the constraints (29), (30), and (31) are linearized to obtain
(32)vVXk,v,w,n1+w2WXk,w2,w,n1+uUXk,u,w,n1XSk,w,nAXSk,w,n1,kK,wW,nN,(33)wWYk,w,u,n1YSk,u,nAYSk,u,n1,kK,uU,nN,(34)uUZk,u,v,n1ZSk,v,nAZSk,v,n1,kK,vV,nN.
In addition, for auxiliary variables, we have the following constraints:
(35)AZSk,v,nZSk,v,n,kK,vV,nN,(36)AZSk,v,nZSk,v,n+1,kK,vV,nN,(37)AZSk,v,nZSk,v,n+ZSk,v,n+11,kK,vV,nN,(38)AXSk,w,nXSk,w,n,kK,wW,nN,(39)AXSk,w,nXSk,w,n+1,kK,wW,nN,(40)AXSk,w,nXSk,w,n+XSk,w,n+11,kK,wW,nN,(41)AYSk,u,nYSk,u,n,kK,uU,nN,(42)AYSk,u,nYSk,u,n+1,kK,uU,nN,(43)AYSk,u,nYSk,u,n+YSk,u,n+11,kK,uU,nN.

The constraints (35)–(37) ensure that if ZSv,k,n is 1 and ZSv,k,n+1 is 1, AZSv,k,n should be 1. Similarly, we have constraints (38)–(40) and constraints (41)–(43).

3.3. Production Constraints

3.3.1. Material Balance Constraint

The following constraints are the material balance of the tank trucks, oil well tanks, and the unloading points, respectively.

When n=1,
(44)Vkk,1=Vkok+wVloadk,w,1uVunloadk,u,1,kK,Vww,1=Vwow+qwTwfw,1Twsw,1Vwunloadw,1,wW,Vuu,1=Vuou+Vuloadu,1,uU.
When n2,
(45)Vkk,n=Vkk,n1+wVloadk,w,nuVunloadk,u,n,kK,nN,Vww,n1=Vww,n11+qwTwfw,n1Twsw,n1Vwunloadw,n1,wW,n1N1,Vuu,n2=Vuu,n21+Vuloadu,n2,uU,n2N2,
where Vkk,n denotes oil amount of tank truck k at the end of event n, Vloadk,w,n denotes the amount of oil that tank truck k loads from well w during event n, Vunloadk,u,n denotes the amount of oil that tank truck k unloads in unloading point u during event n, Vww,n1 denotes oil capacity of well w at the end of event n1, qw denotes the production rate of well w, Twfw,n1 and Twsw,n1 denote the ending time and starting time in well w during event n1, Vwunloadw,n1 denotes the amount of oil output from the well w during event n1, Vuu,n2 denotes oil amountof unloading point u at the end of event n2, and Vuloadu,n2 denotes the amount of oil input to the unloading point during event n2. Note that we define nN, n1N1, n2N2, and n3N3 to represent events corresponding to the tank truck, the well, the unloading point, and the garage, respectively.

3.3.2. Capacity Constraint

The inventory must lie between its minimum and maximum bounds for the tank trucks, oil well tanks, and the unloading points, respectively.
(46)Vkk,nVkmax,kK,nN,Vww,n1Vwmax,wW,n1N1,Vuu,n2Vumin,uU,n2N2,Vuu,n3Vumax,uU,n3N3.

3.3.3. Loading and Unloading Capacity Constraints

Constraints (47) and (48) impose limits on the loading and unloading of tank trucks.
(47)Vloadk,w,nTkfk,nTksk,nVloadU,kK,wW,nN,(48)Vunloadk,u,nTkfk,nTksk,nVunloadU,kK,uU,nN,
where VloadU and VunloadU denote the upper limit of loading flowrate and unloading flowrate, respectively.

3.3.4. Loading and Unloading Balance Constraint

Constraints (49) and (50) indicate that if two events correspond to each other, the amount of loading and unloading oil in the corresponding event is equal.
(49)H1Wkwk,w,n,n1Vwunloadk,w,n1Vloadk,w,nH1Wkwk,w,n,n1,kK,wW,nN,n1N1,(50)H1Wkuk,u,n,n2Vunloadk,u,nVuloadk,u,n2H1Wkuk,u,n,n2,kK,uU,nN,n2N2,(51)AXSk,w,n1=n1Wkwk,w,n,n1,kK,wW,nN,(52)AYSk,u,n1=n2Wkuk,u,n,n2,kK,uU,nN,(53)AZSk,v,n1=n3Wkvk,v,n,n3,kK,vV,nN,
where Wkwk,w,n,n1 denotes whether the event n of tank truck k corresponds to the event n1 of well w. Similarly, we have Wkuk,u,n,n2 and Wkvk,v,n,n3. Constraints (51)–(53) are used to determine if Wkwk,w,n,n1, Wkuk,u,n,n2, or Wkvk,v,n,n3 is 1. The matching relationships in terms of time axes will be detailed in the next section.
For wells, unloading points, and tank trucks, the amount of oil to be loaded and unloaded throughout the time horizon is balanced. So, we have the following constraints:
(54)n1Vwunloadk,w,n1=nVloadk,w,n,k,w,(55)nVunloadk,u,n=n2Vuloadk,u,n2,k,u,(56)wWnNVloadk,w,n=uUnNVunloadk,u,n,k.

3.4. Objective Function

The objective is to minimize the total tank truck travel time, as shown
(57)f=k,v,w,nTijv,wXvwk,v,w,n+k,w,w2,nTijw,w2Xwwk,w,w2,n+k,w,u,nTijw,uYk,w,u,n+k,u,w,nTiju,wXuwk,u,w,n+k,u,v,nTiju,vZk,u,v,nk,w,nVloadk,w,n.

So the MILP model’s objective is to minimize the f in equation (57) subject to the constraints in equations (1)–(20), (26)–(28), and (32)–(56).

In this section, firstly, a small case is shown to verify the reasonability of the model. Then, comparison with the discrete-time model is also made. All cases are solved by CPLEX in GAMS 24.7.3 using a CPU Intel Core i5-7200U @ 2.5GHz with RAM 8.00GB. The relative optimal tolerance (OPTCR parameter) used in GAMS is 0.0.

Parameters used in this paper, such as tank truck capacity limit, well capacity limit, unloading point reserve limit, upper and lower limit of loading and unloading flowrate, the wells’ production rates, and the time required for the tank truck to drive between the central station, oil wells, and unloading point, can be found in the Supporting Information.

Clearly, the model size and solution feasibility are drastically affected by the event number N. From the viewpoint of computation, on the one hand, the cardinality of the sets N should be as small as possible to reduce computational burdens. On the other hand, it should be large enough so that no feasible solutions are excluded. The event number is undoubtedly dependent on the number of nonpipelined wells as well as the number of tank trucks.

In this paper, after lots of experiments, in order to determine the number of events required for cases of different sizes, the following guidance equation is proposed:
(58)N=2×WK+K,
where is the cardinality operator, is the downward integer operator, W is the set of nonpipelined wells involved in the case, K is the set of tank trucks, and N is the number of events required.

4.1. Case 1

In order to illustrate the correctness of the model, a small case is first set up for analysis. The case contains one garage, 4 tank trucks, 10 wells (10 stock tanks), and one unloading point. According to equation (58), case 1 should have 10 events. The statistics and solutions are shown in Table 1.

From Table 1, we can see that it takes just 1218 iterations to find a solution for this small case. The relative gap is 0.00, which means that the solution is of good quality.

The scheduling Gantt chart for this case is shown in Figure 4. First, we number all the scheduling elements for the convenience of illustration. The garage is numbered 0, and 10 wells are numbered from 1 to 10, and the unloading point is numbered 11. In the Gantt chart, the gray, red, and blue rectangles denote the traveling, loading oil, and unloading oil of the tank truck, respectively. The numbers above the red and blue rectangles represent the amount loaded or unloaded during that time interval, respectively. The numbers in the red and blue rectangles represent the time spent on loading or unloading during that event, respectively. And the numbers below both sides of the gray rectangles represent the location of the tank truck at that moment, which also implies the route of the tank truck.

We take tank truck 1 as an example to describe a complete scheduling process in detail. Truck 1 departs from garage 0 to well 8 at the start of event 1 and arrives at well 8 at the end of event 1, and then, it starts loading oil and 1.667 cubic meters of crude oil is loaded in 10 minutes. Then, it goes to well 1 and loads 3.333 cubic meters of oil in 20 minutes. After that, it goes to well 2 and loads 5 cubic meters of oil in 30 minutes. At this time, the capacity of the tank truck 1 has reached the upper limit of capacity, so it goes to the unloading point. At last, it unloads all the loaded oil at unloading point 11 and arrives at the garage at the end of the scheduling horizon.

4.2. Case Comparison

The problem size of the two cases and the statistics and solutions of these two cases are summarized in Table 2. To make comparisons, case 2 is similar to the case adopted in the previous work [12].

Through the comparison of case 2, because the number of events given in the continuous-time model is much smaller than the number of time intervals in the discrete-time model, the number of binary variables is also greatly reduced. Also, the number of iterations required for solution and time required for solution in the continuous model are all significantly reduced. The discrete-time model obtained a feasible solution with a gap of 0.79, while the continuous-time model obtains a better solution with a gap of 0.61. When the number of oil wells and tankers is constant, the scheduling result of the discrete-time model shows that it takes 2400 minutes to transport oil, while the scheduling result of the continuous-time model shows that it takes 1146 minutes to transport oil, which is 52.25% less than that of the discrete-time model. The computational burden has been greatly reduced.

In addition, because time constraints are introduced in the continuous-time model to determine the start and end times of each event, there are more constraints than the discrete-time model. The scheduling Gantt chart for this case is shown in Figure 5.

In order to explore the relationship between model size and solution efficiency of continuous-time model, this section attempts to solve larger cases. In order to avoid interference from other factors, only the number of oil wells is set to change, and the number of events, garages, tank trucks, and unloading points remains consistent. In order to avoid the infeasible solution caused by insufficient tank trucks due to the increase in the number of oil wells, the initial number of tank trucks is set as a large number. Although it will result in the waste of tank truck capacity and the increase of model scale, it does not affect the law between the number of wells and the solution efficiency. There are 6 tank trucks. The number of oil wells is changed from 30, and the initial feasible solution and the time for obtaining the initial feasible solution were recorded. The maximum running time of the model is set as 10000 s, and the results when the solution is stopped and the change of GAP value during the solution process are also recorded. The scale of the solution model for different number of wells is shown in Figure 6, and the solution results for different number of wells are shown in Figure 7.

Figure 6 shows that as the number of wells increases, the number of constraints, variables, and binary variables increases proportionally. However, the solution results in Figure 7 show that the time of the initial feasible solution of the model does not increase proportionally with the model size, and when the number of oil wells reaches 45, the feasible solution cannot be obtained within 10000 seconds. It is indicated that the model size of 45 wells and 6 tank trucks has reached the model solution limit in the 10000 s solution time. The final objective value, the time required to complete all the transport tasks, does not follow a clear pattern because the distance between wells is irregular. When the new oil well is far away from the existing oil well, the tank truck will inevitably drive a certain long time in order to load oil from this distant oil well.

In this paper, based on the discrete-time model, a novel continuous-time representation-based tank truck scheduling MILP model for the nonpipelined wells has been proposed aiming at reducing the number of binary variables and computation burden. The objective of the model is to minimize the total tanker travel time, and three types of constraints are considered: scheduling constraints, production constraints, and time constraints. Compared with the discrete-time model, the continuous-time model has less binary variables and has better initial feasible solutions. The effect of model size on the solution is also investigated in this paper. When the model increases to a certain size, the feasible solution cannot be obtained within a limited time. Moreover, the solution performance indicates that the proposed model lays foundation for further practical use.

The known parameters used in the case study are shown in the Supporting Information.

The authors declare no competing financial interest.

This research was supported by the National Natural Science Foundation of China (Nos. 51974327 and 21706282), the National Key Research and Development Program of China (No. 2016YFC0303703), the Key R&D Program of Anhui Province (No. 201904a05020028), the Science Foundation of China University of Petroleum, Beijing (Nos. 2462020BJRC004 and 2462020YXZZ023).

Exclusive Licensee GeoScienceWorld. Distributed under a Creative Commons Attribution License (CC BY 4.0).