1 Modèles Economiques en Informatique Michel de Rougemont Université Paris II.

Post on 03-Apr-2015

107 views 2 download

Transcript of 1 Modèles Economiques en Informatique Michel de Rougemont Université Paris II.

1

Modèles Economiques en Informatique

Michel de Rougemont

Université Paris II

2

A. Jeux et Mécanismes1. Modèle de calculs, adapté à un nombre important

d’agents, suivant une fonction d’utilité. 2. Jeux: N joueurs suivant chacun un but. Quels sont

les Equilibres?3. Mécanismes: observons un équilibre, de quel jeu

sommes nous l’équilibre?

B. Valeur de l’Information1. Distances structurées2. Approximation de distances

Jeux, Mécanismes, Valeur de d’Information

3

1. Modèle de calculs, adapté à un nombre important d’agents, suivant une fonction d’utilité. WEB.

2. Jeux: N joueurs suivant chacun un but. Quels sont les Equilibres?

3. Mécanismes: observons un équilibre, de quel jeu sommes nous l’équilibre?

A. Jeux et Mécanismes

4

1. Dilemme des PrisonniersDeux décisions C (collaborer), T (Trahir)

2. Version répétée.

3. Jeux de vérification. Graphes d’accessibilité.

4. MaxSAT, MaxCUT: jeux à N joueurs

4. Jeux logiques: Nord-Est, dames, Echecs.

Exemples de Jeux

3,31,4

4,12,2

5

Mécanisme pour réduire le SPAM

1. Comment faire la différence entre un vrai mail et un SPAM?

2. Modifications au protocole de mail (pop, smtp)

3. Valeur d’un Email?

6

Valeur proportionnelle aux calculs demandés à A (Alice) par B (Bob)

Modifications au protocole de mail (pop, smtp)

1. A prend un ticket sur la page Web de B. (Entrée x d’un problème)2. A calcule f(x)=y3. A envoie y et l’Email4. B vérifie y

A B1. ticket

3. Résultat et Email

7

A calcule une fonction polynomiale

A prend un ticket sur la page Web de B. B : génère un polynôme aléatoire de degré n

B: choisit n+1 valeurs aléatoires

Ticket=

A doit trouver P(x) à partir du ticket.

Interpolation ou Inversion matricielle

nnxaxaxaxP .....)( 221

)(),...,(),( 112211 nn xPyxPyxPy

)(),...,,(),,( 112211 nn yxyxyx

8

B vérifie le calcul

B garde P(x) lorsqu’il génère le ticket.Vérifier consiste à comparer les coefficients de P(x) avec ceux envoyés par A.

On peut paramétrer:le degré, la précision des valeurs aléatoires pour forcer A à calculer 10 minutes 30 minutes….

Interpolation est polynomiale

La vérification est triviale

nnxaxaxaxP .....)( 221

9

Jeux à somme nulle

Deux joueurs I et II:

Gain de II = - Gain de I

Jeu Morra: chaque joueur cache 1 ou 2 Euros et cherche à deviner le choix de l’autre joueur. Il gagne s’il devine correctement. Si 1 seul joueur gagne, son gain est le montant caché total, payé par l’autre joueur, sinon le gain est de 0

04304003

30020320

10

Gain du Jeu

Gain du jeu :

Joueur I : x.A.yMiny

txaMinx.A.yMin iji

n

ijy

. ,

1

jiji

n

j

n

i

yxa . ,11

Réponse de II peut être pure

Toute solution pure doit satisfaire

ttyxayx.A.yn

jjiji

n

i

n

jj

1,

11

. ). (

txaMinx.A.yMin iji

n

ijy

. ,

1

tx.A.yMiny : Donc

11

Stratégie optimale

Conclusion

Joueur II peut jouer une stratégie pure

1

.

1

,1

i

n

i

iji

n

ij

x

xaMinMax

t x.A.yMint y

t x.A.yMiny

1

0.

1

,1

i

n

i

iji

n

i

x

xaz

zMax

12

Stratégie optimale

Conclusion

1043043032032

4321

32

41

41

32

xxxxxxz

xxzxxz

xxzzMax

Solution x*= [0,3/5,2/5,0]

Résolution par simplex.

Trouver une solution initiale

13

Théorème Minimax

Situation pour le joueur II

1

.

1

,1

j

n

j

jji

n

ji

y

yaMaxMin

1

0.

1

,1

j

n

j

jji

n

j

y

yaw

wMin

Problème dual du précédent. Par dualité:

Théorème (Von Neuman) : Max Min = Min Max

14

Dualité: Simplex

Résolution d’un système linéaire de maximisation:

•Introduction de variables d’écart•Solution initiale•Itération pour augmenter la valeur de la solution.•Terminaison

0,...,

.

.cMax

21

t

nxxx

bxA

x

15

Bases de la Dualité

0,,,3532

5583513

35 4Max

4321

4321

4321

4321

4321

xxxxxxxxxxxxxxxxxxxx

Estimation de z > az>5 avec (0,0,1,0)z>22 avec (3,0,2,0)….

Estimation de z <b ?Quel est le témoin?

16

Dualité : z < b

0,,,3532

5583513

35 4Max

4321

4321

4321

4321

4321

xxxxxxxxxxxxxxxxxxxx

Montrons que z <275/3

2nd contrainte . 5/33/2753/4053/53/25 4321 xxxx

3/2753/4053/53/25354 43214321 xxxxxxxx

Donc z <275/3

17

Dualité

0,,,3532

5583513

35 4Max

4321

4321

4321

4321

4321

xxxxxxxxxxxxxxxxxxxx

2nd contrainte +3ème contrainte

583634 4321 xxxx

Donc z <58

Méthode systématique.

18

Dualité : méthode

0,,,3532 .

55835 . 13 .

35 4Max

4321

43213

43212

43211

4321

xxxxxxxxyxxxxyxxxxyxxxx

332123211321 ).33().2().5( xyyyxyyyxyyy

Conditions pour que le membre gauche >

)355().583( 3214321 yyyxyyy

4321 354 xxxx

358353312 45

321

321

321

321

yyyyyyyyyyyy

19

Dualité: exemple

On obtient donc le système dual:

358353312 45

3 55 Min

321

321

321

321

321

yyyyyyyyyyyyyyy

3114321 355354 yyyzxxxx

20

Remarques générales

Problème Primal de Maximisation donne un problème Dual de minimisation.

3114321 355354 yyyzxxxx

jijim

i

n

jjjn

jxyaxc ,111

iim

iijjin

j

m

iybyxa

1,11

*1

*1 ii

m

ijjn

jybxc

A l’optimum:

21

Démonstration Minimax

Considérons la dernière ligne du dernier système du primal:

kkmn

kxczz .'

1*

*1

* . jjn

jxcz

mipourcy nii ...1'*

Posons:

Vérifions que y* satisfait :*

1*

1.. ii

m

ijjn

jybxc

22

Démonstration Minimax

Les variables d’écart sont définies comme:

kkmn

kjn

j j xczxc .. '1

*1

*1

*1

.. iim

ijjn

jybxc

mixabx jjin

jiin ...1.,1

mipourcy nii ...1'*

inim

ikkn

kjn

j j xyxczxc ... *1

'1

*1

jjin

jiim

ikkn

kjn

j j xabyxczxc .... ,1*

1'

1*

1

kjjin

jkn

kiim

ijn

j j xyacbyzxc .)(. *,1'

1*

1*

1

iim

ibyz *

1* Comparant les coefficients

de xj

Et on conclut:

23

Complémentarité

0*4*3 xx

Contraintes saturées du dual (m=3) et variables nulles du primal (n=2)

1,2,2 *5*2*1 xxx

0,0,0,1,2 *5*4*2*3*1 yyyyy

1 2

22

32

21

321

yyyy

yyyMin2*1x2*2x

Soit xi=0 soit contrainte duale est saturée

24

Complémentarité

0*4*3 xx

Contraintes saturées du primal (n=2) et variables nulles du dual (m=3)

1,2,2 *5*2*1 xxx

0,0,0,1,2 *5*4*2*3*1 yyyyy

2*1y0*2y

Soit yi=0 soit contrainte primale est saturée

Théorème : Ces deux conditions caractérisent une solution x*,y* optimum.

2 1 2

2

2

21

1

21

xxx

xxxMax

1*3y

25

Interprétation économique

Exemple de fabrication de produits en quantité x1, x2, x3.

Chaque produit utilise des composants e1,e2,e3,e4 et contribue à un profit ci ($ par unité de xi)

Contraintes du primal : Ax < b

Contraintes du dual A’ y >c yj = $ par unité de composant ej

Min y.b : coût minimum des composants

26

Jeux matriciels

Deux joueurs: les gains des I et II sont définies par deux matrices A,B de même dimension. Pour n joueurs, n hypercubes.

Solution possible: x*= [2/3,1/3] , y*= [1/3,2/3]

Solution (x*,y*) est un équilibre de Nash.

314

231

132

312BA

exE

yAxMax T

.

..

yAuE

ueMin

T

T

..

.

27

Jeux matriciels

Par dualité: DualPrimal ... ueyAx TT

tt ExexE .e . t

.... uExyAx ttT 0)...( yAuEx tT

0.. yAuEt

Pour le joueur II:

fxF

yBxMax T

.

..

0)...( xBvFy ttT

dualitépar 0)..( xBvF tt

28

C.N.S. pour être un équilibre de Nash

Un couple (x,y) est un équilibre de Nash ssi il existe u,v tel que:

. exE

0)...( yAuEx tT

0.. yAuEt

Programme linéaire + contraintes quadratiques de complémentarité.

Simplex + complémentarité= Lemke-Howson

fyF .

0)...( xBvFy ttT

0.. xBvF tt

29

Algorithmique des Jeux

1. Etant donné deux matrices A,B, trouver un équilibre.Algorithme de Lemke-Howson, exponentiel dans n.

2. Généralisation à N joueurs: représentation compacte de l’hypercube.

3. Approximations.

4. Vérification approchée.

30

B. Valeur de l’Information

1. Modèles d’Information structurée• Base de données relationnelles• Echange de données

2. Information Semi-structurée• Données XML• Systèmes P2P

3. Distances• Mots• Arbres• Structures générales

4. Evaluation de distances• Approximations

31

Robustesse informatique

1. Robustesse• Données bruitées: si f(x)=y, est-ce que A(x+ε)=y +ε’?• Programmes erronés: A utilise des composants imparfaits

2. Problème classique • Décider si • Version robuste:

3. Testeur: décide si x est ε-loin de L ou si x est dans L, O(1).

4. Correcteur: si x est ε-proche de L, trouve y dans L proche de x , O(n).

5. Applications:• Sublinear algorithms• XML• Vérification de programmes

x2

x1x3

L

* ?

x L ou -loin de L ?

x L x

32

1. Distance d’Edition: Insertions, Effacements, Modifications

2. Distance Edition avec déplacements:

0111000011110011001

0111011110000011001

3. Distance Edition avec déplacements se généralise aux arbres ordonnés

Distance d’Edition avec déplacements

'( , ') ; ( , ) ( , ')

W Ldist W W dist W L Min dist W W

33

Statistiques uniformes d’un mot

W=001010101110 longueur n, n-k+1 blocs de longueur k=1/ε

1

1.#....

#)(.

2

1

knn

nWstatu

k

...."00...1" ofnumber #"00...0" ofnumber #

2

1

nn

"11...1" ofnumber #

....2kn

Pour k=2, n-k+1=11

1

4 1. ( ) . . ( )

4 11

2

u stat W u stat W

( , ') . ( ) . ( ') ,

dist W W u stat W u stat W proche,longueur desont mots les lorsque

Distance de mots: • NP-complet• Testable, O(1): échantillonner N sous-mots de longueur k: Y(W) et Y(W’) Si |Y(w)-Y(w’)| <ε. accepter, sinon rejeter

34

Testeur pour un langage régulier

W: 0000000000111111111111Y: 000001000011111101111Z: 1111111111110000000000

T: 01001010001011000111010101

a b

0

1

1H A

0.5 / 2

/ 2. ( ) . ( ) . ( )

/ 2

0.5 / 2

u stat W u stat Z u stat Y

0001

1000

)(.25,025,025,025.0

Tstatu

T YW

Z

Automate A définit L, et un polytope H dans l’espace des u.stats

Testeur x dans L: • Testable, O(1): calculer Y(W),

• Si dist(Y(w),H) <ε. accepter, sinon rejeter Remarque: robustesse au bruit.

35

Exemple de couple (A,H)

Blocs, k=2, m=4, | Σ |=4, | Σ| k +1=17:

Boucles de taille 1 bloc: {(aa,ca:1),(bb,2),(cc,ac:3),(dd:4)}

1 2

3 4

a

b

b

ca

cd

d

aa ca

H A

ac cc

bb

dd

36

Correcteur d’un langage régulier

Y: 000001000011111101111 est ε -proche de L(A)

Correction déterministe:1. Décomposition en sous-mots admissibles

000001000011111101111 000001 000111111 1111 2. Décomposition en composantes connexes

000001 000 111111 11113. Recomposition (déplacements)

000 000001 111111 1111 distance 3 de Y

a b

0

1

1

A

37

Correction d’un arbre ordonné

2 moves, dist=2

Automate d’arbre ou DTD: t: l,r r: l,r

38

Correcteur XML: http://www.lri.fr/~mdr/xml/

39

Applications

Testeur: • Estimateur de la distance entre deux fichiers XML,• Décide si un fichier XML F est ε-valide,• Décide si deux DTDs sont proches.

Correcteur: Si un fichier XML F est ε-proche d’une DTD,• Trouve F’ valide ε-proche de F; • Classe les fichiers XML du Web pour un ensemble de DTD’s

Vérification de programmes:• Décide si deux automates sont ε-proches en temps polynomial.• Model-Checking approché: http://www.lri.fr/~mdr/vera/

• Langage de spécification• Modèle • Distance

40

Conclusion1. Jeux et Mécanismes: Equilibres de Nash

2. Testeurs et Correcteurs: • Techniques statistiques• Logique et hasard

3. Valeur de l’Information

– Approximation de distances

Références:1. Robust characterizations of polynomials, R. Rubinfeld, M. Sudan, 19942. O. Goldreich, S. Goldwasser and D. Ron, Property Testing and its connection to

Learning and Approximation, 1996.

3. Property testing for regular tree languages, Mdr, F. Magniez (Icalp 2004) (.pdf) 4. Correctors for XML data, U. Boobna, M. de Rougemont (XSym 2004) (.pdf) 5. Property and Equivalence Testing on strings, E. Fischer, F. Magniez, M. de Rougemont

(ECCC 2005)(.pdf) 6. http://www.lri.fr/~mdr/xml/ et http://www.lri.fr/~mdr/vera/