Liang Wang
email: liang.wang@creatis.insa-lyon.fr

Zhengjun Liu

Patrick R Girard

Patrick Clarysse

Philippe Delachartre

Extension of Analytic Signal conception on Dynamic Image Sequences

Keywords: biquaternion de Clifford, Transformée de Fourier Clifford, signal analytique 2D+t, paramètres physiques Clifford biquaternions, Clifford Fourier transforms, 2D+t analytic signals, physical parameters

Cet article présente un cadre algébrique et une mise en oeuvre pour le signal analytique 2D+t à l'aide des biquaternions de Clifford et de la Transformée de Fourier Cliffordienne. La contribution de ce travail est de définir et réaliser le signal analytique spatio-temporel pour analyser des séquences vidéo alors que la plupart des travaux précédents ont traité du signal analytique pour les images 2D. À partir du signal analytique 2D+t que nous définissons, plusieurs paramètres physiques liés à la dimension du temps et de l'espace pourront être calculés. Nous détaillons ici la méthode de calcul numérique pour obtenir le signal analytique spatio-temporel. Dans cet article, on considère l'exemple de simulation d'une onde plane progressive et d'une onde modulée en amplitude. À partir de ces exemples, on montre le calcul algébrique et numérique du signal hyperanalytique, puis l'extraction des phases pour l'estimation de paramètres physiques tels que la fréquence instantanée, la vitesse de phase et la vitesse de groupe. Les résultats numériques obtenus permettent de valider l'approche et montrent le potentiel de la méthode pour l'estimation de paramètres physiques.

Introduction

During the last years, the quaternion-based method has been applied to image analysis and signal processing based on Clifford algebras [START_REF] Hahn | The unified theory of n-dimensional complex and hypercomplex analytic signals[END_REF][START_REF] Le | Hypercomplex analytic signals : extension of the analytic signal concept to complex signals[END_REF]. As a mathematical tool, it has been used for motion detection, motion estimation and tracking [START_REF] Bülow | Hypercomplex spectral signal representations for the processing and analysis of images[END_REF][START_REF] Krause | A 3D isotropic quadrature filter for motion estimation problems[END_REF][START_REF] Traversoni | Movement detection and recognition with quaternion wavelets[END_REF]]. It's also used for edge detection of color image thanks to its multicomponent property [START_REF] Sangwine | Colour image filters based on hypercomplex convolution[END_REF]. Generally, phase information can be obtained with quaternion-based method. Some advantages of phase information are known as that [START_REF] Felsberg | Optical flow estimation from monogenic phase[END_REF]: [START_REF] Bülow | Hypercomplex spectral signal representations for the processing and analysis of images[END_REF] there is strong evidence that the human visual system makes use of local phase; [START_REF] Bülow | Hypercomplex signals-a novel extension of the analytic signal to the multidimensional case[END_REF] phase-based processing is to a large extend invariant to changes of lighting conditions; (3) the reconstruction of an image from phase information is much better than that from amplitude information. Furthermore, several works have shown previously the advantage of using phase information to analyse images and image sequences. Bülow and Sommer [START_REF] Bülow | Hypercomplex signals-a novel extension of the analytic signal to the multidimensional case[END_REF] found that a component of the quaternionic phase is sensitive to the change of a structure like a flaw in a textile. In 2006, using hypercomplex phase, Witten and Shragge [START_REF] Witten | Quaternion-based signal processing[END_REF] proposed an image disparity estimation method to find differences between subtly varying images. Woo et al. [START_REF] Woo | Non-rigid ultrasound image registration based on intensity and local phase information[END_REF] used both the local phase information and the intensity information for ultrasound image registration. Felsberg [START_REF] Felsberg | Optical flow estimation from monogenic phase[END_REF] used the monogenic phase for optical flow estimation and indicated several advantages of phase information. However, most of these developments above used the approaches to process only two-dimension images or image sequences. It means that the dimension of time was not involved when calculating the analytic signal and the phase information of analytic signal. In order to deal with this problem and to process an entire video signal at once, a 2D + t analytic video signal is defined in this paper. Therefore, it has three components: time, vertical position and horizontal position. With the objective to process an entire video signal at once, a biquaternion algebraic framework is developed to express Clifford Fourier Transforms(CFT) of 2D + t video analytic signals in standard form. On the specific case of a progressive plane wave, the physic parameters are found, which could be useful to estimate the motion of the progressive plane wave.

Clifford Biquaternion 2D+t Analytic Signal: Implementation

In 2D + t dimensions, from the introduction of Clifford biquaternion Algebra in [START_REF] Girard | Analytic video (2d+t) signals by clifford fourier transforms in multiquaternion grassmann-hamilton-clifford algebras[END_REF], we have the full algebra elements: (1)

Clifford Fourier Transform

Given a function f(x) having its value in the Clifford algebra with x = (x 1 , x 2 , x 3 ), and let F(u) with u = (u 1 , u 2 , u 3 ) denotes the biquaternion CFT:

F(u) = R 3 f(x)e -i2πu 1 x 1 e -j2πu 2 x 2 e -k2πu 3 x 3 dx 1 dx 2 dx 3 . (2)
Thus, here the function F(u) is a biquaternion of eight algebra elements that introduced in Eq. 1.

The inverse CFT is given by:

f(x) = R 3 F(u)e k2πu 3 x 3 e j2πu 2 x 2 e 2πu 1 x 1 du 1 du 2 du 3 . (3)
To compute the direct CFT, one proceeds in cascade integrating first with respect to x 1 using a standard FFT. The second FFT (integration with respect to x 2 ) is then applied on each real component of the previous complex number. Then, the third FFT (integration on x 3 ) is applied on each of the resulting real components. Finally, all the components are properly displayed as a Clifford biquaternion. For the inverse CFT, one proceeds in the same way on each real component of the Clifford biquaternion using IFFT and reversing the order of integration. Due to the symmetries of the CFT of a scalar function f(x 1 , x 2 , x 3 ), only one orthant of the Fourier space is necessary to obtain the entire Fourier space.

Analytic Signal

The analytic Clifford Fourier transform is defined by:

F A (u) = [1 + sign (u 1 )] [1 + sign (u 2 )] [1 + sign (u 3 )] F(u), (4)
and the analytic signal by:

f A (x) = R 3 F A (u)e k2πu 3
x 3 e j2πu 2 x 2 e i2πu 1 x 1 du 1 du 2 du 3 .

(5)

Application of Analytic Signal

To put the analytic signal into application, a progressive plane wave and an amplitude modulated wave are created by cosine functions. Then their analytic video signals are calculated. Subsequently, some physic parameters from the phase of analytic video signal can be found, such as wave velocity, instantaneous frequency, phase velocity and group velocity.

Example 1: progressive plane wave and its instantaneous frequency and wave velocity

Consider the progressive plane wave given by:

f 1 (t, x, y) = cos(ωt + k x x + k y y), (6)
where ω, k x and k y are the pulsations of the plane wave. t represents the time axis , x represents the horizontal axis, and y represents the vertical axis of a frame in an image sequence. The analytic signal is given by:

f A (t, x, y) =     cos(ωt + k x x + k y y) -cos(ωt -k x x + k y y) cos(ωt + k x x -k y y) -cos(ωt -k x x -k y y)     + ε     sin(ωt -k x x + k y y) sin(ωt + k x x + k y y) -sin(ωt -k x x -k y y) -sin(ωt + k x x -k y y)     . (7)
Based on the analytic signal given by Eq. 7, the instantaneous frequency and wave velocity can be obtained as follows:

φ 1 = angle[f A (1) + if A (6)] = atan2 (FA(1), FA(6)) = ωt + k x x + k y y, (8)
where FA (1) means the first component of f A and FA (6) the sixth component of f A . The atan2() function is the four quadrant arctangent that used in [START_REF] Bülow | Hypercomplex signals-a novel extension of the analytic signal to the multidimensional case[END_REF]. Then, the instantaneous frequency ω, k x , k y are given by:

ω = ∂φ 1 ∂t , k x = ∂φ 1 ∂x , k y = ∂φ 1 ∂y , (9)
next, the wave velocities correspond to horizontal axis x and vertical axis y are given by:

v x = - ω k x , v y = - ω k y . (10)
Thus, from this example, we can get the velocities of this progressive plane wave along horizontal and vertical axis separately by using its analytic signal. Thanks to the 2D+t analytic signal, the equations of these velocities in Eq. 10 are continuous with respect to the time axis.

Example 2: Amplitude modulated wave and its phase velocity and group velocity

Consider the function

f 2 (t, x, y) = cos(ω 1 t + k x1 x + k y1 y) + cos(ω 2 t + k x2 x + k y2 y), (11)
with

ω i = Ω ± ω 2 , k xi = K x ± kx 2 , k yi = K y ± ky 2 and Ω > ω, K x > k x , K y > k y .
The analytic signal is given by:

f A (t, x, y) =     2 cos(ωt + k x x + k y y) cos(Ωt + K x x + K y y) -2 cos(ωt -k x x + k y y) cos(Ωt -K x x + K y y) 2 cos(ωt + k x x -k y y) cos(Ωt + K x x -K y y) -2 cos(ωt -k x x -k y y) cos(Ωt -K x x -K y y)     +     2 cos(ωt -k x x + k y y) sin(Ωt -K x x + K y y) 2 cos(ωt + k x x + k y y) sin(Ωt + K x x + K y y) -2 cos(ωt -k x x -k y y) sin(Ωt -K x x -K y y) -2 cos(ωt + k x x -k y y) sin(Ωt + K x x -K y y)     . (12) Then computes d = [f A (1)] 2 + [f A (6)] 2 = 4 cos 2 (ωt + k x x + k y y) = 2{1 + cos [2(ωt + k x x + k y y)]}. ( 13
)
The phase and group velocities are obtained as follows:

Φ 1 = Ωt + K x x + K y y = atan2 (FA(1), FA(6)) , (14)
Φ 2 = ωt + k x x + k y y = 1 2 arccos d 2 -1 , (15)
then the phase velocities v ϕx , v ϕy and group velocities v gx , v gy are:

v ϕx = - ∂Φ 1 ∂t ∂Φ 1 ∂x = - Ω K x , v ϕy = - ∂Φ 1 ∂t ∂Φ 1 ∂y = - Ω K y , ( 16
)
v gx = - ∂Φ 2 ∂t ∂Φ 2 ∂x = - ω k x , v gy = - ∂Φ 2 ∂t ∂Φ 2 ∂y = - ω k y . ( 17
)
Thus, from the analytic signal of this amplitude modulated wave, we can get the phase velocities and the group velocities along horizontal and vertical axis separately. Thanks to the 2D+t analytic signal, the equations of these velocities in Eq. 16 and Eq. 17 are continuous with respect to the time axis.

Numerical Approximation

The numerical approximation is calculated via MatLab. For the progressive plane wave video signal f 1 (t, x, y) = cos(ωt + k x x + k y y), its analytic video signal f A is shown in Fig. 1. The range of t, x, y is normalized into [0, 1] and the pulsation values are ω = k x = k y = 2π. From Eq. 8, there is the numerical presentation in Fig. 2 of the phase function. Next, by Eq. 9, the instantaneous frequencies are obtained from φ 1 . For a fixed value of horizontal index X and vertical index Y, ω can be found. The value is equal to 6.283(= 2π), which corresponds to the pulsation value of ω of input video signal. Meanwhile, the instantaneous frequencies k x and k y can be obtained correctly by the same way. Fig. 3 shows the ω value and a profile of φ 1 from Fig. 2(a). Hence, the wave velocity can be calculated by Eq. 10, i.e., V x = -ω kx = -6.283 6.283 = -1m • s -1 and V y = -ω ky = -6.283 6.283 = -1m • s -1 . The error between the algebraical and numerical result is less than 1 × 10 -13 ≈ 0. Considering another plane wave signal f 2 (t, x, y) = cos(ω 1 t + k x1 x + k y1 y) + cos(ω 2 t + k x2 x + k y2 y), the range of x, y is normalized into [-0.5, 0.5] and the range of t is [0, 2π/ω 1 ]. The pulsation values are

ω 1 = ω 2 = 2rad • s -1 , k x1 = 8rad • m -1 , k x2 = 4rad • m -1 , k y1 = 2rad • m -1 , k y2 = 1rad•m -1 .
As the result, the phase of the analytic signal Φ 1 with unwrap and Φ 2 without unwrap are shown in Fig. 4, which corresponds to Eq. 14. Subsequently, by partial differential, we obtain the frequency parameters Ω, K x and K y of phase Φ 1 , that are presented in Fig. 5. The values of these parameters correspond correctly to the algebraical results of K x , K y and Ω in Eqs. 11 and 12. Hence, the phase velocities are calculated as:

v ϕx = Ω/K x = 1/3m • s -1 , v ϕy = Ω/K y = 4/3m • s -1 .
Meanwhile, we obtain also the frequency parameters ω, k x and k y of phase Φ 2 shown in Fig. 6.

Conclusion

The paper has presented a concrete algebraic framework, i.e., Clifford's biquaternions for the expression of Clifford Fourier transforms and 2D + t analytic signals. Then, we have shown firstly how to extract the instantaneous frequency and wave velocity from a progressive plane wave, and secondly how to extract the phase velocity and group velocity from an amplitude modulated wave. Finally, with the numerical approximation, we have shown that these physical parameters can be recovered correctly. Our next work is to develop the method to estimate the motion from 2D+t medical image sequences based on the phase information of image sequences.

1 i = e 2 e 3 j

 3 = e 3 e 1 k = e 1 e 2 = i I = -e 1 e 2 e 3 e 1 = i e 2 = j e 3 = k .

Figure 1 :

 1 Figure 1: The eight components of the analytic video signal: f A = [a, b, c, d] + [e, f, g, h] at t index= 32, with the 32 sample points for each t, x and y.

Figure 2 :

 2 Figure 2: The phase φ 1 in 3 point of views at a fixed value of t index=32, x index=32 and y index= 32 separately.

Figure 3 :

 3 Figure 3: ω value from a profile of φ 1 on x index=32 and y index=32. The continuous line represents the profile of φ 1 , the square symbol line is the numerical value of instantaneous frequency ∂φ 1 ∂t , that equals to the algebraical value ω = 2π(star symbol line).

Figure 4 :

 4 Figure 4: (a) The phase Φ 1 (t, x, y) with unwrap at t index= 64. (b) The phase Φ 2 (t, x, y) without unwrap at t index= 64.

Figure 5 :

 5 Figure 5: Three frequency parameters of Φ 1 at a given index separately: (a) Kx = 6rad • m -1 at t index=64, (b) K y = 1.5rad • m -1 at t index=64, (c) Ω = 2rad • s -1 at x index=64;The values of these parameters correspond correctly to the algebraical results of K x , K y and Ω in Eqs. 12.

Figure 6 :

 6 Figure 6: Three frequency parameters of Φ 2 at a given index separately: (a)k x = 2rad • m -1 at t index=64, (b) k y = 0.5rad • m -1 at t index=64, (c) ω ∈ ±5 × 10 -14 ≈ 0rad • s -1 at x index=64;The values of these parameters correspond correctly to the algebraical results of k x , k y and ω in Eqs. 12.

  This work was supported by BQR INSA Lyon and conducted in the framework of the LabEX PRIMES ("Physics Radiobiology Medical Imaging and Simulation").


Gabriel Desgranges

Stéphane Gauthier

Jess Benhabib

Christophe Chamley

George Evans

Jean- Michel Grandmont

Roger Guesnerie

Guy Laroque

Seppo Honkapohja

Stephen Morris

Marion Oury

Peter Sørensen

Asymmetric Information and Rationalizability *

Keywords: JEL classification: C62, D82, D84 Asymmetric information, common knowledge, eductive learning, rational expectations, rationalizability

We study how asymmetric information affects the set of rationalizable solutions in a linear setup where the outcome is determined by forecasts about this same outcome. The unique rational expectations equilibrium is also the unique rationalizable solution when the sensitivity of the outcome to agents' forecasts is less than one, provided that this sensitivity is common knowledge. Relaxing this common knowledge assumption, multiple rationalizable solutions arise when the proportion of agents who know the sensitivity is large, and the uninformed agents believe it is possible that the sensitivity is greater than one. Instability is equivalent to existence of some kind of sunspot equilibria.

This paper has been accepted for publication in Economic Theory. It is available at the following URL: www.springerlink.com.

Introduction

The Rational Expectations Equilibrium (REE) supposes common knowledge (CK) of expectations. Following [START_REF] Guesnerie | An exploration of the eductive justification of the rational expectations hypothesis[END_REF], one can assess the relevance of this assumption by considering rationalizable outcomes. An outcome is rationalizable whenever it is consistent with CK of rationality and model. The REE is always a rationalizable outcome, but it is not necessarily the only rationalizable outcome since rationalizability entails no prior knowledge about expectations.

When the REE is the only rationalizable outcome, agents' expectations and the market outcome (prices, allocations) are uniquely determined by the fundamentals. This is no longer the case when there are multiple rationalizable outcomes. Expectations can then be heterogeneous and wrong 1 and the market outcomes are no longer pinned down by fundamentals. In this case, the REE is 'unstable.'

We address the stability issue in a linear coordination game with a continuum of players. In this class of games, stability is determined by the sensitivity of the actual aggregate outcome to agents' beliefs about it. Under CK of the sensitivity, [START_REF] Guesnerie | An exploration of the eductive justification of the rational expectations hypothesis[END_REF] shows that the REE is stable if and only if the sensitivity parameter is smaller than one. We relax the CK assumption and introduce asymmetric information about the sensitivity: Some agents are perfectly informed and the others have no private information about the sensitivity.

Suppose that the sensitivity differs across states of nature. Our main result is that asymmetric information about the sensitivity can lead to instability even in states of nature where the REE is the unique rationalizable outcome under CK of the sensitivity.

The intuition for this result hinges on a contagion-like argument across the different states of nature. Every agent wants to predict the outcome and, to achieve this goal, needs to expect others' behavior. But why should an informed agent care about the outcome in a state that does not occur? To predict the outcome in the true state, the informed agent needs to predict uninformed agents' behavior. To determine his own behavior, every uninformed agent must predict the outcome in every state since he does not know the true state. Everyone therefore takes account of all the states to predict the outcome. Both informed and uninformed agents are crucial for the contagion effect across states.

When there is a state of nature where the sensitivity is greater than one, this contagionlike argument implies that adding a small mass of uninformed agents to a world with perfectly informed agents is enough to lead to instability. Indeed, informed agents are unable to predict the outcome in the state where the sensitivity is greater than one. Therefore, uninformed agents cannot predict the outcome in this state, and instability spills over into other states through the forecasts of uninformed agents.

We show that instability under asymmetric information obtains if and only if there is a state where the sensitivity is greater than one and the proportion of informed agents is high enough. The main implication of this result is that a higher proportion of informed agents can be 'destabilizing': 'More information' leads to instability.

Alternative assessments of REE instability refer to multiplicity of REE or existence of sunspot equilibria. We introduce a concept of sunspot equilibrium adapted to our static framework to discuss instability of the REE using the sunspot approach. We show equivalence between multiplicity of rationalizable outcomes and existence of a sunspot equilibrium.

In the main strand of the literature, asymmetric information in linear coordination games has been analyzed under CK of the sensitivity [START_REF] Morris | The social value of public information[END_REF], [START_REF] Angeletos | Transparency of information and coordination in economies with investment complementarities[END_REF], [START_REF] Angeletos | Efficient use of information and social value of information[END_REF], [START_REF] Hellwig | Heterogeneous information and the welfare effects of public information disclosures[END_REF], Cornand and Heinemann (2010)). We depart from the literature by assuming that uncertainty bears on the sensitivity parameter.

Our equivalence between instability and existence of sunspot equilibrium is reminiscent of equivalence results found in dynamic models in [START_REF] Guesnerie | Successes and failures in coordinating expectations[END_REF]. [START_REF] Guesnerie | Expectational coordination in simple economic contexts[END_REF] discuss the links between various concepts based on CK ideas.

The paper is organized as follows. The benchmark setup is presented in Section 2. The case of complete information is briefly described in Section 3. In Section 4, the analysis is extended to the case of asymmetric information, and the main results are given. In Section 5, we consider extraneous uncertainty of the sunspot type.

The framework

We consider a stylized model with a beauty contest issue. There is a continuum of infinitesimal agents i ∈ [0, 1] who simultaneously form forecasts p e i about the 'price.' These forecasts then determine the actual price. The uncertainty about fundamentals is represented by Ω states of nature indexed by ω, ω = 1, . . . , Ω. In state ω, the actual price is

p(ω) = φ (ω) 1 0 p e i di + η (ω) . (1)
Fundamentals in state ω are summarized by the pair (φ (ω) , η (ω)), where φ (ω) measures the sensitivity of the actual price to forecasts and η (ω) is a scale factor. The reduced form used by [START_REF] Morris | The social value of public information[END_REF] fits [START_REF] Angeletos | Transparency of information and coordination in economies with investment complementarities[END_REF] with φ(ω) = φ ∈ (0, 1). In the sequel, we also assume that the model exhibits strategic complementarity, i.e., φ(ω) > 0 for every ω. Our analysis would apply in the presence of strategic substitutability, i.e., φ(ω) < 0 for every ω, as in the agricultural model of [START_REF] Guesnerie | An exploration of the eductive justification of the rational expectations hypothesis[END_REF]. However it does not extend to the case where the signs of the sensitivity to beliefs differ across states of nature.

Example 1. Muth model [START_REF] Guesnerie | An exploration of the eductive justification of the rational expectations hypothesis[END_REF]. There is a continuum of farmers i ∈ [0, 1] who produce corn. Each farmer chooses his crop one period before observing the corn price. The cost of producing q units of corn is q 2 /σ, with σ > 0. Farmer i expected profit is p e i q -q 2 /σ and thus his production is q i = σp e i . The actual price clears the market. The aggregate demand is b -ap. Aggregate supply equals aggregate demand when σ p e i di = -ap + b, which fits (1), with φ(ω) = φ = -σ/a < 0. In this example, the sensitivity is the same in every state. The sensitivity would vary across states of nature with uncertain aggregate demand, e.g., b(ω) -a(ω)p in state ω (a(ω), b(ω) > 0).

Example 2. Lucas supply curve. There is a continuum of infinitesimal firms i ∈ [0, 1]. Supply of firm i is q i = σ(p i -p e i ), where p i stands for the price of its product and p e i represents its forecast about the aggregate price level. The aggregate price level in state ω is

p(ω) ≡ 1 0 p i (ω)di.
The aggregate demand is -a(ω)p + b(ω) in state ω when the aggregate price is p. In equilibrium, the aggregate price p (ω) satisfies

1 0 σ(p i (ω) -p e i )di = -a(ω)p (ω) + b(ω).
This fits (1), with φ (ω) ≡ σ/(σ + a(ω)) > 0 and η (ω) ≡ b(ω)/(σ + a(ω)).

Complete information

In (1), the individual price forecasts implicitly depend on agents' information. When it is commonly known that the state is ω, price forecasts are made conditionally on ω, i.e., p e i = p e i (ω) in [START_REF] Angeletos | Transparency of information and coordination in economies with investment complementarities[END_REF]. A rational expectations equilibrium (REE) is a price p * (ω) solution to (1) when p e i (ω) = p * (ω) for all i. The REE is unique if and only if φ (ω) = 1. The REE can be viewed as the Nash equilibrium of a strategic guessing game in which agent j chooses a forecast p e j (ω) which minimizes his forecast error (p(ω) -p e j (ω)) 2 , given that p(ω) is determined by [START_REF] Angeletos | Transparency of information and coordination in economies with investment complementarities[END_REF]. In this game, the best-response forecast of agent j to a profile (p e i (ω)) of others' forecasts is

p e j (ω) = φ (ω) 1 0 p e i di (ω) + η (ω) . (2)
Through this interpretation, every agent expects p * (ω) because each one believes that all the others expect p * (ω). This (second order) belief is justified by higher order beliefs such that all the agents believe that all the rest expect p * (ω). The price p * (ω) is the only one consistent with the common knowledge (CK) of every agent expecting it. Following [START_REF] Guesnerie | An exploration of the eductive justification of the rational expectations hypothesis[END_REF], this interpretation suggests an assessment of the REE relying on a weaker assumption than CK of p e i (ω) = p * (ω) for all i. Assume instead that it is CK that the actual price p(ω) belongs to some set P 0 = p 0 inf , p 0 sup which comprises p * (ω). From this assumption, it is CK that p e i (ω) ∈ P 0 for all i. Appealing to (1), all the agents can infer that the actual price will be in the set P 1 (ω) = R ω (P 0 ) where the map R ω is defined by

R ω (P ) ≡ [φ(ω)P + η(ω)] ∩ P,
where P is any subset of prices. The actual price is determined by [START_REF] Angeletos | Transparency of information and coordination in economies with investment complementarities[END_REF], provided that it is in P 0 . Otherwise, it is the appropriate bound of P 0 , either p 0 inf (if the price given by ( 1) is less than p 0 inf ) or p 0 sup (if the price is greater than p 0 inf ). One defines a sequence of sets P τ (ω) along the same lines by

P τ (ω) = R ω (P τ -1 (ω)). It follows that if it is CK that p(ω) ∈ P τ -1 (ω), then it is CK that p(ω) ∈ P τ (ω) = R ω (P τ -1 (ω)).
Then, the set of prices consistent with the common knowledge assumptions is the limit set

P ∞ (ω) = ∩ τ ≥0 P τ (ω).
This limit set is properly defined since the sequence P τ (ω) is decreasing. The limit set is the set of rationalizable price forecasts of the guessing game (where forecasts are a priori restricted to P 0 ). The equilibrium is 'stable' when P ∞ (ω) = {p * (ω)}. Otherwise, the REE is 'unstable.' Every price in P 0 is rationalizable when the REE is unstable. The following condition for stability has been given by [START_REF] Guesnerie | An exploration of the eductive justification of the rational expectations hypothesis[END_REF]:

Proposition 1. The REE is stable if and only if φ (ω) < 1.
This proposition provides a benchmark for our analysis of the asymmetric information case. Stability is obtained when the economic system is not too sensitive to forecasts in (1), or equivalently agents' forecasts are not too sensitive to others' forecasts in (2).

Asymmetric information

We now assume that there are only α (0 ≤ α < 1) 'informed' agents who observe ω before choosing their price forecasts. The (1 -α) remaining agents have no information about the true state of nature at that time. These 'uninformed' agents have common prior beliefs: They all believe that state ω occurs with probability π(ω).

A REE is a vector of (p * (1), . . . , p * (Ω)) such that

p * (ω) = φ (ω) αp * (ω) + (1 -α) w π(w)p * (w) + η (ω) (3)
for any ω. The REE coincides with the Nash equilibrium of an amended guessing game in which agents try to minimize their forecast errors. This Bayesian game is as follows.

First, the true state ω is observed only by the informed agents i ∈ [0, α]. Then, all the agents simultaneously choose their forecasts. The strategy of agent i is a price forecast conditional on his information. If i is informed, his strategy is a vector of price forecasts (p e i (1), ..., p e i (Ω)), where p e i (ω) is the price expected by i to arise in state ω. If i is uninformed, then his strategy merely consists of a single price forecast p e i independent of ω. The aggregate price forecast in state ω is therefore

α 0 p e i (ω) di + 1 α p e i di.
Finally, the actual price p(ω) is determined by the aggregate price forecast according to the map

p(ω) = φ (ω) α 0 p e i (ω) di + 1 α p e i di + η (ω) . ( 4
)
Example 3. Muth model. The aggregate demand in state ω be b(ω)-a(ω)p. The expected profit of an informed farmer i is p e i (ω)q -q 2 /σ and his supply is q i (ω) = σp e i (ω). The expected profit of an uninformed farmer is w π(w)p e i (w)q -q 2 /σ, so that his production is q i = σ w π(w)p e i (w). In equilibrium, the actual price p(ω) in state ω is such that

σ α 0 p e i (ω)di + 1 α w π(w)p e i (w)di = -a(ω)p(ω) + b(ω).
Example 4. Lucas supply curve. If firm i is informed about the demand function, its supply is q i = σ(p i (ω) -p e i (ω)). If it is uninformed, its supply is q i = σ(p iw π(w)p e i (w)). The aggregate price level is

p(ω) ≡ α 0 p e i (ω)di + 1 α p i di.
Therefore, in equilibrium,

σp(ω) -σ α 0 p e i (ω)di + 1 α w π(w)p e i (w)di = -a(ω)p(ω) + b(ω).
Assume CK that the price a priori belongs to some interval P 0 which includes the equilibrium prices p * (ω) for every ω. Every agent thus knows that all the other agents expect the price to be in P 0 , and, consequently, each one understands that the aggregate price forecast is in P 0 in any state of nature. Hence, every agent concludes that the price in state ω belongs to the set P 1 (ω) = R ω (P 0 ), which is included in P 0 and may coincide with P 0 . When P 1 (ω) P 0 , agents have succeeded in eliminating some price forecasts.

Iterating this process yields the CK restriction that the price in state ω is in some set P τ -1 (ω) after τ -1 steps. At step τ , every agent knows that all the others expect the price in state ω to be in P τ -1 (ω). Every agent understands that the price forecast in state ω of an informed agent is in P τ -1 (ω), and that the price forecast of an uninformed agent is in w π(w)P τ -1 (w). All agents conclude that the price in state ω belongs to

P τ (ω) = R ω αP τ -1 (ω) + (1 -α) w π(w)P τ -1 (w) . ( 5
)
The relation ( 5) defines a sequence of intervals (P τ (ω), τ ≥ 0) for every ω. These sequences are decreasing and converge to limit sets P ∞ (ω). The REE is 'stable' whenever P ∞ (ω) = {p * (ω)} for every ω. Otherwise, it is 'unstable.' As in Section 3, this definition has a game-theoretical counterpart in terms of rationalizable solutions [START_REF] Bernheim | Rationalizable Strategic Behavior[END_REF], [START_REF] Pearce | Rationalizable Strategic Behavior and the Problem of Perfection[END_REF]). At step τ , if the strategy set is restricted to × ω P τ -1 (ω) for an informed agent, and to w π (w) P τ -1 (w) for an uninformed agent, then the best-response of agent i is a strategy in × ω P τ (ω) when he is informed, and in w π (w) P τ (w) when he is uninformed. The limit sets P ∞ (ω) are the rationalizable price forecasts of the 'guessing' game:

P ∞ (1) × • • • × P ∞ (Ω)
is the set of rationalizable price forecasts of an informed agent, and w π (w) P ∞ (w) is the set of rationalizable price forecasts of an uninformed one. Stability of the REE is equivalent to the uniqueness of the rationalizable price forecast, which then reduces to the REE prices.

(In)stability results

The following result presents the properties of the set of rationalizable prices when the REE is unstable.

Proposition 2. Consider an unstable REE.

1. For every ω, {p * (ω)} P ∞ (ω): For every ω, the set P ∞ (ω) of rationalizable prices in state ω includes but differs from {p * (ω)}.

2.

There is ω such that p ∞ inf (ω) = p 0 inf , and there is ω (possibly different from ω) such that p ∞ sup (ω ) = p 0 sup . In addition, for every ω such that αφ (ω) > 1, P ∞ (ω) = P 0 .

3. For every ω such that φ (ω) < 1, P ∞ (ω) P 0 , and P ∞ (ω) decreases in P 0 : If P 0 P 0 , then the limit sets P ∞ (ω) and P ∞ (ω) associated with the initial restrictions P 0 and P 0 are such that P ∞ (ω) P ∞ (ω).

The first item of this Proposition is a formal statement of the 'contagion' property. It shows that no price p * (ω) can be guessed in the case of instability, even in a state ω where φ (ω) < 1. Indeed, uninformed agents cannot select a single price forecast when the REE is unstable. This situation implies that, in every state, agents cannot settle upon the aggregate price forecast. Therefore, the actual price, which is determined by the aggregate price forecast, cannot be uniquely determined.

When the equilibrium is unstable, some 'coordination' volatility occurs in all the states at the outcome of the process of elimination of non-best response strategies. The magnitude of this volatility can be measured in state ω by the size of the interval P ∞ (ω) of rationalizable prices. Volatility is dampened when P ∞ (ω) is a narrow interval around the REE price p * (ω). The second and the third items of Proposition 2 characterize how the residual volatility depends on economic fundamentals. They show that a low sensitivity to beliefs φ (ω) plays a role reminiscent of that in the complete information case. A low sensitivity favors a narrow set P ∞ (ω) of rationalizable prices in state ω. In the contrary case, in a state where φ (ω) is large enough, the iterative process (5) provides no additional information: P ∞ (ω) = P 0 . These two items also show how the magnitude of this volatility depends on the initial assumption made about the relevant prices: A narrower prior set P 0 yields a narrower set P ∞ (ω) of rationalizable prices at the outcome of [START_REF] Bernheim | Rationalizable Strategic Behavior[END_REF].

Thus far, we have focused on the description of an unstable REE. The system ( 5) is a first-order linear recursive system. The REE is stable if and only if the spectral radius of the square matrix governing the dynamics ( 5) is less than 1. This yields the conditions for stability of the REE given in Proposition 3. Proposition 3. Assume that φ (ω) > 0 for any ω. Let 0 ≤ α ≤ 1.

1. If αφ (ω) > 1 for some ω, then the REE is unstable.

2. If αφ (ω) < 1 for every ω, then the REE is stable if and only if

Ω w=1 π (w) (1 -α) φ (w) 1 -αφ (w) < 1. (6)
Point 1 in Proposition 3 states that the REE is stable in (5) only if αφ (ω) < 1 for every ω. This inequality would also govern stability of the REE in state ω in a complete information setup involving α informed agents only. This fact suggests one should interpret this inequality by referring to a virtual restricted coordination problem which abstracts from the difficulties caused by uninformed agents. Namely, if informed agents know that the forecast of uninformed agents is fixed at p * ≡ w π(w)p * (w), then the actual price in state ω is

p(ω) = φ(ω) α 0 p e i (ω)di + η (ω)
where η (ω) = (1 -α) φ(ω)p * + η (ω). This virtual restricted setup is formally equivalent to the complete information case discussed in the previous section (with a mass α of agents only). Hence, by Proposition 1, the REE is unstable when αφ(ω) > 1. In this configuration, informed agents cannot correctly predict the price in state ω, even though, they know that uninformed agents expect the REE prices. It follows that in the true unrestricted setup, no agent (neither informed nor uninformed) succeeds in predicting the price in such a state.

Along the same lines, Point 2 in Proposition 3 can be interpreted as a stability condition of a virtual restricted problem which abstracts from the difficulties caused by the informed agents. Namely, if informed agents correctly guess the price, then the actual price is

p(ω) = φ(ω) αp(ω) + 1 1-α pe i di + η(ω),
and the actual average price is

Ω w=1 π (w) p(w) = Ω w=1 π (w) φ (w) 1 -αφ (w) 1 1-α pe i di + η(ω),
where

η(ω) = Ω w=1 π (w) η (w) 1 -αφ (w)
.

Again this virtual restricted setup is formally equivalent to the complete information case with a mass 1 -α of agents. By Proposition 1, stability of this virtual setup is given by ( 6).

The following Corollary to Proposition 3 describes how stability is affected by the information structure.

Corollary 1. Let φ (ω) > 0 for all ω. Let also α < 1. Then, there is a unique threshold proportion α * , 0 ≤ α * ≤ 1, of informed agents such that stability of the REE is obtained if and only if α < α * . In addition, 1. if φ (ω) < 1 for any ω, then α * = 1,

2. if there is ω with φ (ω) > 1 and if φ = π(w)φ (w) < 1, then 0 < α * < 1, 3. if φ > 1, then α * = 0.
The REE is stable if and only α < α * , i.e., the proportion of informed agents is low enough: Information revealed to some uninformed agents can only destabilize the REE. An intuition in line with Proposition 1 stems from the sensitivity of individual forecasts to others' behavior. When an uninformed agent expects the aggregate price forecast to change in some state, the adjustment in his own price forecast will be weighted by the probability of that state occurring. For this reason, his forecasting behavior is less sensitive to others' forecasts than the behavior of an informed agent. The uninformed agent's behavior is consequently easier to predict, which favors stability. By Proposition 1, when all the agents are informed (α = 1), the price p * (1) is the only rationalizable price in state 1 while all prices in P 0 are rationalizable in state 2. By Proposition 3, the equilibrium (p * (1), p * (2)) is unstable for α large enough (α > α * ). Introducing a few uninformed agents thus implies multiple rationalizable prices in state 1, i.e., p ∞ inf (1) < p 1 < p ∞ sup (1). However, when α is close to 1, the influence of uninformed agents on the actual outcome can be neglected, so that p ∞ inf (1) and p ∞ sup (1) are close to the equilibrium price p * (1).

It is supposed in the figure that 0 < α * < 1 (Corollary 1). By Proposition 2 the set of rationalizable prices in state 2 is P 0 for α high enough. In the figure this set remains equal to P 0 for all α > α * , i.e., both p ∞ inf (2) = p 0 inf and p ∞ sup (2) = p 0 sup for all α > α * . The red dashed lines p ∞ inf (1) and p ∞ sup (1) represent the boundaries of the set of rationalizable prices in state 1 for α > α * . There is a discontinuity in the set of rationalizable prices in both states when α passes below the threshold α * : for α just above α * , uninformed agents expect any price in P 0 to arise in state 2, and for all α < α * the rationalizable prices reduce to the equilibrium prices in every state.

Sunspots and stability

We show how instability results extend to the issue of existence of sunspot equilibria. It is known that existence of sunspot equilibria is closely related to multiplicity of rationalizable outcomes [START_REF] Guesnerie | Successes and failures in coordinating expectations[END_REF]. We introduce a concept of sunspot equilibria adapted to our static framework (equilibrium with imperfectly observed sunspots) and we show that the equivalence result holds. Hence, all our (in)stability results apply to the sunspot equilibria: Instability of the equilibrium is associated with non fundamental equilibrium volatility.

Consider a stochastic sunspot variable that can take Σ values (S = 1, . . . , Σ), not correlated with fundamentals. Assume that its actual value is not known when agents form their forecasts. Every agent i observes a private signal s i = 1, . . . , Σ imperfectly correlated with S. Conditionally based on S, private signals are independently and identically distributed across agents, and the probability Pr(s i | S) that i observes s i in sunspot event S is independent of i. Thus, in sunspot event S, there are Pr(s | S) agents who observe the signal s (s = 1, . . . , Σ).

Suppose that all the agents expect the price p e (ω, S) to arise if the state of fundamentals is ω and the sunspot is S. In state (ω, S), there are α Pr(s | S) informed agents whose price forecast is be the average probability (across agents) of sunspot S if the actual sunspot is S. The aggregate price forecast P e (ω, S) is expressed as

Σ S =1 µ(S |S) αp e (ω, S ) + (1 -α) Ω w=1 π (w) p e (w, S ) , (7)
and the actual price p(ω, S), determined by (1) in state (ω, S), is such that

p(ω, S) = φ (ω) P e (ω, S) + η (ω) . (8)
A REE is a vector of ΩΣ prices (p * (1, 1), . . . , p * (Ω, Σ)) such that p e (ω, S) = p (ω, S) = p * (ω, S) for every (ω, S) in ( 7) and ( 8). The 'fundamental' REE is obtained when p * (ω, S) is independent of S. Otherwise, sunspots matter and the REE is a 'sunspot' equilibrium.

The following result gives conditions for the existence of a sunspot REE.

Proposition 4. There exists a sunspot REE if and only if the fundamental REE is unstable in [START_REF] Bernheim | Rationalizable Strategic Behavior[END_REF].

In our linear setup, the stability of the fundamental REE is still ruled by Proposition 3 and Corollary 1. Hence, both results also give necessary and sufficient conditions needed for the sunspot REE to exist. In particular, sunspot equilibria exist when many agents are informed about the true state of nature (i.e., α ≥ α * ).

Conclusion

This paper emphasizes the difficulty of coordinating expectations when the sensitivity of the market outcome to agents' forecasts is not common knowledge. A low value of the true sensitivity is not enough for stability. Instead, either a low average sensitivity (when there are many uninformed agents), or even a low sensitivity in every possible state (when there are many informed agents) are needed.

The intuition sustaining these results is easily illustrated in the case with two possible states of nature, one with a low sensitivity and the other with a high sensitivity. Under complete information, the rational expectations equilibrium is stable in the 'low' state, and unstable in the 'high' one. Under asymmetric information, stability properties of the prices in the two states are no longer disconnected. When many agents are informed, multiplicity of rationalizable prices arises in the high state (as in the complete information case). Uninformed agents then fail to predict a unique price in the high state. By contagion this failure implies multiple rationalizable prices in the low state.

These results may possibly contribute to the debate about the transparency of economic policy. They suggest that the disclosure of information about parameters which influence the sensitivity of the economy to agents' beliefs, e.g., the slope of the aggregate demand function in the Muth setup, may be harmful to stability. A government agency or a central bank revealing that the underlying sensitivity is low may destabilize the equilibrium if it cannot convince all the agents to believe its announcement: Instability occurs between full ignorance and full common knowledge.

A Proof of Proposition 2 1. Since the equilibrium is unstable, there is a state ω such that {p * (ω)} P ∞ (ω). The set of rationalizable price forecasts of uninformed agents cannot be reduced to a single element. In any given state the set of rationalizable prices is determined by the aggregate price forecast in that state, which depends on the forecasts of uninformed agents. Thus in any given state the aggregate price forecast cannot reduce to a single point.

2. Consider the minimum rationalizable prices (p ∞ inf (ω)) ω . For every ω, P ∞ (ω) P 0 . In the case where p ∞ inf (ω) > p 0 inf for every ω, the definition of P ∞ (ω) implies P ∞ (ω) = φ (ω) P ∞ (ω) + η (ω), and thus, for every ω:

p ∞ inf (ω) = αφ (ω) p ∞ inf (ω) + (1 -α) φ (ω) π (w) p ∞ inf (w) + η (ω) .
Since the equilibrium price p * (ω) is the unique solution of this equation, p ∞ inf (ω) = p * (ω) for every ω. The same holds true for the maximum rationalizable prices. This shows the first statement.

For ω such that αφ (ω) > 1, we show that p ∞ inf (ω) = p 0 inf . To this purpose, we show that, when everyone expects (p ∞ inf (ω)) ω , we have

p 0 inf ≥ αφ (ω) p 0 inf + (1 -α) φ (ω) π (w) p ∞ inf (w) + η (ω) , (9)
which means that p 0 inf is the actual price in state ω (that is: Subtracting this equality to [START_REF] Guesnerie | An exploration of the eductive justification of the rational expectations hypothesis[END_REF] gives

p 0 inf = p ∞ inf (
∆p (ω) > αφ (ω) ∆p (ω) + (1 -α) φ (ω) π (w) ∆p (w) , where ∆p (ω) = p ∞ inf (ω) -p * (ω) ≤ 0. This rewrites (1 -αφ (ω)) ∆p (ω) ≥ (1 -α) φ (ω) π (w) ∆p (w) ,
which holds true as

(1 -αφ (ω)) ∆p (ω) ≥ 0 ≥ (1 -α) φ (ω) π (w) ∆p (w) .
The same argument shows that p ∞ sup (ω) = p 0 sup for every ω such that αφ (ω) > 1. This shows the second statement.

3. The third item follows from the first step of the iterative process. By assumption, the equilibrium price η(ω)/(1 -φ(ω)) under complete information belongs to P 0 . From (5), at the first step of the process, we have:

p 1 inf (ω) = max p 0 inf , φ (ω) p 0 inf + η (ω) .
Since p 0 inf < η(ω)/(1 -φ(ω) and φ (ω) < 1, we have p 1 inf (ω) > p 0 inf . By definition, the map R ω (P ) cannot be increasing with τ . It follows that p ∞ inf (ω) ≥ p 1 inf (ω) > p 0 inf . The same argument shows that

p 1 sup (ω) = min p 0 sup , φ (ω) p 0 sup + η (ω) < p 0 sup , so that p ∞ sup (ω) ≤ p 1 sup (ω) < p 0 sup
. This shows that P ∞ (ω) is a strict subset of P 0 .

B Proof of Proposition 3

Consider, e.g., the Ω equations in (5) corresponding to the lowest bounds P τ inf (ω) of P τ (ω). They can be rewritten in matrix form p τ +1 inf = Mp τ inf + η, where p τ inf is the Ω × 1 vector (P τ inf (1) , . . . , P τ inf (Ω)), η is the Ω × 1 vector (η (1) , ..., η (Ω)), and M is the Ω × Ω matrix αΦ + (1 -α) ΦΠ (with Φ the diagonal Ω × Ω matrix whose ωωth entry is φ(ω), and Π the Ω × Ω stochastic matrix whose ωω th entry is π(ω )). The REE is stable if and only if the spectral radius ρ(M) of M is less than 1. The proof now hinges on the fact that for any Ω × Ω positive matrix M, and any Ω × 1 vector x = (x ω ) with every x ω > 0, we have

min ω (Mx) ω x ω ≤ ρ(M) ≤ max ω (Mx) ω x ω ,
where (Mx) ω stands for the ωth component of the Ω × 1 vector Mx (see Lemma 3.1.2. in Bapat and Raghavan(1997)). Let

Q (x, ω) = (Mx) ω x ω = φ (ω) α + (1 -α) 1 x ω Ω w=1 π (w) x w ,
for any ω. Assume first that αφ (ω) > 1 for some ω, e.g. ω = Ω. Then, consider the vector x = (ε, . . . , ε, 1) where ε > 0. When ε tends toward 0, Q (x, ω) tends to (+∞) for every ω < Ω, and Q (x, Ω) ≥ αφ (Ω) > 1. Hence, min ω Q (x, ω) > 1 for ε small enough, and so ρ(M) > 1: The REE is unstable if αφ (ω) > 1 for some ω. If, on the contrary, αφ (ω) < 1 for any ω, then define

E = Ω w=1 π (w) (1 -α) φ (w) 1 -αφ (w) .
Consider the Ω × 1 positive vector x whose ωth component is

x ω = 1 E
(1 -α) φ (ω) 1 -αφ (ω) .

If E ≥ 1, then Q (x, ω) > 1 for any ω, so that min ω Q (x, ω) ≥ 1, and the REE is unstable. If, on the contrary, E < 1, then Q (x, ω) < 1 for any ω, so that max ω Q (x, ω) < 1, and the REE is stable.

C Proof of Corollary 1

1. Assume first that φ (ω) < 1 for any ω = 1, . . . , Ω. Then, αφ (ω) < 1 and (1 -α) φ (ω) / (1 -αφ (ω)) < 1 for any ω. By Proposition 3, the REE is stable.

2. Let now inf ω φ (ω) < 1 < sup ω φ (ω). If α > 1/ sup ω φ (ω), the REE is unstable, by Proposition 3. If α ≤ 1/ sup ω φ (ω), then αφ (ω) < 1 for every ω, and the REE is stable if and only if ( 6) is met. Let

F (α) = Ω w=1 π (w) φ (w) 1 -αφ (w) - 1 (1 -α) (10)
Since F (•) is a continuous and increasing function of α on the interval [0, 1/ sup ω φ (ω)], with F (α) > 0 whatever α is, there is at most one value α such that F (α) = 0 on this interval. Observe now that F (0) = φ -1, and F (α) tends to +∞ when α tends to 1/ sup ω φ (ω) from below. If, on the one hand, φ ≥ 1, then F (α) ≥ F (0) > 0 for any α ∈ [0, 1/ sup ω φ (ω)], and the stability condition ( 6) is never satisfied. If, on the other hand, φ < 1, then there exists a unique solution α * (α * > 0) to F (α) = 0 in [0, 1/ sup ω φ (ω)]. The condition F (α) < 0, i.e. the stability condition [START_REF] Cornand | Measuring agents' reaction to private and public information in games with strategic complementarities[END_REF], is equivalent to α < α * . Since F (α * ) = 0 implicitly defines α * as a function (φ(1), . . . , φ(Ω)), and since F (•) increases in every φ (ω), α * decreases in every φ (ω).

3. Let φ > 1. We know that F (α) > 0 for any α ∈ [0, 1/ sup ω φ (ω)]. As a result, the stability condition ( 6) is never satisfied.

D Proof of Proposition 4

Let us rewrite conditions (8) in matrix form. To this aim, let p(S) be the Ω × 1 vector whose ωth component is p(ω, S), and p be the ΩΣ × 1 vector (p(1), . . . , p(Σ)). Let S be the Σ × Σ stochastic matrix whose S Sth entry is µ(S |S). Then, with M defined in Proposition 3, a REE is a vector p such that

p = (M ⊗ S) p + 1 Σ ⊗ η, (11)
where the symbol ⊗ stands for the Kronecker product. Let e(S) be the Sth eigenvalue of S, with e(S) ∈ [-1, 1] since S is a stochastic matrix. Let µ(ω) be the ωth eigenvalue of M.

Then, the ΩΣ eigenvalues of M ⊗ S are e(S)µ(ω) for any pair (ω, S). If ρ(M) < 1, then all the eigenvalues of M ⊗ S have moduli less than 1, and so M ⊗ S -I 2Ω is invertible and there is a unique REE. If ρ(M) ≥ 1, there exist stochastic matrices such that e(S) = 1/ρ(M) for some S. In this case, the matrix M ⊗ S has an eigenvalue equal to 1, and there are infinitely many p solution to [START_REF] Guesnerie | Expectational coordination in simple economic contexts[END_REF], i.e. infinitely many sunspot REE and the fundamental REE.

Figure 1 :Figure 1

 11 Figure 1: Information structure and rationalizable prices in a two-state case

  | s)p e (ω, S ) for any s. There are also (1 -α) Pr(s | S) uninformed agents who expect Σ S =1 Pr(S | s) Ω w=1 π (w) p e (w, S ) . Let µ(S |S) = Σ s=1 Pr(s | S) Pr(S | s)

  ω)). Recall the fixed point relation characterizing the equilibrium (p * (ω)) ω p * (ω) = αφ (ω) p * (ω) + (1 -α) φ (ω) π (w) p * (w) + η (ω) .

[START_REF] Dominitz | Expected Equity Returns and Portfolio Choice: Evidence from the Health and Retirement Study[END_REF], Dominitz and Manski (2011) and Arrondel et al. (2012) provide recent empirical evidence about heterogeneous expectations.


Rémi Barraquand
email: remi.barraquand@inrialpes.fr

Dominique Vaufreydaz
email: dominique.vaufreydaz@inrialpes.fr

Rémi Emonet
email: remi.emonet@inrialpes.fr

Jean-Pascal Mercier
email: jean-pascal.mercier@inrialpes.fr

Case Study of the OMiSCID Middleware: Wizard of Oz Experiment in Smart Environments

Keywords: Service Oriented Architecture, Ubiquitous Computing, Middleware, Wizard Of Oz, Smart Environments

This paper presents a case study of the usage of OMiSCID 2.0, the new version of a lightweight middleware for ubiquitous computing and ambient intelligence. The objective of this middleware is to bring Service Oriented Architectures to all developers. After comparing to available solutions, we show how it integrates in classical workflow without adding any constraint on the development process. Developers only need to use a library available in widely used programming languages (C++, Java and Python). Then, the basics of OMiSCID and a brief technical description are described as its User Friendly API. This API makes it straightforward to expose, look for or send messages between software components over a network. The added value of the proposed middleware has already been experienced in international research projects. This paper demonstrates its effect in cutting down development time, improving software reuse and easing redeployment in the context of a Wizard of Oz experiments in intelligent environments.

I. INTRODUCTION

Today's vision of ubiquitous computing is only half way achieved. The multiplication of low cost devices along with the miniaturization of high performance computing units technically allow the design of environment widespread by cameras, motion detectors, automatic light controls, pressure sensors or microphones. Those devices, given the apparition of wireless networks, can communicate together with mobile and personal equipments such as cellular phones, photo frames or even personal assistants. On the other hand, the quiet and peaceful aspect of this vision where computing units can understand each others in order to collaborate is yet a research problem.

Build upon this network of devices, ambient intelligence tries to address the problem of making devices refer to user in an appropriate way by making them aware of his activity: current task, availability, focus of attention, etc. Such environments that sense user activity and act according to it are named "intelligent environments" or "smart environments".

However, activity understanding is yet a complex problem and relies on the ability to constantly aggregate information from an ever changing medium where devices come and go, break and evolve. Often used only to refer the access to information or applications from occasionally-connected devices, mobility is a key aspect of this vision.

For the user experience to be optimal anywhere anytime, ambient intelligence should be mobile. The intelligence can for example be embedded in a cell phone and dynamically adapt to the current environment and what services it provides. Ambient intelligence covers numerous fields and poses many challenges. Among these, handling dynamicity in software architecture is one that plays a central role.

This paper addresses the use of the OMiSCID [START_REF] Emonet | O3miscid: an object oriented opensource middleware for service connection, introspection and discovery[END_REF] middleware that fits between the network of devices and ambient intelligence. It aims to ease the design of agile Service Oriented Architecture (SOA) and to solve constraints of pervasive computing and intelligent environments. OMiS-CID orchestrates services in the environment, by providing cross-platform/cross-language tools for easy description, discovery and communication between software components.

The next section introduces the needs for such middleware. In section III, we present our approach focusing on key functionalities and concepts. Usage of OMiSCID is then illustrated by the design of a Wizard of Oz experiment. Finally, we draw some conclusions.

II. UBIQUITOUS COMPUTING REQUIREMENTS

The PRIMA team works on perception and perceptive spaces (using multiple cameras, microphones, wireless technologies, etc.), context awareness and ambient intelligence. In such research area, many services, developed by specialists using multiple techniques and languages, must interconnect in order to achieve a final goal. In the context of international researches, like DARPA or EU project funding, this problem is even more important because of different habits and of historical technical backgrounds within the involved research groups. In order to help non softwarearchitect researchers to interact, we need a simple and usable solution that addresses a common problem: how to find, interconnect and monitor services within the context of cross-language cross-platform distributed applications?

To solve this problem, one can envision many different approaches. The first one is to decide, a priori, what will be the common way of programming. This solution can be adopted in small groups and must be driven by underlying technologies. It may make people learn a new language or framework to interoperate and can changed every time involved scientists are replaced by new ones. The second possible scenario is to list all the software pieces and try to find a common way to do networking. In ubiquitous computing and ambient intelligence, this list will exhibit a variety of criterions:

• programming languages: C++ for video/audio processing, Java for lighter processing or user interfaces, scripting language. • operating systems: Windows (for device support for instance), Linux, Mac OSX (cross-platform); • data to exchange: simple texts, data structures or huge data like audio/video flows (messages or stream flows); • configuration: peer to peer connection (IP address/port) or more complex interconnection scripts using service description and recruitment (dynamic service discovery); • maintainability and sustainability. Their are three main available solutions, the two most widely used are compared in the Table I. OSGi [START_REF] Marples | The open services gateway initiative: an introductory overview[END_REF] is the first typical solutions to provide most of the requirements listed formerly. It permits construction of Java applications locally by recruiting components. Using iPOJO [START_REF] Escoffier | ipojo: an extensible service-oriented component framework[END_REF], it is possible to describe services and requirements in order to avoid writing dedicated code. Using specific adapters, like in R-OSGi [START_REF] Wang | Dynamic software upgrading for distributed system based on r-osgi[END_REF] it is also possible to search for non local services. H-OMEGA [START_REF] Escoffier | Developing User-Centric Applications with H-Omega[END_REF] proposes also an alternative using UPnP for device discovery and a centralized server for code management. Nevertheless, even if it is always possible to use JNI for C/C++ application, OSGi is dedicated to Java. We do not retain this solution.

Web Services [START_REF] Papazoglou | Web Services: Principles and Technology[END_REF] are also a widely used solution for distributed applications. They permit using web technologies to construct distributed applications. Services are described with the Web Services Description Language (WSDL) and can be discovered using WS-Discovery. As said in Table I, Web Services are not designed for huge stream flows. Moreover, event if there are several alternatives to WSDL, like BPEL4WS 1 [START_REF] Khalaf | Service-oriented composition in bpel4ws[END_REF] or OWL-S 2 [START_REF] Martin | Bringing semantics to web services: The owl-s approach[END_REF], they all provide service descriptions that are not easy to handle for a non specialist. We do not retain this solution.

The last possible solution is to use one of the specialized middlewares usually dedicated to a specific task and/or environment. We can illustrate them by focusing on Smart Flow II [START_REF] Fillinger | The nist data flow system ii: A standardized interface for distributed multimedia applications[END_REF]. This middleware is very efficient in managing the data flow from many multimedia sources at the same time on several computers. But its force is also its weakness: it is difficult to configure and to manage other type of data.

From the previous sections, we can see that none of these solutions fulfills all the identified requirements. This assumption was the start of the OMiSCID middleware development. In the following sections, we will present the underlying concept and philosophy behind OMiSCID middleware solution.

III. OMISCID BASICS

OMiSCID stands for Opensource Middleware for Service Communication Inspection and Discovery [START_REF] Emonet | O3miscid: an object oriented opensource middleware for service connection, introspection and discovery[END_REF]. It was designed and built to answer the problem of integration and capitalization of heterogeneous code inside augmented environment. OMiSCID is distributed with a non sticky MITlike license, fully open source and available on a dedicated website: http://omiscid.gforge.inria.fr/.

A. Concepts

The OMiSCID middleware is built around 3 main concepts: services, connectors and variables. A service is a piece of software with a well defined way to access its provided functionalities. Services are composed of connectors and variables. At least, a service has the following read only variables: a name, a class, a unique service id and login/hostname information. Connectors are used to transfer data between services and are either input, output or both. Variables describe the service or its state. They may have local or remote write protection. Aggregating all these information, we obtain a service description that can be used to search and interconnect services.

B. Communications

Messages are atomic elements of all communications in OMiSCID. They are sent using a connector to a specific peer or to all listening services at once. The receiver will be notified that a new message is ready when it is fully available. Each message is provided with contextual information such as the service and connector it comes from. There are 2 main kinds of workflow for messages that can be mixed:

• A peer to peer approach. After receiving a message from a service and processing it, a response message is sent back to it; • A data flow approach. After receiving a message on a connector and processing it, a message with the result is broadcasted on another connector in order to continue the processing chain. Message can be sent as raw binary chunk or as text, which allows lot of flexibility for developers. Binary messages are often used to stream real time data such as video or audio. Text communication can be enhanced by the JSON format and allows for more advanced operation and extensions (see Section III-D).

C. Service discovery in dynamic context

Also known as service discovery, the ability to browse, find and dynamically bind running services, is one of the most important features of SOA moreover in ubiquitous • An ask-and-wait approach asking for the list of services that match a certain criterion. This procedure will wait until at least one service match or that a timeout is reached rising an exception. • An ask-and-listen approach notifying the application by the means of callback or listener whenever a service that matches the criterions appears or disappears. Figure 2 and Section V-C gives clues about OMiSCID service discovery capabilities.

D. Serialization and remote procedure call

The philosophy of OMiSCID is to exchange information between services using either binary or textual messages without any standard on the format of those messages. OMiSCID 2.0 provides a simple way to marshal and unmarshal any object. This allow for easy communication between services without paying attention to serialization issues.

An OMiSCID service can expose some of its functionalities by the means of remote callable methods. Such distant calls can be done either in a synchronous or in an asynchronous manner.

E. OMiSCID Gui

OMiSCID provides a simple solution to declare, to discover and to interconnect services. Nevertheless, it needs, for maintainability and sustainability, an interface to visualize and to debug distributed services. OMiSCID Gui is a powerful tool built over the Netbeans platform and provides the developer with a graphical interface for multiple management tasks. It inherits many of the advantages from the Netbeans platform: portability, modularity, advanced window management, etc... OMiSCID Gui comes with light core modules and is extensible at infinite (see [START_REF] Emonet | Semantic description of services and service factories for ambient intelligence[END_REF] for details). One of the core modules is a service browser that displays all the services present within the environment as well as their connectors and variables. This module also provides many contextual and extensible operations to be applied on the listed services and their variables/connectors. Among all the extensions available and easily installed using the Netbeans Plugin interface, one can find:

• A simple variable plotter than can dynamically create and display graphics of remote service variables. • A family of plugins that allow displaying 2D information such as video stream or custom shapes representing for instance regions of interest of a 3D tracker. • A plugin that displays a graph of the services in the environment along with their interconnections. • A lot of other plugins such as: real time audio stream player, 3D visualization tools, cameras controls etc... OMiSCID Gui comes with a public plugin repository already packed with visualization, controls, debugging plugins and can be extended by developers. All Netbeans platform plugin can also be integrated to our platform. Its ease of use make it a must-have tool for OMiSCID development, demonstration or service oriented application development.

IV. BRIEF TECHNICAL DESCRIPTION

One crucial requirement when designing a middleware for such heterogeneous research area is to make it usable by most of the people involved.

A. Multiplatform/Cross-Language

OMiSCID was designed with cross-platform/crosslanguage capabilities in mind. There are actually 3 supported implementation of OMiSCID: C++, Java and Python3 (PyMiSCID). Moreover, the Java version can be used from Matlab and any other language running on the Java virtual machine (JavaFX, scala, groovy, javascript, etc.) We also provide an OSGI abstraction layer that exposes OMiS-CID with standard OSGI paradigm. OMiSCID was developed more as a set of guideline rather than a specification, all the implementations are fully written in the target language, thus ensuring speed, reliability, close integration with data structure and programming paradigm.

All versions are fully cross-platform and works on Linux, Windows and OS X both 32 bits and 64 bits. The C++ version uses an abstraction layer that provide common system objects like sockets, threads, mutexes, etc. The Java version can be used on portable device like PDA. All implementations on all supported platforms can interoperate with each other.

B. User Friendly API

In order to simplify interpersonal communications between OMiSCID users, we developed a common User Friendly API. It was defined to be easy to learn, easy to use and portable in several languages. Indeed, concepts, methods, parameters follow the same API in C++, Java and Python. However each implementation takes advantage of the language specificities and design patterns.

The API also provides simple callback/listener mechanisms. Thus, one can be notified of many different events: a new connection from a service, a disconnection, a new message, a remote variable changed, etc.

C. Performance and scalability using OMiSCID

For the discovery process, registering 100 services over the networks from 3 differents computer takes less than 1 seconde. Searching for a service among hundreds using a simple variable value is less than 20 ms long. More specific searches using user-defined search filter (processing video stream to select a camera for instance) can obviously spend much more time. Latency for sending messages is around 4 ms in average comparing to usual TCP/IP connections. Detailed tests and explanations can be found in [START_REF] Emonet | Semantic description of services and service factories for ambient intelligence[END_REF] and on the OMiSCID Web site.

V. CASE STUDY

For the past few years OMiSCID middleware has been used in different research projects [START_REF] Crowley | Autonomic computer vision systems[END_REF], [START_REF] Barraquand | Learning polite behavior with situation models[END_REF], [START_REF] Emonet | Semantic description of services and service factories for ambient intelligence[END_REF], [START_REF] Zaidenberg | An architecture for ubiquitous applications[END_REF]. In [START_REF] Emonet | Semantic description of services and service factories for ambient intelligence[END_REF], OMiSCID is used to redesign a complete 3D Tracking system as well as an automatic cameraman. The redesign reduces the number of software components and has the advantage to provide shared and reusable services. For instance, both architectures use the same video grabbing services. This service provides real time streaming of camera images, that is simultaneously accessible by multiple remote services such as visualization services or image processing ones: movement detector, person detector, posture estimator. OMiSCID middleware allows robustness for service discovery, reliable communication, connection and disconnection but also ease the federation of services. In [START_REF] Zaidenberg | An architecture for ubiquitous applications[END_REF], [START_REF] Barraquand | Learning polite behavior with situation models[END_REF], OMiSCID is used for the realization of a smart agent. The perception of the agent is provided by services dynamically discovered in the environment allowing the agent to construct a situation model [START_REF] Crowley | Situation models: A tool for observing and understanding activity[END_REF] of the current situation. The agent is yet another service and, according to its perception, it is able to perform actions in the environment by sending orders to actuator services. In [START_REF] Zaidenberg | An architecture for ubiquitous applications[END_REF], the knowledge of the agent is distributed and can be stored on remote database using a combination of OSGi and OMiSCID. Each service developed is a reusable piece of software that ensures a decrease of development time along the years. The Wizard of Oz (WOz) experiment we conducted is the perfect example.

A. Requirements for Wizard of Oz

WOz experiment is a research experiment, in which subjects interact with a computer system (fake mobile phone, remote controlled robot, etc.) that subjects believe to be autonomous, but which is actually being operated or partially operated by an unseen human: the wizard. The goal of such experiments is to evaluate system's functionalities without actually implementing them for real. The functionalities validated by the experiments can then be implemented while reconsidering others, saving money and time. In most settings, subjects are located in a room along with the system to evaluate while the wizard operates in another room. Both rooms can be separated by a beam splitter allowing the wizard to observe and react accordingly to the subject(s) actions.

Setting up a WOz experiment requires an important preparation, even more if the settings have to be mobile and re-deployable: to be carried in different places. The wizard must have access to a multitude of information in order to control the system as best as possible. Without the presence of a beam splitter, the environment must be equipped with cameras, microphones and speakers to record and stream the scene in real time. Among those devices, the wizard also needs the proper controllers to remotely manipulate the system, which requires an extensive use of wireless or wired communication between software components: controllers and controllees. In addition, the coupling between software components has to be able to change and to be easy to achieve. Allowing for instance to deploy debuggers, loggers or visualization tools at runtime.

B. Experimental Settings

On an ongoing research project we sought to evaluate the behavior of subjects immersed in a ubiquitous environment while asked to teach a smart agent how to control the space. Among few, the objectives were to validate hypothesis about human-machine interaction as well as to collect constructive outcomes that will help future design of ambient systems. Four kinds of actor are to be considered in this experiment: the subjects, the smart agent, the environment and the wizards.

The subjects by group of 2 or 3, were asked to teach the agent how to control the environment in order to organize a small meeting. For instance a common task is to teach the agent to switch on the light when people enter the room and to switch it back off when everybody is leaving.

The agent is embodied by a personal mobile phone with wireless capabilities, on which we deployed a learning software and a simple user interface. This interface allows collecting real-time feedbacks from the subjects (good, bad) during the session. The agent connects through the wireless network to a situation modeler service that provides a situation model [START_REF] Barraquand | Learning polite behavior with situation models[END_REF] of the current situation. When requested by the subjects the agent takes action in the environment by sending orders to actuator services. Subjects can reward the agent whenever they agree or disagree with its action. Doing so the agent learns to control the environment using dynamically discovered services and feedbacks provided by users.

The environment is an office (Figure1) spread with many actuators and sensors. OMiSCID allows each of them to be accessible and controllable by services all-over the network (Figure2). Among those sensors we find cameras, microphones, thermometer and weather station. All the actuators are controllable by OMiSCID connectors and their states can be queried by those connectors or are exposed through variables. Among the actuator we list: a steerable projector, x10 controller, speaker or even shutter. For this experiment we needed two wizards.

The first wizard was in charge of simulating certain actuators in the environment such as pressure detectors under the chairs and sofas. Indeed, we didn't dispose of such device in our environmental facility, thus we emulated those actuators using a user interface plugged into OMiSCID Gui. The simulating interface was seen as yet another service that can be used by the situation modeler to build up a better situation model.

The second wizard was controlling the overall experiment using a master interface. This interface allowed writing realtime observations through an annotator service, as well as taking control over all the services in the environment. Such a master control for instance let the wizard speed up the experiment by helping the agent to guess better actions (when subjects got exhausted), or by putting back the environment settings in an appropriate state.

C. OMiSCID At Glance

For this experiment we deployed more that 20 services spread on 5 computers running different operating systems (Linux, Windows, MacOSX). Figure 2 presents some of the devices present in the environment as well as the interconnection of services. Due to the complexity of the schema some services have been removed. In the following we review some of the advantages of using OMiSCID in this experiments:

1) Multi-platform: 5 computers have been used during the experiments, two of them by the wizards. One of the wizards was using MacOS, on which we deployed the master control. Due to driver issue the sound recording system was using a Microsoft powered computer. The video streaming as well as all the other services (archiver, x10, etc) were running on Linux hosts.

2) Multi-language: To design the services we made use of different languages. C++ was used for performance reason such as for the video and sound processing/capture services. Python is a really powerful language for the rapid prototyping of application, we used python to quickly develop the x10 controllers or the PanTilt controller. Java has been used to develop the OMiSCID Gui modules but also to access the different web services present in the environment such as the weather service. JavaFX was used to develop the wizard control's interface, its script language make it easy to use for inexpensive user interface design.

3) Service Discovery: The simple but powerful service discovery system provided by OMiSCID has been used to dynamically connect services together. The best examples are the situation modeler and archiver. Using a service repository they were able to filter services present in the environment in order to connect to them. For instance the situation modeler was looking for all services having connector or variable exposing state information. Using that state information, it was able to provide a situation model on an output connector. The archiver was responsible to backup any information transmitted between services on a hard drive. The archiver was looking for all services having output connector. Thus it was easy for instance to deploy or shutdown services on the fly during the experiment.

4) Communication: Communication between services was achieved using different format. For video and sound services, data were raw binary information tagged with time stamps. Web services such as the weather provider were communicating information using XML on their connector. The PanTilt controller exposed its commands by the means of remote callable methods, and presented its internal state using readable variable.

5) OMiSCID Gui: OMiSCID Gui was used by the wizard for different purpose. Firstly, the streamed sound and video were played by the embedded player. Indeed, we have developed OMiSCID Gui modules to play video and listen to audio stream in real-time. Those modules were used to have a feedback of what was happening into the experimental facility disposed into another building. Secondly, OMiSCID Gui was used to control the archiver and other services.

6) Reusability: Each of the service used in this experiment is a reusable piece of software that can be carried and deployed easily. For a wizard of Oz experiment only the hardware and the equipments (cameras, microphones) have to be transported and reinstalled. Everything else is deployable instantly and can adapt to the configuration: number of computers, operating systems, number and nature of devices, etc...

VI. CONCLUSION

OMiSCID provides a complete but simple solution to declare, describe, discover and interconnect services as well as to manage their inter-communication. OMiSCID offers to researchers several facilities for ubiquitous computing with its multi-platform and cross-language capabilities. The underlying concepts as well as the API are user friendly and directed toward usability. Along with this middleware, OMiSCID Gui provides developers with an extensible, portable and modular platform that ease development and debugging, and improve maintainability of OMiSCID demonstrations and applications.

OMiSCID has successfully been used in several academic research projects and more recently in a wizard of Oz experiment. Such an experiment requires an important amount of resources and preparations, particulary when realized in smart environments. We have presented how the use of OMiSCID and OMiSCID Gui greatly reduces development time, maximizes reusability and eases redeployment. Furthermore, this solution does not rely on the number of computers, operating systems or network configuration.

Figure 1 .

 1 Figure 1. PRIMA's Smartroom.

Figure 2 .

 2 Figure 2. Wizard of Oz Services.

Formerly, Python version was a simple wrapper to the C++ source code.