- About this Journal ·
- Abstracting and Indexing ·
- Aims and Scope ·
- Annual Issues ·
- Article Processing Charges ·
- Articles in Press ·
- Author Guidelines ·
- Bibliographic Information ·
- Citations to this Journal ·
- Contact Information ·
- Editorial Board ·
- Editorial Workflow ·
- Free eTOC Alerts ·
- Publication Ethics ·
- Reviewers Acknowledgment ·
- Submit a Manuscript ·
- Subscription Information ·
- Table of Contents
Journal of Applied Mathematics
Volume 2013 (2013), Article ID 795098, 9 pages
Interior Point Method for Solving Fuzzy Number Linear Programming Problems Using Linear Ranking Function
School of Science, Southwest Petroleum University, Chengdu, Sichuan 610500, China
Received 29 January 2013; Accepted 16 June 2013
Academic Editor: Hadi Nasseri
Copyright © 2013 Yi-hua Zhong 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.
Recently, various methods have been developed for solving linear programming problems with fuzzy number, such as simplex method and dual simplex method. But their computational complexities are exponential, which is not satisfactory for solving large-scale fuzzy linear programming problems, especially in the engineering field. A new method which can solve large-scale fuzzy number linear programming problems is presented in this paper, which is named a revised interior point method. Its idea is similar to that of interior point method used for solving linear programming problems in crisp environment before, but its feasible direction and step size are chosen by using trapezoidal fuzzy numbers, linear ranking function, fuzzy vector, and their operations, and its end condition is involved in linear ranking function. Their correctness and rationality are proved. Moreover, choice of the initial interior point and some factors influencing the results of this method are also discussed and analyzed. The result of algorithm analysis and example study that shows proper safety factor parameter, accuracy parameter, and initial interior point of this method may reduce iterations and they can be selected easily according to the actual needs. Finally, the method proposed in this paper is an alternative method for solving fuzzy number linear programming problems.
Linear programming is one of the most widely used decision-making tools for solving real-word problems. However, real word situations are characterized by imprecision rather than exactness. Then, fuzzy linear programming (FLP) has been developed to treat uncertainty of optimization problems, such as fuzzy data envelopment analysis and fuzzy network optimization [1–3]. Since 1970, various attempts have been made to study FLP problem [4–32]. The concept of FLP was first proposed by Tanaka et al.  in the framework of the fuzzy decision of Bellman and Zadeh . For solving FLP, defuzzification methods have been widely studied for some years and applied to fuzzy control and fuzzy expert systems. The most common transforming method is ranking fuzzy numbers method, which is to establish a one-to-one correspondence between fuzzy numbers and real numbers according to the definite rule. Then, every fuzzy number is mapped to a point on the real line. Ranking is a viable approach for ordering fuzzy numbers. A special version of ranking function was first proposed by Yager .
Then, many researchers have considered various kinds of FLP problems and have proposed some approaches for solving these problems [8–28]. Maleki et al., Ganesan and Veeramani, and Nasseri et al. [8–12] presented simplex methods for solving fuzzy number linear programming (FNLP) and linear programming with fuzzy variables (FVLP) using the concept of comparison of fuzzy numbers and linear ranking function. This method is similar to the simplex method that was used for solving linear programming problems in crisp environment. Nasseri and Khabiri  proposed a revised simplex algorithm for FVLP, which is useful for sensitivity analysis on FVLP. Furthermore, there is a revised simplex algorithm for FNLP problems using linear ranking function proposed , which is useful for sensitivity analysis on FNLP. Nasseri et al.  considered a kind of linear programming which includes the triangular fuzzy numbers in its parameters and proposed a revised simplex algorithm for an extended linear programming problem which is equivalent to the original fuzzy linear programming problem. Ebrahimnejad  obtained some new results in FLP and gave a new method to obtain an initial fuzzy basic feasible solution for solving FLP problems. Nasseri and Alizadeh  thought that finding a basic feasible solution (BFS) is not straightforward and some works to make the simplex algorithm start might be needed, so they proposed a penalty method to solve FVLP problems in which the BFS is not readily available. Ebrahimnejad et al.  proposed a new method for bounded linear programming with fuzzy cost coefficients called the bounded fuzzy primal simplex algorithm. Some scholars [19–25] studied duality in FLP. Mahdavi-Amiri, Nasseri and Ebrahimnejad presented the dual simplex algorithm for solving FNLP problem [19, 20] and the dual simplex algorithm for FVLP problem . Ebrahimnejad et al.  introduced another efficient method, primal-dual simplex algorithm, to obtain a fuzzy solution of FVLP problem. Ebrahimnejad and Nasseri  studied dual simplex algorithm for bounded linear programming with fuzzy numbers. Ebrahimnejad and Nasseri  defined a new dual problem for the linear programming problem with trapezoidal fuzzy variables as a linear programming problem with trapezoidal fuzzy variables and deduced the duality results such as weak duality, strong duality, and complementary slackness theorems. Nasseri et al.  established the dual of a linear programming problem with symmetric trapezoidal fuzzy numbers, where the coefficients and variables are symmetric trapezoidal fuzzy numbers, and developed some duality results for the fuzzy primal and fuzzy dual problems. Ebrahimnejad and Nasseri  used the complementary slackness to solve FNLP and FVLP problems without the need of a simplex tableau. Sigarpich et al.  gave a new method for solving the degeneracy in linear programming problems with fuzzy variables by a definite linear function for ranking symmetric triangular fuzzy numbers. Chanas  presented the possibility of the identification of a complete fuzzy decision in fuzzy linear programming by use of the parametric programming technique.
Sensitivity analysis is a basic tool for studying perturbations in optimization problems. There is considerable research on sensitivity analysis for some models of operations research and management science such as linear programming and investment analysis. So, many scholars studied the sensitivity analysis for FVLP [29–31] and FNLP . They considered the following variations: change in the cost vector, change in the right-hand side vector, change in the constraint matrix, addition of a new activity (trapezoidal fuzzy variable), and addition of a new constraint.
In a word, existing methods solving FNLP problems are mainly using the concept of comparison of fuzzy numbers and linear ranking function to change the fuzzy number into crisp number, using simplex method and its revised method to solve these FNLP problems. Because the time complexity of simplex methods [10, 11] or revised simplex algorithm  is exponential, its iterations will increase rapidly with increasing the number of decision-making variables and constraint conditions. This paper wants to propose a new interior point method to improve the efficiency of solving large-scale FNLP problems, which will revise the feasible direction and step size as well as terminate condition in common interior point method by using trapezoidal fuzzy numbers, linear ranking function, fuzzy vector, and their operations.
This paper is organized as follows. We demonstrate some preliminaries of fuzzy set theory and the concept of ranking functions in Section 2. The simplex method for solving FNLP will be reviewed in Section 3. A new interior point method for solving FNLP will be proposed in Section 4. Example study and algorithm analysis will be shown in Section 5. Finally, we will allocate the Section 6 to conclusions.
In this section, we review some necessary concepts of fuzzy set theory and the ranking function and then present some definition about fuzzy vectors.
Definition 1 (see [5, 19]). A convex fuzzy set on is a fuzzy number if the following conditions hold.(i)Its membership function is piecewise continuous.(ii)There exist three intervals , , and such that is increasing on , equal to 1 on , decreasing on , and equal to 0 elsewhere.
Remark 3. We denote the set of all trapezoidal fuzzy numbers by .
Definition 5 (see ). The function which maps each fuzzy number into the real line is called a ranking function, where a natural order exists.
Theorem 6 (see ). If , then(i) if and only if ;(ii) if and only if ;(iii) if and only if ;(iv) if and only if .
Definition 7 (see ). If a ranking function such that for any , , then is a linear ranking function on .
Theorem 8 (see ). The forms of linear ranking functions on are often given as follows:(i), where and , , , are constants, at least one of which is nonzero;(ii), that is, reduced to
Corollary 9 (see ). For any trapezoidal fuzzy number , the relation holds if there exist and such that . One realizes that (one also consider that if and only if ). Thus, without loss of generality, throughout the paper one lets as the zero trapezoidal fuzzy number.
Corollary 10 (see ). For any two trapezoidal fuzzy numbers and , if and only if .
Definition 11. A fuzzy vector of dimension on is an -tuple on : , where the fuzzy number is called the th component of it, .
Definition 12. Let and be two fuzzy vectors whose sum is defined as
Remark 13. It is quite easy to get the following rules:(i)commutativity: ;(ii)associativity: ;(iii)neutral Element: .
Definition 14. Let , be a fuzzy vector; scalar multiplication of by is defined as
Remark 15. It is quite easy to get the following rules:(i)distributivity over fuzzy vectors: ;(ii)distributivity over number: .
Definition 16. Let ; ranking function operation of is defined as
Remark 17. It is quite easy to obtain where and .
Definition 18. Let , ; vector multiplication of by is defined as
3. Simplex Method for Solving Fuzzy Number Linear Programming
In this section, we recall the definition of FNLP and the fuzzy primal simplex algorithm to FNLP.
Algorithm 21 (see ). The fuzzy primal simplex algorithm.
Assumption. A basic feasible solution with basis and the corresponding simplex tableau is at hand.(i)The basic feasible solution is given by and . The fuzzy objective value is .(ii)Let , , , . If ; then stop. The current solution is optimal; else go to step (iii).(iii)If , then stop; the problem is unbounded. Otherwise determine the index of the variable leaving the basis as follows: (iv)Pivot on and update the simplex tableau. Go to step (ii).
Remark 22. The idea of this algorithm is to start from a vertex; each step of its iteration is moving to a better vertex until the optimal solution is found or infeasible solution is proved.
In Algorithm 21, searching adjacent vertexes is just only along the edge, and each iteration calculation is very small. But simplex method should go a long way to reach the optimal solution along the feasible region boundary through almost each vertex. For the feasible region of the large-scale application, a problem may have a lot of vertexes, this “boundary method” will encounter the problem of huge calculation generating by iteration. In order to reduce the iterations, alternative method is moving along the “short path” in internal of the feasible region. However, the usual interior point method always needs to consider all the feasible directions in each step of iteration in order to find the best one.
Fortunately, we know that Karmarkar’s interior point method  is not searching forward along the surface of the feasible region but directly approaching to the optimal solution along search directions in the internal of the feasible region. But this method cannot be used directly to solve FNLP problems. So, in the next section, we will propose a revised interior point method, which can be used directly to solve FNLP problem.
4. A Revised Interior Point Method for Solving Fuzzy Number Linear Programming
In this section, we propose a revised interior-point method to solve FNLP problem.
4.1. The Idea of Revised Interior Point Method
The basic idea of revised interior point is first starting from an interior point and getting a subsequent point to increase objective function value along the feasible direction, then starting from this interior point, and getting a new subsequent point to make objective function value increase along other feasible direction. Repeating the previous steps will produce a sequence of point which is subject to , where are the operations of ranking function and fuzzy vector. When the iteration is subjected to termination criterion, it will stop. The key of this method is choosing a feasible direction to improve objective function value.
4.2. The Derivation of Computational Formula
Combined with the slack variable , the problem (9) is converted into the following form:
In the th iteration, define , , subject to . Then, define the diagonal matrix .
Let , problem (11) is changed as follows: Choose the search direction ; then it must be one solution of the following equation: Then, To maximize , that is to say, maximize , combined with (6) and (7), then From (13) and (16), we get From , After getting the search direction , we need to determine the step size. Let where the step size should guarantee that point is in the feasible region; it should satisfy the following inequalities: Let Take where . Then, we can get from along the direction , where .
4.3. Steps of the Revised Interior Point Algorithm
From the idea of revised interior point method and the derivation of calculation formula, steps of the revised interior point algorithm to solve model (9) are shown as follows.
Step 1. Give an initial interior point , a safety factor parameter , accuracy parameter , and iteration .
Step 2. Compute
Step 3. Set the diagonal matrix
Step 5. Compute the vector
Step 6. Let
Step 7. Compute the next point:
4.4. Choice of the Initial Interior Point
Generally, set to be the initial interior point. And if , then go to Step 2 in Section 4.3; otherwise formulate a new fuzzy number linear programming as follows: where is a big fuzzy number, and is artificial variable.
5. Algorithm Analysis and Example Study
In this section, first we analyze the algorithm. Then, an example in the practical production is given. At last, we analyze some factors influencing the results of this method through the given example.
5.1. Algorithm Analysis
The time complexity of simplex methods [10, 11] or revised simplex algorithm  is exponential. Generally speaking, the simplex method has the following shortcomings.(i)Iterations are rising rapidly as the number of planning variables and constraints increasing.(ii)The simplex method is terminated in optimal basis of original and dual programs. Although it has reached optimal solution in the degenerate case, it often needs to iterate the basis many times in order to prove that it is optimal.
As we know, interior point methods (IPMs) are the most effective methods for solving a large-scale linear optimization problem. Since the creative work of Karmarkar , many researchers have proposed and analyzed various IPMs for LP and a large amount of results have been reported. And Karmarkar’s IPM has a polynomial time complexity and it approaches directly the optimal solution from the feasible region through the internal. Because the iteration of Karmarkar’s interior point algorithm is less changing as the number of planning variables and constraints increases, it is more outstanding to solve the large-scale FNLP problem by using the revised interior point method proposed in this paper.
5.2. Example Study
Question. Suppose a factory produces two products representing with 1 and 2; they are made by manual system and machine system in two shift works a day. The detailed relationship between production capacity and pure profit is shown in Table 1. The daily demand of users for the products 1 and 2 is 5 and 10, respectively. So, how to arrange production to get the maximum pure profit and meet users’ requirements?
Remark 23. In Table 1, the measure unit of daily demand is ton, the measure unit of production capacity is tons per shift, and the measure unit of pure profit is thousand dollars per ton.
Remark 24. In Table 1, the pure profit of each product in each shift is fuzzy. If its pure profit is about 10 after investigation, then it may be presented as a trapezoidal fuzzy number, that is .
Solution. (i) Let: the output of product 1 in shift 1 produced by manual system;: the output of product 1 in shift 2 produced by manual system;: the output of product 2 in shift 1 produced by manual system;: the output of product 2 in shift 2 produced by manual system;: the output of product 1 in shift 1 produced by machine system;: the output of product 1 in shift 2 produced by machine system;: the output of product 2 in shift 1 produced by machine system;: the output of product 2 in shift 2 produced by machine system.
(ii) Now an FNLP model is established as follows:
Remark 25. These inequalities , , , and are simplified from , , , and , respectively, which is convenient for the following computation.
Step 1. Given , and , .
Step 2. Compute , , then
Step 3. Set the diagonal matrix , , then
Step 5. Compute the vector , ; then
Step 6. Let , ; then step size .
Step 7. Compute , ; then
Step 8. Compute ; then and go to Step 2. Repeat the similar calculation until , and get the results.
Above all, the number of iteration is 5 and the results are listed in Table 2.
The optimal solution is and the optimal fuzzy value of the objective function is . Then, the maximum pure profit is about thousand dollars.
5.3. Analysis of Factors Influencing This Method Results
Factors influencing the results of this method are mainly safety factor parameter , accuracy parameter , and initial interior point . Take model (31) as an example.(i)Table 3 focuses on the safety factor parameter , where the values of accuracy parameter and initial interior point are fixed. All test problems show that the selection of a safety factor parameter plays a significant role in the fast convergence. We can see that the algorithm converges to the near-optimal solutions quickly as the safety factor parameter is increasing. (ii)Table 4 focuses on the accuracy parameter , where the values of safety factor parameter and initial interior point are fixed. All test problems show that the selection of accuracy parameter plays a critical role in the fast convergence. We can see that the algorithm converges slowly to the near-optimal solutions as the safety factor parameter is decreasing. Even so, the final result is more accurate. The value of generally depends on the actual need. Therefore, this method can adjust precision to meet the requirement according to the actual need. (iii)Table 5 focuses on the initial interior point , where the values of safety factor parameter and accuracy parameter are fixed. All test problems show that the selection of an initial interior solution plays a significant role in the fast convergence. We can see that the algorithm converges to the near-optimal solutions quickly as the initial interior point is more and more close to the optimal solution. That is to say, the iteration is more and more small and tends to be a constant. (iv)Table 6 focuses on the safety factor parameter and accuracy parameter , where the values of initial interior point is fixed. We can see that the iterations are smaller as the values of the accuracy parameter and safety factor parameter are increasing; the influence of safety factor parameter is more obvious than accuracy parameter to the iterations.
A new interior point method is presented to solve FNLP problems using linear ranking function in this paper. Compared with simplex method or revised simplex algorithm, this method is more outstanding in solving the large scale of the FNLP problem, for it has a polynomial time complexity. And some factors influencing the results of this method are analyzed. The result shows that proper safety factor parameter, accuracy parameter, and initial interior point of this method may reduce iterations and they can be selected easily according to the actual needs. Although a general method to select the initial point has been given in this paper, it is not feasible in some cases. For example, under the condition , the matrix may be singular and not reversible, then the search direction cannot be obtained, thus the algorithm cannot be performed. Therefore, future work may put forward an applicable broader method for the revised initial interior point.
The authors thank the anonymous referees for their suggestions and comments to improve an earlier version of this paper. The authors are also grateful for the financial support by Scientific Research Fund of Sichuan Provincial Education Department (no. 11ZA024) and Science Foundation of Southwest Petroleum University of China (no. 2012XJZ031).
- S. Lertworasirikul, S.-C. Fang, J. A. Joines, and H. L. W. Nuttle, “Fuzzy data envelopment analysis (DEA): a possibility approach,” Fuzzy Sets and Systems, vol. 139, no. 2, pp. 379–394, 2003.
- M. Wen and H. Li, “Fuzzy data envelopment analysis (DEA): model and ranking method,” Journal of Computational and Applied Mathematics, vol. 223, no. 2, pp. 872–878, 2009.
- C. Kahraman, T. Ertay, and G. Büyüközkan, “A fuzzy optimization model for QFD planning process using analytic network approach,” European Journal of Operational Research, vol. 171, no. 2, pp. 390–411, 2006.
- H. Tanaka, T. Okuda, and K. Asai, “On fuzzy-mathematical programming,” Journal of Cybernetics, vol. 3, no. 4, pp. 37–46, 1973.
- R. E. Bellman and L. A. Zadeh, “Decision-making in a fuzzy environment,” Management Science, vol. 17, pp. B141–B164, 1970.
- H. J. Zimmermann, “Fuzzy programming and linear programming with several objective functions,” Fuzzy Sets and Systems, vol. 1, no. 1, pp. 45–55, 1978.
- H. Rommelfanger, “Fuzzy linear programming and applications,” European Journal of Operational Research, vol. 92, no. 3, pp. 512–527, 1996.
- H. R. Maleki, M. Tata, and M. Mashinchi, “Linear programming with fuzzy variables,” Fuzzy Sets and Systems, vol. 109, no. 1, pp. 21–33, 2000.
- K. Ganesan and P. Veeramani, “Fuzzy linear programs with trapezoidal fuzzy numbers,” Annals of Operations Research, vol. 143, no. 1, pp. 305–315, 2006.
- S. H. Nasseri, E. Ardil, A. Yazdani, and R. Zaefarian, “Simplex method for solving linear programming problems with fuzzy numbers,” Transactions on Engineering, Computing and Technology, vol. 10, pp. 284–288, 2005.
- N. Mahdavi-Amiri, S. H. Nasseri, and A. Yazdani, “Fuzzy primal simplex algorithms for solving fuzzy linear programming problems,” Iranian Journal of Operations Research, vol. 1, pp. 68–84, 2009.
- H. Nasseri and A. Ebrahimnejad, “A fuzzy primal simplex algorithm and its application for solving flexible linear programming problems,” European Journal of Industrial Engineering, vol. 4, no. 3, pp. 372–389, 2010.
- S. H. Nasseri and B. Khabiri, “Revised fuzzy simplex algorithm for linear programming problems with fuzzy variables using linear ranking functions,” International Journal of Mathematics and Computation, vol. 6, no. 10, pp. 44–54, 2010.
- S. H. Nasseri and B. Khabiri, “A revised simplex algorithm for fuzzy nonlinear linear programming problems using linear ranking functions,” International Journal of Mathematics and Computation, vol. 8, no. 10, pp. 114–126, 2010.
- S. H. Nasseri, H. Attari, and A. Ebrahimnejad, “Revised simplex method and its application for solving fuzzy linear programming problems,” European Journal of Industrial Engineering, vol. 6, no. 3, pp. 259–280, 2012.
- A. Ebrahimnejad, “Some new results in linear programs with trapezoidal fuzzy numbers: finite convergence of the Ganesan and Veeramani's method and a fuzzy revised simplex method,” Applied Mathematical Modelling, vol. 35, no. 9, pp. 4526–4540, 2011.
- S. H. Nasseri and Z. Alizadeh, “Solving linear programming problem with fuzzy right hand sides: a penalty method,” The Journal of Mathematics and Computer Science, vol. 3, no. 3, pp. 318–328, 2011.
- A. Ebrahimnejad, S. H. Nasseri, and S. M. Mansourzadeh, “Bounded primal simplex algorithm for bounded linear programming with fuzzy cost coefficients,” International Journal of Operations Research and Information Systems, vol. 2, pp. 96–120, 2011.
- N. Mahdavi-Amiri and S. H. Nasseri, “Duality in fuzzy number linear programming by use of a certain linear ranking function,” Applied Mathematics and Computation, vol. 180, no. 1, pp. 206–216, 2006.
- S. H. Nasseri and A. Ebrahimnejad, “A fuzzy dual simplex method for a fuzzy number linear programming problem,” Advances in Fuzzy Sets and Systems, vol. 5, no. 2, pp. 81–95, 2010.
- N. Mahdavi-Amiri and S. H. Nasseri, “Duality results and a dual simplex method for linear programming problems with trapezoidal fuzzy variables,” Fuzzy Sets and Systems, vol. 158, no. 17, pp. 1961–1978, 2007.
- A. Ebrahimnejad, S. H. Nasseri, F. H. Lotfi, and M. Soltanifar, “A problems with fuzzy variables,” European Journal of Industrial Engineering, vol. 4, no. 2, pp. 189–209, 2010.
- A. Ebrahimnejad and S. H. Nasseri, “A dual simplex method for bounded linear programmes with fuzzy numbers,” International Journal of Mathematics in Operational Research, vol. 2, no. 6, pp. 762–779, 2010.
- A. Ebrahimnejad and S. H. Nasseri, “A new approach to duality in fuzzy linear programming,” Fuzzy Engineering and Operations Research, vol. 147, pp. 17–29, 2012.
- S. H. Nasseri, A. Ebrahimnejad, and S. Mizuno, “Duality in fuzzy linear programming with symmetric trapezoidal numbers,” Applications and Applied Mathematics, vol. 5, no. 10, pp. 1467–1482, 2010.
- A. Ebrahimnejad and S. H. Nasseri, “Using complementary slackness property to solve linear programming with fuzzy parameters,” Fuzzy Information and Engineering, vol. 3, pp. 233–245, 2009.
- L. A. Sigarpich, T. Allahviranloo, F. Hosseinzadeh, and N. A. Kiani, “Degeneracy in fuzzy linear programming and its application,” International Journal of Uncertainty, Fuzziness and Knowledge-Based Systems, vol. 19, no. 6, pp. 999–1012, 2011.
- S. Chanas, “The use of parametric programming in fuzzy linear programming,” Fuzzy Sets and Systems, vol. 11, no. 1–3, pp. 229–241, 1983.
- B. Kheirfam and F. Hasani, “Sensitivity analysis for fuzzy linear programming problems with fuzzy variables,” Advanced Modeling and Optimization, vol. 12, no. 2, pp. 257–272, 2010.
- S. H. Nasseri and A. Ebrahimnejad, “Sensitivity analysis on linear programming problems with trapezoidal fuzzy variables,” International Journal of Operations Research and, Information Systems, vol. 2, pp. 22–39, 2011.
- A. Kumar and N. Bhatia, “Sensitivity analysis for fuzzy linear programming problems,” in Rough Sets, Fuzzy Sets, Data Mining and Granular Computing, vol. 6743, pp. 103–110, Springer, Berlin, Germany, 2011.
- A. Ebrahimnejad, “Sensitivity analysis in fuzzy number linear programming problems,” Mathematical and Computer Modelling, vol. 53, no. 9-10, pp. 1878–1888, 2011.
- R. R. Yager, “A procedure for ordering fuzzy subsets of the unit interval,” Information Sciences, vol. 24, no. 2, pp. 143–161, 1981.
- X. Wang and E. E. Kerre, “Reasonable properties for the ordering of fuzzy quantities. I,” Fuzzy Sets and Systems, vol. 118, no. 3, pp. 375–385, 2001.
- N. K. Karmarkar, “A new polynomial-time algorithm for linear programming,” in Proceedings of the 16th Annual ACM Symposium, vol. 4, pp. 373–395, 1984.