Integer programmingAn integer programming problem is a mathematical optimization or feasibility program in which some or all of the variables are restricted to be integers. In many settings the term refers to integer linear programming (ILP), in which the objective function and the constraints (other than the integer constraints) are linear. Integer programming is NP-complete. In particular, the special case of 0-1 integer linear programming, in which unknowns are binary, and only the restrictions must be satisfied, is one of Karp's 21 NP-complete problems.
Cutting-plane methodIn mathematical optimization, the cutting-plane method is any of a variety of optimization methods that iteratively refine a feasible set or objective function by means of linear inequalities, termed cuts. Such procedures are commonly used to find integer solutions to mixed integer linear programming (MILP) problems, as well as to solve general, not necessarily differentiable convex optimization problems. The use of cutting planes to solve MILP was introduced by Ralph E. Gomory.
Biomass (energy)Biomass, in the context of energy production, is matter from recently living (but now dead) organisms which is used for bioenergy production. Examples include wood, wood residues, energy crops, agricultural residues including straw, and organic waste from industry and households. Wood and wood residues is the largest biomass energy source today. Wood can be used as a fuel directly or processed into pellet fuel or other forms of fuels. Other plants can also be used as fuel, for instance maize, switchgrass, miscanthus and bamboo.
Linear programmingLinear programming (LP), also called linear optimization, is a method to achieve the best outcome (such as maximum profit or lowest cost) in a mathematical model whose requirements are represented by linear relationships. Linear programming is a special case of mathematical programming (also known as mathematical optimization). More formally, linear programming is a technique for the optimization of a linear objective function, subject to linear equality and linear inequality constraints.
BioenergyBioenergy is energy made or generated from biomass, which consists of recently living (but now dead) organisms, mainly plants. Types of biomass commonly used for bioenergy include wood, food crops such as corn, energy crops and waste from forests, yards, or farms. The IPCC (Intergovernmental Panel on Climate Change) defines bioenergy as a renewable form of energy. Bioenergy can either mitigate (i.e. reduce) or increase greenhouse gas emissions. There is also agreement that local environmental impacts can be problematic.
Ellipsoid methodIn mathematical optimization, the ellipsoid method is an iterative method for minimizing convex functions. When specialized to solving feasible linear optimization problems with rational data, the ellipsoid method is an algorithm which finds an optimal solution in a number of steps that is polynomial in the input size. The ellipsoid method generates a sequence of ellipsoids whose volume uniformly decreases at every step, thus enclosing a minimizer of a convex function. The ellipsoid method has a long history.
Algae fuelAlgae fuel, algal biofuel, or algal oil is an alternative to liquid fossil fuels that uses algae as its source of energy-rich oils. Also, algae fuels are an alternative to commonly known biofuel sources, such as corn and sugarcane. When made from seaweed (macroalgae) it can be known as seaweed fuel or seaweed oil. In December 2022, ExxonMobil, the last large oil company to invest in algae biofuels, ended its research funding. In 1942 Harder and Von Witsch were the first to propose that microalgae be grown as a source of lipids for food or fuel.
Cutting stock problemIn operations research, the cutting-stock problem is the problem of cutting standard-sized pieces of stock material, such as paper rolls or sheet metal, into pieces of specified sizes while minimizing material wasted. It is an optimization problem in mathematics that arises from applications in industry. In terms of computational complexity, the problem is an NP-hard problem reducible to the knapsack problem. The problem can be formulated as an integer linear programming problem.
Bioconversion of biomass to mixed alcohol fuelsThe bioconversion of biomass to mixed alcohol fuels can be accomplished using the MixAlco process. Through bioconversion of biomass to a mixed alcohol fuel, more energy from the biomass will end up as liquid fuels than in converting biomass to ethanol by yeast fermentation. The process involves a biological/chemical method for converting any biodegradable material (e.g., urban wastes, such as municipal solid waste, biodegradable waste, and sewage sludge, agricultural residues such as corn stover, sugarcane bagasse, cotton gin trash, manure) into useful chemicals, such as carboxylic acids (e.
Branch and cutBranch and cut is a method of combinatorial optimization for solving integer linear programs (ILPs), that is, linear programming (LP) problems where some or all the unknowns are restricted to integer values. Branch and cut involves running a branch and bound algorithm and using cutting planes to tighten the linear programming relaxations. Note that if cuts are only used to tighten the initial LP relaxation, the algorithm is called cut and branch. This description assumes the ILP is a maximization problem.
Linear programming relaxationIn mathematics, the relaxation of a (mixed) integer linear program is the problem that arises by removing the integrality constraint of each variable. For example, in a 0–1 integer program, all constraints are of the form The relaxation of the original integer program instead uses a collection of linear constraints The resulting relaxation is a linear program, hence the name.
Biomass to liquidBiomass to liquid (BtL or BMtL) is a multi-step process of producing synthetic hydrocarbon fuels made from biomass via a thermochemical route. According to a study done by the U.S. Department of Agriculture and the Department of Energy, the United States can produce at least 1.3 billion tons of cellulosic biomass each year without decreasing the amount of biomass needed for food, animal feed, or exports. The Fischer–Tropsch process is used to produce synfuels from gasified biomass.
Semidefinite programmingSemidefinite programming (SDP) is a subfield of convex optimization concerned with the optimization of a linear objective function (a user-specified function that the user wants to minimize or maximize) over the intersection of the cone of positive semidefinite matrices with an affine space, i.e., a spectrahedron. Semidefinite programming is a relatively new field of optimization which is of growing interest for several reasons. Many practical problems in operations research and combinatorial optimization can be modeled or approximated as semidefinite programming problems.
Euler methodIn mathematics and computational science, the Euler method (also called the forward Euler method) is a first-order numerical procedure for solving ordinary differential equations (ODEs) with a given initial value. It is the most basic explicit method for numerical integration of ordinary differential equations and is the simplest Runge–Kutta method. The Euler method is named after Leonhard Euler, who first proposed it in his book Institutionum calculi integralis (published 1768–1870).
Energy cropEnergy crops are low-cost and low-maintenance crops grown solely for renewable bioenergy production (not for food). The crops are processed into solid, liquid or gaseous fuels, such as pellets, bioethanol or biogas. The fuels are burned to generate electrical power or heat. The plants are generally categorized as woody or herbaceous. Woody plants include willow and poplar, herbaceous plants include Miscanthus x giganteus and Pennisetum purpureum (both known as elephant grass).
Evaluation strategyIn a programming language, an evaluation strategy is a set of rules for evaluating expressions. The term is often used to refer to the more specific notion of a parameter-passing strategy that defines the kind of value that is passed to the function for each parameter (the binding strategy) and whether to evaluate the parameters of a function call, and if so in what order (the evaluation order). The notion of reduction strategy is distinct, although some authors conflate the two terms and the definition of each term is not widely agreed upon.
BiorefineryA biorefinery is a refinery that converts biomass to energy and other beneficial byproducts (such as chemicals). The International Energy Agency Bioenergy Task 42 defined biorefining as "the sustainable processing of biomass into a spectrum of bio-based products (food, feed, chemicals, materials) and bioenergy (biofuels, power and/or heat)". As refineries, biorefineries can provide multiple chemicals by fractioning an initial raw material (biomass) into multiple intermediates (carbohydrates, proteins, triglycerides) that can be further converted into value-added products.
Second-generation biofuelsSecond-generation biofuels, also known as advanced biofuels, are fuels that can be manufactured from various types of non-food biomass. Biomass in this context means plant materials and animal waste used especially as a source of fuel. First-generation biofuels are made from sugar-starch feedstocks (e.g., sugarcane and corn) and edible oil feedstocks (e.g., rapeseed and soybean oil), which are generally converted into bioethanol and biodiesel, respectively.
Lazy evaluationIn programming language theory, lazy evaluation, or call-by-need, is an evaluation strategy which delays the evaluation of an expression until its value is needed (non-strict evaluation) and which also avoids repeated evaluations (by the use of sharing). The benefits of lazy evaluation include: The ability to define control flow (structures) as abstractions instead of primitives. The ability to define potentially infinite data structures. This allows for more straightforward implementation of some algorithms.
Iterative methodIn computational mathematics, an iterative method is a mathematical procedure that uses an initial value to generate a sequence of improving approximate solutions for a class of problems, in which the n-th approximation is derived from the previous ones. A specific implementation with termination criteria for a given iterative method like gradient descent, hill climbing, Newton's method, or quasi-Newton methods like BFGS, is an algorithm of the iterative method.