Завершым агляды ВПЗ гэтага года прыкладамі вольнага робасофту. Прычым да робасофту аднясём не толькі спецыяльнае ПЗ для робататэхнікі, але і наогул любое ПЗ, якое робіць за чалавека якую-небудзь працу - напрыклад, складае крыжаванкі. А таксама паспрабуем пазнаць, што ж усёткі сніцца андроідам.
Fedora Robotics
Можна быць упэўненым, што абавязкова наступяць часы, калі лепшым падарункам да Каляд і на Новы Год будзе не смартфон з АС "Андроід", а самы сапраўдны робат. І чым больш да распрацоўкі праграм для робататэхнікі падлучыцца распрацоўнікаў open source, тым хутчэй наступіць гэты час. Паскорыць працэс, магчыма, зможа нядаўні выпуск адмысловай зборкі Linux-сістэмы Fedora Robotics 20.
Зборкі - гэта такія асаблівыя версіі дыстрыбутыва Fedora, накіраваныя на асобны круг карыстачоў і, якія маюць адмысловы набор праграм, задач і налад. Такіх зборак Fedora існуе больш дзясятка - для вучобы, для музыкаў, зборкі для адмінаў і інш. І зборка Fedora Robotics - адна з іх.
"Fedora Робататэхніка" ўтрымоўвае шырокі спектр вольных робататэхнічных праграм, куды ўваходзіць адмысловае ПЗ, пачынальна з апаратных драйвераў для лазерных сканараў Hokuyo ці рукі-маніпулятара Katana, і сканчаючы асяроддзямі мадэлявання і сімулятарамі робатаў. Тут таксама прадстаўлены карысны софт для робатабудавання, як, напрыклад, бібліятэка кампутарнага зроку OpenCV, маўленчая сістэма Festival і інструментар для праграмавання мабільных робатаў MRPT. Зборка "Fedora Робататэхніка" арыентавана і на людзей, якія толькі адкрываюць для сябе свет робатаў, і на дасведчаных робататэхнікаў.
Усё гэта праграмнае забеспячэнне, вядома ж, існуе і ў звычайных рэпазітарах стандартных дыстрыбутываў Linux. Аднак у стандартных рэпазітарах можа не апынуцца асобных пакетаў, і карыстачу прыйдзецца іх кампіляваць з зыходнікаў. А ў зборцы Fedora Robotics усё ўжо сабрана, наладжана і падагнана адзін да аднаго.
Кажучы пра развіццё робататэхнікі, жадалася б падкрэсліць, што гэты працэс носіць характар не толькі навукова-даследчы, камерцыйны, але і спартовы. Сярод робататэхнікаў праводзяцца спаборніцтвы, як, напрыклад прайшоў надоечы міжнародны турнір па арыентаванні робатаў на мясцовасці DARPA Robotics Challenge. І менавіта для такога спартовага робатабудавання можа быць карыснай зборка "Fedora Робататэхніка".
Да прыкладу, у зборцы прысутнічае пакет прыкладанняў Player/Stage. (У стандартным рэпазітары Ubnuntu таксама прысутнічае гэты пакет пад назвай robot-player.)
Праект Player уяўляе сабою вольнае праграмнае забеспячэнне для даследаванняў у вобласці робататэхнікі і сэнсарных сістэм. Калі неабходна пратэставаць тое, як робат будзе арыентавацца ў вызначанай мясцовасці з выкарыстаннем камеры, інфрачырвонага далямера і іншых сэнсараў, то эмулятар Player/Stage - гэта як раз тое, што трэба. Большасць вядучых часопісаў аб робататэхніцы, рэгулярна публікуюць артыкулы пра ўжыванне Player/Stage.
Праект складаецца з трох асноўных кампанентаў: сервера Player і платформаў для сімуляцыі робатаў - 2D-сімулятара Stage і 3D-сімулятара Gazebo. Player - сеткавы сервер, які дае просты інтэрфейс для атрымання дадзеных з сэнсараў і кіравання маторамі робата праз сеткавыя IP-адрасы. Пры гэтым Player падтрымлівае вялікую колькасць розных апаратных драйвераў для робатаў, а таксама дазваляе дадаваць новыя, калі гэта неабходна. Stage - гэта сімулятар, які імітуе вялікую папуляцыю мабільных ботаў-робатаў у двухмерным асяроддзі, але з нізкай дакладнасцю прайгравання кожнага бота. І наадварот, 3D-платформа Gazebo сімулюе як невялікую папуляцыю прылад, так і пэўныя адзінкавыя робаты ў 3D-асяроддзі.
У "Fedora Robotics" таксама ўваходзіць самы сапраўдны спартовы сімулятар робатаў - RoboCup Soccer Simulator (RCSS). Гэта праграма з'яўляецца праграмнай платформай для лігі Simulation штогадовага футбольнага чэмпіянату праграмных гуманоідных робатаў RoboCup Soccer. У рамках лігі Simulation змагаюцца не рэальныя, а віртуальныя боты. Для ўяўлення пра гэту лігу лепш паглядзець урывак матчу такіх праграмных робатаў.
Платформа RCSS створана на аснове асяроддзя мадэлявання мульціагентнай сімуляцыі SimSpark. Таксама як і для Player/Stage, для RCSS маюцца дзве асобныя версіі гэтага асяроддзя мадэлявання: версіі 2D і 3D. 2D-версія забяспечвае ўмовы для вывучэння стратэгіі высокага ўзроўня гульні ў футбол, хаваючы дэталізацыю гульцоў робатаў. А 3D-сімулятар RCSS выводзіць значна больш дэталёвыя паводзіны асобных робатаў-футбалістаў.
RCSS няма ў стандартным рэпазітару Ubuntu, і прыкладанне неабходна збіраць уручную, што працаёмка. А вось Fedora Robotics дае магчымасць атрымаць платформу ўжо ў гатовым выглядзе для трэніровак і спаборніцтваў. Усе праграмы, якія ўваходзяць у склад Fedora Robotics бясплатныя.
Klest-crossword
Гэта стэрэатып, навязаны забаўляльным кінематографам, што робаты - гэта абавязкова штучны розум. Робат - гэта ў першую чаргу рабацяга, які робіць за людзей якую-небудзь працу. І нас даўно ўжо атачылі робаты, пачынальна з прамысловых, і сканчаючы персанальнымі кампутарамі, якія таксама часта робяць за людзей іх працу. Напрыклад, кампутар можа ўжо генераваць розны твповы кантэнт: пісаць навінавыя нататкі, фінансавыя справаздачы і аналітычныя матэрыялы ў розных сферах, пачынальна ад біржы і спорту, і сканчаючы нерухомасцю і палітыкай. Таксама кампутары ўжо спрабуюць складаць музыку замест кампазітараў. І хутка нават для паэтаў стане рэальнасцю мара "ўкалываюць робаты, шчаслівы чалавек".
Ёсць такі выгляд кантэнту - крыжаванкі, стварэнне якога таксама даўно па сілах кампутару. Прыкладам гэтаму можна назваць вольную і бясплатную праграму Klest-crossword, створаную Дзянісам Флегонтавым.
Klest-crossword - прыкладанне для прафесійнага складання, рэдагавання і, адпаведна, для разгадвання амерыканскіх і класічных крыжаванак. Праграма мае прылады для стварэння крыжаванкі і ўтрымоўвае слоўнік на 31 000 рускіх слоў і слоўнік на 41 000 ангельскіх слоў. Для разгадвання ў прыкладанне ўключана некалькі сот крыжаванак на рускай і ангельскай мове.
Асноўная фішка праграмы - стварэнне крыжаванкі ў аўтаматычным рэжыме. Для гэтага ўсяго толькі трэба абраць шаблон ("Сэрвіс - Шаблон") і націснуць кнопку "Скласці" на панэлі прылад. Будзе хутка створана крыжаванка на аснове наяўнай у праграме базы слоў. Праграма мае магчымасць аўтаматычнага экспарту, які дазваляе стварыць, па словах аўтара праграмы, 1000 крыжаванак за 30 хвілін.
Праграма дазваляе ствараць крыжаванкі і ў ручным рэжыме аж да ручнога малявання сеткі слоў. Сетка можа быць хутка намалявана, як алоўкам. Гэтак жа ў крыжаванцы можна задаць неабходны шрыфт. Праз меню "Сэрвіс - Прагляд слоўніка" ёсць магчымасць працы са слоўнікамі для дадання і выдаленні слоў.
Klest-crossword падтрымлівае экспарт крыжаванкі ў розныя фарматы файлаў: RTF, PDF, PostScript, HTML, Across Lite, JPG, JPEG, TIFF, BMP, XPM, PNG, XBM, PPM, OpenKlest
Добрай якасцю праграмы з'яўляецца падрабязнае ўбудаванае кіраўніцтва. Мова інтэрфейсу: ангельская і руская. Таксама Klest-crossword з'яўляецца кросплатформавым прыкладаннем: падтрымліваюцца Windows, MacOSX, GNU/Linux, FreeBSD, iOS, Android, Haiku. Усталявальны архіў праграмы 20-40 мегабайт у залежнасці ад АС. Мяркуючы па логах выпускаў, аўтар не закінуў свой праект, і сёлета праграма атрымала некалькі абнаўленняў. Бягучая версія - Klest-crossword 1.2.3.
Аднак вялікім недахопам праграмы з'яўляецца нестабільнасць працы. Праграма часта раптам зачыняецца - асабліва ў ручным рэжыме рэдагавання. У версіі для Windows мне стварыць крыжаванку практычна не атрымалася з-за сталых вылетаў. У версіі для Linux праграма працавала больш надзейна.
Калядныя сны андроідаў
Ці лічаць робаты электраавечак, каб заснуць? І ці бачаць андроіды каляровыя сны? Адказ на гэтыя пытанні дадатны, калі ўлічыць, што існуе праект Electric Sheep па генерацыі абстрактных кампутарных скрынсэйвераў. Бо з пункту гледжання кампутара, скрынсэйвер - гэта сон персаналкі, калі кампутар адпачывае ў перапынку паміж працай.
Electric Sheep - гэта праграма-кліент, а таксама размеркаваная сетка кампутараў, кожны з якіх удзельнічае ў генерацыі абстрактных малюнкаў. Калі кампутар карыстача вольны, праграма запускаецца як стандартны сістэмны скрынсэйвер, загружаючы з Сеткі і дэманструючы гатовыя анімацыі. Таксама яна злучаецца з кіравальным серверам і атрымлівае інструкцыі па генерацыі малюнкаў. Пасля таго, як малюнак згенераваны, ён адпраўляецца на сервер, на якім з атрыманых малюнкаў ствараюцца новыя абстрактныя анімацыі. Малюнкі ў сетцы Electric Sheep генеруюцца на аснове эвалюцыйнай мадэлі - у апрацоўку ідуць толькі тыя малюнкі, якія спадабаліся большасці карыстачоў. На аснове сумеснай працы ўжо згенеравана мноства зачаравальных скрынсэйвераў і відэаролікаў.
Electric Sheep - праект не малады, аднак прыкметы жыцця ўсё яшчэ дэманструе: хоць версіі кліента для Windows і Linux старыя, але распрацоўнікі MacOSX і iOS усё яшчэ рэгулярна абнаўляюць версіі, у тым ліку і платныя, для сваіх платформаў. Сам кліент Electric Sheep распаўсюджваецца і ў адкрытым зыходным кодзе па ліцэнзіі GPL.
Міхаіл АСТАПЧЫК
Горячие темы