0 1 1 2 1 1 2 2

  • Slides: 28
Download presentation

Δέντρο παιχνιδιού 0 1 1ος 2 1 1 2ος 2 2 3 1 1ος

Δέντρο παιχνιδιού 0 1 1ος 2 1 1 2ος 2 2 3 1 1ος 2 3 4 1 2ος 2 1 2 5 5 6 4 1ος 2ος 1 1ος 6 1 7 1 2 1 5 6 6 2 1 7 7 1 7 2 1 2 1 6 7 7 1 7

Δέντρο παιχνιδιού 0 1 1ος 2 1 2ος 2 2 3 1 1ος 2

Δέντρο παιχνιδιού 0 1 1ος 2 1 2ος 2 2 3 1 1ος 2 3 4 1 2ος 1 1ος 6 1 7 1 2 1 1 2 5 5 6 6 2 1 7 7 1 7 2 7 5 2 1 1 6 7 7 6 7 5 1 1 1 2 4 1ος 1 1 7 2 1 2 6 6 7 2 1 7 7 1 7

Δέντρο παιχνιδιού 0 1 1ος 2 1 2ος 2 1 2 3 1 1ος

Δέντρο παιχνιδιού 0 1 1ος 2 1 2ος 2 1 2 3 1 1ος 2 3 1 2ος 1ος 2ος 1 1ος 6 1 7 1 2 1 1 2 5 5 6 6 2 1 7 7 1 7 2 7 5 2 1 1 6 7 7 6 7 1 7 2 1 2 5 5 6 4 2 1 2 1 2 6 6 7 5 6 6 7 2 1 1 2 1 7 4 1 5 1 1 1 2 4 3 1 4 2 7 1 6 1 7 7 1 7

Αλγόριθμος - Ψευδοκώδικας function Value (A[3][3], player) if (A[1][1] + A[1][2] + A[1][3] ==

Αλγόριθμος - Ψευδοκώδικας function Value (A[3][3], player) if (A[1][1] + A[1][2] + A[1][3] == 3) or (A[2][1] + A[2][2] + A[2][3] == 3) or …. Value = 1 else if (A[1][1] + A[1][2] + A[1][3] == -3) or (A[2][1] + A[2][2] + A[2][3] == -3) or …. Value = -1 else if (A[1][1] * A[1][2] * A[1][3] * … * A[3][3] != 0) Value = 0 end if Συνέχεια…

Ψευδοκώδικας - Συνέχεια if (player==1) best. Value = -1 // Initialize best. Value if

Ψευδοκώδικας - Συνέχεια if (player==1) best. Value = -1 // Initialize best. Value if (player==2) best. Value = 1 for (i=1 to 3) for(j=1 to 3) if (A[i][j]==0) // Is free square? A[i][j] = 3 - 2*player // Play the move new_player = 3 – player // Decide next player temp. Value = Value(A, new_player) if (temp. Value > best. Value AND player==1) best. Value = temp. Value else if (temp. Value < best. Value AND player==2) best. Value = temp. Value end if A[i][j] = 0 // Take back move end if end for