Монотонды көпбұрыш - Monotone polygon

Жасыл түс бір қиылысты, көк екі қиылысты, ал қызыл үш немесе одан да көп қиылысты білдіреді. Жоғарғы екі көпбұрыш L-ге қатысты монотонды, ал төменгі екеуі емес.

Жылы геометрия, а көпбұрыш P жазықтықта деп аталады монотонды түзу сызыққа қатысты L, егер ортогоналды әр жол болса L қиылысады P ең көп дегенде екі рет.[1]

Сол сияқты, а көпбұрышты тізбек C аталады монотонды түзу сызыққа қатысты L, егер ортогоналды әр жол болса L қиылысады C ең көп дегенде.

Көптеген практикалық мақсаттар үшін бұл анықтаманы кейбір шеттері болған жағдайларға мүмкіндік беру үшін кеңейтуге болады P ортогоналды болып табылады Lжәне а қарапайым көпбұрыш егер екі нүктені біріктіретін түзу кесіндісі монотонды деп аталуы мүмкін P және -ге ортогоналды L толығымен тиесілі P.

Терминологиясын ұстану монотонды функциялар, бұрынғы анықтамасы сипаттайды көпбұрыштар қатаң монотонды құрметпен L. «Қатысты» бөлігі қатаң / қатаң емес айырмашылықты анықтау үшін қажет: көпбұрыш қатаң емес монотонды L сызыққа қатысты қатаң монотонды L1 бастап бұрылды L жеткілікті кішкентай бұрышпен.

Қасиеттері

Мұны ойлаңыз L сәйкес келеді х-аксис. Сонда монотонды көпбұрыштың сол және оң жақ шыңдары оның шекарасын екі монотонға айналдырады көпбұрышты тізбектер кез-келген тізбектің шыңдары өздерінің табиғи ретімен өткен кезде олардың X-координаттары болады монотонды жоғарылау немесе кему. Іс жүзінде бұл қасиет монотонды көпбұрыштың анықтамасы үшін қабылдануы мүмкін және ол көпбұрышқа өз атын береді.

A дөңес көпбұрыш кез-келген түзуге қатысты монотонды, ал әр түзуге қатысты монотонды көпбұрыш дөңес болады.

Сызықтық алгоритм белгілі бір көпбұрыш монотонды болатын барлық бағыттар туралы есеп беретіні белгілі.[2] Қарапайым көпбұрышты екі монотонды тізбекке (әр түрлі бағыттағы монотонды) ыдыратудың барлық жолдары туралы баяндалған.[3]

Көпбұрыштағы нүкте монотонды көпбұрышқа қатысты сұрақтарға жауап беруге болады логарифмдік уақыт кейін сызықтық уақыт алдын-ала өңдеу (ең жоғарғы және оң жақ шыңдарды табу үшін).[1]

Монотонды көпбұрыш оңай болуы мүмкін үшбұрышты сызықтық уақытта.[4]

Жазықтықтағы берілген нүктелер жиыны үшін а битондық тур нүктелерді байланыстыратын монотонды көпбұрыш. Минимум периметрі Берілген нүкте үшін белгіленген бағытқа қатысты битоникалық турды табуға болады көпмүшелік уақыт қолдану динамикалық бағдарламалау.[5] Мұндай минималды битоникалық турдың қарапайым көпбұрыш екендігі оңай көрінеді: жаңа турдың битондылығын сақтай отырып, қиылысатын жиектер жұп қиылыспайтын жұппен ауыстырылуы мүмкін.

Көпбұрышты монотонды көпбұрыштарға бөлу

Қарапайым көпбұрыш оңай болуы мүмкін монотонды көпбұрыштарға кесіңіз жылы O(n журналn) уақыт. Алайда, үшбұрыш монотонды көпбұрыш болғандықтан, көпбұрышты триангуляция шын мәнінде көпбұрышты монотонды етіп кесу болып табылады және ол қарапайым көпбұрыштар үшін орындалуы мүмкін O(n) уақыт.[дәйексөз қажет ]

Қарапайым көпбұрышты біркелкі монотонды көпбұрыштардың минималды санына кесу (яғни, сол сызыққа қатысты монотон) полином уақытында орындалуы мүмкін.[6]

Контекстінде қозғалысты жоспарлау, бір-біріне ұқсамайтын монотонды көпбұрыштар бір аудармамен бөлінеді (яғни, екі полигонға түзу сызықпен бөлінетін етіп бір полигонның аудармасы бар) және бұл бөлінуді сызықтық уақытта табуға болады.[7]

Жалпылау

Сыпырмалы көпбұрыштар

Көпбұрыш деп аталады сыпырмалы, егер түзу сызықты кез келген сәтте оның көпбұрыш аймағымен қиылысуы дөңес жиынды құрайтындай етіп бүкіл көпбұрыштың үстінен үздіксіз жылжытуға болады. Монотонды көпбұрыш сыпыру кезінде бағытын өзгертпейтін сызықпен өтеді. Көпбұрыш қатаң түрде тазаланады егер оның аумағының ешқандай бөлігі бірнеше рет сыпырылмаса. Сыпырудың екі түрі де квадраттық уақытта танылады.[8]

3D

Көп өлшемді монотондылықты жоғары өлшемдерге бірыңғай тікелей жалпылау жоқ.

Бір тәсілде сақталған монотондылық белгісі - бұл сызық L. Үшөлшемді полиэдр деп аталады әлсіз монотонды бағытта L егер барлық көлденең қималар ортогоналды болса L қарапайым көпбұрыштар. Егер көлденең қималар дөңес болса, онда полиэдр деп аталады дөңес мағынасында әлсіз монотонды.[7] Екі тип те көпмүшелік уақыт ішінде танылуы мүмкін.[8]

Басқа тәсілде сақталған бір өлшемді белгі - ортогоналды бағыт. Бұл деген ұғымды тудырады полиэдралы рельеф үш өлшемде: әр тік (яғни Z осіне параллель) сызық бетті ең көп дегенде бір нүктемен немесе кесіндімен қиып өтетін қасиеті бар көпбұрышты бет.

Сондай-ақ қараңыз

Пайдаланылған әдебиеттер

  1. ^ а б Предата, Франко П.; Шамос, Майкл Ян (1985), Есептеу геометриясы - кіріспе, Шпрингер-Верлаг, ISBN  0-387-96131-3, 1-ші басылым:; 2-баспа, түзетілген және кеңейтілген, 1988 ж.:; Орысша аудармасы, 1989:CS1 maint: қосымша тыныс белгілері (сілтеме)
  2. ^ Предата, Франко П.; Суповит, Кеннет Дж. (1981), «Қарапайым көпбұрышты монотондылыққа тексеру», Ақпаратты өңдеу хаттары, 12 (4): 161–164, дои:10.1016/0020-0190(81)90091-0.
  3. ^ Раппапорт, Дэвид; Розенблум, Арнольд (1994), «Қалыпталатын және құйылатын көпбұрыштар», Есептеу геометриясы, 4 (4): 219–233, дои:10.1016/0925-7721(94)90020-5.
  4. ^ Фурнье, А.; Монтуно, Д.Ю. (1984), «Қарапайым көпбұрыштарды және оған теңестірілген есептерді үшбұрыштау», Графика бойынша ACM транзакциялары, 3 (2): 153–174, дои:10.1145/357337.357341, ISSN  0730-0301, S2CID  33344266
  5. ^ Алгоритмдерге кіріспе, 2-ші басылым, Т. Х. Кормен, Лейзерсон, Р.Ривест, және C. Штейн, MIT түймесін басыңыз, 2001. 15-1 есеп, б. 364.
  6. ^ Лю, Робин (1988), «Көпбұрыштарды біркелкі монотонды бөліктерге ыдырату туралы», Ақпаратты өңдеу хаттары, 27 (2): 85–89, дои:10.1016 / 0020-0190 (88) 90097-X.
  7. ^ а б Туссен, Г. Т.; El Gindy, H. A. (1984), «Сызықтық уақыттағы екі монотонды көпбұрыштардың бөлінуі», Роботика, 2 (4): 215–220, дои:10.1017 / S0263574700008924.
  8. ^ а б Бозе, Просенжит; ван Кревельд, Марк (2005), «Монотондылықты жалпылау: жағымды сыпыруды есептеу арқылы полигондар мен полиэдралардың арнайы кластарын тану туралы», Халықаралық есептеу геометриясы және қолданбалы журналы, 15 (6): 591–608, дои:10.1142 / S0218195905001877, hdl:1874/24150.