अल्फादेव फास्ट एसक्यू रैटलिंग एल्गोरिदम का पता लगाता है

प्रभाव

प्रबुद्ध
लेखक

डैनियल जे मैनकोविट्ज़ और एंड्रिया मिस्सी

नए एल्गोरिदम कंप्यूटिंग की नींव को बदल देंगे

डिजिटल सोसाइटी गणना और ऊर्जा के उपयोग की बढ़ती मांग का नेतृत्व कर रहा है। पिछले पांच दशकों से, हमने गति बनाए रखने के लिए हार्डवेयर सुधारों पर भरोसा किया है। लेकिन माइक्रोचिप्स अपनी भौतिक सीमाओं तक पहुंचते हैं, यह उस कोड को बेहतर बनाना महत्वपूर्ण है जो कंप्यूटिंग को अधिक शक्तिशाली और टिकाऊ बनाने के लिए उन पर चल रहा है। यह विशेष रूप से एल्गोरिदम के लिए महत्वपूर्ण है जो दिन में ट्रिलियन बार -टाइम कोड बनाते हैं।

आज हमारे पेपर में प्रकाशित प्रकृतिहम एक अल्फादेव, एक कृत्रिम बुद्धिमत्ता (एआई) प्रणाली का परिचय देते हैं जो एल्गोरिदम को खोजने के लिए सुदृढीकरण शिक्षा का उपयोग करता है।

Alphadev ने रेटिंग s -ing के लिए एक त्वरित एल्गोरिथ्म को उजागर किया, जो डेटा ऑर्डर ऑर्डर करने की एक विधि है। अरबों लोग इसे समझे बिना हर दिन इन एल्गोरिदम का उपयोग करते हैं। वे कंप्यूटर से सब कुछ पर विचार करते हैं कि कैसे डेटा को Neline खोज परिणामों और सामाजिक पोस्ट से कंप्यूटर और फोन तक संसाधित किया जाता है। हम AI का उपयोग करके बेहतर एल्गोरिदम का उत्पादन करके कंप्यूटर को कैसे प्रोग्राम करते हैं और हम अपने डिजिटल समाज के सभी पहलुओं को कैसे प्रभावित करते हैं।

मुख्य C ++ लाइब्रेरी में हमारे नए S ++ पुस्तकालयों को सोर्स करके, दुनिया भर के लाखों डेवलपर्स और कंपनियां अब क्लाउड कंप्यूटिंग और शॉपिंग नेल शॉपिंग से चेन मैनेजमेंट की आपूर्ति के लिए उद्योगों में AI एप्लिकेशन पर इसका उपयोग करती हैं। यह एक दशक से अधिक समय तक रूटिंग लाइब्रेरी के इस हिस्से में पहला बदलाव है और इस लाइब्रेरी में सुदृढीकरण शिक्षा द्वारा डिज़ाइन किए गए एल्गोरिथ्म को पहली बार जोड़ा गया है। हम इसे एक समय में एक एल्गोरिथ्म के लिए वर्ल्ड कोड ऑप्टिमेट को पीटी करने के लिए एआई का उपयोग करने के लिए एक महत्वपूर्ण कदम के रूप में देखते हैं।

S -ing रूटिंग क्या है?

इसलिए ORT रेटिंग एक विशेष क्रम में कई वस्तुओं को व्यवस्थित करने की एक विधि है। उदाहरणों में तीन अक्षर वर्णमाला शामिल हैं, जिनमें पांच संख्याएँ सबसे बड़े से छोटे, या लाखों रिकॉर्ड के डेटाबेस के साथ व्यवस्थित हैं।

यह विधि पूरे इतिहास में विकसित हुई है। प्रारंभिक उदाहरणों में से एक दूसरी और तीसरी शताब्दी का है जब विद्वानों ने अलेक्जेंड्रिया के ग्रेट लाइब्रेरी की अलमारियों पर हजारों पुस्तकों पर अक्षर बनाया। औद्योगिक शिथिलता क्रांति के बाद, मशीनों की खोज जो लाल करने में मदद कर सकती है – सारणीकरण मशीनों ने पंच कार्ड पर जानकारी संग्रहीत की, जो संयुक्त राज्य अमेरिका में 1890 की जनगणना परिणामों को एकत्र करने के लिए उपयोग किए गए थे।

और 1950 के दशक में, वाणिज्यिक कंप्यूटरों के उदय के साथ, हमने प्रारंभिक कंप्यूटर ताक़त के विकास को देखा। आज, कई अलग -अलग सामग्रियों को तेजस्वी तकनीक और एल्गोरिदम हैं जो दुनिया भर में कोडबेस में बड़ी मात्रा में डेटा ऑनलाइन के साथ उपयोग किए जाते हैं।

सॉर्ट रैटलिंग एल्गोरिथ्म क्या करता है, इसकी तस्वीर। अनसोल्ड नंबरों की सीमा एल्गोरिथ्म का इनपुट है और इतने सारे रट नंबर आउटपुट हैं।

समकालीन एल्गोरिदम कंप्यूटर के बाड़ों के दशकों के अनुसंधान के लिए विकसित हुए। कोई और प्रोग्रामर। वे इतने कुशल हैं कि अधिक सुधार एक बड़ी चुनौती है, जो बिजली या अधिक कुशल गणितीय दृष्टिकोण को बचाने के लिए एक नया तरीका खोजने की कोशिश करने जैसा है। ये एल्गोरिदम एक कंप्यूटर विजन की नींव भी हैं, जो विश्वविद्यालयों में पढ़ाया जाता है।

नए एल्गोरिदम की तलाश में

अल्फादेव ने मौजूदा एल्गोरिदम को बेहतर बनाने के बजाय फास्ट एल्गोरिदम को उजागर किया, और यह देखना शुरू किया कि अधिकांश पुरुष कहां नहीं थे: कंप्यूटर असेंबली निर्देश।

विधानसभा निर्देशों का उपयोग कंप्यूटर के लिए कार्रवाई करने के लिए एक बाइनरी कोड बनाने के लिए किया जाता है। जब डेवलपर्स C ++ जैसी कोडिंग भाषाओं में लिखते हैं, जिसे उच्च-स्तरीय भाषाओं के रूप में जाना जाता है, तो कंप्यूटर को इन्हें ‘निम्न-स्तरीय’ विधानसभा निर्देशों में अनुवाद करना होगा।

हम मानते हैं कि इस निचले स्तर पर कई अपग्रेड मौजूद हैं जो उच्च-स्तरीय कोडिंग भाषा में खोजना मुश्किल हो सकता है। कंप्यूटर स्टोरेज और प्रदर्शन इस स्तर पर अधिक लचीले हैं, जिसका अर्थ है कि महत्वपूर्ण अधिक संभावित सुधार हैं जो ऊर्जा की गति और खपत को प्रभावित कर सकते हैं।

कोड आमतौर पर C ++ जैसी उच्च -स्तरीय प्रोग्रामिंग भाषा में लिखा जाता है। इसके बाद एक कम-स्तरीय सीपीयू निर्देशों में अनुवाद किया जाता है, जिसे एक संकलक का उपयोग करके विधानसभा निर्देश कहा जाता है। असेंबलर तब विधानसभा निर्देशों को एक निष्पादन योग्य मशीन कोड में परिवर्तित करता है जिसे कंप्यूटर चला सकता है।

चित्रा: C ++ एल्गोरिथ्म का एक उदाहरण जो दो तत्वों तक होता है।
चित्र बी: कोड के अनुरूप विधानसभा प्रस्तुति।

खेल के साथ सबसे अच्छा एल्गोरिदम ढूंढना

अल्फादेव अल्फाज़ेरो के आधार पर, हमारे सुदृढीकरण सीखने का मॉडल जिसने गो, शतरंज और शोगी जैसे खेलों में विश्व चैंपियन को हराया। अल्फादेव के साथ, हम दिखाते हैं कि कैसे इन मॉडल गेम को जननांग चुनौतियों और सिमुलेशन से वास्तविक दुनिया के अनुप्रयोगों में स्थानांतरित किया जा सकता है।

नए एल्गोरिदम को उजागर करने के लिए अल्फादेव को प्रशिक्षित करने के लिए, हमने एक एकल खिलाड़ी ‘असेंबली गेम’ में तेजस्वी को बदल दिया। प्रत्येक मोड़ पर, Alphadev एल्गोरिथ्म और केंद्रीय प्रसंस्करण इकाई (CPU) में निहित जानकारी की निगरानी करता है। फिर यह एल्गोरिथ्म जोड़ने के लिए एक निर्देश का चयन करके एक कदम निभाता है।

असेंबली गेम बेहद कठिन है क्योंकि अल्फादेव को प्रभावी रूप से एल्गोरिथ्म का पता लगाने के लिए निर्देशों के संभावित संयोजनों की भारी संख्या द्वारा खोजा जाना है जो कि सॉर्ट कर सकते हैं, और वर्तमान सबसे अच्छा से अधिक तेज है। निर्देशों के संभावित संयोजनों की संख्या ब्रह्मांड में कणों की संख्या या शतरंज (10120 गेम) और गो (10700 गेम) गेम के संभावित संयोजनों की संख्या के समान है। और एक, गलत कदम पूरे एल्गोरिथ्म को अमान्य कर सकता है।

चित्रा: विधानसभा खेल। प्लेयर, अल्फादेव, इनपुट के रूप में सिस्टम सेंट की स्थिति प्राप्त करता है और अब तक उत्पादित एल्गोरिथ्म को जोड़ने के लिए विधानसभा निर्देश का चयन करके एक कदम खेलता है।
चित्र बी: पुरस्कार की गिनती करें। प्रत्येक चाल के बाद, परीक्षण इनपुट अनुक्रम उत्पन्न एल्गोरिथ्म को दिए जाते हैं – SO ORT RT 3 के लिए, इन तीन तत्वों के अनुक्रमों के सभी संयोजनों के अनुरूप। एल्गोरिथ्म तब आउटपुट का उत्पादन करता है, जिसकी तुलना एस इनगिंग के मामले में ऑर्डर्ड रगड़ अनुक्रमों के अपेक्षित आउटपुट से की जाती है। एजेंट को एल्गोरिथ्म की शुद्धता और देरी के आधार पर पुरस्कृत किया जाता है।

जैसा कि एल्गोरिथ्म बनाया गया है, एक समय में एक निर्देश, अल्फादेव ने जांच की कि यह अपेक्षित परिणामों के साथ एल्गोरिथ्म के आउटपुट की तुलना करके उपयुक्त है। एल्गोरिदम से निपटने के लिए, इसका मतलब है कि अनियंत्रित संख्याएं बाहर निकलती हैं और ठीक से ऑर्डर्ड लिपटे नंबरों से बाहर आती हैं। हम अल्फादेव को ठीक से संख्याओं की संख्या के लिए पुरस्कृत करते हैं और इसे कितनी जल्दी और प्रभावी ढंग से करते हैं। अल्फादेव सही, त्वरित कार्यक्रम पाकर खेल जीतता है।

एक त्वरित एस आईएनजी रेटिंग एल्गोरिदम की तलाश में

अल्फादेव ने नए सिंग रूटिंग एल्गोरिदम को उजागर किया, जिसने LLVM libies ++ s in -english रेटिंग लाइब्रेरी में सुधार किया, जो कि छोटे अनुक्रमों के लिए 70% तेज था और 250,000 से अधिक तत्वों के अनुक्रमों के लिए लगभग 1.7% तेज था।

हमने तीन से पांच तत्वों के छोटे अनुक्रमों के लिए रेटिंग एल्गोरिदम में सुधार करने पर ध्यान केंद्रित किया। इन एल्गोरिदम का सबसे अधिक उपयोग किया जाता है क्योंकि उन्हें अक्सर बड़े -बड़े रेटिंग कार्यों के हिस्से के रूप में कहा जाता है। इन एल्गोरिदम में सुधार करने से किसी भी संख्या में आइटम को रट करने के लिए समग्र स्पीडअप हो सकता है।

नए रैटलिंग एल्गोरिथ्म के लिए लोगों को अधिक उपयोगी बनाने के लिए, हमने एल्गोरिदम को उलट दिया और इसे C ++ में अनुवादित किया, जो डेवलपर्स का उपयोग करने वाले सबसे लोकप्रिय कोडिंग भाषाओं में से एक है। ये एल्गोरिदम अब LLVM libies ++ स्टैंडर्ड्स इन रूटिंग लाइब्रेरी में उपलब्ध हैं, जिसका उपयोग दुनिया भर के लाखों डेवलपर्स और कंपनियों द्वारा किया जाता है।

उपन्यास दृष्टिकोण खोजना

अल्फादेव को न केवल फास्ट एल्गोरिदम, बल्कि उपन्यास दृष्टिकोण भी उजागर किया गया था। इसके सॉर्ट रूटिंग एल्गोरिदम में निर्देशों के नए अनुक्रम होते हैं जो हर बार एक ही निर्देश को बचाते हैं। यह एक बड़ा प्रभाव हो सकता है क्योंकि इन एल्गोरिदम का उपयोग दिन में लाखों बार किया जाता है।

हम इसे ‘अल्फादेव स्वैप और कॉपी पी मूव्स’ कहते हैं। इस उपन्यास का दृष्टिकोण अल्फागो के ‘मूव 37’ की याद दिलाता है – एक प्रतिकूल नाटक जिसने वॉचमैन को चौंका दिया और दिग्गज गो प्लेयर की हार का नेतृत्व किया। स्वैप और कॉपी वॉक मूव के साथ, अल्फादेव आइटम कनेक्ट करने के लिए एक गलती जैसी वस्तुओं को अनदेखा करते हैं, लेकिन वास्तव में यह एक शॉर्टकट है। यह अल्फादेव के मूल समाधानों को उजागर करने की क्षमता को दर्शाता है और एल्गोरिदम को बेहतर बनाने के तरीके के बारे में सोचने के तरीके को चुनौती देता है।

बाएं: मीन (ए, बी, सी) के साथ मूल कार्यान्वयन।
सही: ALPHADEV SWAP MOVE – ALPHADEV को पता चला कि आपको केवल मीन (A, B) की आवश्यकता है।

बाएं: मैक्स (बी, मीन (ए, सी, डी) के साथ मूल कार्यान्वयन आठ तत्वों को बांधने के लिए एक बड़े प्रकार के तेजस्वी एल्गोरिथ्म में उपयोग किया जाता है।
सही: अल्फादेव को पता चलता है कि कॉपी मूव का उपयोग करते समय केवल मैक्स (बी, मिनट (ए, सी)) की आवश्यकता होती है।

डेटा संरचनाओं में हैशिंग से लेकर हैशिंग तक

फास्ट -इंग रैटलिंग एल्गोरिदम का पता लगाने के बाद, हमने परीक्षण किया कि अल्फादेव एक अलग कंप्यूटर वॉयस हो सकता है। एल्गोरिथ्म या नहीं: हैसेशन।

हैशिंग कम्प्यूटिंग, भंडारण और संपीड़ित डेटा में मूल एल्गोरिथ्म है। एक लाइब्रेरी की तरह जो एक विशेष पुस्तक को खोजने के लिए एक वर्गीकरण प्रणाली का उपयोग करता है, हसेशन एल्गोरिदम उपयोगकर्ताओं को यह पता लगाने में मदद करता है कि वे क्या देख रहे हैं और वास्तव में वे इसे कहां पाते हैं। ये एल्गोरिदम एक विशिष्ट कुंजी (जैसे उपयोगकर्ता नाम “जेन डॉ”) के लिए डेटा लेते हैं और संकोच करेंगे – एक प्रक्रिया जहां एक प्रक्रिया जहां कच्चे डेटा को एक अद्वितीय स्ट्रिंग (जैसे 1234Ghfty) में बदल दिया जाता है। इस हैश का उपयोग कंप्यूटर द्वारा सभी डेटा का पता लगाने के बजाय जल्दी से संबंधित डेटा प्राप्त करने के लिए किया जाता है।

हमने एक त्वरित एल्गोरिथ्म की कोशिश करने और खोजने के लिए डेटा संरचनाओं में हैसेशन के लिए सबसे अधिक इस्तेमाल किए जाने वाले एल्गोरिदम के लिए अल्फादेव को लागू किया। और जब हमने इसे हैशिंग फ़ंक्शन की 9-16 बाइट्स रेंज में लागू किया, तो अल्फादेव को एल्गोरिथ्म का 30% मिला।

इस वर्ष, अल्फादेव के नए हैशिंग एल्गोरिथ्म को दुनिया भर के लाखों डेवलपर्स के लिए उपलब्ध खुले स्रोत के लिए पेश किया गया था, और हम अनुमान लगाते हैं कि उस दिन में ट्रिलियन बार का उपयोग किया जाता है।

एक समय में एक एल्गोरिथ्म में, दुनिया के कोड को इष्टतम करें

अल्फादेव ने दुनिया भर के डेवलपर्स द्वारा उपयोग किए जाने वाले एस-आईएनजी रेटिंग और हैसेशन एल्गोरिदम का उपयोग करते हुए, इष्टतम के ऑप्टिम के साथ, इष्टतम ऑप्टिम के साथ, पॉटामाइज़िंग और लॉन्च करने के साथ, वास्तविक दुनिया के प्रभाव के साथ नए एल्गोरिदम को सामान्य करने और खोजने की अपनी क्षमता दिखाई है। हमने अल्फादेव को आम -अपसूच के साथ एआई टूल विकसित करने की दिशा में एक कदम के रूप में देखा है जो पूरे कंप्यूटिंग पारिस्थितिकी तंत्र को अनुकूलित करने और अन्य समस्याओं को हल करने में मदद कर सकता है जो समाज को लाभान्वित करेंगे।

जबकि Izing निम्न-स्तरीय विधानसभा निर्देशों के अंतरिक्ष में izing के लिए बहुत शक्तिशाली है, एल्गोरिथ्म बढ़ने के साथ-साथ सीमाएं हैं, और हम वर्तमान में C ++ जैसी उच्च-स्तरीय भाषाओं में एल्गोरिदम को निर्देशित करने के लिए अल्फादेव की क्षमता की तलाश कर रहे हैं जो अधिक हैं। डेवलपर्स के लिए उपयोगी होगा।

अल्फादेव को खोजें, जैसे कि स्वैप और कॉपी मूव, न केवल यह दिखाते हैं कि यह एल्गोरिदम में सुधार कर सकता है, बल्कि नए समाधान भी पा सकता है। हमें उम्मीद है कि ये खोजें शोधकर्ताओं और डेवलपर्स को समान तकनीक और दृष्टिकोण बनाने के लिए प्रेरित करती हैं जो अधिक शक्तिशाली और टिकाऊ कंप्यूटिंग पारिस्थितिक तंत्र बनाने के लिए बुनियादी एल्गोरिदम को पीटी कर सकते हैं।

कंप्यूटिंग इकोसिस्टम के बारे में अधिक जानें izing ptimizing:

पावती

जुनीता बवागन, एयरल बीयर, गैब्रिएला पर्ल, डंकन स्मिथ, केटी मा ए कटकानी, कैथरीन सिगार, मैक्स बार्नेट, रॉस वेस्ट, डोमिनिक बार्लो, होली डॉब्सन, डोमनल मालोन उनकी मदद करने के लिए। यह काम डैनियल जे द्वारा किया गया था। मैनकोविट्ज़, आंद्रेया मिची, एंटोन ज़र्नोव, मार्को गैल्मी, मार्को सेलवी, कॉस्मिन पडुरु, अडूर्ड लुएरेंट, भागवादी, एलेक्स एहरन, थॉमस कोप, केविन मिलिसिन, में योगदान दिया गया। स्टीफन गफिनी, जैक्सन ब्रोकर, क्रिस गैंबल, कीरन मिलान, रॉबर्ट तुंग, मिनजे हांग, टेलन सेमगिल, मोहम्मदिन बेरेकैटिन, यूगिया लिमिटेड, थॉमस ह्यूबर्ट और डेविड सिल्वर। हैशडन एल्गोरिथ्म में उनके योगदान के लिए मिकिटा साज़ानोविच और डेनिला कुटेनिन।

Scroll to Top