पाठ 1: एल्गोरिदम क्या है?
इस पाठ में, आप सीखेंगे कि एल्गोरिदम क्या है और VEXcode VR पायथन में एल्गोरिदम का उपयोग करने से आप अधिक विविध व्यवहारों वाली परियोजनाएं कैसे बना सकते हैं। एल्गोरिदम परियोजनाएं वीआर रोबोट को अपने वातावरण के अनुसार प्रतिक्रिया करने का निर्देश देती हैं, जो डायनेमिक कैसल क्रैशर चैलेंज को हल करने के लिए आवश्यक होगा।
सीखने के परिणाम
- पहचानें कि एल्गोरिदम अनुक्रम, चयन और पुनरावृत्ति (लूप) से बने होते हैं।
- पहचानें कि एल्गोरिदम निर्देशों का सटीक अनुक्रम है, जो वीआर रोबोट द्वारा की जाने वाली प्रक्रियाओं के लिए प्रोग्रामिंग भाषाओं का उपयोग करके कार्यान्वित किया जाता है।
एल्गोरिदम
एल्गोरिदम निर्देशों का सटीक अनुक्रम है, जिसे VR रोबोट द्वारा की जाने वाली प्रक्रियाओं के लिए VEXcode VR पायथन जैसी प्रोग्रामिंग भाषाओं का उपयोग करके क्रियान्वित किया जाता है।
किसी एल्गोरिथ्म के मूल तत्व अनुक्रम, चयन और पुनरावृत्ति हैं।
- अनुक्रम - वह क्रम जिसमें वांछित परिणाम प्राप्त करने के लिए किसी परियोजना में व्यवहार और आदेशों को संयोजित किया जाता है।
- चयन - किसी परियोजना में सशर्त कथनों का उपयोग। सशर्त कथन, जैसे ifया if elseकिसी परियोजना के परियोजना प्रवाह को प्रभावित करते हैं।
- पुनरावृत्ति - एल्गोरिदम अक्सर चरणों को एक निश्चित संख्या में निष्पादित करने के लिए, या एक निश्चित शर्त पूरी होने तक पुनरावृत्ति का उपयोग करते हैं। इसे "लूपिंग" के नाम से भी जाना जाता है। पुनरावृत्ति किसी व्यवहार को निर्दिष्ट संख्या में बार-बार दोहराकर या किसी शर्त के पूरा होने तक परियोजना प्रवाह को बदल सकती है।
यूनिट 8 चुनौती से यह उदाहरण परियोजना एक एल्गोरिथ्म का उदाहरण है। इसमें डिस्क मूवर चैलेंज को हल करने के लिए लूप्स, सेंसर डेटा और कमांड्स का संयोजन शामिल है, जिन्हें एक क्रम में रखा गया है।
def main():
for value in range(3):
for value in range(3):
# 1. डाउन आई सेंसर का उपयोग करके डिस्क पर ड्राइव करें
जब तक down_eye.near_object() न हो:
drivetrain.drive(FORWARD)
wait(5, MSEC)
drivetrain.stop()
# 2. डिस्क उठाओ
magnet.energize(BOOST)
# 3. दूरी सेंसर का उपयोग करके लक्ष्य तक ड्राइव करें
drivetrain.turn_to_heading(180, DEGREES)
while front_distance.get_distance(MM) > 200:
drivetrain.drive(FORWARD)
wait(5, MSEC)
drivetrain.stop()
# 4. लक्ष्य में डिस्क ड्रॉप करें
magnet.energize(DROP)
drivetrain.drive_for(REVERSE, 100, MM)
# 5. अगली डिस्क की ओर मुड़ें
drivetrain.turn_to_heading(0, DEGREES)
wait(5, MSEC)
# 6. मुड़ें और अगले लक्ष्य की ओर ड्राइव करें
drivetrain.turn_to_heading(90, DEGREES)
drivetrain.drive_for(FORWARD, 800, MM)
# 7. डिस्क पर जाएँ
drivetrain.turn_to_heading(0, DEGREES)
wait(5, MSEC)अनुक्रम
आदेशों को जिस प्रकार क्रमबद्ध और संयोजित किया जाता है, वह VR रोबोट के व्यवहार को निर्धारित करता है। इस उदाहरण में, डिस्क को स्थानांतरित करने के लिए आवश्यक व्यवहारों के प्रत्येक सेट को तीन बार निष्पादित किया जाता है, फिर VR रोबोट डिस्क के अगले सेट पर चला जाता है और व्यवहारों को तब तक दोहराता है, जब तक कि सभी डिस्क लक्ष्यों पर वापस नहीं आ जातीं। 
चयन
इस परियोजना में चयन भी शामिल है जो सेंसर स्थितियों के आधार पर परियोजना के उन भागों को निर्धारित करता है जो चलाए जाएंगे। सबसे पहले, डाउन आई सेंसर का उपयोग यह निर्धारित करने के लिए किया जाता है कि वीआर रोबोट कब किसी डिस्क के पास है, ताकि डिस्क को उठाया जा सके। इसके बाद, दूरी सेंसर का उपयोग यह निर्धारित करने के लिए किया जाता है कि वीआर रोबोट कब लक्ष्य के ऊपर है, ताकि डिस्क को गिराया जा सके। 
पहलेwhileलूप में, कौन से कमांड चलाए जाएंगे इसका चयन डाउन आई सेंसर द्वारा रिपोर्ट किए गए सेंसर मानों पर आधारित है।
- जब तक कोई वस्तु नहीं मिल जाती, वीआर रोबोट आगे बढ़ता रहेगा।
- जब किसी वस्तु का पता लग जाता है, तो वीआर रोबोट रुक जाएगा।
दूसरेwhile लूप में, कौन सा कमांड चलाया जाएगा इसका चयन दूरी सेंसर द्वारा रिपोर्ट किए गए सेंसर मानों पर आधारित है।
- यदि बताई गई दूरी 200 मिलीमीटर (मिमी) से अधिक है, तो वीआर रोबोट आगे की ओर बढ़ेगा।
- जब रिपोर्ट की गई दूरी 50 मिलीमीटर (मिमी) से कम होगी, तो वीआर रोबोट ड्राइविंग बंद कर देगा और इलेक्ट्रोमैग्नेट को सक्रिय करने के लिए परियोजना के अगले भाग में चला जाएगा।
यात्रा
यह परियोजना क्रियाओं को दोहराने और रिपोर्ट किए गए सेंसर मानों की बार-बार जांच करने के लिए पुनरावृत्ति, या “लूप” का उपयोग करती है। इस परियोजना में नेस्टेड लूप्स शामिल हैं - एक लूप ताकि वीआर रोबोट एक रंग की सभी तीन डिस्क एकत्र कर सके; और दूसरा लूप उस प्रक्रिया को दोहराने के लिए है ताकि प्लेग्राउंड पर सभी डिस्क एकत्र की जा सकें। 
यह एल्गोरिथ्म डिस्क मूवर चैलेंज को पूरा करने के लिए तीन डिस्क को तीन बार एकत्रित करने और वापस करने के लिए डिज़ाइन किया गया है। अनुक्रम, चयन और पुनरावृत्ति का उपयोग करके डिस्क को बार-बार एकत्रित करने और स्थानांतरित करने के लिए जो तर्क लागू किया जाता है, उसे अन्य चुनौतियों पर भी लागू किया जा सकता है, जैसे कि डायनामिक कैसल क्रैशर चैलेंज।