Кіріспе

Объектілер жиынтығын қамтитын сфера, жазықтық мәселесі

Математикада, өлшемдік кеңістікте шекті кеңейтуі бар бос емес объектілер жиынтығы берілгенде, мысалы, нүктелер жиынтығы, осы жиынтықты шектейтін сфера, қоршау сферасы немесе қоршау шар – бұл жиынтықтағы барлық объектілерді қамтитын өлшемді қатты сфера болып табылады. Компьютерлік графикада және есептеу геометриясында қолданылатын шектейтін сфера – шектейтін көлемнің ерекше түрі. Нақты уақыт компьютерлік графика қолданбаларында жоғары практикалық құндылығы бар бірнеше жылдам және қарапайым шектейтін сфера құрылыс алгоритмдері бар. Статистикада және операциялар зерттеуінде объектілер әдетте нүктелер болып табылады, ал көбінесе қызығушылық тудыратын сфера – ең кішкентай шектейтін сфера, яғни барлық шектейтін сфералардың арасындағы ең кішкентай радиусы бар сфера. Мұндай сфераның бірегей екендігі дәлелденуі мүмкін: егер олардың екеуі болса, онда сөз болатын объектілер олардың қиылысында орналасады. Бірақ радиусы бірдей екі сфераның қиылысы кішкентай радиусты сфераның ішінде орналасады. Ең кішкентай шектейтін сфераның ортасын есептеу мәселесі "салмақталмаған Евклидтік 1-орталық мәселесі" деп те аталады.

Кластерлеу

Мұндай сфералар кластерлеуде пайдалы, онда ұқсас деректер нүктелерінің топтары бірге жіктеледі. Статистикалық талдауда сфера ішіндегі дерек нүктелерінің таралуы өлшеу қатесіне немесе табиғи (әдетте жылулық) процестерге байланысты болуы мүмкін, мұндай жағдайда кластер идеалды нүктенің бұзылуын көрсетеді. Кейбір жағдайларда бұл идеалды нүкте кластердегі нүктелердің орнына қолданылуы мүмкін, бұл есептеу уақытын қысқартуға ыңғайлы. Операциялық зерттеулерде NP-толық мәселелер үшін жуықтап алғандағы мәндерді ақылға қонымды уақытта алу үшін мәндерді идеалды нүктеге топтастыру арқылы кіріс деректердің санын азайту да қолданылады. Таңдалған нүкте әдетте сфераның ортасы емес, себебі ол сыртқы мәндерге (аутлиерлерге) тәуелді болуы мүмкін, бірақ кластерді бейнелеу үшін ең кішкентай квадраттар әдісімен есептелген орташа орналасқан нүкте сияқты нәрсе қолданылады.

Алгоритмдер

Шектеулі шар мәселесін шешу үшін нақты және жуық алгоритмдер бар.

Сызықтық бағдарламалау

Нимрод Мегиддо 1 орталық проблеманы жан-жақты зерттеді және 1980 жылдары кем дегенде бес рет жариялады. 1983 жылы ол "тартып қысқару және іздеу" алгоритмін ұсынды, ол оптималды шектеу сферасын табады және өлшем тұрақты сан ретінде белгіленген жағдайда сызықтық уақытта жұмыс істейді. Егер өлшем ескерілсе, орындалу уақытының күрделілігі , бұл жоғары өлшемді қолданбалар үшін тиімсіз. 1991 жылы Эмо Велцль Реймунд Сейдельдің кездейсоқ сызықтық бағдарламалау алгоритмін кеңейте отырып, әлдеқайда қарапайым кездейсоқ алгоритм ұсынды. Велцль алгоритмінің күтілетін жұмыс уақыты , ал кез келген белгіленген өлшем үшін ол қайтадан азаяды. Мақалада жоғары өлшемдерде оның тиімділігін көрсететін тәжірибелік нәтижелер келтірілген. Тимоти Чанның соңғы детерминистік алгоритмі де уақыт ішінде жұмыс істейді, өлшемге тәуелділігі кішкентай (бірақ әлі де экспоненциалды). Ашық кодты Computational Geometry Algorithms Library (CGAL) Велцль алгоритмінің іске асырылуын қамтиды.

Негізгі жиынтыққа негізделген шамалау

Бадоиу және басқалар шектейтін сфера мәселесіне жуықтауды ұсынды, онда жуықтау дегеніміз – құрастырылған сфераның радиусы ең көп дегенде , мұндағы – шектейтін сфераның мүмкін болатын ең кіші радиусы. Корсет – бұл кішігірім ішкі жиын, оның үстінде бұл ішкі жиынға қолданған шешімнің кеңеюі бүкіл жиын үшін шектейтін сфера болады. Корсет әрбір итерацияда жиынға ең алыс нүктені қосу арқылы кезең-кезеңмен құрылады. Кумар және басқалар бұл жуықтау алгоритмін уақыт ішінде жұмыс істеуі үшін жетілдірді.

Фишердің нақты шешушісі

Фишер және тағы басқалар (2003) ең нашар жағдайда полиномиалдық есептеу уақыты болмаса да, нақты шешуші алгоритм ұсынды. Алгоритм толығымен комбинаторлық болып табылады және сызықтық бағдарламалаудағы симплекс әдісіне ұқсас айналдыру схемасын іске асырады, бұл схема бұрынғы эвристикаларда қолданылған. Алгоритм барлық нүктелерді қамтитын үлкен шардан басталады және оны одан әрі қысқарту мүмкін болмайынша біртіндеп қысқартады. Алгоритмде бұрынғы авторлар назардан тыс қалдырған дегенерация жағдайларында дұрыс тоқтау шарттары қарастырылған; сондай-ақ, ішінара шешімдерді тиімді өңдеу арқасында айтарлықтай жылдамдыққа қол жеткізіледі. Авторлар алгоритмнің төмен және орташа төмен (10 000-ға дейін) өлшемдерде тиімді екенін растады және оның қозғалатын нүктелік операцияларында сандық тұрақтылық мәселелері жоқ екенін мәлімдеді. Алгоритмнің C++ нұсқасы ашық кодты жоба ретінде қолжетімді.

Төтенше нүктелер оптималдық сфера

шектейтін сфера проблемасын шешу үшін "шектен тыс нүктелердің оңтайлы сферасы" әдісін, жылдамдық пен дәлдікті бақылау арқылы жақындастыру ұсынды. Бұл әдіс бағыт векторлары жиынтығын алып, барлық нүктелерді әрбір векторға проекциялау арқылы жұмыс істейді; жылдамдық пен дәлдік арасындағы айырбас құралы ретінде қызмет етеді. Бұл проекциялардың шектен тыс нүктелеріне нақты шешім табушы қолданылады. Алгоритм қалған нүктелерді қарастырып, қажет болған жағдайда сфераны кеңейтеді. мәні үлкен болғанда, бұл әдіс нақты әдістерге қарағанда бірнеше есе жылдам, сонымен қатар салыстырмалы нәтижелер береді. Ең нашар жағдайдағы уақыты .