จำลองการตายแบบยุติธรรมด้วยการตายแบบลำเอียง


18

เมื่อพิจารณาจากการตายของNด้านแล้วจะมีการสร้างตัวเลขสุ่มในช่วง[1,N]ได้อย่างไร? การแจกแจงความน่าจะเป็นของใบหน้าตายนั้นไม่เป็นที่รู้จักทั้งหมดที่รู้กันคือใบหน้าแต่ละใบหน้ามีความเป็นไปได้ที่ไม่ใช่ศูนย์ นี่คือลักษณะทั่วไปที่เห็นได้ชัดของแฟร์ผลกับการตายที่ไม่เป็นธรรม

วางนี้ในแง่วิทยาศาสตร์คอมพิวเตอร์เรามีคำพยากรณ์ที่เป็นตัวแทนของม้วนตาย: D:N[1,N]เช่นว่าจะไม่ใช่ศูนย์และเป็นอิสระจากkเรากำลังมองหาขั้นตอนวิธีการกำหนดซึ่งเป็น parametrized โดย (เช่นอาจโทรไปยัง ) เช่นว่า N อัลกอริทึมจะต้องจบลงด้วยความน่าจะเป็น 1 นั่นคือความน่าจะเป็นที่ทำให้มากกว่าการเรียกถึงต้องมาบรรจบกันเป็นk A D A D Ppi=P(D(k)=i)kADADA n D D 0 n P(A()=ผม)=1/ยังไม่มีข้อความAnD0nn

สำหรับ (จำลองเหรียญยุติธรรมจากการโยนเหรียญด้วยเหรียญลำเอียง) มีอัลกอริทึมที่รู้จักกันดี:ยังไม่มีข้อความ=2

  • ทำซ้ำ“ พลิกสองครั้ง” จนกระทั่งการโยนทั้งสองครั้งเกิดขึ้นพร้อมกับผลลัพธ์ที่แตกต่าง ((หัว, ก้อย) หรือ (ก้อย, หัว) กล่าวอีกนัยหนึ่งวนk=0 ..จนกระทั่งD(2k+1)D(2k)
  • ส่งคืน 0 ถ้าการพลิกคู่สุดท้ายคือ (หัว, ก้อย) และ 1 ถ้าเป็น (ก้อย, หัว) กล่าวอีกนัยหนึ่งให้คืนค่าD(2k)โดยที่kคือดัชนีที่วงถูกยกเลิก

วิธีง่าย ๆ ที่จะทำให้คนตายโดยลำเอียงจากลำเอียงคือการใช้วิธีการพลิกเหรียญเพื่อสร้างเหรียญยุติธรรมและสร้างความยุติธรรมด้วยการสุ่มตัวอย่างตัวอย่างการปฏิเสธในขณะที่unbiasing วนเวียนอยู่ แต่นี่เป็นการดีที่สุด (สำหรับค่าทั่วไปของการแจกแจงความน่าจะเป็น)

โดยเฉพาะคำถามของฉันคือสิ่งที่เป็นอัลกอริทึมที่ต้องมีขนาดเล็กที่สุดคาดว่าจำนวนของสายการพยากรณ์ ? หากชุดของค่าที่คาดว่าจะสามารถเข้าถึงได้เปิดขึ้นขอบเขตที่ต่ำกว่าคืออะไรและคลาสของอัลกอริทึมที่รวมเข้าหาขอบเขตล่างนี้คืออะไร

ในกรณีที่อัลกอริทึมตระกูลต่าง ๆ นั้นเหมาะสมที่สุดสำหรับการแจกแจงความน่าจะเป็นต่าง ๆ เรามามุ่งเน้นที่ลูกเต๋าที่เกือบจะยุติธรรม: ฉันกำลังมองหาอัลกอริทึมหรือตระกูลอัลกอริทึมที่เหมาะสมที่สุดสำหรับการแจกแจงเช่นi,|pi1/N|<ϵสำหรับบางϵ>0 0


โปรดทราบว่ามันเป็นสิ่งสำคัญที่จะต้องกำหนดค่าที่เหมาะสมอย่างรอบคอบเนื่องจากตัวอย่างเช่นคุณอาจได้รับแม่พิมพ์ที่สมบูรณ์หรือแม่พิมพ์ที่มี , p i = ϵ / ( N - 1 )สำหรับi > 1หรืออื่น ๆ ชนิดของการตาย โครงร่างที่ดีที่สุดสำหรับงานดายต้องใช้เพียงม้วนเดียวในขณะที่ตัวอย่างที่ไม่เป็นธรรม ยิ่งกว่านั้นจำนวนสูงสุดของสิ่งที่ดีที่สุดสำหรับการตายแบบลำเอียงที่เป็นไปได้ทั้งหมดนั้นอาจไม่ได้ จำกัด ดังนั้นคุณอาจต้องการแนะนำพารามิเตอร์และสมมติว่าmax i p i1 -p1=1ϵpi=ϵ/(N1)i>1เช่น maxipi1ϵ
usul

@usul ฉันไม่เข้าใจความคิดเห็นของคุณ มีอัลกอริธึมที่มีประสิทธิภาพมากกว่าสำหรับบางค่าของ (เช่นถ้าi , p i = 1 / N ) แต่ฉันขออัลกอริทึมที่ไม่ขึ้นอยู่กับ( p i )เท่านั้น สิ่งที่จุดของε ? pii,pi=1/N(pi)ϵ
Gilles 'หยุดความชั่วร้าย' ใน

คุณวัดประสิทธิภาพของอัลกอริทึมที่ไม่ขึ้นอยู่กับอย่างไร อาจด้วยขั้นตอนวิธีการใด ๆ ดังกล่าวมีขอบเขตไม่มีบนของจำนวนที่คาดหวังของการโทรต้องการโดยการใช้ตัวอย่างลำเอียงตายของฉันกับε →การ 0 นี่คือสิ่งที่ฉันหมายถึงโดย "ยอดสูงสุดของสิ่งที่ดีที่สุด ... อาจไร้ขอบเขต" ดังนั้นหากอัลกอริธึมทั้งหมดต้องการความตายจำนวนมากโดยพลการตามความคาดหมายเราจะตัดสินใจอย่างไรดีที่สุด (pi)ϵ0
usul

@usul ไม่มีขอบเขตบนของจำนวนการโยนแน่นอน แต่ฉันถามเกี่ยวกับค่าที่คาดหวัง (เช่นจำนวนเฉลี่ยของการขว้าง) สำหรับการแจกแจงที่กำหนดค่าที่คาดหวังสำหรับอัลกอริทึมที่สร้างเหรียญยุติธรรมและการใช้สำหรับการสุ่มตัวอย่างการปฏิเสธนั้นมีขอบเขตใช่ไหม? เป็นความจริงที่ความคาดหวังขึ้นอยู่กับการกระจายอัลกอริทึม (ตระกูลของ) ที่แตกต่างกันอาจเหมาะสมที่สุดสำหรับการแจกแจงที่แตกต่างกัน ถ้าเป็นเช่นนั้นสมมติว่าฉันสนใจลูกเต๋าที่เกือบจะยุติธรรม (pi)
Gilles 'หยุดความชั่วร้าย' ใน

ไม่ใช่คำถามที่ถูกต้องแน่นอน แต่คุณยินดีที่จะค้นหาเฉพาะผลลัพธ์ที่ใกล้เคียงกับชุดเท่านั้น (ใน / ระยะการแปรผันรวม)? ถ้าเป็นเช่นนั้นขึ้นอยู่กับการรับประกันคุณถามจากการจัดจำหน่ายเดิมนี้คือการศึกษาในกระดาษ (ในการส่ง) ภายใต้ชื่อ "การสุ่มตัวอย่าง improver สม่ำเสมอ" - ซึ่งแสดงให้เห็นโดยเฉพาะอย่างยิ่งคุณจะได้รับจำนวนดึงอิสระจากNเพื่อปรับปรุงจาก1ระยะεระยะทางε ' 1N1εε
ผ่อนผัน C.

คำตอบ:


3

กระดาษคำตอบต่อไปนี้แตกต่างอย่างใกล้ชิดของคำถามนี้: มีประสิทธิภาพการก่อสร้างของที่เป็นกลางสุ่มลำดับอีเลียส 1972

คำถามดูเหมือนจะเป็นเช่นนี้: เมื่อได้รับการเข้าถึงแหล่งข้อมูลอิสระแบบเอนเอียงนี้ให้เรียงลำดับหมายเลขสุ่มใน (โปรดสังเกตความแตกต่างจากคำถามของคุณที่ร้องขอสัญลักษณ์เอาต์พุตเพียงอันเดียว) เมื่อความยาวของผลลัพธ์ที่ต้องการไปถึงอนันต์ "ประสิทธิภาพ" ของโครงร่างในกระดาษ (ซึ่งดูเหมือนว่าโดยทั่วไปของ von Neumann) ไปที่1หมายถึงผมเชื่อว่าการป้อนข้อมูลด้วยเอนโทรปีhถูกแปลงเป็น การส่งออกของเอนโทรปีใกล้เข้ามาชม[1,ยังไม่มีข้อความ]1ชั่วโมงชั่วโมง

คำถามดูเหมือนจะทำงานได้ดีขึ้นเมื่อใช้ถ้อยคำในลักษณะนี้แทนที่จะขอเลขหลักเดียวเพราะถ้าเราวาดตัวอย่างและจบลงด้วยผลลัพธ์ที่มีข้อมูลจำนวนมาก (ตัวอย่างเช่นสัญลักษณ์อินพุตNทั้งหมดนั้นแตกต่างกัน) จากนั้นเราสามารถใช้ข้อมูลทั้งหมดเพื่อสร้างสัญลักษณ์เอาต์พุตจำนวนมากในขณะที่คำถามที่ใช้เป็นวลีที่นี่ข้อมูลใด ๆ ที่เกินกว่าที่ใช้ในการสร้างสัญลักษณ์เอาต์พุตหนึ่งรายการจะสูญเปล่ายังไม่มีข้อความยังไม่มีข้อความ

ฉันเชื่อว่ารูปแบบซ้ำ ๆ จะใช้ดึงดูลำดับและแมปเอาท์พุทบางอย่างหรือสตริงที่ว่างเปล่า อาจมีวิธีการปรับปรุงแบบแผนสำหรับคำถามของคุณโดยดูที่คำนำหน้าและหยุดถ้าเรามีข้อมูล "เพียงพอ" ในการแสดงสัญลักษณ์? ฉันไม่รู้ยังไม่มีข้อความ


ฉันไม่ได้ค้นหางานที่ตามมาหรืองานที่อ้างถึงกระดาษดังนั้นฉันไม่รู้ แต่อาจมีบางคนปรับปรุงรูปแบบเสนองานอื่นตอบคำถามของคุณ ฯลฯ
usul

2

วิธีที่คุณอธิบายสำหรับ generalises เราใช้การเรียงสับเปลี่ยนทั้งหมดของ[ 1 .. N ]มีแนวโน้มที่เท่าเทียมกันแม้จะมีการตายแบบลำเอียง ดังนั้นเราจึงสามารถให้กลิ้งจนกว่าเราจะเห็นการเปลี่ยนแปลงดังกล่าวเป็นครั้งสุดท้ายNม้วนและผลผลิตม้วนสุดท้ายยังไม่มีข้อความ=2[1 ..ยังไม่มีข้อความ]ยังไม่มีข้อความ

การวิเคราะห์ทั่วไปนั้นค่อนข้างยุ่งยาก เป็นที่ชัดเจนว่าจำนวนม้วนที่คาดว่าจะเติบโตอย่างรวดเร็วในเนื่องจากความน่าจะเป็นที่จะเห็นการเปลี่ยนแปลงในขั้นตอนใดก็ตามมีขนาดเล็ก (และไม่เป็นอิสระจากขั้นตอนก่อนและหลังจึงยุ่งยาก) อย่างไรก็ตามมีค่ามากกว่า0สำหรับNคงที่ดังนั้นโพรซีเดอร์จะสิ้นสุดลงเกือบแน่นอน (นั่นคือความน่าจะเป็น1 )ยังไม่มีข้อความ0ยังไม่มีข้อความ1

สำหรับคงที่เราสามารถสร้างห่วงโซ่มาร์คอฟเหนือชุดของเวกเตอร์ Parikh- ที่รวมกับNสรุปผลของม้วนNครั้งสุดท้ายและกำหนดจำนวนขั้นตอนที่คาดหวังจนกว่าเราจะไปถึง( 1 , , 1 )สำหรับ เป็นครั้งแรก นี่ก็เพียงพอแล้วเนื่องจากการเรียงสับเปลี่ยนทั้งหมดที่แบ่งปัน Parikh-vector นั้นมีแนวโน้มเท่ากัน โซ่และการคำนวณง่ายกว่าด้วยวิธีนี้ยังไม่มีข้อความยังไม่มีข้อความยังไม่มีข้อความ(1,...,1)

สมมติว่าเราอยู่ในรัฐกับΣ n ฉัน= 1 V ฉัน N จากนั้นความน่าจะเป็นที่จะได้รับองค์ประกอบi (เช่นการหมุนครั้งถัดไปคือi ) จะได้รับจากเสมอv=(v1,,vN)i=1nviNii

ฉันPr[gain i]=pi

ในทางกลับกันความสามารถในการทิ้งองค์ประกอบจากประวัติจะได้รับจากi

Prv[drop i]=viN

เมื่อใดก็ตามที่ (และ0 เป็นอย่างอื่น) อย่างแม่นยำเนื่องจากการเรียงสับเปลี่ยนทั้งหมดที่มี Parikh-vector vมีแนวโน้มเท่ากัน ความน่าจะเป็นเหล่านี้มีความเป็นอิสระ (เนื่องจากม้วนเป็นอิสระ) ดังนั้นเราจึงสามารถคำนวณความน่าจะเป็นในการเปลี่ยนแปลงดังนี้:i=1nvi=N0v

Pr[v(v1,,vj+1,,vN)]={Pr[gain j],v<N0, else,Pr[v(v1,,vi1,vj+1,,vN)]={0,v<Nvi=0vj=NPrv[drop i]Pr[gain j], else andPr[vv]={0,v<Nvi0Prv[drop i]Pr[gain i], else;

ความน่าจะเป็นในการเปลี่ยนแปลงอื่น ๆ ทั้งหมดมีค่าเป็นศูนย์ รัฐดูดซับเดียวที่ Parikh เวกเตอร์ของพีชคณิตทั้งหมด[ 1 .. N ](1,,1)[1..N]

สำหรับห่วงโซ่มาร์คอฟที่ได้คือN=2

ห่วงโซ่มาร์คอฟสำหรับ N = 2
[ แหล่งที่มา ]

ด้วยจำนวนขั้นตอนที่คาดไว้จนกระทั่งการดูดซึม

Esteps=2p0p12+i3(p0i1p1+p1i1p0)i=1p0+p02p0p02,

โดยใช้ความเรียบง่ายที่ 0 หากเป็นไปตามที่แนะนำp 0 = 1p1=1p0สำหรับบางϵ[0,1p0=12±ϵจากนั้นϵ[0,12)

2Esteps=3+4ϵ214ϵ2

สำหรับและการแจกแจงแบบสม่ำเสมอ (กรณีที่ดีที่สุด) ฉันทำการคำนวณด้วยพีชคณิตคอมพิวเตอร์²; เนื่องจากพื้นที่ของรัฐระเบิดอย่างรวดเร็วค่าที่ใหญ่กว่าจึงประเมินได้ยาก ผลลัพธ์ (ปัดเศษขึ้น) คือN6

NormalPlot LogPlot
แปลงแสดงเป็นฟังก์ชั่นของ N ; ไปทางซ้ายเป็นประจำและไปทางขวาเป็นพล็อตลอการิทึมEstepsN

การเจริญเติบโตดูเหมือนจะเป็นแบบยกกำลัง แต่ค่าน้อยเกินไปที่จะประเมินได้ดี

สำหรับความเสถียรต่อการรบกวนของเราสามารถดูสถานการณ์สำหรับN = 3 :piยังไม่มีข้อความ=3

จำนวนขั้นตอนที่คาดหวังสำหรับ N = 3 และตัวเลือกอื่น
พล็อตแสดงเป็นหน้าที่ของ p 0และ p 1 ; ธรรมชาติ P 2 = 1 - P 0 - หน้า 1Eขั้นตอนพี0พี1พี2=1-พี0-พี1

สมมติว่าภาพที่คล้ายกันสำหรับขนาดใหญ่ (เคอร์เนลเกิดความผิดพลาดในการคำนวณผลสัญลักษณ์แม้สำหรับN = 4 ) จำนวนที่คาดหวังของขั้นตอนที่ดูเหมือนว่าจะค่อนข้างมีเสถียรภาพสำหรับทุกคน แต่ทางเลือกที่มากที่สุด (เกือบทั้งหมดหรือมวลไม่มีในบางหน้าฉัน )ยังไม่มีข้อความยังไม่มีข้อความ=4พีผม

สำหรับการเปรียบเทียบจำลองเหรียญ -biased (เช่นโดยการกำหนดผลการตายไป0และ1อย่างสม่ำเสมอเท่าที่เป็นไปได้) ใช้นี้เพื่อจำลองเหรียญยุติธรรมและในที่สุดก็ดำเนินการสุ่มตัวอย่างปฏิเสธบิตฉลาดต้องใช้เวลามากที่สุดε01

2เข้าสู่ระบบยังไม่มีข้อความ3+4ε21-4ε2

คาดหวังว่าคุณจะติดกับสิ่งนั้นได้


  1. เนื่องจากโซ่มีการดูดซับในขอบที่บอกเป็นสีเทาจึงไม่เคยเคลื่อนที่และไม่ส่งผลต่อการคำนวณ ฉันรวมไว้เพื่อความสมบูรณ์และเพื่อเป็นตัวอย่างเท่านั้น(11)
  2. การใช้งานใน Mathematica 10 ( Notebook , Bare Source ); ขออภัยเป็นสิ่งที่ฉันรู้สำหรับปัญหาประเภทนี้

1

ยังไม่มีข้อความ=2ม.ม.kเข้าสู่ระบบ(ม.k)พี

Σk=0ม.พีk(1-พี)ม.-k(ม.k)เข้าสู่ระบบ(ม.k)ม.ชั่วโมง(พี).
เพื่อให้ได้ค่าประมาณนี้ใช้ข้อเท็จจริงที่ว่าตัวแปรทวินามมีสมาธิ k=พีม. พร้อมกับการประเมิน เข้าสู่ระบบ(ม.k)ม.ชั่วโมง(k/ม.). เช่นม. มีขนาดใหญ่ขึ้นเราได้รับอัตราที่เหมาะสมที่สุด ชั่วโมง(พี) ต่อการโยนเหรียญ (นี่คือเหตุผลที่ดีที่สุดสำหรับเหตุผล - ข้อมูลเหตุผลเช่นคุณสมบัติ asymptotic equipartition)

คุณสามารถใช้วิธีการเดียวกันนี้สำหรับทั่วไป ยังไม่มีข้อความและคุณอาจจะได้รับเหมือนกัน H(พี). อัลกอริธึมเหล่านี้เหมาะสมที่สุดในขีด จำกัด เท่านั้นและอาจมีอัลกอริธึมถึงขีด จำกัด เร็วกว่า ในความเป็นจริงฉันละเลยที่จะคำนวณความเร็วของการลู่เข้า - นั่นอาจเป็นการออกกำลังกายที่น่าสนใจ


1

ฉันจะเสี่ยงต่อคำตอบต่อไปนี้

กรณีเฉพาะของ 2 ที่คุณกล่าวถึงข้างต้นเป็นกรณีเฉพาะของการขยายตัว (พี+Q)2 (ในกรณีที่ พี เป็นปัญหาของหัวและ Q prob of tail) ซึ่งให้คำศัพท์แก่คุณ 2พีQ ซึ่งหมายความว่าคุณจะได้รับ พีQ สำหรับกรณีหนึ่งและ Qพีสำหรับกรณีอื่น ๆ คุณจะต้องสุ่มตัวอย่างซ้ำจนกว่าคุณจะเห็นพีQ หรือ Qพี (head-tail หรือ tail-head) การใช้พวกมันเป็นแบบจำลองคุณจะให้โอกาสที่เท่าเทียมกัน

เมื่อไหร่ ยังไม่มีข้อความ=3 คุณมีการขยายตัว (พี+Q+R)3 ซึ่งให้คำศัพท์แก่คุณ พีQR. ในกรณีนี้คุณทำสิ่งเดียวกันโดยสุ่มตัวอย่างจนกว่าคุณจะเห็นผลลัพธ์ทั้ง 3 ข้อQ, พี, R ตามลำดับในการทดลอง 3 ครั้งติดต่อกัน

สิ่งเดียวกันใช้สำหรับกรณีทั่วไป เมื่อคิดอย่างถี่ถ้วนฉันต้องบอกว่ากรณีที่ 2 เป็นกรณีที่ดีที่สุดที่ใคร ๆ ก็สามารถทำได้ในการขยายตัว เมื่อไหร่ยังไม่มีข้อความ=3 มี 6 ลำดับที่แตกต่างกันสำหรับ พีQRและมีเงื่อนไขอื่น ๆ อีกมากมายในการขยายตัว ฉันรู้สึกไม่สบายใจกับคำอื่น ๆ ที่มีผลลัพธ์อีกมากมาย

.

เสริม:

นี่ทำให้ฉันคิดเกี่ยวกับความคิดในการสุ่มตัวอย่างมากมายเพื่อประเมินความน่าจะเป็นของผลลัพธ์แต่ละชิ้นของลูกเต๋า ในกรณีที่ง่ายที่สุดของแบบจำลองเลเยอร์หนึ่งที่ไม่มีเลเยอร์ที่ซ่อนอยู่ (แบบจำลองที่รู้จัก) เราสามารถหาขอบเขตเพื่อสรุปว่าการประมาณมาบรรจบกันอย่างรวดเร็ว ในความเป็นจริง Chernoff ผูกพันแสดงให้เราเห็นว่าข้อผิดพลาดจะลดลงชี้แจงว่าการสุ่มตัวอย่างเพิ่มขึ้น (เชิงเส้น)

ขณะนี้ทราบว่าการประมาณความน่าจะเป็นที่ดีสำหรับแต่ละด้านของลูกเต๋ามีหลายทางเลือก ทางเลือกหนึ่งคือเราสามารถทำการขยายตัวด้านบนอีกครั้ง แต่คราวนี้เราอาจใช้คำอื่น ๆ อีกมากมายในการขยายตัวที่มีค่าเดียวกันΠผม=1ผม=nพีผม(หรือคำใด ๆ ที่คุณใช้ตามลำดับ) สิ่งนี้จะมีประสิทธิภาพมากกว่านี้เล็กน้อยเนื่องจากจะใช้คำศัพท์ในการขยายเพิ่มเติม แต่ฉันยอมรับว่าฉันไม่รู้ว่าสิ่งนี้จะส่งผลให้จำนวนการโทรไปยัง oracle น้อยที่สุดเพื่อรับประกันว่าจะมีเงื่อนไขใด ๆ (เช่นพารามิเตอร์ความมั่นใจ) หรือไม่หากพวกเขาได้รับ

อย่างไรก็ตามวิธีการนี้เป็นคำตอบสำหรับรสชาติที่แตกต่างของคำถาม คำถามนี้ถามถึงการรับประกันความเป็นกลางที่สมบูรณ์แบบโดยมีค่าใช้จ่ายในการสุ่มตัวอย่างที่มีขนาดใหญ่ วิธีนี้ใช้การสุ่มตัวอย่างแบบ จำกัด ด้วยพารามิเตอร์ความมั่นใจ ดังนั้นฉันไม่คิดว่าวิธีการนี้เหมาะสมกับคำถามนี้แม้ว่ามันจะน่าสนใจมาก

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.