ฉันกำลังมองหาอัลกอริทึมในการจัดการปัญหาต่อไปนี้ซึ่งตอนนี้ฉันกำลังเรียกอัลกอริทึม "แอปเปิ้ลไม่ดี"
ปัญหา
- ฉันมี N โพรเซสที่ทำงานในแซนด์บ็อกซ์ M โดยที่ >> N
- มันเป็นไปไม่ได้เลยที่จะให้แต่ละกระบวนการเป็น sandbox ของตัวเอง
- อย่างน้อยหนึ่งในกระบวนการเหล่านั้นมีพฤติกรรมไม่ดีและนำลงสู่ sandbox ทั้งหมดดังนั้นจึงฆ่ากระบวนการอื่นทั้งหมดใน sandbox เดียวกัน
หากเป็นกระบวนการที่ประพฤติตัวไม่ดีเพียงครั้งเดียวฉันสามารถใช้การแบ่งครึ่งแบบง่าย ๆ เพื่อใส่กระบวนการครึ่งหนึ่งลงในแซนด์บ็อกซ์หนึ่งและอีกครึ่งหนึ่งในแซนด์บ็อกซ์อื่นจนกว่าฉันจะพบคนผิดปกติ
คำถาม
หากมีมากกว่าหนึ่งกระบวนการที่มีพฤติกรรมไม่ดี - รวมถึงความเป็นไปได้ที่พวกเขาทั้งหมดมีพฤติกรรมไม่ดี - อัลกอริทึมไร้เดียงสานี้ใช้งานได้หรือไม่? มันรับประกันว่าจะทำงานภายในขอบเขตที่เหมาะสมหรือไม่?
simplifications
เพื่อประโยชน์ในการโต้แย้งลองสมมติว่ากระบวนการที่ไม่ดีจะทำลายกล่องทรายของมันทันทีและกระบวนการที่ดีไม่เคยทำ