border=0

Computational geometry

) - отрасль компьютерных наук посвящена изучению алгоритмов что описуюються в терминах геометрии. Kompjûterke geometry (Ingelsk komputêre geometry ) - in branch fan kompjûterwittenskippen is oanwêzich oan it ûndersyk fan algoritmen dy't beskreaun binne yn geometry.

De wichtichste stimulus foar de ûntwikkeling fan de kompetysjale geometry as in disipline wie de foarútgong yn kompjûtergrafyk en kompjûtergegeonlike ûntwerp en kompjûter-assistearre systemen foar technologyske tarieding fan produksje, lykwols in soad problemen fan komputative geometry binne klassike yn 'e natuer en kinne ferskine yn' e wiskundige visualisaasje.

In oar wichtige tapassing fan de kompetysjale geometry is robotyk (bewegingsplaning en merkerkenningtaken), geografyske ynformaasjesystemen (geometrysk sykjen, rûteplanning), mikrochip-ûntwerp, programmearring fan numerike kontrôlesmasines.

De wichtichste paragraaf fan komputative geometry binne:

  • Kombinatoriale kreative geometry , of ek algorithmyske geometry neamd , dy't geometryske objekten behannelje as diskretlike entiteiten. It oprjochtboek op dit ûnderwerp is it boek Precies en Sheimos, dêr't de term computational geometry foar de earste kear yn 1975 brûkt waard.
  • Numeryske kreative geometry , ek wol masinegeometry of geometrysk-modeling neamd , dy't benammen behannele is mei de fertsjintwurdiging fan objekten fan 'e echte wrâld yn' e foarm dy't passend is foar fierdere komputerferwurking. Dizze seksje kin besjoen wurde as in fierdere ûntjouwing fan beskriuwende geometry en wurdt faak besjoen as in seksje fan kompjûtergrafik. De term "komputative geometry" is yn dizze sin sûnt 1971 brûkt.

Kombinatoriale komputative geometry

It wichtichste doel fan ûndersyk yn kombinaatregelige geometry is de ûntwikkeling fan effisjente algoritme en datastrukturen foar it oplossen fan problemen dy't gegeven binne op basis fan geometryske basisfoarmen: punten, segminten, polygons, polyhedra en oaren.

Guon fan dizze taken sjogge sa ienfâldich dat se net hielendal beskôge wurde as taak oant de útfining fan komputer. Meitsje bygelyks de opdracht om it neist pear punten te finen:

  • Nei n punten op in fleantúch, fynst twa ôfstannen tusken wêrfan de lytste is

Jo kinne de ôfstannen tusken elk paadpunten berikke, (der binne n (n-1) / 2 ), kies dan it paar mei de koartste ôfstân. In soartfâldige syktocht hat kompleksiteit O ( n 2), de útfiering tiid is proportional oan it fjild fan it oantal punten. De klassike resultaat yn 'e komputative geometry wie in algoritme mei kompleksiteit O ( N Log N ). Ek iepen randomisearre algoritme wurkje yn O ( n ) stappen, en deterministyske algoritme dy't wurkje yn O ( N Log Log N ).

Computational geometry rjochtet him benammen op komputative kompleksiteit, om't de algoritme binne ûntwurpen om te wurkjen op tige grutte data sets, út tsientallen of hûnderten miljoenen punten. Foar grutte data sets kin it ferskil tusken O ( n 2) en O ( N Log N ) itselde wêze as it ferskil tusken dagen en sekonden.

Taskklassen

De wichtichste opjeften fan komputative geometry kinne op ferskillende wizen klassifisearre wurde, en mei ferskate kritearia. Der binne de folgjende lessen:

Statyske taken

Yn problemen fan dizze kategory wurde bepaalde gegevens yn 'e ynfier geane, en de algoritme moat de dêrmei passende resultaten berekkenje. Foarbylden fan sokke fundearde taken binne:

  • Convex hull: In soad punten hawwe, fynt it lytste konvexe polygon mei alle punten.
  • Spesjalearjende segminten: fyn alle siden yn in tal segminten.
  • Delaunay triangulaasje
  • Voronoi-diagram: Hast in set fan punten, diel de romte yn sektoaren, elk punt dêr't se tichter oan 'e eigen is fan' e set as nei de oare.
  • Lineêre programmearring
  • De taak fan it tichtste paar fan punten: In set fan punten om twa ôfstannen te finen tusken hoe is it lytste.
  • Euklidyske koartste paad: Pleatst de twa punten fan 'e euklidyske romte (mei polygonale obstakels) op koarte mooglike manier.
  • Polygon triangulaasje: In polygon hawwe, spjalte har ynterieur yn trijehoeken
  • Generaasje Mesh Ingelsk Mjit generaasje

Komputative kompleksiteit foar dizze soarte opdracht wurdt bepaald troch tiid en romte (ûnthâld grutte), dy't nedich binne om in spesifyk probleem op te lossen.

Geometrysk sykopsjes (query)

Yn geometrysk sykwurden problemen bestiet de ynputgegevens fan twa dielen: in sykromte en in fraachromte, dy't ferskille yn ferskate soarten taken. Typysk fereasket de sykromte foar preprocessing om de effisjinte útfier fan meardere queries te garandearjen.

Foarbylden fan geometrysk sykproblemen:

  • Regionale sykjen (en: Range-sykjen): Ferpleats in set fan punten om effektiv te sykjen nei in tal punten dy't yn 'e frege regio binne.
  • Lokaasje fan in puntsje (en: Point location): Mei in dieling fan romte yn regio's, meitsje in gegevensstruktuer wêrtroch jo effektyf bepale kinne yn hokker regio dit punt leit.
  • Sykje jo neistbeide: proses in set tagong ta punten nei alle mooglikheden om effektyf te finen hokker punten tichter by de frege wurde.
  • Ray tracing: Hân in opset fan objekten yn romte, meitsje in gegevensstruktuer wêrtroch jo effisjoneel fêststelle kinne hokker objekten fan 'e peach de beam yn fraach is.

As de sykromte fêst is, wurdt de komputative kompleksiteit fan 'e taken meastentiids fêststeld

  • tiid en plak nedich foar preprosessen (it bouwen fan in effektive gegevensstruktuer)
  • tiid (miskien selden plak) nedich om in antwurd op elk fersyk te krijen.

Yn gefallen wêr't de sykromte kin wurde, sjogge jo de sjabloanen fan it Dynamic Tasks.

Dynamyske taken

Dynamyske taken binne de soarte fan taken dy't de ynputgegevens dy't elk feroarlikje (bygelyks objekten binne tafoege of wiske). Algoritme foar it oplossen fan sokke problemen binne ûndersteuning foar dynamyske datastrukturen. Any problem of computational geometry can be dynamically resolved, but at the expense of additional computational resources. Regionale sykjen of oanbou fan in shell opukolo kin útfierd wurde op in set fan punten dy't feroarje.

De komputative kompleksiteit foar dizze klasse fan problemen wurdt jûn troch de folgjende parameters:

  • Boarnen nedich om in gegevensstruktuer te bouwen foar sykjen
  • Middels nedich om de boustruktuer oan te passen
  • en boarnen nedich om te reagejen op fersiken

Guon taken kinne beskôge wurde om te hearren oan ferskate kategoryen ôfhinklik fan it kontekst.

Sjoch bygelyks de neikommende taken:
Pleatstelpunt polygon: Determine it punt is bûten of yn it polygon.


Feroarings

Yn in protte programma's wurdt dizze taak beskôge as in earste klasse taak. Yn guon gefallen is it needsaaklik om te bepalen dat de mûsoanwizer yn dizze polygon leit. De rinnerke is hieltyd bewegen, en it polygon feroaret net. Hjirby kinne jo in spesifike fleanmasine kontrolearje dy't sjen lit op it radar skerm net de grins fan it lân krúste. Sokke taken kinne beskôge wurde as problemen fan in geometryske query. En yn CAD-systemen kin de multicounty sels ferskille, sadat de taak dynamysk beskôge wurde kin.





Sjoch ek:

Category Theory

Primêre matrixfoarsjenningen

Hegere algebra wiskunde

Equation Solution troch Cramer Capelli | Cramer's teory

Dielnimmende sinnen

Gean werom nei Tafelingen yn: Heger Matematika

2019 @ bibinar.info