Load-planning problem
From Supply Chain Management Encyclopedia
Russian: Задача о загрузке самолета
Description of the problem and its solution are based on the method of dynamic programming and Bellman's optimality principle.
Contents |
Dynamic Programming Method
Dynamic programming is widely used in optimal control and planning problems as well as various technical problems.
Suppose that the process of control of a system goes steps. Given a state space and control space with elements and respectively. It is assumed that the initial state is known. Consider a function :
, i.e. .
Function is often referred to as a function of dynamics of the controlled process.
Multi-step guided process is realized as follows (see Fig. 1.)
Step 1. The system is in the state . In this state the following control is used . Mapping sets the system into a new state .
Step 2. The system is in the state . In this state the following control is used so .
Step k'. The system is in the state . In this state the following control is used , then .
Stepn. The system is in the state . When the control is chosen we have . The process ends.
Fig. 1. The implementation of the multi-step control process.
We denote - multistep control process. Then this initial state and control corresponds to a trajectory , where , .
Assume that on control and trajectory is given an additive function:
.
Denote
.
value of the function on the trajectory of the process from the initial state in .
Now we can formulate the discrete optimal control problem. Find the optimal control , which is the solution of the following problem:
.
under dynamic constraints:
where - given initial state of the process.
Note that when the control is being choosing in step we know the state of the process in the previous step, and the knowledge of defines the future state of the process and the value of the functional. It is therefore natural to consider functions , and set of functions
(1)
where . Such set of functions is called a strategy.
Bellman's Optimality Principle
Optimal strategy
has the property that whatever the initial state and the initial control is chosen , it remains the best strategy in the process with steps, which starts at the state .
From Bellman's optimality principle can be derived recurrence functional Bellman equation, which is the basis of computational procedures for dynamic programming.
Denote - the maximum functional value in - steps problem from the initial state . Function is often called the Bellman’s function. From the principle of optimality we have the following equation.
The Bellman Equation
(2)
with the boundary condition
The general scheme of dynamic programming
Consider the idea of dynamic programming in the following example. Find:
(3) ,
, - integer, .
Because the variables , are independent, then
,
(4)
Denote in the condition (4) through , then
(6)
Denote under condition .
, - integer, .
After transformations we obtain the following fundamental recurrence relation of dynamic programming
(7)
subject to .
Use (7) to define calculation process:
Construction of Bellman’s function.
Step 1. Compute
(8) ,
where - a parameter of the process. Fill the table 1 by values , , for - optimal solution of the problem (8).
Step 2. Compute
(9)
Values for different values of the argument select from Table. 1. Fill in the table 2 with the following results: , , where - the optimal solution of problem (9).
Step k. . Compute
(10)
Fill in the table of values , , , where - the optimal solution of problem (10).
Optimal solution computation.
Assuming and find and .
Calculate in (10) the optimal value and assume . Then, using the value of of the table step , determine the optimal values of other variables . Then determine the values .
Table 1. Table for the first iteration
Table 2. Table for the second iteration
To apply dynamic programming method the following conditions are to be satisfied:
- The decision-making process should allow an interpretation as a multi-step process;
- For each step it should be defined a set of state parameters , which do not depend on the number of steps;
- Optimal solution in step depends only on the current state and does not depend on the prehistory of the process.
Aircraft Loading Problem
An aircraft is loaded by objects of various types. Each object type has weight and insurance cost , (). Maximum load capacity of the aircraft is . It is required to determine the maximum value of the goods whose weight must not exceed maximum permissible carrying capacity of aircraft. For definiteness, assume that and there are three types of objects, details of which are listed in the table below:
Consider the problem in general formulation. Denote the number of items such as by . Then the problem of loading the aircraft can be written as:
where are integer.
If it were possible to discard the requirement of integrality, it was a linear programming problem and it could be solved with the simplex method.
Consider three main elements of a dynamic model.
1. Step is associated with type
2. State on stage is the total weight of items, loaded on the previous stages . The variable can be in .
3. Solutions. Values on stage describe the type of items . Value , where is the integral part of .
Let is maximum total value of items loaded in phases for a given state .
The recurrence relation is the following:
The maximum value is bounded by .
Example
For our example, calculations begin with the third stage and are performed as follows.
Stage 3.
Stage 2.
Values in columns are obtained using the recurrence relations. For example, the value in the column in is obtained as follows:
,
because from the table of step 3, .
Stage 1.
For a given the optimal solution is , and the total value of goods is equal to 160.