Optimization Models and Algorithms for Services and Operations Management
View this Special IssueResearch Article  Open Access
Xiaobo Qu, Wen Yi, Tingsong Wang, Shuaian Wang, Lin Xiao, Zhiyuan Liu, "MixedInteger Linear Programming Models for Teaching Assistant Assignment and Extensions", Scientific Programming, vol. 2017, Article ID 9057947, 7 pages, 2017. https://doi.org/10.1155/2017/9057947
MixedInteger Linear Programming Models for Teaching Assistant Assignment and Extensions
Abstract
In this paper, we develop mixedinteger linear programming models for assigning the most appropriate teaching assistants to the tutorials in a department. The objective is to maximize the number of tutorials that are taught by the most suitable teaching assistants, accounting for the fact that different teaching assistants have different capabilities and each teaching assistant’s teaching load cannot exceed a maximum value. Moreover, with optimization models, the teaching load allocation, a timeconsuming process, does not need to be carried out in a manual manner. We have further presented a number of extensions that capture more practical considerations. Extensive numerical experiments show that the optimization models can be solved by an offtheshelf solver and used by departments in universities.
1. Introduction
Teaching assistants (TAs) are essential in many departments in universities because of limited numbers of lecturers. TAs are mainly postgraduate students, though in some universities TAs can also be undergraduate students. TAs are usually in charge of teaching tutorials in small classes. TA allocation, that is, which TA teaches which tutorial, is an essential task that is carried out in a department every semester. It has been well recognized that appropriate teaching staff allocation contributes to the equality of teaching [1, 2]. The teaching assistants are usually reallocated every semester. This is due to the following two reasons: () changes of staff (some TAs are no longer available because they have graduated or have other commitments and new TAs are available) and () changes of programs (some tutorials are cancelled and some new tutorials are developed).
There are many factors to consider in TA assignment. First, all tutorials must be taught in order to satisfy the needs of the teaching programs. Second, a TA should not be allocated a higher teaching load other than what is required by her/his role because of her/his limited available time. Third, TAs should teach tutorials that they are proficient with; otherwise it will cost them a lot of preparation time and the teaching outcomes will not be ideal. Fourth, we should consider whether two tutorials are delivered at the same time, and if so, they cannot be taught by the same TA. Fifth, it is easy to see that if a TA teaches several tutorials of the same lecture, in other words, repeating the tutorials, then it is easier for the TA to save time for preparation. Sixth, it might be difficult for a lecturer to manage if there are too many TAs for the lecturer and hence it may be desirable to control the number of TAs for a lecturer.
Our personal experiences show that almost all departments allocate teaching assistants manually in a trialanderror manner. As we all know, this allocation is very timeconsuming process and may lead to unfavorable results which may jeopardize the teaching quality. In this regard, it is imperative and of vital significance to develop a systematic tool in order to better allocate the teaching assistants in a more efficient manner.
1.1. Literature Review
It is universally acknowledged that improving the teaching quality is the number one concern in all teaching activities. Academics have developed a number of new educational theories and pedagogical techniques to meet the teaching requirements in view of the changing society (e.g., [3, 4]). Some studies are related to the timetabling of educational organizations. Valouxis and Housos [5] applied a constraint programming approach to solve a high school timetabling problem considering various practical constraints. Beligiannis et al. [6] proposed an adaptive algorithm to address the timetabling problem of an educational institute. Pillay and Banzhaf [7] examined the use of genetic algorithms to address an examination timetabling problem. A category of research that is more closely related to ours is optimization models proposed to better allocate teaching load for full time academic teaching staff in a teaching unit. For example, Breslaw [8] was among the first to develop a linear programming model to address a teaching staff assignment problem. His objective was to maximize the preference of the faculty members. Schniederjans and Kim [9] adopted a different mathematical approach—a goal programming model—to optimize the overall benefit to the teaching department. Badri [10] developed a more complex model that consists of a twostage multiobjective scheduling approach. The objectives are twofold: first, the preference for tutorials by faculty members is incorporated; second, the time slots of the tutorials that are preferred by faculty members are also considered. Qu et al. [11] developed a very simple model for assignment lecturers to classes and tested the model with data from a university in Australia. As discussed in Badri [10], the abovementioned mathematical approaches could improve teaching quality by maximizing the preference of the faculty members. However, two key issues are neglected in the abovementioned studies. First, as the focus of teaching activities is to improve or guarantee the teaching quality, the teaching quality should be considered as the objective to maximize, rather than a constraint in the optimization model. In other words, teaching quality is much more important than faculty preference as the former is the number one concern in all teaching activities. Second, the abovementioned studies are mainly focused on teaching load allocation for full time academic staff, while the arrangement for teaching assistants is mostly treated in a very simple way, which may lead to unreliable results.
In most teaching units, teaching assistants are Ph.D. or senior students and they are working as teaching assistants on a part time basis. As a result, it is not appropriate to assign heavy teaching loads to them, due to the fact that they need to focus on their own studies/research. In this regard, the workload equity, namely, the workload of a teaching assistant should be in line with his or her availability, is also very important. Burgess [12] did a comparison study regarding different methods for allocating teaching tasks to faculty members. Vardi [13] carried out a similar work with the objective of analyzing the impacts of workload allocation on the satisfaction of working life of faculty members. Bentley and Kyvik [14] compared the teaching workload allocation statuses in a number of countries. There are a number of works related to the relations between research and teaching for academic staff (e.g., [15–18]). It should be stressed that all of the studies realized that equity has a vital impact on academics’ satisfaction. Unfortunately, two issues are not properly addressed. First, the equity issue is largely neglected in the above teaching load allocation optimization models. Second, to the best of our knowledge, there is no research which focuses on the equity issue for teaching assistants.
In this study, we aim to develop teaching assistant assignment models in order to optimize the teaching quality by taking into account various constraints such as equality and availability of teaching assistants. The model can improve the “fitness” between teaching assistants and tutorials without jeopardizing the equity issue of teaching assistants. Further, this proposed model will reduce the workload for school heads, managers, or program coordinators by automatically selecting the optimal solutions.
1.2. Objectives and Contributions
The objective of this research is to develop mixedinteger programming models [19–23] that are able to generate the optimal allocation plan of teaching assistants. The contribution of the paper is threefold: First, we develop a new approach that is able to enhance the overall teaching performance or quality of a teaching unit essentially at no cost. This is due to the fact that our model enables more teaching assistants to teach tutorials that they are competent at. As a result, the teaching assistants’ satisfaction can be improved and teaching quality is accordingly improved. The basic assumption is very reasonable: the teaching quality is positively related to the “fitness” between teaching assistants and tutorials that they teach. However, it is very challenging if we want to reach the optimal solution manually: one cannot guarantee that the optimal decision is made. By contrast, mathematical programming approaches could obtain optimal decisions for department heads to assign the teaching tasks.
Second, this allocation is usually done by senior academics (e.g., head of school, deputy head of school, department chair, school manager, and program coordinator). They are naturally very busy with their teaching, research, supervision, and other commitments. Our model can save the valuable time for these academics.
Third, the model considers the maximum teaching load of each teaching assistant. Teaching assistants are usually on a parttime basis. Imposing too much teaching to them will jeopardize their performance in their full time commitment (i.e., study/research). If this allocation is carried out manually by senior academics, it is likely that the maximum teaching is violated due to the fact that manual checking is very timeconsuming. This deficiency can be completely overcome using our models.
Fourth, we also consider whether two tutorials are delivered at the same time, and if so, they cannot be taught by the same TA.
Fifth, it is easy to see that if a TA teaches several tutorials of the same lecture, in other words, repeating the tutorials, then the TA can save time for preparation. Our model thus aims to increase the number of tutorial repetitions.
Sixth, it might be difficult for a lecturer to manage if there are too many TAs for the lecturer and hence it may be desirable to control the number of TAs for a lecturer. This factor is also formulated in our model.
The remainder of this paper is organized as follows. Section 2 describes considerations in teaching assistant allocation. Section 3 builds a basic integer linear optimization model. Section 4 reports a number of practical extensions to the basic model. The results of numerical experiment are reported in Section 5. Conclusions are presented in Section 6.
2. Problem Description
This study examines the allocation of teaching assistants at a department or school. In a department, many tutorials for undergraduates and postgraduates are taught by teaching assistants. A teaching assistant has limited time that can be spent on teaching. Different teaching assistants have different maximum numbers of teaching hours because (i) they have different availability and (ii) they have different willingness to teaching. In reality, most teaching assistants are Ph.D. students in a teaching unit. Some students have research scholarships which limit the number of hours that they can spend in teaching, while the others have no scholarships so that the number of hours that they can spend in teaching is only limited by the visa requirement (for international Ph.D. students). As different teaching assistants have different expertise, we classify the relation between a tutorial and a teaching assistant into three types. (i) In the first type, the teaching assistant is unable to teach that tutorial. For example, in a department of mathematics, a teaching assistant with expertise in statistics cannot teach the tutorial for “Group Theory.” (ii) In the second type, the teaching assistant can teach a tutorial, but it is not the most suitable person. For example, a teaching assistant with expertise in the structural engineering can teach the elective tutorial “Introduction to Geotechnical Engineering” for civil engineering students, but she/he is not the most suitable person for teaching it, as a teaching assistant with the expertise in geotechnical engineering is more suitable. (iii) In the third type, the teaching assistant is one of the most suitable persons to teach a tutorial. For example, a teaching assistant with expertise in transport engineering should teach the tutorial “Traffic Flow Theory” or “Traffic Engineering Fundamentals” if possible. Another example is that if the teaching assistant taught this tutorial and was highly appraised last year, she or he should also teach it this year if possible.
We can now see that the purpose of optimizing the allocation of teaching assistants includes constraints that all tutorials are taught and that the available teaching time of teaching assistants is satisfied and an objective of maximizing the total number of tutorials delivered by the most appropriate teaching assistant. At the same time, some other practical factors must also be taken into account. For instance, we should consider whether two tutorials are delivered at the same time, and if so, they cannot be taught by the same TA; it is easy to see that if a TA teaches several tutorials of the same lecture, in other words, repeating the tutorials, then the TA can save time for preparation; it might be difficult for a lecturer to manage if there are too many TAs for the lecturer and hence it may be desirable to control the number of TAs for a lecturer.
3. Basic Optimization Model
To address the teaching assistant (TA) assignment problem, we develop an integer optimization model similar to Qu et al. [11]. However, we will present rich extensions to the basic optimization in the next section. The notations used in the basic optimization model are listed below.
Sets : set of tutorials : set of tutorials that TA may teach; : set of TAs : set of TAs who can deliver tutorial ; : set of TAs who cannot deliver tutorial : set of TAs who can teach but are not the most suitable for delivering tutorial : set of TAs who are the most suitable for delivering tutorial
Indices : an index that refers to a particular tutorial : an index that refers to a particular TA
Parameters : the minimum number of tutorials that must be delivered by TA : it can be set at 0 if there is no such requirement : the maximum number of tutorials that can be delivered by TA : the number of contact hours required for tutorial : in practice, is usually 1, 2, or 3 hours : the minimum number of available hours per week for TA : the maximum number of available hours per week for TA
Decision Variables : a binary decision variable which equals 1 if TA delivers tutorial and 0 otherwise
The above sets and parameters well capture the real decision process. For instance, the sets , , and can be determined by a survey of the TAs. The survey can have one question for each tutorial, in which each TA must choose one from the following three answers: (a) I like to teach this tutorial very much; (b) This tutorial is not my favorite, but I can teach it if required; (c) I cannot teach this tutorial. Sets , , and are mutually exclusive and collectively exhaustive; . The teaching load allocation problem for TAs can be formulated as an integer linear programming model:The objective function (1) maximizes the total number of tutorials that are taught by the most suitable TAs. Equation (2) imposes that all tutorials are taught. Equations (3) and (4) take into account the available time of each TA. Finally, (5) defines the domains of the decision variables.
Proposition 1. The above integer linear programming model cannot be solved as a linear program.
Proof. We construct an example to show that relaxing the integrality constraints may not lead to a correct solution. Suppose that there are two TAs and one tutorial; the tutorial requires two hours; the first TA is the most suitable but has only one available hour; the second TA, with two available hours, can teach the tutorial but is not the most suitable. It is evident that the only feasible solution to the problem is to let the second TA teach the tutorial. However, solving a linear program will require the first TA to teach for one hour and the second TA to teach for one hour.
The size of the above integer linear programming model is usually not large for several reasons. First, many courses do not have tutorials. Second, even in one department, there are several areas of specialization and TAs in one area of specialization can usually only teach tutorials for courses in this area. For example, in a mathematics department, there are at least three areas: pure mathematics, applied mathematics, and statistics. Even in the area of applied mathematics, there is, for instance, financial mathematics, chemical mathematics, medical mathematics, and operations research. TAs in one subarea may not be able to teach tutorials in other subareas. As a result, the overall model for a department can be decomposed for each area or subarea. Our numerical experiments in Section 5 show that the model can be solved by offtheshelf solvers such as CPLEX.
4. Extensions to the Basic Integer Programming Model
The above basic integer linear programming model captures the most essential features of the TA assignment problem. However, there are many other realistic factors that must be addressed before the above model can be put into use directly or put into use after minimal manual adjustment. We elaborate these factors and present approaches on how to model these factors.
4.1. Time Conflict of Two Tutorials
Usually the schedules of the tutorials are a priori determined. For instance, if the course “Basics of Calculus” has 3 tutorials, then the 3 tutorials are usually scattered uniformly in a week. As a result, it is likely that one tutorial (say, tutorial is from 4:00 pm to 5:00 pm on Monday) has time overlap with another tutorial (say, tutorial is from 3:00 pm to 5:00 pm on Monday). In this case, the two tutorials cannot be taught by the same TA.
To address this difficulty, we define a new binary parameter , which equals 1 if and only if tutorial and tutorial have no time conflict, meaning that they could be taught by the same TA. We add the following constraints to the basic model to formulate the time constraints:Equation (6) means that, for each TA , if two tutorials and have time conflict, that is, , then the TA can teach at most one of them because .
Proposition 2. In constraints (6) if there are a set of tutorials denoted by such that , , , and , then we can strengthen the constraints by combining some of them to one constraint:
Proof. The results hold trivially based on observation.
4.2. Repetition of Tutorials
Some tutorials may belong to the same course, for example, “Basics of Calculus,” and in these tutorials TAs deliver the same contents to students. The tutorials are repeated for two reasons. First, the tutorial class can have a small size of students to facilitate interactions among the students and between students and the TA. Second, repeating the tutorials could provide students with the flexibility of choosing the time slot, choosing the TA, and possibly attending the tutorial twice to improve the learning outcomes. It is convenient for a TA to teach several tutorials that belong to the same course so that she could save time for preparation.
To incorporate the advantage of assigning several tutorials that belong to the same course to one TA, we first define a weight to represent the benefit of assigning one more same tutorial to a TA. The weight should be understood to be the value of the saved preparation time by TA. We further define a set to be the set of courses with at least two tutorials. The set of tutorials that belong to course is defined to be . We define new decision variables to be the number of tutorials for course that are assigned to TA . The objective function (1) should be revised to and the following constraints should be added:Equation (9) counts and the new objective function (8) has the extra term .
It should be noted that the extra term has the “max” operator that makes the model nonlinear. We propose the following method to linearize the objective function (8). To make the model clear, we explicitly define the new sets, parameters, and decision variables.
Newly Defined Sets : set of courses with at least two tutorials : set of tutorials that belong to course
Newly Defined Parameters : benefit of assigning one more same tutorial to a TA
Newly Defined Decision Variables : number of tutorials for course that are assigned to TA : an intermediate binary variable : an intermediate continuous variable for linearizationThe new model isand constraints (2) to (5) and (9). Note that in constraints (13) is a large positive number.
Proposition 3. In constraints (13) the value of could be set to .
Proof. The upper bound of is . Therefore, it is sufficient to set to in constraints (13).
4.3. Controlling the Number of TAs for One Course
Some lecturers may want to control the number of TAs for his course. For instance, no lecturer wants to have 12 TAs to teach his tutorials. To reflect this requirement, we define parameter as the maximum number of TAs that are assigned to the tutorials for course . We further define intermediate binary decision variables which equal 1 if and only if TA teaches at least one tutorial for course . We then could add the following constraints:where in constraints (15) the value of could be set to because the upper bound of is .
Note that constraints (16) could be changed to the following ones:because if , then constraints (18) are always satisfied.
4.4. Controlling the Number of Days a TA Works
A TA may like to teach five tutorials, but she may not like to teach one tutorial every day. To reflect this requirement, we define parameter as the maximum number of days TA would like to teach. Evidently, . We further define set to be the set of tutorials taught on day , where 1 means Monday, 2 means Tuesday, and so on. We define intermediate binary decision variable that equals 1 if and only if TA needs to teach on day . The following constraints could capture the requirement regarding the number of days a TA works:
5. Numerical Experiments
We carry out extensive numerical experiments to demonstrate the computational efficiency. The experiments are implemented on a PC with 3.30 GHz of Intel Core i5 CPU and 4 GB of RAM. The algorithm is coded in Matlab 2011b, calling CPLEX12.3 to solve mixedinteger linear programming models.
Different combinations of the number of tutorials and number of TAs are considered: , , , , , , , , and , as shown in Table 1. All of the five models [M0], [M1], [M2], [M3], and [M4] are evaluated for each combination. Ten random instances are generated for each model in each combination, and therefore we have a total of instances. The instances are generated as follows. In [M0], for each tutorialTA combination, there is chance that the TA cannot deliver the tutorial, chance that the TA can but is not the most suitable, and chance that the TA is the most suitable for delivering tutorial; the minimum number of tutorials that must be delivered by a TA is 0; the maximum number of tutorials that can be delivered by a TA is an integer uniformly drawn between 1 and 3; the minimum number of available hours per week for a TA is 0; the maximum number of available hours per week for TA is an integer uniformly drawn between 1 and 5; the number of contact hours required for a tutorial is an integer uniformly drawn between 1 and 2. In [M1], five pairs of tutorials are randomly chosen to have time conflict. In [M2], the number of courses is equal to half the number of tutorials and each tutorial is randomly assigned to a course; the weight is set at 0.33. In [M3], the maximum number of TAs for a course is an integer uniformly drawn between 1 and 3. In [M4], the maximum number of days a TA works is an integer uniformly drawn between 1 and 5. We report the average CPU time required to solve one instance for each model over the ten random instances in Table 1. It can be seen that all of the models can efficiently be solved. This demonstrates the practical relevance of the proposed models.

6. Conclusions
In this paper, an integer programming model is developed to maximize the teaching quality by assigning most appropriate teaching assistants to their tutorials. The model is very useful for teaching units as () it can improve teaching quality by allocating suitable teaching assistants to teach the tutorials; () the teaching allocation does not need to be manually allocated, which is a timeconsuming process; and () the maximum teaching load of each staff will not be violated as it is modeled as hard constraints. Some extensions, which are formulated as mixedinteger linear programming models, are further addressed to consider more practical factors. This includes the following ones: () we consider whether two tutorials are delivered at the same time, and if so, they cannot be taught by the same TA; () we increase the number of repetitions of tutorials so that it is easier for the TAs to save time for preparation; () a lecturer can control the number of TAs for her/his class. Numerical experiments show that these models can efficiently be solved by offtheshelf solvers, demonstrating the practical relevance of the proposed models.
Competing Interests
The authors declare that there is no conflict of interests regarding the publication of this manuscript.
Acknowledgments
This study is supported by the Projects of International Cooperation and Exchange of the National Natural Science Foundation of China (no. 5151101143) and Youth Project of National Natural Science Foundation of China (no. 71501038).
References
 R. H. McClure and C. E. Wells, “Modeling multiple criteria in the faculty assignment problem,” SocioEconomic Planning Sciences, vol. 21, no. 6, pp. 389–394, 1987. View at: Publisher Site  Google Scholar
 F. Y. Partovi and B. Arinze, “A knowledge based approach to the facultycourse assignment problem,” SocioEconomic Planning Sciences, vol. 29, no. 3, pp. 245–256, 1995. View at: Publisher Site  Google Scholar
 G. Hu and J. Lei, “Englishmedium instruction in Chinese higher education: a case study,” Higher Education, vol. 67, no. 5, pp. 551–567, 2014. View at: Publisher Site  Google Scholar
 A. Oleson and M. T. Hora, “Teaching the way they were taught? Revisiting the sources of teaching knowledge and the role of prior experience in shaping faculty teaching practices,” Higher Education, vol. 68, no. 1, pp. 29–45, 2014. View at: Publisher Site  Google Scholar
 C. Valouxis and E. Housos, “Constraint programming approach for school timetabling,” Computers & Operations Research, vol. 30, no. 10, pp. 1555–1572, 2003. View at: Publisher Site  Google Scholar
 G. N. Beligiannis, C. Moschopoulos, and S. D. Likothanassis, “A genetic algorithm approach to school timetabling,” Journal of the Operational Research Society, vol. 60, no. 1, pp. 23–42, 2009. View at: Publisher Site  Google Scholar  Zentralblatt MATH
 N. Pillay and W. Banzhaf, “An informed genetic algorithm for the examination timetabling problem,” Applied Soft Computing Journal, vol. 10, no. 2, pp. 457–467, 2010. View at: Publisher Site  Google Scholar
 J. A. Breslaw, “A linear programming solution to the faculty assignment problem,” SocioEconomic Planning Sciences, vol. 10, no. 6, pp. 227–230, 1976. View at: Publisher Site  Google Scholar
 M. J. Schniederjans and G. C. Kim, “A goal programming model to optimize departmental preference in course assignments,” Computers & Operations Research, vol. 14, no. 2, pp. 87–96, 1987. View at: Publisher Site  Google Scholar
 M. A. Badri, “A twostage multiobjective scheduling model for [facultycoursetime] assignments,” European Journal of Operational Research, vol. 94, no. 1, pp. 16–28, 1996. View at: Publisher Site  Google Scholar
 W. Qu, Y. Zhao, M. Wang, and B. Liu, “Research on teaching gamification of software engineering,” in Proceedings of the 9th International Conference on Computer Science & Education (ICCSE '14), Vancouver, Canada, August 2014. View at: Publisher Site  Google Scholar
 T. F. Burgess, “Planning the academic's workload: different approaches to allocating work to university academics,” Higher Education, vol. 32, no. 1, pp. 63–75, 1996. View at: Publisher Site  Google Scholar
 I. Vardi, “The impacts of different types of workload allocation models on academic satisfaction and working life,” Higher Education, vol. 57, no. 4, pp. 499–508, 2009. View at: Publisher Site  Google Scholar
 P. J. Bentley and S. Kyvik, “Academic work from a comparative perspective: a survey of faculty working time across 13 countries,” Higher Education, vol. 63, no. 4, pp. 529–547, 2012. View at: Publisher Site  Google Scholar
 C. Halse, E. Deane, J. Hobson, and G. Jones, “The research—teaching nexus: what do national teaching awards tell us?” Studies in Higher Education, vol. 32, no. 6, pp. 727–746, 2007. View at: Publisher Site  Google Scholar
 J. C. Shin, “Teaching and research nexuses across faculty career stage, ability and affiliated discipline in a South Korean research university,” Studies in Higher Education, vol. 36, no. 4, pp. 485–503, 2011. View at: Publisher Site  Google Scholar
 S. Hornibrook, “Policy implementation and academic workload planning in the managerial university: understanding unintended consequences,” Journal of Higher Education Policy and Management, vol. 34, no. 1, pp. 29–38, 2012. View at: Publisher Site  Google Scholar
 J. D. J. Kenny and A. E. Fluck, “The effectiveness of academic workload models in an institution: a staff perspective,” Journal of Higher Education Policy and Management, vol. 36, no. 6, pp. 585–602, 2014. View at: Publisher Site  Google Scholar
 F. Li, Z. Gao, K. Li, and D. Z. W. Wang, “Train routing model and algorithm combined with train scheduling,” Journal of Transportation Engineering, vol. 139, no. 1, pp. 81–91, 2013. View at: Publisher Site  Google Scholar
 Z. Liu, S. Wang, W. Chen, and Y. Zheng, “Willingness to board: a novel concept for modeling queuing up passengers,” Transportation Research Part B: Methodological, vol. 90, pp. 70–82, 2016. View at: Publisher Site  Google Scholar
 D. Z. W. Wang, H. Liu, and W. Y. Szeto, “A novel discrete network design problem formulation and its global optimization solution algorithm,” Transportation Research E, vol. 79, pp. 213–230, 2015. View at: Publisher Site  Google Scholar
 H. Liu and D. Z. W. Wang, “Global optimization method for network design problem with stochastic user equilibrium,” Transportation Research B, vol. 72, pp. 20–39, 2015. View at: Publisher Site  Google Scholar
 B. Du and D. Z. W. Wang, “Continuum modeling of parkandride services considering travel time reliability and heterogeneous commuters—a linear complementarity system approach,” Transportation Research Part E: Logistics and Transportation Review, vol. 71, pp. 58–81, 2014. View at: Publisher Site  Google Scholar
Copyright
Copyright © 2017 Xiaobo Qu et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.