This is an extension to the problem I asked in a previous question which can be seen here, Economic price optimisation problem.

I have programmed a function in MATLAB to solve the Stackelberg competition problem set up in the question linked above. The problem has to be solved numerically which is why I decided to use MATLAB. The profit functions for the two Firms in competition are below, where the subscript number denotes the firm.

$$\Pi_1(p_1,p_2)=\frac{25p_1}{(p_1-0.6p_2)^{1.1}}-0.0815[\frac{25}{(p_1-0.6p_2)^{1.1}}]^{1.9}$$ $$\Pi_2(p_1,p_2)=\frac{25p_2}{(p_2-0.6p_1)^{1.1}}-0.0645[\frac{25}{(p_2-0.6p_1)^{1.1}}]^{1.9}$$

The code for the function I programmed to solve this can be seen below.

function y = OptimalPrices(p1, epsilon)
% Function finds optimal prices p1 and p2 for Stackelberg competition

% initial value

x = 1;
p1_guess = p1;

while p1_guess < 10;
    left_init = 0.5314*p1_guess + 0.7368; %left limit has to increase with the p1 guess
    p2 = MaxPi2(p1_guess, left_init, 6, 0.00001); %calculates p2 value
    Pi1 = f1_prof(p1_guess, p2); %finds Firm 1 profit using the p1 and p2 values
    p1vals(x) = p1_guess; %stores p1 value in a vector
    p2vals(x) = p2; %stores p2 value in a vector
    Pi1vals(x) = Pi1; %stores Pi1 value in a vector

    if imag(Pi1vals(x))>0 %if result is complex, sets equal to 0
        Pi1vals(x) = 0;

    x = x+1;
    p1_guess = p1_guess + epsilon;


[Pi1max, pos] = max(Pi1vals); %finds biggest Firm 1 profit and its position in vector
p1opt = p1vals(pos);
p2opt = p2vals(pos);

% Display results

Firm1_Profit = f1_prof(p1opt, p2opt)
Firm2_Profit = f2_prof(p1opt, p2opt)


As you may have noticed, nested within this function is another function titled $MaxPi2$. This solves the maximisation problem, $max _{p_2} \Pi_2(p_1,p_2)$, using the Bisection Method. The code for this can be seen below.

function p2 = MaxPi2(p1,l,r,epsilon)
% Finds value for p2 that maximises Pi2, using Bisection Method
% Looking for when the derivative of Firm 2's profit function is 0

% 'l' is the left end of the interval; 'r' is the right end
% epsilon is the precision parameter

% values of function at the ends
fl = f2_prof_prime(p1, l);
fr = f2_prof_prime(p1, r);

if fl*fr>0  % check that solution within the interval
    p2 = 0;
    p2 = (l+r)/2;
    dist = (r-l)/(1+abs(p2));
    % iterations
    while dist>=epsilon % while the length is large
        f = f2_prof_prime(p1, p2);
        if fl*f<0       % left half of interval
            r = p2;
            fr = f;
        else            % right half of interval
            l = p2;
            fl = f;
        p2 = (l+r)/2;
        dist = (r-l)/(1+abs(p2));


If I run the function $OptimalPrices(0, 0.0001)$, I get the following results, where $p_1$ and $p_2$ are the optimal prices set by the firms in this Stackelberg competition.
$$p_1=3.6150$$ $$p_2=3.1521$$ $$\Pi_1(p_1,p_2)=37.8202$$ $$\Pi_2(p_1,p_2)=50.0166$$ These results clearly show that Firm 2 will make a higher profit overall. Now, I was taught the "First Mover Advantage", that is, the Firm that sets its price first will make higher profits overall. I would just like to know if that is always the case, since although Firm 1 moves first in this competition, Firm 2 is making more profit? Does that mean my results are wrong somewhere? Or would Firm 2 actually make more profits in this case?


Let us get things straight about First Mover's Advantage (FMA).

Consider a two-person game, where each player chooses an action. Suppose that the two players choose simultaneously, model this as a game in strategic form, and assume that there is a unique Nash equilibrium. Let $u_i^*$ be the expected payoff to Player $i$ in the equilibrium of the simultaneous-move game.

Suppose now that the same game is played sequentially, with the second player observing the choice of player 1 before deciding her action. Assume again that there is a unique Nash equilibrium (usually found by backwards induction) and denote by $u_i^s$ the expected payoff to Player $i$ in the equilibrium of the sequential version of the game.

The First Mover's Advantage (FMA) is the claim that $u^s_1 \ge u^*_1$; that is, Player 1 achieves higher equilibrium payoffs by moving first in the sequential version of the game than in the simultaneous version of the game. This follows immediately because Player 1 might choose the same action in the sequential version as in the simultaneous-move version, and be sure to achieve at least $u^*_1$.

The above does not imply (or even talk) about the claim that 1 should attain higher payoffs than 2, and thus your result is not a priori inconsistent wiht FMA.

A common cause of misinterpretation is that the FMA is often presented with reference to a symmetric game of quantity competition, where $u^*_1 = u^*_2$ by symmetry. Then one is led to think that FMA is about $u_1^s = u^*_1 \ge u^*_2$.

However, things are subtler than this in at least two respects.

1) If the game is not symmetric, 2 may still do better than 1. For instance, suppose that 2 has lower costs than 1 in a price competition game. By moving first in a sequential game, 1 can improve his payoffs compared to the simultaneous-move game, and yet 2 may still be making higher profit than 1 because of her lower costs. Note that in your example 2 has lower costs.

2) When the game are symmetric, the comparison between $u^s_1$ and $u^s_2$ does not depend on who moves first but on a property of the best reply functions. If both players' best replies are increasing in the opponent's move, the game has strategic substitutes and $u^s_1 \ge u^s_2$. On the other hand, if both players' best replies are decreasing in the opponent's move, the game has strategic complements and $u^s_1 \le u^s_2$; that is, Player 2 has higher payoffs than Player 1 who moves first. Note that your example is a game with strategic complements.


In the Stackelberg competition where firms set price sequentially, it is not rare for the second firm to have a better payoff if the demand functions are not symmetric. In your case firm 2 has lower total costs and therefore, it is likely it will have higher total profits.

  • $\begingroup$ Thankyou Peter. $\endgroup$
    – al_sweets
    Apr 24 '18 at 15:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.