Мені потрібен алгоритм для здійснення двійкового пошуку, коли тест на кожному кроці може дати неправильний результат.
Передумови:
Мені потрібно розмістити учнів на найбільш відповідних 12 рівнях складності. Нинішній підхід є грубою силою і задає 60 запитань із численним вибором з 4 відповідями, що збільшують труднощі, зупиняючись після трьох неправильних, і ставить студента на рівень: floor((score - 1) / 5) + 1
як мінімум 1.
Ми стурбовані тим, що клієнти вимикаються, коли вони стикаються з тестом, що містить до 60 питань, перш ніж вони дійсно можуть скористатися програмою, тому ми хотіли б мінімізувати кількість запитань у тесті. Ми також стурбовані тим, що клієнти пропускають тест на місце розташування (оскільки він здається довгим), а потім відмовляються від програми, оскільки це здається занадто простим.
Середнє місце розташування насправді знаходиться на рівні 2, тому 50 +% учнів набирають балів <11 (тобто відповідають <14 питань). Випадково це може бути через те, що їм нудно і перестають серйозно сприймати питання (це маленькі діти).
Пропоноване рішення: Реалізуйте тест у вигляді двійкового пошуку за дванадцятьма елементами, починаючи з питання на рівні складності 6/7 та продовжуючи, виходячи з того, чи правильно вони поставили запитання. Теоретично це могло б знайти відповідний рівень складності для них у 3-4 питаннях.
Проблема: Як ви можете здогадатися з існуючого тесту, який закінчується лише після трьох неправильних відповідей і використовуючи 60 запитань для вибору між 12 рівнями, ми хочемо врахувати, що студенти мають правильні відповіді (що вони повинні робити 25% часу) або випадково даючи неправильні відповіді (жирні пальці, неправильне запитання тощо). Це ще важливіше при двійковому пошуку, оскільки неповторна відповідь на перше запитання може поставити вас у верхню половину рівнів складності, навіть якщо ви отримаєте неправильне запитання.
То чи існує розпізнаний алгоритм двійкового пошуку, коли ви не можете гарантувати, що індивідуальний тест є точним?
Наївно я можу спробувати найкраще 3 або 5 питань на кожному кроці, і, оскільки ранні запитання мають більший вплив на кінцевий результат, ніж пізніші, можливо, додайте ці додаткові запитання лише до перших етапів, а не до пізніших. Чи є в цьому більше, ніж це?