Роботиката е уникална смесица от наука и технологии, която произвежда машини, които имитират действията на хората.
В началото на 2000-те 90% от роботите са били в заводи за производство на автомобили, заменяйки хората за повтарящи се задачи. Сега роботите могат да прахосмукват къщи и дори да сервират в ресторанти.
Роботът обикновено се състои от три вида компоненти; механичното тяло; електрическия скелет и накрая мозък, направен с код.
Тези компоненти позволяват на робот да събира данни (често от сензори), да взема решения чрез програмирана логика, за да адаптира поведението и да изпълнява задачи.
Роботите могат да имат три вида програми; Дистанционно управление (RC), Изкуствен интелект (AI) или хибрид.
RC програмите изискват намесата на човешко същество, което може да даде стартов и/или стоп сигнал за изпълнение на код на робота. Програмите се състоят от различни видове алгоритми, всеки с различна функция.
Какво е алгоритъм?
Алгоритъмът е поредица от редове код, които роботът може да използва за изпълнение на определени инструкции. Той превежда идеите на разработчика на език, който се разбира от роботите.
Алгоритмите могат да бъдат изразени в много видове нотация, включително псевдокод, блок-схеми, програмни езици, или контролни таблици.
В тази статия ще обсъдим някои често срещани типове алгоритми, използвани в тези програми.
Видове алгоритми, използвани в роботиката
1. По всяко време Алгоритъм A*
Алгоритъмът A* е алгоритъм за търсене на пътя, който се използва за намиране на най-оптималния път между две точки, т.е. с най-малка цена.
По всяко време Алгоритъмът A* има гъвкава времева цена и може да върне най-краткия път, дори ако е прекъснат, тъй като първо генерира неоптимално решение и след това го оптимизира.
Това позволява по-бързо вземане на решения, тъй като роботът може да надгражда предишни изчисления, вместо да започва от нулата.
Как работи?
Той прави това чрез формиране на „дърво“, което се простира от началния възел до задействането на критериите за прекратяване, което означава, че има достъпен по-евтин път.
2D мрежа е направена с препятствия и началната клетка и целевите клетки са насочени.
Алгоритъмът дефинира „стойността“ на възела чрез f, която е сумата от параметри g (цената на преместване от началния възел до въпросния възел) и h (цената на преместването от въпросния възел до целевия възел).
Приложения
Много игри и уеб-базирани карти използват този алгоритъм за ефективно намиране на най-краткия път. Може да се използва и за мобилни роботи.
Можете също така да решавате сложни проблеми като Нютон-Рафсън итерация, приложена за намиране на корен квадратен от число.
Използва се и при проблеми с траекторията, за да се предскаже движението и сблъсъка на обект в пространството.
2. Алгоритъм D*
D*, Focused D* и D* Lite са инкрементални алгоритми за търсене за намиране на най-краткия път между две точки.
Те обаче са смесица от A* алгоритми и нови открития, които им позволяват да добавят информация към своите карти за неизвестни препятствия.
След това те могат да преизчислят маршрут въз основа на нова информация, подобно на Марсохода.
Как работи?
Работата на алгоритъма D* е подобна на тази на A*, алгоритъмът първо дефинира f, h и създава отворен и затворен списък.
След това алгоритъмът D* определя g стойността на текущия възел, използвайки g стойността на съседните му възли.
Всеки съседен възел прави предположение за текущата g стойност и най-кратката g стойност се адаптира като новата g стойност.
Приложения
D* и неговите варианти се използват широко за мобилни роботи и автономно превозно средство навигация.
Такива навигационни системи включват прототипна система, тествана на марсоходите Opportunity и Spirit и навигационната система, която спечели Градско предизвикателство на DARPA.
3. PRM алгоритъм
PRM или вероятностна пътна карта е мрежова графика на възможните пътища, базирани на свободни и заети пространства на дадена карта.
Те се използват в сложни системи за планиране, а също и за намиране на евтини пътища около препятствия.
PRM използват произволна извадка от точки на своята карта, където роботно устройство може евентуално да се движи и след това се изчислява най-краткият път.
Как работи?
PRM се състои от фаза на изграждане и заявка.
В първата фаза се изобразява пътна карта, която приближава възможните движения в среда. След това се създава произволна конфигурация и се свързва с някои съседи.
Началната и целевата конфигурация са свързани с графиката във фазата на заявката. След това пътят се получава от a Най-краткият път на Дийкстра запитване.
Приложения
PRM се използва в локалните плановици, където алгоритъмът изчислява права линия между две точки, а именно началната и целевите точки.
Алгоритъмът може да се използва и за подобряване на приложенията за планиране на пътя и за откриване на сблъсък.
4. Алгоритъм за нулев момент (ZMP).
Zero Moment Point (ZMP техника) е алгоритъм, използван от роботи за поддържане на общата инерция, противоположна на силата на реакция на пода.
Този алгоритъм използва концепцията за изчисляване на ZMP и я прилага по начин за балансиране на двуноги роботи. Използването на този алгоритъм върху гладка подова повърхност привидно позволява на робота да ходи, сякаш няма момент.
Компании-производители като ASIMO (Honda) използват тази техника.
Как работи?
Движението на ходещ робот се планира с помощта на уравнението на ъгловия момент. Той гарантира, че генерираното движение на ставите гарантира динамична постурална стабилност на робота.
Тази стабилност се определя количествено от разстоянието на точката с нулев момент (изчислено от алгоритъма) в границите на предварително определен регион на стабилност.
Приложения
Точките с нулев момент могат да се използват като показател за оценка на стабилността срещу преобръщане на роботи като iRobot PackBot при навигация по рампи и препятствия.
5. Алгоритъм за управление с пропорционален интегрален диференциал (PID).
Пропорционално интегрално диференциално управление или PID, създава верига за обратна връзка на сензора за регулиране на настройките за механичните компоненти чрез изчисляване на стойността на грешката.
Тези алгоритми комбинират и трите основни коефициента, т.е. пропорция, интеграл и производна, така че да произвеждат управляващ сигнал.
Работи в реално време и прилага корекции, където е необходимо. Това може да се види в самостоятелно шофиране на коли.
Как работи?
ПИД регулаторът използва три контролни термина за пропорционалност, интегрално и производно влияние върху изхода си, за да приложи точно и оптимално управление.
Този контролер непрекъснато изчислява стойност на грешка като разлика между желана зададена точка и измерена променлива на процеса.
След това прилага корекция, за да минимизира грешката във времето чрез регулиране на контролната променлива.
Приложения
Този контролер може да управлява всеки процес, който има измерим изход, известна идеална стойност за този изход и вход към процеса, който ще повлияе на измеримия изход.
Контролерите се използват в индустрията за регулиране на температура, налягане, сила, тегло, позиция, скорост и всяка друга променлива, за която съществува измерване.
Заключение
И така, това бяха едни от най-често срещаните алгоритми, използвани в роботиката. Всички тези алгоритми са доста сложни със смес от физика, линейна алгебра и статистика, които се използват за картографиране на действия и движение.
Въпреки това, с напредването на технологиите алгоритмите за роботика ще се развият, за да станат още по-сложни. Роботите ще могат да изпълняват повече задачи и да мислят повече за себе си.
Ако харесате тази статия, абонирайте се за седмичника на HashDork актуализации чрез имейли, където споделяме последните новини за AI, ML, DL, програмиране и бъдещи технологии.
Оставете коментар