Inscription / Connexion Nouveau Sujet
Niveau exercices
Partager :

10 points pour un L

Posté par
Imod
06-11-23 à 12:39

Bonjour à tous

Si on choisit au hasard 10 cases sur un échiquier 8 X 8 , doit-on parier ou non sur l'apparition d'un L ?

Un L est un triomino constitué de 3 cases contigües formant un  L plus ou moins retourné :

10 points pour un L

Amusez-vous bien ( c'est facile ) 😊

Imod

Posté par
Sylvieg Moderateur
re : 10 points pour un L 06-11-23 à 14:31

Bonjour,
Un L exactement ou au moins un L ?

Posté par
dpi
re : 10 points pour un L 06-11-23 à 15:32

Bonjour
Une idée... pour débuter.

 Cliquez pour afficher

Posté par
Imod
re : 10 points pour un L 06-11-23 à 16:44

@Sylvieg : au moins 1 .

Imod

Posté par
verdurin
re : 10 points pour un L 06-11-23 à 16:47

Bonsoir,
une tentative.

 Cliquez pour afficher

Posté par
verdurin
re : 10 points pour un L 06-11-23 à 16:52

Ma réponse précédente est au mieux approximative.

Posté par
Imod
re : 10 points pour un L 06-11-23 à 18:08

Je viens de me rendre compte que j'ai écrit 10 cases sur un échiquier8 X 8  au lieu de 12 mais ce n'est pas grave , la logique reste la même . On répond à l'une ou l'autre des questions .

Désolé

Imod

Posté par
dpi
re : 10 points pour un L 07-11-23 à 08:28

Cet exercice est intéressant.

 Cliquez pour afficher

Posté par
Imod
re : 10 points pour un L 07-11-23 à 11:45

J'avais plutôt choisi une approche à la Verdurin mais en considérant le nombre moyen de "L" produit par un triplet de cases . Après c'est facile sauf si je me suis complètement planté , ce qui n'est pas impossible vu mes faibles connaissances en probabilités

Imod

Posté par
dpi
re : 10 points pour un L 07-11-23 à 14:19

Une petite salade russe...

 Cliquez pour afficher

Posté par
verdurin
re : 10 points pour un L 07-11-23 à 16:40

Je n'arrive pas à trouver le calcul à faire.
J'ai fait une simulation qui donne :

 Cliquez pour afficher

Posté par
Imod
re : 10 points pour un L 07-11-23 à 17:23

Voilà comment j'avais vu les choses , ce n'est pas en accord avec ta simulation

Il y a 49 carrés 2X2 sur l'échiquier donc 196 L possibles . D'autre part il y a C_{64}^3=41664 triplets de cases . Donc pour un triplet donné une moyenne de \dfrac{196}{41664}=\dfrac{7}{1488} "L" . Si on prend 12 cases on a C_{12}^3=220 triplets donc une moyenne de 220\times\dfrac 7{1488}=\dfrac{385}{372}\approx 1,03 "L" donc plus de 1 .

Je ne sais pas si le calcul est juste et notamment si les 220 triplets fournis par les 12 casses sont équivalents à 220 triplets choisis au hasard pour l'apparition d'un "L" .

A voir donc .

Imod

Posté par
Sylvieg Moderateur
re : 10 points pour un L 07-11-23 à 17:25

Citation :
Amusez-vous bien ( c'est facile )

Posté par
Imod
re : 10 points pour un L 07-11-23 à 17:33

Bon , il y a un autre problème en dehors de celui que j'ai évoqué dans le message précédent . Le fait que la moyenne soit supérieure à 1 n'entraîne pas qu'il y ait plus d'une chance sur deux qu'un "L" apparaisse . En effet plusieurs "L" peuvent apparaître et gonfler la moyenne .

Le problème est donc ouvert : combien faut-il choisir de cases pour qu'en moyenne on ait au moins un "L" ?

Imod

Posté par
verdurin
re : 10 points pour un L 07-11-23 à 18:00

Ma simulation est peut-être fausse.
Voici le code que j'ai utilisé ( en python ) :

def tirage(taille) :
    echi=[[0 for i in range(8)] for j in range(8)] # échiquier vide
    tire=sample(range(64),taille) # on tire taille cases
    for i in tire:
        echi[i//8][i%8]=1 #que l'on place sur l'échiquier
    # ensuite on parcourt les carrés
    for i in range(7):
        for j in range(7):
            # si il y a 3 cases occupées on a un L et on quitte
            if echi[i][j]+echi[i][j+1]+echi[i+1][j]+echi[i+1][j+1]==3 :
                return 1 # au moins un L
    return 0 # pas de L trouvé

Je répète le tirage cent-mille fois et en totalisant les résultats.

Posté par
Imod
re : 10 points pour un L 07-11-23 à 19:13

Je ne sais pas lire ces codes

En fait ta simulation est en accord avec mon résultat même si mon raisonnement n'est pas correct ( avec 11 cases , est-on en dessous de 50% ? ) .

@Sylvieg : comme j'aime beaucoup en les chemins de traverse , il m'arrive souvent de me perdre , ce n'est pas la première et j'espère la dernière fois

Imod

Posté par
verdurin
re : 10 points pour un L 07-11-23 à 19:37

Il me semble que ton raisonnement est douteux.
En fait je trouve, par simulation, qu'il y a en moyenne 0,9 L par carré quand on tire 12 cases. Ce qui n'empêche que la probabilité d'avoir au moins un L soit plus grande que 1/2.
Avec 11 cases je trouve , avec la même simulation, une probabilité d'environ 0,47 d'avoir au moins un L.

Posté par
flight
re : 10 points pour un L 07-11-23 à 20:27

Bonjour
j'ai consideré qu'un "L" pouvait prendre 4 positions "le L normal , le L miroir , le "L" à l'envers  et son pied dirigé vers la gauche et le L à l'envers et son pied dirigé vers la droite , j'ai donc ecrit un petit programme "bourrin" qui choisit 10 cases differentes d'une grille 8x8 et retourne une proba de  0,3724  avec 10000 essais et que voici :


Sub GRILLE88()
Dim a, b, p As Integer
Dim s As Long
Dim e As Long
Randomize
p = 8  'grille 8x8
e = 0
Do
e = e + 1 '10000 essais

Set zone = Range(Cells(1, 1), Cells(8, 8)) 'zone de travail
zone.Interior.ColorIndex = xlNone  'vidage des couleurs
k = 0
Do
k = k + 1
recom:
   a = Int(Rnd * p) + 1
   b = Int(Rnd * p) + 1
    If Cells(a, b).Interior.ColorIndex = xlNone Then
     Cells(a, b).Interior.ColorIndex = 1
      Else
      GoTo recom  ' on ne choisit pas une meme cellule plusieurs fois
     End If
 Loop Until k = 10   'conteur de cellules , ici juqu'a 10
 n = 0
   'detection d'au moins un "L"
    'type 1:
      For i = 2 To 8
       For j = 1 To 8
        If Cells(i, j).Interior.ColorIndex = 1 Then
          If Cells(i, j).Offset(-1, 0).Interior.ColorIndex = 1 And Cells(i, j).Offset(, 1).Interior.ColorIndex = 1 Then
           n = n + 1
          End If
        End If
       Next
      Next
      
      
    'type2: au moins un "L" miroir
      For i = 2 To 8
       For j = 2 To 8
        If Cells(i, j).Interior.ColorIndex = 1 Then
          If Cells(i, j).Offset(-1, 0).Interior.ColorIndex = 1 And Cells(i, j).Offset(, -1).Interior.ColorIndex = 1 Then
           n = n + 1
          End If
        End If
       Next
      Next
    
    
    

    'type 3:au moins un "L" à l'envers droit
    
    For i = 1 To 8
       For j = 1 To 8
        If Cells(i, j).Interior.ColorIndex = 1 Then
          If Cells(i, j).Offset(1, 0).Interior.ColorIndex = 1 And Cells(i, j).Offset(, 1).Interior.ColorIndex = 1 Then
           n = n + 1
          End If
        End If
       Next
      Next
    
    
    
    
    'type 4:
    
    For i = 1 To 8 'au moins un "L" à l'envers gauche
       For j = 2 To 8
        If Cells(i, j).Interior.ColorIndex = 1 Then
          If Cells(i, j).Offset(1, 0).Interior.ColorIndex = 1 And Cells(i, j).Offset(, -1).Interior.ColorIndex = 1 Then
           n = n + 1
          End If
        End If
       Next
      Next
    
    If n > 0 Then
      s = s + 1   'on compte un succès à chaque fois qu'on trouve un "L" quelque soit son type
    End If
    
 Loop Until e = 10000
 
 MsgBox s / e   ' proba d'avoir au moins un "L" quelque soit sa posistion et retourne 0,3724
    
End Sub

Posté par
verdurin
re : 10 points pour un L 07-11-23 à 21:10

Salut flight.
Je vois qu'on trouve tous les deux des résultats voisins.
Ça me semble confirmer ma simulation et la tienne.

Posté par
jandri Correcteur
re : 10 points pour un L 07-11-23 à 21:47

Bonjour,

je ne vois pas du tout comment calculer la probabilité d'obtenir au moins un L, j'ai donc fait des simulations avec 100 000 tirages et je trouve exactement comme verdurin pour 10, 11 et 12 cases.

Posté par
dpi
re : 10 points pour un L 08-11-23 à 08:36

Bonjour,
Comme cet exercice est désormais ouvert, je pense qu'il y a des choses exploitables dans mon idée.
Si on observe les divers carrés nxn on voit que le nombre de points rouges* minimal pour 100 % de chances suit une certaine loi**
*le point vert étant le premier  à former un L.
On doit donc trouver  le rapport entre le nombre de point donné ici :
12 /3 pour 8X8 .
** quelque chose comme  n²+1
10 points pour un L

Posté par
dpi
re : 10 points pour un L 08-11-23 à 08:39

lire n²/2+1

Posté par
Imod
re : 10 points pour un L 08-11-23 à 11:15

Bonjour Dpi

Le problème pose bien sûr plein de questions à commencer par la question initiale qui a trouvé une solution robotique . J'ai proposé une moyenne du nombre de "L" en fonction du nombre de cases choisies M=\dfrac{7n(n-1)(n-2)}{8928} . Je ne sais pas si le calcul est juste mais il répond à une question assez proche de la première .

Après on peut regarder comment éviter ou forcer les "L" . Pour moi il y a deux questions :

1°) Quel est le nombre maximal de cases que l'on peut choisir sans former de "L" ?

2°) Quel est le nombre minimal de cases sans "L" qu'il faut choisir pour que tout choix d'une nouvelle case génère un "L" ?

Tu as choisis cette deuxième question . Il me semble que sur ton dernier dessin on gagne une case en remplaçant le "=" central par un "X"

Imod

Posté par
dpi
re : 10 points pour un L 08-11-23 à 11:56

En attendant qu'un  excellent trouve la loi ...
J'ai modélisé un test qui me donne  +50% pour 12 dans 8x8
j'ai été surpris de trouver 2 L dans certains cas du genre:

10 points pour un L

Posté par
GBZM
re : 10 points pour un L 08-11-23 à 17:23

Bonjour,
Je ne vois pas non plus comment calculer la probabilité d'avoir un L, mais calculer l'espérance du nombre de L est facile.
Sauf qu'il y a quelque chose de pas clair pour moi. Compte-t-on un L quand la quatrième case du carré 2x2 est occupée ? Je vais faire comme si on ne comptait pas de L dans ce cas.
Chaque L détermine un carré 2x2. Le nombre de L est donc le nombre de carrés 2x2 qui présentent un L.
Dans le damier il y a 49 carrés 2x2.  Pour chaque carré 2x2, la probabilité de présenter un L est \large \binom{4}{3}\times \binom{60}{n-3} / \binom{64}{n}. L'espérance du nombre de L est donc (additivité de l'espérance) \large 49\times\binom{4}{3}\times \binom{60}{n-3} / \binom{64}{n}=\frac{7n(n-1)(n-2)(64-n)}{544608}.

Posté par
GBZM
re : 10 points pour un L 08-11-23 à 17:45

Pas la même chose que Imod. J'en conclus qu'il compte quatre L quand il voit un carré 2x2 tout rempli. Auquel cas l'espérance du nombre de L est effectivement
\Large 49\times 4\times \left(\binom{60}{n-3}+\binom{60}{n-4}\right)/\binom{64}{n}=7\times \frac{n(n-1)(n-2)}{8928}

Posté par
Imod
re : 10 points pour un L 08-11-23 à 18:13

Bonjour GBZM

Faut-il une case blanche pour qu'un "L" apparaisse ? Je ne mettais pas posé la question

Je n'ai pas le réflexe d'utilisé la linéarité de l'espérance qui est pourtant un outil extrêmement puissant  .

Imod

Posté par
Imod
re : 10 points pour un L 08-11-23 à 18:19

D'ailleurs je pense que les programmes précédents comptabilisent un  "L" chaque fois que trois cases d'un carré 2X2 sont occupées sans regarder la quatrième .

Imod

PS : Je ne "m'étais" pas posé la question

Posté par
jandri Correcteur
re : 10 points pour un L 08-11-23 à 19:17

Non, je n'ai compté un L que lorsque exactement 3 cases du carrés 2x2 sont occupées (et verdurin a fait de même).

En revanche flight a compté quatre L quand les 4 cases sont occupées.

Mais cela ne joue pas beaucoup sur la probabilité qu'il y ait au moins un L car la probabilité qu'il y ait un carré 2x2 occupé est faible (environ 0,016 quand on choisit 10 cases).

Posté par
dpi
re : 10 points pour un L 09-11-23 à 08:42

Comment compter un tel tirage?

Soit on compte un seul L  et je trouve 42%
soit on en compte 6 et on monte à 70%

10 points pour un L

Posté par
jandri Correcteur
re : 10 points pour un L 09-11-23 à 08:55

@dpi

sur cette grille je compte 4 L (en ne comptant un L que lorsque exactement 3 cases d'un carré 2x2 sont occupées) ou bien 8 L (en comptant quatre L lorsque les 4 cases d'un carrés 2x2 sont occupées).



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !