codebuddy.tech

building in public from Vancouver

राइड्स के बीच AI बनाना: एक वैंकूवर डेवलपर की FIFA काउंटडाउन डायरी

FIFA के वैंकूवर आने में चालीस दिन बाकी हैं, और मैं Robson Street पर एक Starbucks के बाहर अपनी कार में बैठा हूँ, लैपटॉप स्टीयरिंग व्हील पर टिकाए, अगली राइड रिक्वेस्ट का इंतज़ार करते हुए एक न्यूरल नेटवर्क को डीबग करने में जुटा हूँ। यही मेरी ज़िंदगी है – दिन में इंडी AI डेवलपर, ज़रूरत पड़ने पर Uber ड्राइवर, और एक ऐसे शहर का पूर्णकालिक पर्यवेक्षक जो अपनी ही महत्वाकांक्षाओं से फटने वाला है।

सालों से मैं इस दोहरे अस्तित्व को झेल रहा हूँ। सुबह कोडिंग किसी भी कॉफ़ी शॉप में जहाँ सबसे अच्छा wifi-टू-शोर अनुपात मिले, दोपहर और शाम को ड्राइविंग करके Main और Broadway के पास अपने डिब्बे जैसे अपार्टमेंट का किराया चुकाने के लिए। यह ग्लैमरस नहीं है, लेकिन यह मुझे वैंकूवर के टेक इकोसिस्टम की पहली पंक्ति की सीट देता है और एक रियल-टाइम फीड देता है कि यह शहर वास्तव में कैसे चलता है। अभी, दोनों दृष्टिकोण एक ही बात चिल्ला रहे हैं: हम आने वाली चीज़ों के लिए तैयार नहीं हैं।

भौगोलिक समस्या (एक डेवलपर का दृष्टिकोण)

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

पिछले महीने मैं एक रूटिंग ऑप्टिमाइज़ेशन एल्गोरिदम पर काम कर रहा था – कुछ खास नहीं, बस कुछ ऐसा बनाने की कोशिश कर रहा था जो ड्राइवरों के लिए सर्ज प्राइसिंग पैटर्न की भविष्यवाणी कर सके – तभी मुझे एहसास हुआ कि वैंकूवर का परिवहन नेटवर्क वास्तव में कितना मौलिक रूप से विवश है। हम एक प्रायद्वीप पर बसा शहर हैं जहाँ उत्तर तट (North Shore) तक जाने के ठीक तीन रास्ते हैं, जो पहाड़ों, महासागर और Fraser River से घिरा है। ग्राफ थ्योरी के नज़रिए से, हमारे पास बहुत अधिक सिंगल पॉइंट्स ऑफ़ फ़ेलियर हैं।

BC Place हमारे सबसे भीड़भाड़ वाले नोड के बिल्कुल केंद्र में स्थित है। हर बार जब मैं Canucks गेम के दौरान डाउनटाउन जाता हूँ, तो मैं देखता हूँ कि कैसे पूरा सिस्टम एक ही चोक पॉइंट से कैस्केड होकर फेल हो जाता है। Lions Gate Bridge बैक अप हो जाता है, जिससे ट्रैफ़िक Second Narrows या नीचे Pattullo की ओर जाने को मजबूर होता है। अगर कोई गलत तरीके से छींक दे तो Granville Bridge पार्किंग लॉट बन जाता है। यह एक क्लासिक डिस्ट्रीब्यूटेड सिस्टम्स प्रॉब्लम है – अपर्याप्त रिडंडेंसी और कोई ग्रेसफुल डिग्रेडेशन नहीं।

कल मैंने YVR से एक कपल को डाउनटाउन के एक होटल के लिए पिक किया। एक त्वरित राइड होनी चाहिए थी, लेकिन Arthur Laing Bridge पर निर्माण कार्य के कारण काफी लंबी हो गई। हवाई अड्डे और शहर के केंद्र के बीच हमारा यही एकमात्र वास्तविक कनेक्शन है। FIFA के दौरान, जब हज़ारों भ्रमित, जेट-लैग्ड फुटबॉल प्रशंसक एक साथ इस बाधा को पार करने की कोशिश कर रहे होंगे, तो मेरा रूटिंग एल्गोरिदम बेकार हो जाएगा। आप बुनियादी बुनियादी ढाँचे की सीमाओं के आसपास ऑप्टिमाइज़ नहीं कर सकते।

ट्रैफ़िक और कोड में पैटर्न पहचान

सालों की ड्राइविंग ने मुझे वैंकूवर के ट्रैफ़िक पैटर्न को डिबगिंग लॉग की तरह पढ़ना सिखाया है। इसमें एक लय है, पूर्वानुमानित प्रवाह और विफलता मोड हैं जिन्हें आप अनुमान लगाना सीख जाते हैं। राइड्स के बीच, मैं इस डेटा को मशीन लर्निंग मॉडल्स में फीड कर रहा हूँ, कुछ ऐसा बनाने की कोशिश कर रहा हूँ जो FIFA के दौरान अन्य ड्राइवरों के लिए वास्तव में उपयोगी हो सके।

उदाहरण के लिए, दोपहर बाद से शाम तक का West End ग्रिड। Robson Street Burrard से Denman तक रेंगने वाली सड़क बन जाती है – बाइक लेन, डिलीवरी ट्रक, निर्माण, पर्यटक भ्रम, ये सब पूर्वानुमानित बाधाएँ पैदा करते हैं। मेरे पास इस क्षेत्र से सैकड़ों ट्रिप्स लॉग हैं, और पैटर्न इतने सुसंगत हैं कि मेरा मॉडल एक सार्थक विंडो के भीतर देरी की भविष्यवाणी कर सकता है।

लेकिन मशीन लर्निंग के बारे में एक बात है – जब आप इसे पूरी तरह से नया डेटा खिलाते हैं तो यह टूट जाता है। मेरा मॉडल सामान्य वैंकूवर ट्रैफ़िक पैटर्न पर प्रशिक्षित है। इसे इस बात का कोई अंदाज़ा नहीं है कि हजारों फुटबॉल प्रशंसकों के साथ क्या करना है जो नहीं जानते कि पीक आवर्स के दौरान Granville से बाएँ मुड़ना नहीं है, या कि रश आवर के दौरान Robson से डाउनटाउन जाना मूल रूप से ट्रैफ़िक आत्महत्या है।

पिछले हफ्ते मैंने एक पर्यटक को पिक किया जिसने अपने होटल तक नेविगेट करने में मेरी "मदद" करने के लिए Google Maps का उपयोग करने पर जोर दिया। Google ने शाम के रश आवर में हमें Denman की ओर रूट किया क्योंकि यह स्क्रीन पर छोटा दिखता था। हमें कुछ ही ब्लॉक जाने में काफी अधिक समय लगा। मेरा यात्री पूछता रहा कि मैंने GPS का पालन क्यों नहीं किया, यह नहीं समझ पाया कि Google का एल्गोरिदम उस स्थानीय ज्ञान को ध्यान में नहीं रखता जिसे हासिल करने में सालों लग जाते हैं। FIFA वह बातचीत होगी जो दसियों हजारों गुना बढ़ गई है।

अंडरग्राउंड सॉकर नेटवर्क

लोकेशन-आधारित AI मॉडल्स पर काम करने ने मुझे डेटा में क्लस्टरिंग पैटर्न पर ध्यान देना सिखाया है, शायद यही कारण है कि मैंने ज़्यादातर लोगों से पहले वैंकूवर की छिपी सॉकर संस्कृति पर ध्यान दिया है। शहर भर में बिखरे हुए भावुक प्रशंसकों के ये छोटे-छोटे समूह हैं – बड़े मैचों के दौरान Croatian Cultural Centre, जब इटली खेलता है तो Commercial Drive, England खेलों के दौरान Steveston पब।

मैं इन पैटर्न को बिना किसी वास्तविक इरादे के ट्रैक कर रहा हूँ। मेरे राइड डेटा में सॉकर इवेंट्स के आसपास स्पष्ट स्पाइक्स दिखते हैं जिन्हें ज़्यादातर लोग मिस कर देते हैं क्योंकि वे हॉकी के नंबर देख रहे होते हैं। पिछले महीने मैंने एक समूह को पिक किया जो East Van में एक बहुत जल्दी Champions League फ़ाइनल देखने की पार्टी में जा रहा था। वे सॉकर संस्कृति में इस तरह से पूरी तरह से डूबे हुए थे जिसने मुझे उन सबसे जुनूनी डेवलपर्स की याद दिला दी जिन्हें मैं जानता हूँ – गहरा तकनीकी ज्ञान, आदिवासी वफादारी, और उस तरह का जुनून जो उन्हें बेतुके समय पर शहर भर में यात्रा करने पर मजबूर करता है।

इन मौजूदा प्रशंसकों का दिमाग FIFA से उड़ने वाला है। वे आला व्यूइंग पार्टियों और आधे-खाली Whitecaps गेम्स के आदी हैं। FIFA उनका पहला स्वाद होगा जब इस शहर में सॉकर वास्तव में मुख्यधारा में आ जाएगा। यह उस समय जैसा है जब किसी डेवलपर के साइड प्रोजेक्ट को अचानक महत्वपूर्ण ध्यान मिलता है – एक साथ रोमांचक और भयावह।

सिस्टम लोड और परफेक्ट स्टॉर्म

कोई भी डेवलपर जिसने स्केलिंग समस्याओं पर काम किया है, वह देख सकता है कि क्या होने वाला है। गर्मियों के महीने पहले से ही वैंकूवर के बुनियादी ढाँचे के लिए पीक उपयोग के महीने हैं। होटल क्षमता पर, रेस्तरां भरे हुए, SkyTrain पर्यटकों और स्थानीय लोगों के साथ अधिकतम भार लेकर चल रहा है। FIFA ट्रैफ़िक जोड़ने से पहले सिस्टम पहले से ही गर्म चल रहा है।

यह केवल फुटबॉल प्रशंसकों के बारे में नहीं है – यह फुटबॉल प्रशंसकों के बारे में है जो पहले से सिस्टम में मौजूद हर दूसरे उपयोगकर्ता के साथ संसाधनों के लिए प्रतिस्पर्धा कर रहे हैं। टोरंटो का परिवार जिसने महीनों पहले अपनी वैंकूवर छुट्टी बुक की थी, उसे इस बात से कोई फर्क नहीं पड़ता कि अर्जेंटीना ब्राज़ील के खिलाफ खेल रहा है। उन्हें अभी भी अपने होटल से Queen Elizabeth Park तक पहुँचना है। उन क्रूज़ शिप यात्रियों को अभी भी Granville Island के लिए परिवहन चाहिए। डाउनटाउन अपने कार्यालय जाने वाले टेक वर्कर को अभी भी Cambie Bridge पार करना है।

मैं इसे एक संसाधन आवंटन समस्या के रूप में मॉडल कर रहा हूँ, यह अनुमान लगाने की कोशिश कर रहा हूँ कि सबसे खराब बाधाएँ कहाँ आएंगी। डेटा चिंताजनक है। हम केवल एडिटिव लोड के बारे में बात नहीं कर रहे हैं – हम कैस्केडिंग विफलताओं को देख रहे हैं जहाँ प्रत्येक चोक पॉइंट डाउनस्ट्रीम कंजेशन पैदा करता है जो पूरे नेटवर्क में फैल जाता है।

अराजकता के लिए निर्माण

कल राइड्स के बीच, मैं सर्ज प्राइसिंग के लिए एक भविष्यवाणी मॉडल को डीबग कर रहा था तभी मुझे एहसास हुआ: मैं मूल रूप से एक ऐसे सिस्टम के लिए AI बना रहा हूँ जो पूरी तरह से अराजक होने वाला है। मेरा सारा प्रशिक्षण डेटा पूर्वानुमानित पैटर्न पर आधारित है जिसे FIFA नष्ट करने वाला है। यह सामान्य वेब ट्रैफ़िक पर एक मॉडल को प्रशिक्षित करने और फिर इसे DDoS हमले के दौरान तैनात करने की कोशिश करने जैसा है।

लेकिन शायद यही बात है। सामान्य पैटर्न की भविष्यवाणी करने की कोशिश करने के बजाय, मुझे अराजकता के लिए निर्माण करना चाहिए। क्या होगा अगर मैंने ऑप्टिमाइज़ेशन के बजाय रेज़िलिएंस पर ध्यान केंद्रित किया? दीर्घकालिक भविष्यवाणियों के बजाय त्वरित अनुकूलन? मैंने एक अलग दृष्टिकोण पर काम करना शुरू कर दिया है – रियल-टाइम क्लस्टरिंग एल्गोरिदम जो ऐतिहासिक डेटा से भविष्यवाणी करने की कोशिश करने के बजाय, उभरते ट्रैफ़िक पैटर्न की पहचान कर सकते हैं जैसे-जैसे वे विकसित होते हैं।

यह एक साथ निराशाजनक और आकर्षक है। ड्राइवर के रूप में मेरी दिन की नौकरी मुझे ग्राउंड-ट्रुथ डेटा देती है जो अधिकांश डेवलपर्स कभी नहीं देख पाते। मुझे पता है कि कुछ इवेंट्स के दौरान Burrard और Robson का चौराहा अगम्य हो जाता है। मुझे पता है कि Google Maps जिन रूट्स को सुझाता है वे वास्तव में भयानक होते हैं। मुझे पता है कि पर्यटक स्थानीय लोगों से कैसे अलग व्यवहार करते हैं जब वे खो जाते हैं या भ्रमित होते हैं।

इस हफ्ते मैंने डाउनटाउन एक टेक मीटअप की ओर जा रहे डेवलपर्स के एक समूह को पिक किया। वे वैंकूवर के ट्रैफ़िक के बारे में शिकायत कर रहे थे जैसे कि यह कुछ रहस्यमय बल हो, न कि देखने योग्य पैटर्न और पूर्वानुमानित विफलता मोड वाला एक सिस्टम। मुझे यह मारा कि इस शहर में लोकेशन-आधारित ऐप बनाने वाले अधिकांश लोगों ने कभी यहाँ पेशेवर रूप से ड्राइव नहीं किया है। वे सैद्धांतिक परिदृश्यों के लिए ऑप्टिमाइज़ कर रहे हैं न कि वास्तविक दुनिया की बाधाओं के लिए।

डेटा गोल्डमाइन

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

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

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

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

देर रात कोडिंग सत्र

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

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

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

तकनीकी चुनौती आकर्षक है, लेकिन व्यावहारिक निहितार्थ ही मुझे रातों को जगाए रखते हैं। मुझे ठीक-ठीक पता है कि एक निराश यात्री के साथ वैंकूवर ट्रैफ़िक में फंसना कैसा लगता है, ETA को ऊपर जाते हुए देखना जबकि सर्ज प्राइसिंग चढ़ती है। FIFA एक साथ उनमें से हजारों स्थितियाँ पैदा करने वाला है।

अराजकता की उलटी गिनती

अब बस एक महीने से कुछ अधिक। मैं शहर को तनावग्रस्त होते हुए महसूस कर सकता हूँ। FIFA से पहले प्रोजेक्ट खत्म करने के लिए और अधिक निर्माण दल ओवरटाइम काम कर रहे हैं। स्थानों की जाँच करने के लिए और अधिक पर्यटक जल्दी आ रहे हैं। उन शहर योजनाकारों और TransLink अधिकारियों की आवाज़ में और अधिक तनाव है जिन्हें मैं आपातकालीन योजना बैठकों में जाते हुए पिक करता हूँ।

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

लेकिन शायद यही असली अवसर है। तर्कसंगत व्यवहार मानने वाला AI बनाना नहीं, बल्कि ऐसे सिस्टम बनाना जो मानवीय अतार्किकता को ध्यान में रखते हैं और फिर भी इसके आसपास ऑप्टिमाइज़ करने के तरीके खोजते हैं। FIFA अराजकता-प्रतिरोधी एल्गोरिदम के लिए एकदम सही परीक्षण मैदान हो सकता है।

डिबगिंग सत्रों और एयरपोर्ट रन के बीच, मैं सब कुछ दस्तावेज कर रहा हूँ। यह उलटी गिनती केवल FIFA से बचने के बारे में नहीं है – यह कुछ ऐसा बनाने के बारे में है जो वास्तव में अन्य शहरों को समान आयोजनों की तैयारी में मदद कर सके। हर ट्रैफ़िक जाम एक डेटा पॉइंट है। हर निराश यात्री उपयोगकर्ता शोध है। हर देर रात का कोडिंग सत्र उन प्रणालियों में एक निवेश है जो तब काम कर सकती हैं जब बाकी सब कुछ टूट जाए।

हफ्तों पहले, यह एक असंभव समस्या की तरह लगता था। अब यह सबसे दिलचस्प चुनौती की तरह लगता है जिस पर मैंने कभी काम किया है। हो सकता है कि वैंकूवर FIFA के लिए तैयार न हो, लेकिन शायद, बस शायद, मैं कुछ ऐसा बना सकता हूँ जो हम सभी को एक साथ इससे बचने में मदद करे।

Get new posts

Subscribe in your language

New posts delivered to your inbox. Unsubscribe anytime.

Receive in: