Daniel Sapoundjiev on
  Paths

Paths

Path

Пътят се състои от частици. Тези частици са една до друга. При групиране на частиците в части, може да се каже, че пътят се състои от последователни части.

Голямо кръгло петно от частици може също да се нарече път, като се изберат две точки за краища на пътя.

Пътят може да се разширява и стеснява на определени места

Представяне на пътя за математически, компютърни изчисления

За извършване на различни изчисления, примерно с компютър е необходимо да представим пътя по подходящ начин. Но представянето зависи от това какви изчисления ще се правят.

В някои алгоритми е необходимо да се знае само началната и крайната точка на пътя. В този случай се представя пътя много лесно, само с 2 точки. Но в много случаи е необходимо да се знае точната форма. Това са случаи при които е необходимо той да се обходи (извърви). Тогава много точки от пътя трябва да се представят в компютъра. В някои алгоритми може да има нужда от широчина на пътя и т.н.

Пътят се състои от последователни точки. Но пътят може да има огромен брой точки. В зависимост колко точно искаме да го представим може да продължаваме до безкрайност да добавяме точки в него.

Как можем да представим пътя с по-малко точки от колкото всъщност има той. Тъй като в някои места от пътя точките са подредени в права линия, то не е необходимо да се представят всички точки. В този случай може да се представят само начална и крайна точка. Това е така защото всички точки ще заемат много памет и по-трудно ще се извършват действия с тях. Освен отсечки пътят може да има и други по-общи форми. Като дъга, безие крива, елипсовидна дъга. Също и спирала. Ако се намери някаква закономерност в пътя може да се представи чрез нея, функция. Може и да се представят и последователност от движения. Примерно зиг заг. Повтаряне на части от пътя. Връщане на пътя успоредно на пътя в едната посока. Същата форма като друг път.

Зависимости

Завой. Част от пътя или целият може да завива в една посока, започвайки от една точка до друга. Това може да се ползва за да се предвижда дали са необходими някакви стъпки в алгоритъм. Допълнителна информация - Предикшън алгоритми. Примерно може да се предвиди дали ще мине през някоя точка. Също така може да се предвиди дали ще се пресекат два пътя.

Целият път или част от него може да е разположен в една посока спрямо Х. Така всяка точка ще бъде примерно винаги отляво на предходната. С по-малък Х. Или обратното - с по-голям Х, винаги отдясно. С тази информация може да се предвижда дали даден път ще премине през определена точка. Може да се предвижда дали ще пресече друг път и др.

Пътят може да има начало и край, ако това е необходимо за конкретния алгоритъм. Ако това не е необходимо, то и двата края са равнопоставени. В компютрите пътищата се представят с начало и край, поради естеството на работа на самия компютър. Но трябва да се има предвид, че дори и да е така, краищата се разглеждат като равнопоставени. Примерно при алгоритъм за намиране на пресечена точка на два пътя краищата са равнопоставени. Дали ще се представи пътя от единия край или от другия, то ще имаме еднакви пътища с еднакви пресечени точки.

Пътят като ограда - размишления

Пътят може да разделя равнина. Равнината е съвкупност от много точки и път който минава през нея, минава през определен брой от точките и. Когато път минава през част от точките на равнината, то част от тези точки остават от дясно, а друга част от лява на пътя. Когато пътят е безкраен той ще раздели равнината на две части. В противен случай ще има точки, които са отляво, други отдясно, а трети, които са далеч от пътя. Но коя точка е точно от ляво и коя от дясно, и защо ни е нужно да знаем това. Ако дадена точка е допряна до пътя, то тя със сигурност може да се каже, че е отляво или отдясно.

Път и компресия на данни.

Тъй като пътят съдържа в себе си доста информация и успяваме да го представим с по-малко такава. То може би ще може да се намери някаква връзка с компресирането на данни. Най-малкото ако данните са точки от път, които се извиват в дърга. То може просто да се дадад начална точка и крайна точка и още една точка за определяне на дъгата. И така успяваме да компресираме данните.

Тука важат и други осообености на пътя. Примерно ако пътя нараства само надясно, може да се каже само отместването без знак от точка до точка. По този начин ще се ползват по-малки стойности на данните.

Но как при пътищата може да се намират зависимости, съответно при компресирането. Единият вариант е един път да бъде наблюдван от различни наблюдатели, всеки от които се грижи за някаква зависимост. Но това означава, че при всяка стъпка ще е необходимо всеки един от наблюдателите да си свърши работата. Това ще забави алгоритъма, особено ако има много наблюдатели. А ние бихме искали да имаме повече наблюдатели, за да може, да компресираме най-разнообразни данни. За да се постигне забързване тука е необходимо един наблюдател да наблюдава за няколко други. И ако прецени да включи някои наблюдател в режим на собствено наблюдения. Примерно ако единият наблюдател наблюдава за 10 последователни еднакви стойности, а другият наблюдава за нарастващи стойности. И този за последователните е влязал в режим на засечена последователност, то другият трябва да се изключи. Друг случай е примерно ако единият наблюдател наблюдава отново за 10 повтарящи се стойности. А друг е влязал в режим на наблюдаване на повтарящи се тройки, примерно 3 петици, 3 четворки, 3 тройки. То и двата наблюдателя ще търсят поне две повтарящи се стойности за да преминат в различно състояние. Така няма да е наобходимо и двата да наблюдават за две еднакви последователни стойности. За да се постигне оптимизация тука е необходимо да се сложи един наблюдаващ елемент, който да смени стейта на двата наблюдателя. И чак тогава другите два наблюдателя преценяват какво да правят със следващите стойности.

Този подход е изключително мощен и дава възможност да се намират зависимости в колеми количества данни. Принципът е отново на основата на предикшън алгоритмите. В дадено състояние един предвижда за няколко възможни неща напред. Когато се промени състоянието, то вече са възможни да се случат някои неща, а други не. Общо взето това е разликата, че нещо става възможно, а друго не в определен стейт. Но в следващ стейт от възможните отпада нещо, но към възможните може да се прибави нещо. Но към възможните се прибавя нещо, само в първа стъпка на достигането му.

Back to main menu