Câu hỏi kết hợp / xác suất đơn giản dựa trên độ dài chuỗi và ký tự có thể


9

Giả sử "hoàn toàn ngẫu nhiên" và đưa ra một chuỗi có độ dài 20 ký tự trong đó mỗi ký tự có thể là một trong 62 ký tự có thể:

  • Tổng số kết hợp có thể là gì? (Đoán 20 đến sức mạnh của 62.)
  • Ngoài ra, nếu các chuỗi mới được chọn ngẫu nhiên lần lượt từng chuỗi và được thêm vào danh sách các chuỗi được chọn cho đến nay, thì phải chọn bao nhiêu chuỗi trước khi có cơ hội chọn một chuỗi đã được chọn là dưới 1 trong 100000 ( 105 )?

Lưu ý: 62 đến từ: chữ số (0-9), chữ in hoa (AZ) và chữ thường (az).


2
Điểm đạn thứ hai của bạn có thể được đọc theo (ít nhất) hai cách có thể. Tôi đang tự hỏi mà bạn đang quan tâm. ( 1 ) Xác suất mà các n th chuỗi phù hợp với một trong những chuỗi trước hoặc ( 2 ) Xác suất mà bởi thời điểm n th chuỗi được chọn có tồn tại một số trùng lặp trong bộ sưu tập của các chuỗi rút ra cho đến nay. Câu trả lời cho hai câu hỏi này sẽ rất khác nhau. :)
Đức hồng y

1
Có lẽ xem xét một bảng chữ cái hai ký tự sẽ làm cho sự khác biệt rõ ràng. Hãy để các chữ cái có T . Chúng ta có thể đặt câu hỏi: ( 1 ) Đối với những gì n nào chúng ta có ít nhất một cơ hội 99% của n th chuỗi là một bản sao của một chuỗi trước đó? Số n ở đây là 8 vì cách duy nhất chúng ta thất bại là nếu chuỗi của chúng ta là T T T T H hoặc H H H H T , có tổng xác suất 2 - ( n - 1 ) . Hoặc, chúng tôi yêu cầu ( 2 ) Để làm gìHTnnnTTTTHHHHHT2(n1) chúng ta có ít nhất 99% cơ hội nhìn thấy một số bản sao không? Trong trường hợp này n = 3 kể từ thời điểm chúng ta đã thấy ba chuỗi H hoặc T đã được lặp lại ít nhất một lần. nn=3HT
Đức Hồng Y

1
Câu trả lời của Matt xử lý ( 1 ), về cơ bản trả lời câu hỏi về việc chuỗi "của tôi" có khớp với người khác không. Nhưng, nếu bạn lo lắng về một số chuỗi của hai người khác cũng có khả năng khớp, thì bạn quan tâm đến ( 2 ). Điều này tùy thuộc vào việc bạn có một chuỗi lợi ích cụ thể mà bạn đang so sánh tất cả những người khác với hoặc liệu bạn đang so sánh tất cả các chuỗi với nhau. Tôi không chắc chắn nếu tôi làm cho điều đó rõ ràng hơn, mặc dù. (Vấn đề của bạn rút ra một trong hai biến thể của cái gọi là "vấn đề sinh nhật".)
hồng y

1
Hồng y, như thường lệ, đúng. Tôi giả sử bạn có một chuỗi "mục tiêu" mà bạn đang tạo một danh sách các dự đoán. Nếu thay vào đó, bạn đang tạo chuỗi ngẫu nhiên và muốn biết số an toàn để tạo trước khi bất kỳ hai chuỗi nào khớp nhau, thì câu trả lời thực sự rất khác nhau. Tôi sẽ sửa đổi câu trả lời của tôi để giải quyết trường hợp đó, nếu nó ổn với bạn.
Matt Krause

1
Tôi đã không làm cho ví dụ trước của tôi hoàn toàn rõ ràng. Xin lỗi vì điều đó. Tôi đã nghĩ về một bảng chữ cái hai chữ cái và vẽ các chuỗi có độ dài một . Do đó, khi tôi đã viết H H H H T , mà đứng cho s 1 = H , s 2 = H , ..., s n - 1 = H , s n = T . {H,T}HHHHTs1=Hs2=Hsn1=Hsn=T
Đức Hồng Y

Câu trả lời:


11

Tổng số khả năng

1) Đóng! Bạn đã có 62 sự lựa chọn cho các ký tự đầu tiên, 62 cho lần thứ 2, vv, do đó bạn kết thúc với , đó là một con số vô lý rất lớn.62626262=6220

Va chạm với chuỗi "Target"

2) Như chúng tôi đã thiết lập ở trên, có chuỗi tiềm năng. Bạn muốn biết có bao nhiêu bạn cần đoán để có nhiều hơn 1 trên 100.000 tỷ lệ đoán chuỗi "mục tiêu". Về cơ bản, bạn đang hỏi những gì x6220 Để làm cho nó nổi bật, bạn phải làm tròn x (hoặc thêm một, nếu chúng chính xác bằng nhau), nhưng như bạn sẽ thấy trong một giây, điều đó không thực sự quan trọng.

x62201105

Thông qua đại số cơ bản, chúng ta có thể sắp xếp lại thành

105x6220105x(6.210)20105x6.2201020x6.2201015

Làm toán, là khoảng 7 10 15 , vì vậy, hãy gọi toàn bộ điều 7 10 30 hoặc, ngắn gọn hơn, toàn bộ rất nhiều.6.2207101571030

Tất nhiên, đây là lý do tại sao mật khẩu dài hoạt động thực sự tốt :-) Đối với mật khẩu thực, tất nhiên, bạn phải lo lắng về các chuỗi có độ dài nhỏ hơn hoặc bằng hai mươi, làm tăng số lượng khả năng hơn nữa.

Bản sao trong danh sách

Bây giờ, hãy xem xét các kịch bản khác. Các chuỗi được tạo ngẫu nhiên và chúng tôi muốn xác định có bao nhiêu có thể được tạo trước khi có cơ hội 1: 100.000 cho bất kỳ hai chuỗi nào khớp. Phiên bản cổ điển của vấn đề này được gọi là Vấn đề sinh nhật (hay 'Nghịch lý') và hỏi xác suất hai người có cùng ngày sinh là bao nhiêu. Bài viết trên wikipedia [1] có vẻ tốt và có một số bảng mà bạn có thể thấy hữu ích. Tuy nhiên, tôi cũng sẽ cố gắng cung cấp cho bạn hương vị cho câu trả lời ở đây.

Một số điều cần lưu ý:

-Xác suất của trận đấu và không có trận đấu phải tổng bằng 1, do đó và ngược lại.P(trận đấu)= =1-P(không có trận đấu)

-Đối với hai sự kiện độc lập B , xác suất P ( A & B ) = P ( A ) P ( B ) .MộtBP(Một&B)= =P(Một)P(B)

Để có câu trả lời, chúng ta sẽ bắt đầu bằng cách tính xác suất không thấy trận đấu cho một số chuỗi cố định . Khi chúng ta biết cách thực hiện điều đó, chúng ta có thể đặt phương trình đó bằng ngưỡng (1 / 100.000) và giải cho k . Để thuận tiện, hãy gọi N là số chuỗi có thể ( 62 20 ).kkN6220

Chúng tôi sẽ 'đi bộ xuống danh sách và tính xác suất để chuỗi ^ {th} khớp với bất kỳ chuỗi nào "ở trên" nó trong danh sách. Đối với chuỗi đầu tiên, chúng tôi có N tổng số chuỗi và không có gì trong danh sách, vì vậy P k = 1 ( không khớp ) = NkN. Đối với chuỗi thứ hai, vẫn cònNtổng số khả năng, nhưng một trong số đó đã được "sử dụng hết" bởi chuỗi thứ nhất, do đó xác suất khớp của chuỗi này làPk=2(không khớp)=N-1Pk= =1(không có trận đấu)= =NN= =1N Đối với chuỗi thứ ba, có hai cách cho nó khớp và do đóN-2cách không nên, vì vậyPk=3(không khớp)=N-2Pk= =2(không có trận đấu)= =N-1NN-2 và cứ thế. Nói chung, xác suất củachuỗi thứkkhông khớp với các chuỗi khác làPk(không khớp)=N-k+1Pk= =3(không có trận đấu)= =N-2Nk

Pk(không có trận đấu)= =N-k+1N

k

P(Không có trận đấu)= =NNN-1NN-2NN-k+1N
P(Không có trận đấu)= =N(N-1)(N-2)(N-k+1)NkP(Không có trận đấu)= =N!Nk(N-k)!P(Không có trận đấu)= =k!(Nk)Nk
k!= =(k)(k-1)(k-2)1N-k+1Nk1100,000k100!

k= =0,5+0,25-2Nln(p)
N= =48,0003.71015

Người giới thiệu

[1] http://en.wikipedia.org/wiki/B birthday_propet

[2] Mathis, Frank H. (tháng 6 năm 1991). "Một vấn đề sinh nhật tổng quát". Đánh giá SIAM (Hiệp hội toán học công nghiệp và ứng dụng) 33 (2): 265 Từ270. Liên kết JSTOR


+1 Tuyệt vời, được cung cấp rõ ràng các kỹ năng toán học kém của tôi dẫn đến việc đặt câu hỏi, vì vậy tôi sẽ không trả lời câu hỏi trong một ngày, nhưng có vẻ tốt với tôi và rõ ràng hơn về câu trả lời tôi mong đợi - cảm ơn bạn!
sai lầm ngớ ngẩn

1
Rất vui được giúp đỡ! Hãy cho tôi biết nếu có bất cứ điều gì không rõ ràng. Để đá, tôi chạy số. Bạn sẽ cần 7044234255469980229683302646164 đoán; như tôi đã nói - rất nhiều!
Matt Krause

+1 @Matt Krause: +1 cho nhận xét của bạn bên dưới câu trả lời; câu trả lời và cam kết của bạn để đưa ra câu trả lời tốt nhất có thể là mẫu mực, đáng lưu ý và cảm ơn bạn vì tất cả công việc khó khăn của bạn!
sai lầm ngớ ngẩn
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.