WhatsApp us

Chat with support

# How Dynamic Programming is an Improvement over Linear Programming?

Dynamic programming is a methodical approach to solve stochastic control. Bellmanâ€™s equation helps resolve the cost-go function which in turn facilitates dynamic programming approach. Dynamic programming algorithms compute and store a table consisting of one cost-to-go value per state.
On the other hand, linear programming adopts a simplified model. Computations of economic formulations have posed a challenge to economistsâ€™ reason why linear programming has come into being.
Students sometimes face problems with assignments related to Dynamic programming homework answers. In this scenario they can consult experts online who help them to do their assignment.
Linear programming represents a trend to view economic processes as interrelated activities. Optimization of economic problem is thus made viable with use of linear programming.
Dynamic programming homework answers deals with a class of functional relations having structural characteristics. It substantially reduces dimensionality of mathematical problem arising from economic computations.
Linear Programming and Dynamic Programming: How They Work
Linear programming model assumes the following format
Minimize C1X1 + C2X2 + â€¦â€¦â€¦â€¦â€¦â€¦â€¦.+CnXn â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦..(1)
Subject to the given restriction
A11X1 + A12X2+ â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦..+ A1nXn= b1
.Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â  .Â Â Â Â Â Â Â Â Â Â  â€¦â€¦â€¦â€¦â€¦(2)
.Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â  .
Am1X1 + Am2X2 +â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦AmnXn=bm
Xj>=0
In the above case, we assume Xj to be activity level, Aij to be input of ith commodity into jth activity and b1 to be upper limit on requirements and availability of commodities. We are looking forward to minimize the total cost or in other words, maximize total profit.
A dynamic programming formulation appears as
Fn (S) =Max P [ R (S,P) + fn-1 (S1(P))]â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦..(3)
This implies a recurrence relation and occurs over sequence of events. A multi-stage process refers to allocation of resources at each stage of event wherein resource is reinvested to maximize total payoff over total length of the process.
For example, we divide our limited resource X into two non-negative parts Y and X-Y. In the first stage depicted by stage1, we obtain a return g(y) from part Y. The Y in turn gets reduced to aY where 0<a<1. From other part of X i.e. X-Y we obtain return h(X-Y) at the cost of reducing X-Y to b(X-Y) where 0<b<1.
In stage 2, the entire process is repeated with reduced quantities i.eaY and b(X-Y) to obtain some return. The process or the sequence of events continues till Nth period.
The functional equation describing the entire process is formulated as
Fn(X) = Max0â‰¤yâ‰¤x[g(Y)+h(X-Y)+fn-1(ay+b(X-Y))]â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦(4)
Fn(X) defines the rate of return from N-stage sequences starting with limited resource X and applying optimization policy. Return from N stage sequence of processes is sum of return from stage1 plus returns from remaining N-1 stages.
In linear programming limited resources are allocated to various activities whereas in dynamic programming, resources are allocated at each of several time periods. Dynamic programming allocation seems to be more realistic without the too much of simplification of the process.
Even when I had a problem in understanding such concepts it was difficult for me to write assignments on Dynamic programming homework answers. Thatâ€™s when I took the help from online experts to complete my project.
Linear programming as the name suggests, deals with applications where inputs and outputs of various activities are assumed to be proportional to the level of activity.
Dynamic programming on the other hand, deals with the functional equation and computational techniques over a continuous time interval.
However, two exceptions must be noted at this juncture. We can expand the static portrayal of linear programming and incorporate several time periods by adding new restrictions. Few assumptions need to be tweaked around and constraints relaxed.
In a dynamic programming one single equation is enough to solve a large problem as it corresponds to every time interval in the said process. Increasing the length of the process of linear programming only to incorporate several time periods, would unnecessarily increase the computation difficulty.
Dynamic Programming â€“ Close to Reality
Linear programming is restricted to the generality of the problems we deal with. A simple algorithm as it is can solvelarge systems involving hundreds of equations. Dynamic programming has a limited computational technique although the scope is much larger.
Linearity assumption poses a challenge when it comes to industrial processes. Deviation from linearity and degree of exactness determines the applicability of linear programming model. Cost of carrying an activity at zero level is zero.
Shifting our focus to dynamic programming as per equation (3), the policy is considered as activity level. When fn(S) is computed, policy space is searched thoroughly for a maximizing policy P. If return or cost function R(S,P) is given in tabular form, there exist no difficulty.
However, if the cost function is applicable everywhere throughout the equation, except at the origin, the computer must assume P=0. The substitution of a cost of zero for functional cost is considered in such special cases.
Another point that is taken into cognizance is the directness of the solution. The directness in reality tends to complicate linear programming. Some problems are associated with only integral numerical values posing a challenge to the linear programming formulation.
This sort of restriction, however, is best suited to be treated under dynamic programming. Dynamic programming works best for fixed discrete values.
There exist a large number of issues where return involving an activity is called stochastic function of the activity level. These cases are tailor made to be solved using dynamic programming as linear programming fails to throw any light on the solution of stochastic functions.
Limitations of Dynamic Programming
Throughout our critical research we have highlighted the difference between linear and dynamic programming. The analysis looks more like a one-sided presentation of the benefits of dynamic programming. No critical theory is complete without the rationalization of its limitations.
Take for example the below equation
Fn(X) = Max0â‰¤Yâ‰¤X[g(Y)+h(X-Y)+fn-1(ay + b(X-Y))]â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦â€¦..(5)
Numerical solution is obtained by applying computational technique. With number of time intervals relegated to their correct place, problem reduces to its true dimensions. True dimension of the problem is the quantity of information required to describe a situation at a particular stage.
X in the above equation (5) defines state of the system at any stage of the sequence. With X being a scaler number, problem becomes uni-dimensional and poses no computational difficulties.
The dimensionality of a process can be expanded and reduced based on given information and computational ability. A dynamic programming comes with a leverage to change dimension of the computational problem to match convenience of the computer program.