Optimization Theory, Methods, and Applications in Engineering 2013View this Special Issue
Review Article | Open Access
A Review of Piecewise Linearization Methods
Various optimization problems in engineering and management are formulated as nonlinear programming problems. Because of the nonconvexity nature of this kind of problems, no efficient approach is available to derive the global optimum of the problems. How to locate a global optimal solution of a nonlinear programming problem is an important issue in optimization theory. In the last few decades, piecewise linearization methods have been widely applied to convert a nonlinear programming problem into a linear programming problem or a mixed-integer convex programming problem for obtaining an approximated global optimal solution. In the transformation process, extra binary variables, continuous variables, and constraints are introduced to reformulate the original problem. These extra variables and constraints mainly determine the solution efficiency of the converted problem. This study therefore provides a review of piecewise linearization methods and analyzes the computational efficiency of various piecewise linearization methods.
Piecewise linear functions are frequently used in various applications to approximate nonlinear programs with nonconvex functions in the objective or constraints by adding extra binary variables, continuous variables, and constraints. They naturally appear as cost functions of supply chain problems to model quantity discount functions for bulk procurement and fixed charges. For example, the transportation cost, inventory cost, and production cost in a supply chain network are often constructed as a sum of nonconvex piecewise linear functions due to economies of scale . Optimization problems with piecewise linear costs arise in many application domains, including transportation, telecommunications, and production planning. Specific applications include variants of the minimum cost network flow problem with nonconvex piecewise linear costs [2–7], the network loading problem [8–11], the facility location problem with staircase costs [12, 13], the merge-in-transit problem , and the packing problem [15–17]. Other applications also include production planning , optimization of electronic circuits , operation planning of gas networks , process engineering [21, 22], engineering design [23, 24], appointment scheduling , and other network flow problems with nonconvex piecewise linear objective functions .
Various methods of piecewisely linearizing a nonlinear function have been proposed in the literature [26–39]. Two well-known mixed-integer formulations for piecewise linear functions are the incremental cost  and the convex combination  formulations. Padberg  compared the linear programming relaxations of the two mixed-integer programming models for piecewise linear functions in the simplest case when no constraint exists. He showed that the feasible set of the linear programming relaxation of the incremental cost formulation is integral; that is, the binary variables are integers at every vertex of the set. He called such formulations locally ideal. On the other hand, the convex combination formulation is not locally ideal, and it strictly contains the feasible set of the linear programming relaxation of the incremental cost formulation. Then, Sherali  proposed a modified convex combination formulation that is locally ideal. Alternatively, Beale and Tomlin  suggested a formulation for the piecewise linear function similar to convex combination, except that no binary variable is included in the model and the nonlinearities are enforced algorithmically, directly in the branch-and-bound algorithm, by branching on sets of variables, which they called special ordered sets of type 2 (SOS2). It is also possible to formulate piecewise linear functions similar to incremental cost but without binary variables and enforcing the nonlinearities directly in the branch-and-bound algorithm. Two advantages of eliminating binary variables are the substantial reduction in the size of the model and the use of the polyhedral structure of the problem [44, 45]. Keha et al.  studied formulations of linear programs with piecewise linear objective functions with and without additional binary variables and showed that adding binary variables does not improve the bound of the linear programming relaxation. Keha et al.  also presented a branch-and-cut algorithm for solving linear programs with continuous separable piecewise-linear cost functions. Instead of introducing auxiliary binary variables and other linear constraints to represent SOS2 constraints used in the traditional approach, they enforced SOS2 constraints by branching on them without auxiliary binary variables.
Due to the broad applications of piecewise linear functions, many studies have conducted related research on this topic. The main purpose of these studies is to find a better way to represent a piecewise linear function or to tighten the linear programming relaxation. A superior representation of piecewise linear functions can effectively reduce the problem size and enhance the computational efficiency. However, for expressing a piecewise linear function of a single variable with break points, most of the methods in the textbooks and literature require adding extra binary variables and constraints, which may cause a heavy computational burden when is large. Recently, Li et al.  developed a representation method for piecewise linear functions with fewer binary variables compared to the traditional methods. Although their method needs only extra binary variables to piecewisely linearize a nonlinear function with break points, the approximation process still requires extra constraints, nonnegative continuous variables, and free-signed continuous variables. Vielma et al.  presented a note on Li et al.’s paper and showed that two representations for piecewise linear functions introduced by Li et al.  are both theoretically and computationally inferior to standard formulations for piecewise linear functions. Tsai and Lin  applied the Vielma et al.  techniques to express a piecewise linear function for solving a posynomial optimization problem. Croxton et al.  indicated that most models of expressing piecewise linear functions are equivalent to each other. Additionally, it is well known that the numbers of extra variables and constraints required in the linearization process for a nonlinear function obviously impact the computational performance of the converted problem. Therefore, this paper focuses on discussing and reviewing the recent advances in piecewise linearization methods. Section 2 reviews the piecewise linearization methods. Section 3 compares the formulations of various methods with the numbers of extra binary/continuous variables and constraints. Section 4 discusses error evaluation in piecewise linear approximation. Conclusions are made in Section 5.
2. Formulations of Piecewise Linearization Functions
Consider a general nonlinear function of a single variable ; is a continuous function, and is within the interval . Most commonly used textbooks of nonlinear programming [26–28] approximate the nonlinear function by a piecewise linear function as follows.
Firstly, denote as the break points of , , and Figure 1 indicates the piecewise linearization of .
can then be approximately linearized over the interval  as where , , , in which only two adjacent ’s are allowed to be nonzero. A nonlinear function is then converted into the following expressions.
where , , .
The above expressions involve new binary variables . The number of newly added 0-1 variables for piecewisely linearizing a function equals the number of breaking intervals (i.e., ). If is large, it may cause a heavy computational burden.
Li and Yu  proposed another global optimization method for nonlinear programming problems where the objective function and the constraints might be nonconvex. A univariate function is initially expressed by a piecewise linear function with a summation of absolute terms. Denote () as the slopes of line segments between and , expressed as . can then be written as follows:
is convex in the interval if , and otherwise is a non-convex function which needs to be linearized by adding extra binary variables. By linearizing the absolute terms, Li and Yu  converted the nonlinear function into a piecewise linear function as shown below.
where , , , , are upper bounds of and are extra binary variables used to linearize a non-convex function for the interval .
Comparing Method 2 with Method 1, Method 1 uses binary variables to linearize for whole interval. But the binary variables used in Method 2 are only applied to linearize the non-convex parts of . Method 2 therefore uses fewer 0-1 variables than Method 1. However, for with intervals of the non-convex parts, Method 2 still requires binary variables to linearize .
Another general form of representing a piecewise linear function is proposed in the articles of Croxton et al. , Li , Padberg , Topaloglu and Powell , and Li and Tsai . The expressions are formulated as shown below.
where , , and where is a large constant and .
The above expressions require extra binary variables and constraints, where break points are used to represent a piecewise linear function.
Form the above discussions, we can know that Methods 1, 2, and 3 require a number of extra binary variables and extra constraints linear in to express a piecewise linear function. To approximate a nonlinear function by using a piecewise linear function, the numbers of extra binary variable and constraints significantly influence the computational efficiency. If fewer binary variables and constraints are used to represent a piecewise linear function, then less CPU time is needed to solve the transformed problem. For decreasing the extra binary variables involved in the approximation process, Li et al.  developed a representation method for piecewise linear functions with the number of binary variables logarithmic in . Consider the same piecewise linear function discussed above, where is within the interval  and break points exist within . Let be an integer, , expressed as
Let be a set composed of all indices such that . For instance, , .
Denote to be the number of elements in . For instance, , .
To approximate a univariate nonlinear function by using a piecewise linear function, the following expressions are deduced by the Li et al.  method.
where , , , and are free continuous variables, and are nonnegative continuous, and all the variables are the same as defined before.
The expressions of Method 4 for representing a piecewise linear function with break points use binary variables, constraints, non-negative variables, and 2 free-signed continuous variables. Comparing with Methods 1, 2, and 3, Method 4 indeed reduces the number of binary variables used such that the computational efficiency is improved. Although Li et al.  developed a superior way of expressing a piecewise linear function by using fewer binary variables, Vielma et al.  investigated that this representation for piecewise linear functions is theoretically and computationally inferior to standard formulations for piecewise linear functions. Vielma and Nemhauser  recently developed a novel piecewise linear expression requiring fewer variables and constraints than the current piecewise linearization techniques to approximate the univariate nonlinear functions. Their method needs a logarithmic number of binary variables and constraints to express a piecewise linear function. The formulation is described as shown below.
Let and . An injective function , , where the vectors and differ in at most one component for all ,….
Let , for all , , and . Some notations are introduced below.
: a set composed of all , where of and for or of for ; that is, .
: a set composed of all , where of and for ,… or of for ; that is, .
The linear approximation of a univariate , , by the technique of Vielma and Nemhauser  is formulated as follows.
Method 5. Denote as the piecewise linear function of , where be the break points of . can be expressed as
Method 5 uses binary variables, continuous variables, and constraints to express a piecewise linearization function with line segments.
3. Formulation Comparisons
The comparison results of the above five methods in terms of the numbers of binary variables, continuous variables, and constraints are listed in Table 1. The number of extra binary variables of Methods 1 and 3 is linear in the number of line segments. Methods 4 and 5 have the logarithmic number of extra binary variables with line segments, and the number of extra binary variables of Method 2 is equal to the number of concave piecewise line segments. In the deterministic global optimization for a minimization problem, inverse, power, and exponential transformations generate nonconvex expressions that require to be linearly approximated in the reformulated problem. That means Methods 4 and 5 are superior to Methods 1, 2, and 3 in terms of the numbers of extra binary variables and constraints as shown in Table 1. Moreover, Method 5 has fewer extra continuous variables and constraints than Method 4 in linearizing a nonlinear function.
Till et al.  reviewed the literature on the complexity of mixed-integer linear programming (MILP) problems and summarized that the computational complexity varies from to , where is the number of constraints and is the number of binaries. Therefore, reducing constraints and binary variables makes a greater impact than reducing continuous variables on computational efficiency of solving MILP problems. For finding a global solution of a nonlinear programming problem by a piecewise linearization method, if the linearization method generates a large number of additional constraints and binaries, the computational efficiency will decrease and cause heavy computational burdens. According to the above discussions, Method 5 is more computationally efficient than the other four methods. Experiment results from the literature [39, 48, 49] also support the statement.
Beale and Tomlin  suggested a formulation for piecewise linear functions by using continuous variables in special ordered sets of type 2 (SOS2). Although no binary variables are included in the SOS2 formulation, the nonlinearities are enforced algorithmically and directly in the branch-and-bound algorithm by branching on sets of variables. Since the traditional SOS2 branching schemes have too many dichotomies, the piecewise linearization technique in Method 5 induces an independent branching scheme of logarithm depth and provides a significant computational advantage . The computational results in Vielma and Nemhauser  show that Method 5 outperforms the SOS2 model without binary variables.
The factors affecting the computational efficiency in solving nonlinear programming problems include the tightness of the constructed convex underestimator, the efficiency of the piecewise linearization technique, and the number of the transformed variables. An appropriate variable transformation constructs a tighter convex underestimator and makes fewer break points required in the linearization process to satisfy the same optimality tolerance and feasibility tolerance. Vielma and Nemhauser  indicated that the formulation of Method 5 is sharp and locally ideal and has favorable tightness properties. They presented experimental results showing that Method 5 significantly outperforms other methods, especially when the number of break points becomes large. Vielma et al.  explained that the formulation of Method 4 is not sharp and is theoretically and computationally inferior to standard MILP formulations (convex combination model, logarithmic convex combination model) for piecewise linear functions.
4. Error Evaluation
For evaluating the error of piecewise linear approximation, Tsai and Lin [49, 52] and Lin and Tsai  utilized the expression to estimate the error indicated in Figure 2. If is the objective function, is the th constraint, and is the solution derived from the transformed program, then the linearization does not require to be refined until and , where is the evaluated error in objective, is the optimality tolerance, is the error in the th constraint, and is the feasibility tolerance.
The accuracy of the linear approximation significantly depends on the selection of break points and more break points can increase the accuracy of the linear approximation. Since adding numerous break points leads to a significant increase in the computational burden, the break point selection strategies can be applied to improve the computational efficiency in solving optimization problems by the deterministic approaches. Existing break point selection strategies are classified into three categories as follows :(i)add a new break point at the midpoint of each interval of existing break points;(ii)add a new break point at the point with largest approximation error of each interval; (iii)add a new break point at the previously obtained solution point.
According to the deterministic optimization methods for solving nonconvex nonlinear problems [29, 33, 38, 39, 48, 49, 53–56], the inverse or logarithmic transformation is required to be approximated by the piecewise linearization function. For example, the function or is required to be piecewisely linearized by using an appropriate breakpoint selection strategy, if a new break point is added at the midpoint of each interval of existing break points or at the point with largest approximation error, the number of line segments becomes double in each iteration. If a new breakpoint is added at the previously obtained solution point, only one breakpoint is added in each iteration. How to improve the computational efficiency by a better break point selection strategy still needs more investigations or experiments to get concrete results.
This study provides an overview on some of the most commonly used piecewise linearization methods in deterministic optimization. From the formulation point of view, the numbers of extra binaries, continuous variables, and constraints are decreasing in the latest development methods especially for the number of extra binaries which may cause heavy computational burdens. Additionally, a good piecewise linearization method must consider the tightness properties such as sharp and locally ideal. Since effective break points selection strategy is important to enhance the computational efficiency in linear approximation, more work should be done to study the optimal positioning of the break points. Although a logarithmic piecewise linearization method with good tightness properties has been proposed, it is still too time consuming for finding an approximately global optimum of a large scale nonconvex problem. Developing an efficient polynomial time algorithm for solving nonconvex problems by piecewise linearization techniques is still a challenging question. Obviously, this contribution gives only a few preliminary insights and might point toward issues deserving additional research.
The research is supported by Taiwan NSC Grants NSC 101-2410-H-158-002-MY2 and NSC 102-2410-H-027-012-MY3.
- J. F. Tsai, “An optimization approach for supply chain management models with quantity discount policy,” European Journal of Operational Research, vol. 177, no. 2, pp. 982–994, 2007.
- E. H. Aghezzaf and L. A. Wolsey, “Modelling piecewise linear concave costs in a tree partitioning problem,” Discrete Applied Mathematics, vol. 50, no. 2, pp. 101–109, 1994.
- A. Balakrishnan and S. Graves, “A composite algorithm for a concave-cost network flow problem,” Networks, vol. 19, no. 2, pp. 175–202, 1989.
- K. L. Croxton, Modeling and solving network flow problems with piecewise linear costs, with applications in supply chain management [Ph.D. thesis], Operations Research Center, Massachusetts Institute of Technology, Cambridge, Mass, USA, 1999.
- L. M. A. Chan, A. Muriel, Z. J. Shen, and D. Simchi-Levi, “On the effectiveness of zero-inventory-ordering policies for the economic lot-sizing model with a class of piecewise linear cost structures,” Operations Research, vol. 50, no. 6, pp. 1058–1067, 2002.
- L. M. A. Chan, A. Muriel, Z. J. M. Shen et al., “Effective zero-inventory-ordering policies for the single-warehouse multiretailer problem with piecewise linear cost structures,” Management Science, vol. 48, no. 11, pp. 1446–1460, 2002.
- K. L. Croxton, B. Gendron, and T. L. Magnanti, “Variable disaggregation in network flow problems with piecewise linear costs,” Operations Research, vol. 55, no. 1, pp. 146–157, 2007.
- D. Bienstock and O. Günlük, “Capacitated network design polyhedral structure and computation,” INFORMS Journal on Computing, vol. 8, no. 3, pp. 243–259, 1996.
- V. Gabrel, A. Knippel, and M. Minoux, “Exact solution of multicommodity network optimization problems with general step cost functions,” Operations Research Letters, vol. 25, no. 1, pp. 15–23, 1999.
- O. Günlük, “A branch-and-cut algorithm for capacitated network design problems,” Mathematical Programming A, vol. 86, no. 1, pp. 17–39, 1999.
- T. L. Magnanti, P. Mirchandani, and R. Vachani, “Modeling and solving the two-facility capacitated network loading problem,” Operations Research, vol. 43, no. 1, pp. 142–157, 1995.
- K. Holmberg, “Solving the staircase cost facility location problem with decomposition and piecewise linearization,” European Journal of Operational Research, vol. 75, no. 1, pp. 41–61, 1994.
- K. Holmberg and J. Ling, “A Lagrangean heuristic for the facility location problem with staircase costs,” European Journal of Operational Research, vol. 97, no. 1, pp. 63–74, 1997.
- K. L. Croxton, B. Gendron, and T. L. Magnanti, “Models and methods for merge-in-transit operations,” Transportation Science, vol. 37, no. 1, pp. 1–22, 2003.
- H. L. Li, C. T. Chang, and J. F. Tsai, “Approximately global optimization for assortment problems using piecewise linearization techniques,” European Journal of Operational Research, vol. 140, no. 3, pp. 584–589, 2002.
- J. F. Tsai and H. L. Li, “A global optimization method for packing problems,” Engineering Optimization, vol. 38, no. 6, pp. 687–700, 2006.
- J. F. Tsai, P. C. Wang, and M. H. Lin, “An efficient deterministic optimization approach for rectangular packing problems,” Optimization, 2013.
- R. Fourer, D. M. Gay, and B. W. Kernighan, AMPL—A Modeling Language for Mathematical Programming, The Scientific Press, San Francisco, Calif, USA, 1993.
- T. Graf, P. van Hentenryck, C. Pradelles-Lasserre, and L. Zimmer, “Simulation of hybrid circuits in constraint logic programming,” Computers & Mathematics with Applications, vol. 20, no. 9-10, pp. 45–56, 1990.
- A. Martin, M. Möller, and S. Moritz, “Mixed integer models for the stationary case of gas network optimization,” Mathematical Programming, vol. 105, no. 2-3, pp. 563–582, 2006.
- M. L. Bergamini, P. Aguirre, and I. Grossmann, “Logic-based outer approximation for globally optimal synthesis of process networks,” Computers and Chemical Engineering, vol. 29, no. 9, pp. 1914–1933, 2005.
- M. L. Bergamini, I. Grossmann, N. Scenna, and P. Aguirre, “An improved piecewise outer-approximation algorithm for the global optimization of MINLP models involving concave and bilinear terms,” Computers and Chemical Engineering, vol. 32, no. 3, pp. 477–493, 2008.
- J. F. Tsai, “Global optimization of nonlinear fractional programming problems in engineering design,” Engineering Optimization, vol. 37, no. 4, pp. 399–409, 2005.
- M. H. Lin, J. F. Tsai, and P. C. Wang, “Solving engineering optimization problems by a deterministic global approach,” Applied Mathematics and Information Sciences, vol. 6, no. 7, pp. 21S–27S, 2012.
- D. Ge, G. Wan, Z. Wang, and J. Zhang, “A note on appointment scheduling with piece-wise linear cost functions,” Working paper, 2012.
- M. S. Bazaraa, H. D. Sherali, and C. M. Shetty, Nonlinear Programming—Theory and Algorithms, John Wiley & Sons, New York, NY, USA, 2nd edition, 1993.
- F. S. Hillier and G. J. Lieberman, Introduction to Operations Research, McGraw-Hill, New York, NY, USA, 6th edition, 1995.
- H. A. Taha, Operations Research, Macmillan, New York, NY, USA, 7th edition, 2003.
- C. A. Floudas, Deterministic Global Optimization—Theory, Methods, and Applications, Kluwer Academic Publishers, Dordrecht, The Netherlands, 1999.
- S. Vajda, Mathematical Programming, Addison-Wesley, New York, NY, USA, 1964.
- K. L. Croxton, B. Gendron, and T. L. Magnanti, “A comparison of mixed-integer programming models for nonconvex piecewise linear cost minimization problems,” Management Science, vol. 49, no. 9, pp. 1268–1273, 2003.
- H. L. Li, “An efficient method for solving linear goal programming problems,” Journal of Optimization Theory and Applications, vol. 90, no. 2, pp. 465–469, 1996.
- H. L. Li and C. S. Yu, “Global optimization method for nonconvex separable programming problems,” European Journal of Operational Research, vol. 117, no. 2, pp. 275–292, 1999.
- H. L. Li and H. C. Lu, “Global optimization for generalized geometric programs with mixed free-sign variables,” Operations Research, vol. 57, no. 3, pp. 701–713, 2009.
- M. Padberg, “Approximating separable nonlinear functions via mixed zero-one programs,” Operations Research Letters, vol. 27, no. 1, pp. 1–5, 2000.
- H. Topaloglu and W. B. Powell, “An algorithm for approximating piecewise linear concave functions from sample gradients,” Operations Research Letters, vol. 31, no. 1, pp. 66–76, 2003.
- S. Kontogiorgis, “Practical piecewise-linear approximation for monotropic optimization,” INFORMS Journal on Computing, vol. 12, no. 4, pp. 324–340, 2000.
- H. L. Li and J. F. Tsai, “Treating free variables in generalized geometric global optimization programs,” Journal of Global Optimization, vol. 33, no. 1, pp. 1–13, 2005.
- J. P. Vielma, S. Ahmed, and G. Nemhauser, “A note on ‘a superior representation method for piecewise linear functions’,” INFORMS Journal on Computing, vol. 22, no. 3, pp. 493–497, 2010.
- H. M. Markowitz and A. S. Manne, “On the solution of discrete programming problems,” Econometrica, vol. 25, no. 1, pp. 84–110, 1957.
- G. B. Dantzig, “On the significance of solving linear programming problems with some integer variables,” Econometrica, vol. 28, no. 1, pp. 30–44, 1960.
- H. D. Sherali, “On mixed-integer zero-one representations for separable lower-semicontinuous piecewise linear functions,” Operations Research Letters, vol. 28, no. 4, pp. 155–160, 2001.
- E. L. M. Beale and J. A. Tomlin, “Special facilities in a general mathematical programming system for nonconvex problems using ordered sets of variables,” in Proceedings of the 5th International Conference on Operations Research, J. Lawrence, Ed., pp. 447–454, Tavistock Publications, London, UK, 1970.
- I. R. de Farias Jr., E. L. Johnson, and G. L. Nemhauser, “Branch-and-cut for combinatorial optimization problems without auxiliary binary variables,” The Knowledge Engineering Review, vol. 16, no. 1, pp. 25–39, 2001.
- T. Nowatzki, M. Ferris, K. Sankaralingam, and C. Estan, Optimization and Mathematical Modeling in Computer Architecture, Morgan & Claypool Publishers, San Rafael, Calif, USA, 2013.
- A. B. Keha, I. R. de Farias, and G. L. Nemhauser, “Models for representing piecewise linear cost functions,” Operations Research Letters, vol. 32, no. 1, pp. 44–48, 2004.
- A. B. Keha, I. R. de Farias, and G. L. Nemhauser, “A branch-and-cut algorithm without binary variables for nonconvex piecewise linear optimization,” Operations Research, vol. 54, no. 5, pp. 847–858, 2006.
- H. L. Li, H. C. Lu, C. H. Huang, and N. Z. Hu, “A superior representation method for piecewise linear functions,” INFORMS Journal on Computing, vol. 21, no. 2, pp. 314–321, 2009.
- J. F. Tsai and M. H. Lin, “An efficient global approach for posynomial geometric programming problems,” INFORMS Journal on Computing, vol. 23, no. 3, pp. 483–492, 2011.
- J. P. Vielma and G. L. Nemhauser, “Modeling disjunctive constraints with a logarithmic number of binary variables and constraints,” Mathematical Programming, vol. 128, no. 1-2, pp. 49–72, 2011.
- J. Till, S. Engell, S. Panek, and O. Stursberg, “Applied hybrid system optimization: an empirical investigation of complexity,” Control Engineering Practice, vol. 12, no. 10, pp. 1291–1303, 2004.
- J. F. Tsai and M. H. Lin, “Global optimization of signomial mixed-integer nonlinear programming problems with free variables,” Journal of Global Optimization, vol. 42, no. 1, pp. 39–49, 2008.
- M. H. Lin and J. F. Tsai, “Range reduction techniques for improving computational efficiency in global optimization of signomial geometric programming problems,” European Journal of Operational Research, vol. 216, no. 1, pp. 17–25, 2012.
- A. Lundell, Transformation techniques for signomial functions in global optimization [Ph.D. thesis], Åbo Akademi University, 2009.
- A. Lundell and T. Westerlund, “On the relationship between power and exponential transformations for positive signomial functions,” Chemical Engineering Transactions, vol. 17, pp. 1287–1292, 2009.
- A. Lundell, J. Westerlund, and T. Westerlund, “Some transformation techniques with applications in global optimization,” Journal of Global Optimization, vol. 43, no. 2-3, pp. 391–405, 2009.
Copyright © 2013 Ming-Hua Lin 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.