Mô phỏng xổ số trong Excel

Xổ số không phải là một cuộc săn tìm may mắn,

đó là một cuộc săn lùng những kẻ thua cuộc.

Với mức độ thường xuyên đáng ghen tị (và gần đây thường xuyên hơn), mọi người viết thư cho tôi yêu cầu giúp đỡ trong các phép tính khác nhau liên quan đến xổ số. Ai đó muốn thực hiện thuật toán bí mật của họ để chọn các số trúng thưởng trong Excel, ai đó muốn tìm các mẫu trong các số đã rơi ra từ các kỳ quay thưởng trước đây, ai đó muốn bắt những người tổ chức xổ số trong một trò chơi không trung thực.

В этой статье мне хотелось бы ответить на часть этих вопросов. Благо, в Excel для решения таких задач достаточно инструментов, многие из которых, истатати, мисолибисра

Nhiệm vụ 1. Xác suất chiến thắng

Hãy lấy xổ số Stoloto cổ điển 6 trên 45 làm ví dụ. Theo thể lệ, chỉ những người đoán đủ 10 số trong số 6 mới nhận được giải thưởng siêu khủng (45 triệu rúp trở lên nếu số dư quỹ giải thưởng đã tích lũy từ các kỳ quay thưởng trước đó). Nếu bạn đoán 5, bạn sẽ nhận được 150 nghìn rúp, nếu 4 - 1500 rúp. , nếu 3 số trên 6, thì 150 rúp, nếu 2 số - bạn sẽ trả lại 50 rúp đã chi cho vé. Chỉ đoán một hoặc không - chỉ lấy endorphin từ quá trình trò chơi.

Xác suất chiến thắng toán học có thể dễ dàng được tính toán bằng cách sử dụng hàm tiêu chuẩn LỐI SỐ (KẾT HỢP), có sẵn trong Microsoft Excel cho trường hợp như vậy. Hàm này tính toán số lượng kết hợp của N số trong M. Vì vậy, đối với xổ số "6 trên 45" của chúng tôi, nó sẽ là:

= ЧИСЛКОМБ (45; 6)

… Bằng 8, tổng số tất cả các kết hợp có thể có trong xổ số này.

Nếu bạn muốn tính xác suất để giành chiến thắng một phần (2-5 số trong số 6), thì trước tiên bạn sẽ phải tính số lựa chọn như vậy, bằng tích của số tổ hợp các số đã đoán ra. 6 bằng số chưa phân biệt còn lại (45-6) = 39 số. Sau đó, chúng tôi chia tổng số của tất cả các kết hợp có thể có (8) cho số chiến thắng nhận được cho mỗi tùy chọn - và chúng tôi nhận được xác suất chiến thắng cho mỗi trường hợp:

Mô phỏng xổ số trong Excel

Nhân tiện, xác suất, ví dụ, chết trong một vụ tai nạn máy bay ở Đất nước của chúng ta được ước tính vào khoảng 1 phần triệu. Và xác suất chiến thắng trong sòng bạc tại roulette, đặt cược mọi thứ vào một số là 1 đến 37.

Nếu tất cả những điều trên không ngăn được bạn và bạn vẫn sẵn sàng chơi xa hơn, hãy tiếp tục.

Nhiệm vụ 2. Tần suất xuất hiện của mỗi số

Để bắt đầu, hãy xác định xem những con số nhất định rơi ra với tần suất nào. Trong một cuộc xổ số lý tưởng, với một khoảng thời gian đủ lớn để phân tích, tất cả các quả bóng phải có cùng xác suất nằm trong mẫu trúng thưởng. Trên thực tế, các đặc điểm thiết kế của trống xổ số và hình dạng khối lượng của các quả bóng có thể làm sai lệch hình ảnh này và đối với một số quả bóng, xác suất rơi ra có thể cao hơn / thấp hơn so với những quả bóng khác. Hãy kiểm tra giả thuyết này trong thực tế.

Ví dụ, hãy lấy dữ liệu về tất cả năm 2020 trong số 21 lần quay xổ số diễn ra vào 6-45 từ trang web của nhà tổ chức Stoloto, được thiết kế dưới dạng một bảng “thông minh”, thuận tiện cho việc phân tích, với tên gọi tabLưu thông lưu trữ. Розыгрыши проходят два раза в день (в 11 утра и в 11 вечера), т.е. в этой таблице у нас полторы тысячи тиражей-строк - вполне достаточная для начала выбора:

Mô phỏng xổ số trong Excel

Để tính tần suất xuất hiện của mỗi số, hãy sử dụng hàm COUNTIF (ĐẾM) và thêm một chức năng vào nó TEXT (BẢN VĂN)để thêm các số không và dấu hoa thị trước và sau các số có một chữ số, để COUNTIF tìm kiếm sự xuất hiện của một số ở bất kỳ vị trí nào trong tổ hợp ở cột B. Ngoài ra, để rõ ràng hơn, chúng tôi sẽ xây dựng biểu đồ theo kết quả và sắp xếp tần số thứ tự giảm dần:

Mô phỏng xổ số trong Excel

Trung bình, bất kỳ quả bóng nào sẽ rơi 1459 lần hòa * 6 quả bóng / 45 số = 194,53 lần (đây chính xác là những gì được gọi trong thống kê người quản lý tài chính), но хорошо видно, что некоторые числа (27, 32, 11…) выпадали заметно чаще (+ 18%), ат некоторые числа (10, 21, 6…) выпадали заметно чаще (+ 15%), ат некоторые (XNUMX, XNUMX, Соответственно, можно попробовать использовать эту информацию для стратегии выигрыша, т.е. либо ставить на те шары, что выпадают чаще, либо наоборот - делать ставку на редко выпадают чаще, выпадающие шас

Nhiệm vụ 3. Những con số nào đã lâu không được rút ra?

Một chiến lược khác dựa trên ý tưởng rằng với một số lượng rút thăm đủ lớn, sớm hay muộn mỗi số từ tất cả các số có sẵn từ 1 đến 45 sẽ bị loại bỏ. Vì vậy, nếu một số con số đã không xuất hiện trong số những người chiến thắng trong một thời gian dài ("quả bóng lạnh"), thì hợp lý là hãy thử đặt cược vào chúng trong tương lai. 

Đăng ký THÊM ĐƯỢC TIẾP XÚC (CUỘC THI ĐẤU). Nó sẽ tìm kiếm từ trên xuống dưới (tức là từ mới đến cũ) để tìm kiếm từng số và đưa ra số thứ tự của lần chạy (tính từ cuối năm đến đầu) nơi con số này được đánh rơi lần cuối:

Mô phỏng xổ số trong Excel

Задача 4. Генератор случайных чисел

Một chiến lược trò chơi khác dựa trên việc loại bỏ yếu tố tâm lý khi đoán số. Khi một người chơi chọn các con số bằng cách đặt cược của mình, trong tiềm thức anh ta làm điều này không hoàn toàn theo lý trí. Theo thống kê, ví dụ, các số từ 1 đến 31 được chọn thường xuyên hơn 70% so với các số còn lại (ngày yêu thích), số 13 được chọn ít thường xuyên hơn (hàng tá), các số chứa bảy "may mắn" thường được chọn nhiều hơn, v.v. Nhưng chúng ta đang chơi với một cỗ máy (trống xổ số) mà tất cả các con số đều giống nhau, vì vậy sẽ hợp lý khi chọn chúng với cùng tính công bằng toán học để cân bằng cơ hội của chúng ta. Để làm điều này, chúng ta cần tạo một trình tạo các số ngẫu nhiên và - quan trọng nhất - không lặp lại trong Excel:

    Mô phỏng xổ số trong Excel

Để làm điều này:

  1. Hãy tạo một bảng "thông minh" có tên bảngMáy phát điện, trong đó cột đầu tiên sẽ là các số của chúng ta từ 1 đến 45.
  2. Trong cột thứ hai, nhập trọng lượng cho mỗi số (chúng ta sẽ cần nó sau một chút). Nếu tất cả các số đều có giá trị như nhau và chúng ta muốn chọn chúng với xác suất bằng nhau, thì trọng số có thể được đặt bằng 1 ở mọi nơi.
  3. Trong cột thứ ba, chúng tôi sử dụng hàm SLCHIS (RAND), которая в Excel генерирует случайное дробное число от 0 до 1, добавив к нему вес из предыдущега столбца столбца столбц Таким образом каждый раз при пересчёте листа (нажатии на клавишу F9) một tập hợp mới gồm 45 số ngẫu nhiên sẽ được tạo ra, có tính đến trọng số của mỗi số đó.
  4. Hãy thêm một cột thứ tư, nơi sử dụng hàm CẤP (THỨ HẠNG) bạn có thể làm điều đó (bạn có thể làm điều đó) vì bạn muốn làm điều đó.

Bây giờ, nó vẫn còn để thực hiện lựa chọn sáu số đầu tiên theo thứ hạng 6 bằng cách sử dụng hàm THÊM ĐƯỢC TIẾP XÚC (CUỘC THI ĐẤU):

Mô phỏng xổ số trong Excel

При нажатии на клавишу F9 các công thức trên trang tính Excel sẽ được tính toán lại và mỗi lần như vậy chúng ta sẽ nhận được một bộ 6 số mới trong các ô màu xanh lục. Hơn nữa, những con số mà trọng số lớn hơn được đặt trong cột B sẽ nhận được thứ hạng cao hơn tương ứng và do đó, xuất hiện thường xuyên hơn trong kết quả của mẫu ngẫu nhiên của chúng tôi. Nếu trọng số của tất cả các số được đặt như nhau, thì tất cả chúng sẽ được chọn với xác suất như nhau. Bằng cách này, chúng tôi sẽ có được một trình tạo số ngẫu nhiên công bằng và không thiên vị của 6 trên 45, nhưng với khả năng điều chỉnh tính ngẫu nhiên của phân phối nếu cần.

Nếu chúng tôi quyết định chơi trong mỗi lần rút không phải với một, mà là, ví dụ, với hai vé cùng một lúc, trong mỗi vé chúng tôi sẽ chọn các số không lặp lại, thì chúng tôi có thể chỉ cần thêm các dòng bổ sung từ dưới cùng đến phạm vi màu xanh lá cây, thêm 6, 12, 18, v.v. vào thứ hạng. d. tương ứng:

Mô phỏng xổ số trong Excel

Nhiệm vụ 5. Trình mô phỏng xổ số trong Excel

Là một phần của toàn bộ chủ đề này, hãy tạo một trình mô phỏng xổ số chính thức trong Excel, nơi bạn có thể thử bất kỳ chiến lược nào và so sánh kết quả (trong lý thuyết tối ưu hóa, một cái gì đó tương tự cũng được gọi là phương pháp Monte Carlo, nhưng nó sẽ đơn giản hơn cho chúng tôi).

Để làm cho mọi thứ gần với thực tế nhất có thể, hãy tưởng tượng một chút rằng đó là ngày 1 tháng 2022 năm XNUMX và chúng ta có lễ bốc thăm năm nay ở phía trước, trong đó chúng ta dự định chơi. Tôi đã nhập các con số thực sự bị rơi vào bảng tablTiraži2022, tách các số được rút ra thêm vào nhau thành các cột riêng biệt để thuận tiện cho các phép tính tiếp theo:

Mô phỏng xổ số trong Excel

Trên một trang tính riêng biệt Trò chơi tạo khoảng trống để lập mô hình dưới dạng bảng "thông minh" với tên tabIgra mẫu sau:

Mô phỏng xổ số trong Excel

Đây:

  • Trong các ô màu vàng ở trên, chúng tôi sẽ đặt macro cho số lần rút thăm vào năm 2022 mà chúng tôi muốn tham gia (1-82) và số lượng vé chúng tôi chơi trong mỗi lần rút.
  • Dữ liệu cho 11 cột đầu tiên (AJ) sẽ được macro sao chép từ bảng vẽ năm 2022.
  • Dữ liệu cho sáu cột (KP) tiếp theo mà macro sẽ lấy từ trang tính Máy phát điện, nơi chúng tôi đã triển khai một trình tạo số ngẫu nhiên (xem vấn đề 4 ở trên).
  • Trong cột Q, chúng tôi đếm số lượng so khớp giữa các số bị loại bỏ và những số được tạo bằng cách sử dụng hàm SUMPRODUCT (GIỚI THIỆU).
  • В столбце R вычисляем финансовый результат (если не выиграли, то минус 50
  • Trong cột S cuối cùng, chúng tôi coi kết quả chung của toàn bộ trò chơi là tổng tích lũy để xem động lực trong quá trình này.

Và để hồi sinh toàn bộ cấu trúc này, chúng ta cần một vĩ mô nhỏ. Trên tab nhà phát triển (Nhà phát triển) chọn một đội Visual Basic hoặc sử dụng phím tắt Khác+F11. Sau đó, thêm một mô-đun trống mới qua menu Chèn - Mô-đun và nhập mã sau vào đó:

Xổ số phụ () Dim iGames As Integer, iTickets As Integer, i As Long, t As Integer, b As Integer 'объявляем переменные для ссылки на листы Set wsGame = Worksheets ("Игра ера" wsArchive = Worksheets("Тиражи 2022") iGames = wsGame.Range("C1") 'количество тиражей iTickets = wsGame.Range("C2") 'количество билетов в каждом тираже i = 5 'первая строка в таблице таблИгра wsGame.Rows ("6: 1048576"). Xóa 'очищаем старые данные Đối với t = 1 Tới iGames Đối với b = 1 Tới iTickets' копируем выигравшие номерва с листа ста (2022, 1) .Copy Destination: = wsGame.Cells (i, 1) 'копируем и вставляем специальной вставкой значений сгенерируем и вставляем специальной вставкой значений сгенерированоные ноери .PasteSpecial Paste: = xlPasteValues ​​i = i + 1 Next b Next t End Sub  

Nó vẫn là nhập các tham số ban đầu mong muốn trong các ô màu vàng và chạy macro qua Nhà phát triển - Macro (Nhà phát triển - Macro) hoặc phím tắt Khác+F8.

Mô phỏng xổ số trong Excel

Để rõ ràng hơn, bạn cũng có thể xây dựng sơ đồ cho cột cuối cùng với tổng tích lũy, phản ánh sự thay đổi số dư tiền trong trò chơi:

Mô phỏng xổ số trong Excel

So sánh các chiến lược khác nhau

Giờ đây, bằng cách sử dụng trình mô phỏng đã tạo, bạn có thể thử nghiệm bất kỳ chiến lược trò chơi nào trên các trận hòa thực vào năm 2022 và xem kết quả mà nó sẽ mang lại. Nếu bạn chơi 1 vé trong mỗi lần rút thăm, thì bức tranh tổng thể của "quả mận" trông giống như sau:

Mô phỏng xổ số trong Excel

Đây:

  • Máy phát điện là một trò chơi mà trong mỗi lần quay thưởng, chúng tôi chọn các số ngẫu nhiên được tạo bởi trình tạo của chúng tôi (có cùng trọng lượng).
  • Yêu thích là một trò chơi mà trong mỗi lần quay số, chúng tôi sử dụng các con số giống nhau - những con số thường bị rơi ra trong các trận hòa trong hai năm qua (27, 32, 11, 14, 34, 40).
  • Outsiders - giống nhau, nhưng chúng tôi sử dụng các số thả xuống hiếm nhất (12, 18, 26, 10, 21, 6).
  • Lạnh - Trong tất cả các kỳ quay thưởng, chúng tôi sử dụng các số đã lâu không ra (35, 5, 39, 11, 6, 29).

Như bạn có thể thấy, không có sự khác biệt lớn, nhưng trình tạo số ngẫu nhiên hoạt động tốt hơn một chút so với các “chiến lược” khác.

Можно также попробовать играть большим количеством билетов в каждом тираже, чтобы перек рыел рыел оличество вариантов (иногда для этого несколько игроков объединяются в группу).

Chơi trong mỗi lần rút thăm với một vé có các số được tạo ngẫu nhiên (có cùng trọng lượng):

Mô phỏng xổ số trong Excel

Chơi 10 vé trong mỗi lần rút thăm với các số được tạo ngẫu nhiên (có cùng trọng lượng):

Mô phỏng xổ số trong Excel

Chơi 100 vé trong mỗi lần rút thăm với các số ngẫu nhiên (có cùng trọng lượng):

Mô phỏng xổ số trong Excel

Nhận xét, như họ nói, là không cần thiết - cạn kiệt tiền gửi là không thể tránh khỏi trong mọi trường hợp 🙂

Bình luận