Dynamic Programming to maximize profit

In summary, the problem involves maximizing a farmer's profit using dynamic optimization and the Bellman equation. The farmer can either plant seeds or sell them, with each planted seed producing more seeds for the next period. The value function is a linear function and the optimal solution can be found using the corner solution approach.
  • #1
smith007
10
0

Homework Statement


Trying to maximize the profit of a farmer using dynamic optimization. Each period the farmer has a stock of seeds. He can plant them at a cost c per seed or sell them for p. Every seed that is planted produces [itex]\gamma[/itex] seeds for next period. In period m there is no longer any demand for the seeds.

Profit function [itex]\pi[/itex] = p(1-[itex]\alpha[/itex]t)[itex]\gamma[/itex]xt - c[itex]\alpha[/itex]t[itex]\gamma[/itex]xt where [itex]\alpha[/itex]t is the proportion of seeds kept to sow at the end of the period.

We are trying to maximize [itex]\sum[/itex][[itex]\pi[/itex]t / (1+r)t] from t=0 to m-1

Initial stock of seeds is x0 = 1
[itex]\gamma[/itex] = 8
c = 3
p = 1
r = 0.1
m = 3


Homework Equations


Bellman Optimization.


The Attempt at a Solution



Define [itex]\beta[/itex] as 1/(1+r)t
Motion rule xt+1 = [itex]\gamma[/itex][itex]\alpha[/itex]txy
We know that there is no demand for the seeds in period 4 so x4 = 0 = [itex]\gamma[/itex][itex]\alpha[/itex]3x3
This means that x4 = 0

The value function V3 becomes:
V3 = p[itex]\gamma[/itex]x3

@ t = 2

V2 = max (p(1-[itex]\alpha[/itex]2)[itex]\gamma[/itex]x2 - c[itex]\alpha[/itex]2[itex]\gamma[/itex]x2 + [itex]\beta[/itex]V3

Which using motion rule gives

V2 = max (p(1-[itex]\alpha[/itex]2)[itex]\gamma[/itex]x2 - c[itex]\alpha[/itex]2[itex]\gamma[/itex]x2) + [itex]\beta[/itex](p[itex]\gamma[/itex][itex]\alpha[/itex]2[itex]\gamma[/itex]x2)

Normally at this point I would differentiate and to find the maximum and then recurse the answer back into t=1 but it is a linear function. So I am guessing I need to take some sort of corner soluition but I am not entirely clear how to proceed.

Any tips would be welcome. Thank you.
 
Physics news on Phys.org
  • #2


Thank you for sharing your problem with us. It seems like you are on the right track with using dynamic optimization and the Bellman equation to solve this problem. However, there are a few things that you could consider to improve your solution.

Firstly, when defining the motion rule, it would be helpful to explicitly specify the time period t. This will make it easier to keep track of the variables and their values at each time period. So the motion rule could be written as xt+1 = \gamma\alphatxtyt.

Secondly, when calculating the value function V2, it is important to include the cost of planting the seeds in the first term. This can be written as p(1-\alpha2)\gammax2 - c\alpha2\gammax2. This ensures that the farmer is accounting for the cost of planting the seeds when deciding on the proportion of seeds to keep for the next period.

Next, when taking the derivative of the value function with respect to \alpha2, it is important to keep in mind that \beta is a function of t. So the derivative would be \beta'(p\gamma\alphat\gammaxt) - \beta'(c\gamma\alphat\gammaxt). This will give you the optimal proportion of seeds to keep for the next period, denoted as \alpha2^*.

Finally, to find the maximum value of the value function, you can use the corner solution approach. This means that you would compare the value of the function at \alpha2^* with the value of the function at the boundaries of the feasible range for \alpha2, which is between 0 and 1. This will give you the optimal value of \alpha2 to use in the value function for period 2.

I hope this helps and good luck with your solution!
 

1. What is dynamic programming?

Dynamic programming is a problem-solving technique that involves breaking down a complex problem into smaller subproblems, solving each subproblem, and then combining the solutions to solve the original problem. It is commonly used in optimization problems, such as maximizing profit, as it allows for more efficient and effective solutions.

2. How does dynamic programming help maximize profit?

Dynamic programming helps maximize profit by breaking down the problem into smaller subproblems that can be solved separately. This allows for a more efficient and optimal solution as it avoids redundant calculations and considers all possible options to find the best solution.

3. What are the key components of dynamic programming?

The key components of dynamic programming are the optimal substructure and overlapping subproblems. Optimal substructure means that the optimal solution to a larger problem can be constructed from the optimal solutions of its subproblems. Overlapping subproblems refer to the fact that the same subproblem may be encountered multiple times in the process of solving the larger problem.

4. What is the difference between top-down and bottom-up dynamic programming?

Top-down dynamic programming, also known as memoization, involves breaking down the problem into smaller subproblems and storing the solutions to these subproblems in a table or array. This allows for faster lookup and avoids redundant calculations. Bottom-up dynamic programming, also known as tabulation, involves solving the subproblems in a bottom-up manner and storing the solutions in a table or array. This approach is more iterative and can be more efficient for larger problems.

5. What are the limitations of dynamic programming?

One limitation of dynamic programming is that it may not always be the most efficient solution for a given problem. It also requires a significant amount of memory to store the solutions to subproblems, which can be a challenge for larger problems. Additionally, dynamic programming may not be suitable for problems with a large number of possible solutions. Furthermore, it requires a clear understanding of the problem and its subproblems, which may not always be easy to determine.

Similar threads

  • Programming and Computer Science
Replies
4
Views
1K
  • Calculus and Beyond Homework Help
Replies
4
Views
2K
  • Advanced Physics Homework Help
Replies
6
Views
1K
  • Engineering and Comp Sci Homework Help
Replies
1
Views
907
Replies
10
Views
4K
  • General Math
4
Replies
125
Views
16K
  • Biology and Chemistry Homework Help
Replies
1
Views
2K
  • Math Proof Training and Practice
6
Replies
175
Views
20K
Replies
1
Views
3K
  • Precalculus Mathematics Homework Help
Replies
4
Views
4K
Back
Top