რობოტიკა არის მეცნიერებისა და ტექნოლოგიების უნიკალური ნაზავი, რომელიც აწარმოებს მანქანებს, რომლებიც ასახავს ადამიანის ქმედებებს.
2000-იანი წლების დასაწყისში რობოტების 90% იმყოფებოდა მანქანების მწარმოებელ ქარხნებში, რომლებიც ცვლიდნენ ადამიანებს განმეორებითი ამოცანებისთვის. ახლა რობოტებს შეუძლიათ სახლების ვაკუუმი და რესტორნებშიც კი მომსახურება.
რობოტი ჩვეულებრივ შედგება სამი ტიპის კომპონენტისგან; მექანიკური სხეული; ელექტრო ჩონჩხი და ბოლოს კოდით შექმნილი ტვინი.
ეს კომპონენტები საშუალებას აძლევს რობოტს შეაგროვოს მონაცემები (ხშირად სენსორებიდან), მიიღოს გადაწყვეტილებები დაპროგრამებული ლოგიკის საშუალებით, რათა მოერგოს ქცევას და დაასრულოს დავალებები.
რობოტებს შეიძლება ჰქონდეთ სამი ტიპის პროგრამა; დისტანციური მართვა (RC), ხელოვნური ინტელექტი (AI), ან ჰიბრიდული.
RC პროგრამები მოითხოვს ადამიანის ჩარევას, რომელსაც შეუძლია რობოტს მისცეს დაწყების და/ან გაჩერების სიგნალი კოდის შესრულებისთვის. პროგრამები შედგება სხვადასხვა ტიპის ალგორითმებისგან, თითოეულს განსხვავებული ფუნქცია აქვს.
რა არის ალგორითმი?
ალგორითმი არის კოდის ხაზების სერია, რომელიც რობოტს შეუძლია გამოიყენოს გარკვეული ინსტრუქციების შესასრულებლად. ის თარგმნის დეველოპერის იდეებს რობოტებისთვის გასაგებ ენაზე.
ალგორითმები შეიძლება გამოიხატოს მრავალი სახის აღნიშვნით, მათ შორის ფსევდოკოდით, flowcharts, პროგრამირების ენები, ან საკონტროლო ცხრილები.
ამ სტატიაში განვიხილავთ ამ პროგრამებში გამოყენებული ალგორითმის რამდენიმე გავრცელებულ ტიპს.
რობოტიკაში გამოყენებული ალგორითმების ტიპები
1. ნებისმიერ დროს A* ალგორითმი
A* ალგორითმი არის ბილიკის ძიების ალგორითმი, რომელიც გამოიყენება ორ წერტილს შორის ყველაზე ოპტიმალური გზის მოსაძებნად, ანუ ყველაზე მცირე ღირებულებით.
ნებისმიერ დროს A* ალგორითმს აქვს მოქნილი დროის ღირებულება და შეუძლია დააბრუნოს უმოკლესი გზა, მაშინაც კი, თუ ის შეწყვეტილია, რადგან ის ჯერ არაოპტიმალური გადაწყვეტის გენერირებას ახდენს და შემდეგ ოპტიმიზაციას უკეთებს.
ეს საშუალებას იძლევა უფრო სწრაფად მიიღოთ გადაწყვეტილებები, რადგან რობოტს შეუძლია დაეყრდნოს წინა გამოთვლებს ნულიდან დაწყების ნაცვლად.
როგორ მუშაობს?
ის ამას აკეთებს „ხის“ ფორმირებით, რომელიც ვრცელდება საწყისი კვანძიდან, სანამ არ მოხდება შეწყვეტის კრიტერიუმების ამოქმედება, რაც ნიშნავს, რომ ხელმისაწვდომია ნაკლებად ძვირი გზა.
2D ბადე მზადდება დაბრკოლებებით და საწყისი უჯრა და სამიზნე უჯრედები წვეტიანია.
ალგორითმი განსაზღვრავს კვანძის "მნიშვნელობას" f-ით, რომელიც არის პარამეტრების ჯამი g (საწყისი კვანძიდან მოცემულ კვანძში გადაადგილების ღირებულება) და h (განსახილველი კვანძიდან სამიზნე კვანძში გადაადგილების ღირებულება).
პროგრამები
ბევრი თამაში და ვებ რუკა იყენებს ამ ალგორითმს უმოკლესი გზის ეფექტურად მოსაძებნად. ის ასევე შეიძლება გამოყენებულ იქნას მობილური რობოტებისთვის.
თქვენ ასევე შეგიძლიათ გადაჭრათ ისეთი რთული პრობლემები, როგორიცაა ნიუტონ-რაფსონი გამეორება გამოიყენება რიცხვის კვადრატული ფესვის მოსაძებნად.
იგი ასევე გამოიყენება ტრაექტორიის ამოცანებში სივრცეში ობიექტის მოძრაობისა და შეჯახების პროგნოზირებისთვის.
2. D* ალგორითმი
D*, Focused D* და D* Lite არის დამატებითი საძიებო ალგორითმები ორ წერტილს შორის უმოკლეს ბილიკის საპოვნელად.
თუმცა, ისინი წარმოადგენენ A* ალგორითმებისა და ახალი აღმოჩენების ნაზავს, რაც მათ საშუალებას აძლევს დაამატონ ინფორმაცია თავიანთ რუქებზე უცნობი დაბრკოლებებისთვის.
შემდეგ მათ შეუძლიათ მარშრუტის ხელახალი გამოთვლა ახალი ინფორმაციის საფუძველზე, ისევე როგორც Mars Rover.
როგორ მუშაობს?
D* ალგორითმის მუშაობა მსგავსია A*-ის, ალგორითმი ჯერ განსაზღვრავს f, h-ს და ქმნის ღია და დახურულ სიას.
ამის შემდეგ, D* ალგორითმი განსაზღვრავს მიმდინარე კვანძის g მნიშვნელობას მისი მეზობელი კვანძების g მნიშვნელობის გამოყენებით.
ყოველი მეზობელი კვანძი აკეთებს გამოცნობას მიმდინარე g მნიშვნელობის შესახებ და უმოკლესი g მნიშვნელობა ადაპტირებულია როგორც ახალი g მნიშვნელობა.
პროგრამები
D* და მისი ვარიანტები ფართოდ გამოიყენება მობილური რობოტისთვის და ავტონომიური მანქანა ნავიგაცია.
ასეთი სანავიგაციო სისტემები მოიცავს პროტოტიპის სისტემას, რომელიც ტესტირებულია მარსის როვერებზე Opportunity და Spirit-ზე და სანავიგაციო სისტემა, რომელმაც მოიგო DARPA Urban Challenge.
3. PRM ალგორითმი
PRM, ან სავარაუდო საგზაო რუკა, არის შესაძლო ბილიკების ქსელური გრაფიკი, რომელიც დაფუძნებულია მოცემულ რუკაზე თავისუფალ და დაკავებულ სივრცეებზე.
ისინი გამოიყენება დაგეგმვის კომპლექსურ სისტემებში და ასევე დაბრკოლებების ირგვლივ იაფი გზების მოსაძებნად.
PRM-ები იყენებენ წერტილების შემთხვევით ნიმუშს თავიანთ რუკაზე, სადაც რობოტის მოწყობილობას შეუძლია გადაადგილება და შემდეგ გამოითვლება უმოკლესი გზა.
როგორ მუშაობს?
PRM შედგება მშენებლობისა და შეკითხვის ეტაპისგან.
პირველ ეტაპზე, საგზაო რუკა არის გრაფიკული, რომელიც ასახავს შესაძლო მოძრაობებს გარემოში. შემდეგ იქმნება შემთხვევითი კონფიგურაცია და უკავშირდება ზოგიერთ მეზობელს.
საწყისი და მიზნის კონფიგურაციები დაკავშირებულია გრაფიკთან შეკითხვის ფაზაში. შემდეგ გზა მიიღება ა დიკსტრას უმოკლესი გზა შეკითხვის.
პროგრამები
PRM გამოიყენება ლოკალურ დამგეგმავებში, სადაც ალგორითმი ითვლის სწორი ხაზის გზას ორ წერტილს შორის, კერძოდ საწყის და მიზნის წერტილებს შორის.
ალგორითმი ასევე შეიძლება გამოყენებულ იქნას ბილიკის დაგეგმვისა და შეჯახების გამოვლენის აპლიკაციების გასაუმჯობესებლად.
4. ნულოვანი მომენტის წერტილის (ZMP) ალგორითმი
ნულოვანი მომენტის წერტილი (ZMP ტექნიკა) არის ალგორითმი, რომელსაც იყენებენ რობოტები, რათა შეინარჩუნონ მთლიანი ინერცია იატაკის რეაქციის ძალის საწინააღმდეგოდ.
ეს ალგორითმი იყენებს ZMP-ის გამოთვლის კონცეფციას და იყენებს მას ისე, რომ დააბალანსოს ორფეხა რობოტები. ამ ალგორითმის გამოყენება გლუვ იატაკზე ზედაპირზე, როგორც ჩანს, რობოტს საშუალებას აძლევს ისე იაროს თითქოს მომენტი არ იყოს.
მწარმოებელი კომპანიები, როგორიცაა ASIMO (Honda) იყენებენ ამ ტექნიკას.
როგორ მუშაობს?
მოსიარულე რობოტის მოძრაობა დაგეგმილია კუთხური იმპულსის განტოლების გამოყენებით. ის დარწმუნდება, რომ წარმოქმნილი ერთობლივი მოძრაობა უზრუნველყოფს რობოტის დინამიურ პოზურ სტაბილურობას.
ეს სტაბილურობა რაოდენობრივად განისაზღვრება ნულოვანი მომენტის წერტილის მანძილით (გამოითვლება ალგორითმით) წინასწარ განსაზღვრული მდგრადობის რეგიონის საზღვრებში.
პროგრამები
ნულოვანი მომენტის წერტილები შეიძლება გამოყენებულ იქნას, როგორც მეტრიკა, რათა შეფასდეს სტაბილურობა რობოტების გადახრის წინააღმდეგ, როგორიცაა iRobot PackBot, პანდუსებზე და დაბრკოლებებზე ნავიგაციისას.
5. პროპორციული ინტეგრალური დიფერენციალური (PID) კონტროლის ალგორითმი
პროპორციული ინტეგრალური დიფერენციალური კონტროლი ან PID, ქმნის სენსორის უკუკავშირის ციკლს მექანიკური კომპონენტების პარამეტრების დასარეგულირებლად შეცდომის მნიშვნელობის გაანგარიშებით.
ეს ალგორითმები აერთიანებს სამივე ძირითად კოეფიციენტს, ანუ პროპორციას, ინტეგრალს და წარმოებულს ისე, რომ იგი წარმოქმნის საკონტროლო სიგნალს.
ის მუშაობს რეალურ დროში და საჭიროების შემთხვევაში მიმართავს შესწორებებს. ეს ჩანს თვითმმართველობის მამოძრავებელი მანქანები.
როგორ მუშაობს?
ზუსტი და ოპტიმალური კონტროლის გამოსაყენებლად PID კონტროლერი იყენებს პროპორციულობის, ინტეგრალური და წარმოებული ზემოქმედების სამ საკონტროლო ტერმინს მის გამომუშავებაზე.
ეს კონტროლერი განუწყვეტლივ ითვლის შეცდომის მნიშვნელობას, როგორც სხვაობას სასურველ დანიშნულებასა და გაზომილ პროცესის ცვლადს შორის.
შემდეგ ის მიმართავს შესწორებას, რათა დროთა განმავლობაში შეცდომის მინიმიზაცია მოახდინოს საკონტროლო ცვლადის კორექტირებით.
პროგრამები
ამ კონტროლერს შეუძლია აკონტროლოს ნებისმიერი პროცესი, რომელსაც აქვს გაზომვადი გამომავალი, ცნობილი იდეალური მნიშვნელობა ამ გამოსავლისთვის და პროცესის შეყვანა, რომელიც გავლენას მოახდენს გაზომვად გამომავალზე.
კონტროლერები გამოიყენება ინდუსტრიაში ტემპერატურის, წნევის, ძალის, წონის, პოზიციის, სიჩქარის და ნებისმიერი სხვა ცვლადის დასარეგულირებლად, რომლის გაზომვაც არსებობს.
დასკვნა
ასე რომ, ეს იყო ზოგიერთი ყველაზე გავრცელებული ალგორითმი, რომელიც გამოიყენება რობოტიკაში. ყველა ეს ალგორითმი საკმაოდ რთულია ფიზიკური, წრფივი ალგებრისა და სტატისტიკის ნაზავით, რომელიც გამოიყენება მოქმედებებისა და მოძრაობის გამოსათვლელად.
თუმცა, ტექნოლოგიის წინსვლისას რობოტიკის ალგორითმები კიდევ უფრო რთული გახდება. რობოტები შეძლებენ მეტი დავალების შესრულებას და მეტის ფიქრს საკუთარ თავზე.
თუ მოგეწონათ ეს სტატია, გამოიწერეთ HashDork's Weekly განახლებები ელექტრონული ფოსტით, სადაც ჩვენ ვიზიარებთ უახლეს AI, ML, DL, პროგრამირება და მომავლის ტექნოლოგიების სიახლეებს.
დატოვე პასუხი