ABSTRACT
Morgan (1983) guaranteed that VSS dominated both FSS and SSR. But it is difficult to calculate the optimal sample size and the optimal reservation price both without recall and with full recall. As VSS without recall is a simplification of VSS with full recall, we will present on appendix a VB30 program that calculates only the full recall case. As known, on VSS, the search is sequential and in each period the sample size is variable.
As normal, we will extract sellers prices from F(x) that is common
knowledge, temporal horizon is T, goods are homogenous, no discount
and consumer buys once just one unity of goods.
1. WITHOUT RECALL
1.1. DETERMINATION OF THE SAMPLE SIZE, N(T)*.
Buyer must calculate how many prices to ask. In the beginning
of each period, he will chose n that minimizes expected value
of expenditure, Pi + K(n).
| (1) |
We can see that there is a reservation price, P(T)*.
| (2) |
Using, on equation (1), M (x) instead of Min(P1
Pn) and
P(T)* instead of , it gives the next equation.
| (3) |
Using expectation we will have the next equation, that we will
minimize using n as variable.
| (4) |
We can see on Fig 1 the evolution on the optimal size with the
diminution of the time horizon, Prices from 10,20,
uniform, and K(n)= 0.15n.
1.2. DETERMINATION OF THE RESERVATION PRICE, P*
Now that we know the optimal sample size, n*, we have the reservation price, P(T+1)*, as the minimum of equation (4).
Equation (4), that we show with p(T+1)* on next equation, will
permit calculate, by backward induction, the reservation prices
and sample size at all periods. Being ,
the marginal gain of search, P(T+1)*-P(T) will be the cost of
losing one opportunity.
| (5) |
We can see on Fig 2 the evolution on the reservation price with
the diminution of the time horizon, prices from 10,20,
uniform, and K(n)= 0.15n.
We have SSR and FSS on Fig 1 and Fig 2 to show that VSS dominate
them.
2. WITH PERFECT RECALL
Apparently, this is a very complex problem as the reservation
price changes with the best price found till now, Z, but changes
too with the present price, Pi, as we can see on next equation
(we use n* = 1 on expressions to simplify them with no lost).
| (6) |
Using expectation, we will have a variable of integration as
limit of the integration as owe can see on next equation (P(x,
T)*<Z with no lost).
| (7) |
We will call P(Z,T) the Reservation Function because it changes with Z.
The reservation price will exists only under the next condition,
Lippman and McCall (1976, eq. 24).
| (8) |
We see on Fig 3 that the reservation function is convex to origin,
and P(0,T) is positive, so reservation price exist as the solution
to the next equation.
| (9) |
The reservation price, Pr(T)*, don't depends on Z or on Pi, and
is the limit of integration on equation (7)
2.1. DETERMINATION OF THE SAMPLE SIZE, N(T)*.
If Z Pr(T)*, the expected value of expenditure, known Z, is
given by the next equation.
| (10) |
If Z > Pr(T)*, we will have instead the next equation.
|
(11) | |
The sample size minimizes equations (10). or (11). We can see
on Fig 4 the relation between sample size, best price till now,
and time horizon. Prices on 10,20, rectangular, and K(n)= 0.15n.
2.2. DETERMINATION OF THE RESERVATION PRICE, PR(T)*
Has we have seen the reservation price is the solution to
being P(x, T, n)* the minim of equations (10). or (11).
We can see on Fig 5 the relation between the reservation function, the reservation price, the temporal horizon and Z.. Prices on 10,20, rectangular, and K(n)= 0.15n.
The reservation price is constant all periods but the last (Gal
e al. 1981).
APPENDIX
A program written in VB30 to calculate the VSS with recall.
We used a array with 101 points (0 to Resol)of the function P(Z,T) and, by backward induction, we calculate al periods. N_Optim is a variable global that is the optimal sample size.
Recursivity is computationally inefficient.
By running Reserv_Function we calculate P(Z,T+1). For example, to calculate P(Z,10) we will do the next routine.
Initialise
For I=1 to 10
Reserv_Function
Next i
And then we may print Pact(i). To print the optimal sample size
we need to do it inside routine Reserv_Function.
´ Declarations
Const c = .15, Resol=100
Dim N_Optim As Integer, Pant(0 To Resol), Pact(0 To Resol)
Sub initialise ()
'P(Z,T) for T = 1
Dim i As Integer
For i = 0 To Resol
Pant(i) = 20
Next i
End Sub
Function g (N As Integer, x)
'Distribution of minimum prices on a sample size n
Dim fp, Fg
'fp(x) - uniform on [10 e 20]
If (x >= 10) And (x <= 20) Then
If (x = 10) Or (x = 20) Then fp = .05 Else fp = .1
Else
fp = 0
End If
'Fg(x)
If (x >= 10) Then
If x < 20 Then Fg = -1 + x / 10 Else Fg = 1
Else
Fg = 0
End If
'g(n,x)
g = N * (1 - Fg) ^ (N - 1) * fp
End Function
Sub Reserv_function ()
'Calcul Resol+1 points from the reservation function
Dim Z, LimInt, i As Integer
LimInt = Pr()
For i = 0 To Resol
Z = 10 + i *10/ Resol
Pact(i) = Point_Resev_Function(Z, LimInt)
'Here print variable N_Optim
Next i
For i = 0 To Resol ' Pant is the P(Z,T) and Pact is the P(Z,T+1)
Pant(i) = Pact(i)
Next i
End Sub
Function Pr ()
Dim L1 As Integer, L2 As Integer, L3 As Integer
Dim V2, X1, X3
L1 = 0: L3 = Resol
If (Pant(L3) - (10 + L3*10 / Resol) >= 0) Then
Pr = 20
Exit Function
End If
While L3 - L1 > 1
L2 = Int((L1 + L3) / 2 + .01)
V2 = Pant(L2) - (10 + L2 *10/ Resol)
If V2 >= 0 Then L1 = L2 Else L3 = L2
Wend
X1 = 10 + L1*10 / Resol
X3 = 10 + L3 *10 / Resol
Pr = X1 - (X3 - X1) / (Pant(L3) - X3 - Pant(L1) + X1) * (Pant(L1) - X1)
End Function
Function Point_Reserv_Function (ByVal Z, LimInt)
Const L3 = 20
Dim L1, L2, ConstZ, N As Integer
Dim V1, V2
'Case Z<=Pr* or otherwise
If Z <= LimInt Then
L1 = Z: L2 = Z
ConstZ = Z
Else
L1 = LimInt: L2 = Z
ConstZ = Pvss_inter(Z)
End If
'Minimization
N = 1
V1 = Integ(N, L1, L2, ConstZ) + N * c
V2 = Integ(N + 1, L1, L2, ConstZ) + (N + 1) * c
While V1 >= V2
N = N + 1
V1 = V2
V2 = Integ(N + 1, L1, L2, ConstZ) + (N + 1) * c
Wend
N_Optim = N
Point_Reserv_Function = V1
End Function
Function Integ (ByVal N As Integer, L1, L2, ConstZ)
Const Delta = .01, L3 = 20
Dim Integral, x
Integral = 0
For x = 0 + Delta / 2 To L1 Step Delta
Integral = Integral + x * g(N, x) * Delta
Next x
For x = L1 + Delta / 2 To L2 Step Delta
Integral = Integral + P_inter(x) * g(N, x) * Delta
Next x
For x = L2 + Delta / 2 To L3 Step Delta
Integral = Integral + ConstZ * g(N, x) * Delta
Next x
Integ = Integral
End Function
Function P_inter (Z)
Dim V1, V2, L1, L2
Dim i As Integer
i = Fix((Z - 10) * Resol / 10)
If i = Resol Then
P_inter = Pant(Resol)
Else
L1 = 10 + i *10 / Resol
V1 = Pant(i)
L2 = 10 + (i + 1) *10 / Resol
V2 = Pant(i + 1)
P_inter = V1 + (V2 - V1) * (Z - L1) / (L2 - L1)
End If
End Function
REFERENCES
Gal, S., M. Landsberger and B. Levykson (1981). "A Compound Strategy for Search in the Labour Market." International Economic Review, Vol. 22, No. 3, pp. 597-608.
Lippman, Steven A. and John J. McCall (1976). "The Economics of Job Search: A Survey." Economic Inquiry, Vol. 14, pp.155 - 89.
Morgan, Peter B. (1983). "Search and Optimal Sample Sizes."
Review of Economic Studies, Vol. 50, pp. 659-75.