Припустимо, у мене 400 студентів (це у великому університеті), які повинні робити проект з інформатики, і що їм доведеться працювати поодинці (немає групи студентів). Як приклад проекту можна навести "реалізацію алгоритму швидкої трансформації фур'є у фортран" (я знаю, це не звучить сексуально, але це робить моє питання простішим). Я є коректором, і я хочу надіслати підпрограми, щоб перевірити, чи є групи студентів, які запропонували реалізацію, які "занадто схожі, щоб бути написаними по-справжньому".
Це непідконтрольний пошук кластерів. Я думаю, що питання стосується більше того, які атрибути використовувати, а не того, який алгоритм кластеризації використовувати. Перше, що я зробив би - це лист за буквою гістограмою. В ідеалі, оскільки обдурювачі розумніші за це, я б, нарешті, спробував правильно підібрати випадкові перестановки літер, щоб побачити, чи існує хороша відповідність гістограми букви (з перестановкою). Крім того, що ті, хто не досліджує структуру коду, лише граничний розподіл літер ... яке рішення у вас є? чи існують програмне забезпечення або пакети, присвячені цій проблемі? (насправді в мої старі часи вчителі інформатики заявляли, що вони мають такий інструмент, але зараз я підозрюю, що у них було щось дуже просте)
Я думаю, що у юристів із розробки програмного забезпечення є такий тип питань (не з 1000 студентами, а з двома великими кодами ... що ускладнює справи)?