സ്വയം നിയന്ത്രിത കാറുകൾ വർഷങ്ങളായി കർശനമായ നിർദ്ദേശങ്ങൾ പിന്തുടർന്നു വരികയാണ്. എഞ്ചിനീയർമാർ ആയിരക്കണക്കിന് 'if-then' പ്രസ്താവനകൾ എഴുതിയിട്ടുണ്ട്. ഒരു കാൽനടയാത്രക്കാരൻ റോഡ് മുറിച്ചുകടന്നാൽ ബ്രേക്ക് ചെയ്യുക. സിഗ്നൽ ചുവപ്പായാൽ നിർത്തുക. പാത വളഞ്ഞാൽ തിരിക്കുക. ലോകം പ്രതീക്ഷിച്ചതുപോലെ കൃത്യമായി പ്രവർത്തിക്കുമ്പോൾ ഈ രീതി ഫലപ്രദമാണ്, എന്നാൽ യഥാർത്ഥ ഡ്രൈവിംഗ് അത്ര ലളിതമല്ല. ചെളി നിറഞ്ഞ ഇടവഴികളോ, അടയാളപ്പെടുത്താത്ത കവലകളോ, ട്രാഫിക്കിലൂടെ പാഞ്ഞുപോകുന്ന സൈക്കിൾ യാത്രക്കാരെയോ ഒരു നിയമപുസ്തകത്തിന് ഉൾക്കൊള്ളാൻ കഴിയില്ല. സാഹചര്യങ്ങൾ മാറുമ്പോൾ കർശനമായ നിർദ്ദേശങ്ങൾ പരാജയപ്പെടുന്നു. വെറുമൊരു ചെക്ക്‌ലിസ്റ്റ് പിന്തുടരുന്നതിന് പകരം, നല്ല ഡ്രൈവിംഗ് എന്നാൽ എന്താണെന്ന് പഠിച്ചെടുക്കുന്ന സംവിധാനങ്ങളാണ് നമുക്ക് ആവശ്യം.

ഹാർഡ്-കോഡ് ചെയ്ത നിയമങ്ങൾക്കപ്പുറം

പരമ്പരാഗത സ്വയംഭരണ സംവിധാനങ്ങൾ (autonomous systems) കൃത്യമായ പ്രോഗ്രാമിംഗിനെയാണ് ആശ്രയിക്കുന്നത്. വെയർഹൗസ് തറകൾ, പ്രത്യേക പാതകൾ, പ്രവചിക്കാവുന്ന കാലാവസ്ഥ എന്നിവ പോലുള്ള നിയന്ത്രിത സാഹചര്യങ്ങളിൽ അവ നന്നായി പ്രവർത്തിക്കുന്നു. എന്നാൽ പൊതുനിരത്തുകളിൽ ഇതേ യുക്തി പലപ്പോഴും പരാജയപ്പെടുന്നു.

കൈപ്പടയിൽ എഴുതിയ ബോർഡുകളും, ക്രമരഹിതമായി വെച്ചിരിക്കുന്ന കോണുകളും (cones), ട്രാഫിക് നിയന്ത്രിക്കാൻ ആംഗ്യം കാണിക്കുന്ന ഒരു ഫ്ലാഗ്മാനും ഉള്ള ഒരു നിർമ്മാണ മേഖല സങ്കൽപ്പിക്കുക. ഒരു നിയമധിഷ്ഠിത സംവിധാനം (rule-based system) വ്യക്തമായ ട്രാഫിക് സിഗ്നലിനായി കാത്തിരിക്കും. എന്നാൽ അവിടെ കാണുന്നത് കുഴപ്പമാണ്. "ഓറഞ്ച് വസ്ത്രം ധരിച്ച ഒരാൾ ഇടത്തോട്ട് ആംഗ്യം കാണിക്കുന്നു" എന്നതിന് പ്രത്യേക നിയമമില്ലാത്തതിനാൽ, കാർ നിശ്ചലമാവുകയോ തെറ്റായ തീരുമാനമെടുക്കുകയോ ചെയ്തേക്കാം. മനുഷ്യരായ ഡ്രൈവർമാർ ഇത് പെട്ടെന്ന് കൈകാര്യം ചെയ്യുന്നു, കാരണം നമ്മൾ വെറും പിക്സലുകളെയല്ല, മറിച്ച് സാഹചര്യങ്ങളെയും ഉദ്ദേശ്യങ്ങളെയും (intent and context) ആണ് മനസ്സിലാക്കുന്നത്. നമ്മൾ ആ രംഗം വായിക്കുന്നു. ഒരു യന്ത്രത്തെ ഇതേപോലെ പ്രവർത്തിക്കാൻ പഠിപ്പിക്കുന്നത് തികച്ചും വ്യത്യസ്തമായ ഒരു സമീപനം ആവശ്യപ്പെടുന്നു.

കണ്ടു പഠിക്കുക: Inverse Reinforcement Learning

ഇവിടെയാണ് Inverse Reinforcement Learning കളികൾ മാറ്റുന്നത്. സാധാരണ reinforcement learning-ൽ, നിങ്ങൾ AI-ക്ക് ഒരു ലക്ഷ്യവും റിവാർഡ് ഫംഗ്ഷനും (reward function) നൽകുന്നു. ലക്ഷ്യസ്ഥാനത്ത് വേഗത്തിൽ എത്തിയാൽ പോയിന്റുകൾ ലഭിക്കും. റോഡരികിൽ തട്ടിയാൽ പോയിന്റുകൾ നഷ്ടപ്പെടും. അതിന്റെ സ്കോർ പരമാവധി ഉയർത്തുന്ന ഒരു പോളിസി കണ്ടെത്തുന്നതുവരെ ഏജന്റ് പരീക്ഷണങ്ങൾ നടത്തുന്നു. എന്നാൽ ഡ്രൈവിംഗ് എന്നത് കേവലം കാര്യക്ഷമതയെക്കുറിച്ച് മാത്രമല്ല. അത് സുരക്ഷിതത്വം, നിയമപരമായ കാര്യങ്ങൾ, സാമൂഹികമായ രീതികൾ എന്നിവയെക്കുറിച്ചും കൂടിയാണ്. "ഒരു ജാഗ്രതയുള്ള എന്നാൽ കഴിവുള്ള മനുഷ്യനെപ്പോലെ ഓടിക്കുക" എന്നതിന് ഒരു ഗണിതശാസ്ത്രപരമായ റിവാർഡ് എഴുതുക എന്നത് അസാധ്യമാണ്.

Inverse Reinforcement Learning ഈ പ്രശ്നത്തെ മറ്റൊരു രീതിയിൽ സമീപിക്കുന്നു. AI-ക്ക് ഒരു ലക്ഷ്യം നൽകുന്നതിന് പകരം, നിങ്ങൾ അതിന് ഉദാഹരണങ്ങൾ കാണിച്ചുകൊടുക്കുന്നു. അൽഗോരിതം മണിക്കൂറുകളോളം നീളുന്ന മനുഷ്യരുടെ ഡ്രൈവിംഗ് ദൃശ്യങ്ങൾ നിരീക്ഷിക്കുന്നു. മനുഷ്യൻ എപ്പോഴാണ് വേഗത കുറയ്ക്കുന്നതെന്നും, എപ്പോഴാണ് നേരത്തെ ലെയിൻ മാറുന്നതെന്നും, അല്ലെങ്കിൽ ഒരു ട്രക്ക് പാതയിലേക്ക് വരുന്നത് കാണുമ്പോൾ എപ്പോഴാണ് വഴിമാറുന്നതെന്നും അത് നിരീക്ഷിക്കുന്നു. അത് കൃത്യമായ സ്റ്റിയറിംഗ് ആംഗിൾ മാത്രം മനഃപാഠമാക്കുകയല്ല ചെയ്യുന്നത്. മറിച്ച്, അത് എന്തുകൊണ്ട് എന്ന് കണ്ടെത്താൻ പിന്നോട്ട് സഞ്ചരിക്കുന്നു. ഒരുപക്ഷേ റോഡ് നിയമപരമായി ശൂന്യമാണെങ്കിൽ പോലും, ഒരു കുട്ടി നടപ്പാതയ്ക്ക് സമീപം നിൽക്കുന്നത് കണ്ട് ഡ്രൈവർ വേഗത കുറച്ചതാകാം. AI അവിടെ ഒളിഞ്ഞിരിക്കുന്ന റിവാർഡ് കണ്ടെത്തുന്നു: ക്രോസ് വാക്ക് ഇല്ലെങ്കിൽ പോലും കാൽനടയാത്രക്കാരുടെ സാമീപ്യം പ്രധാനമാണ്.

ഒപ്റ്റിമൈസേഷൻ പ്രശ്നം (optimization problem) ഇതിനകം പരിഹരിച്ച ഒരു വിദഗ്ദ്ധനായി മനുഷ്യനെ പരിഗണിക്കുന്നതിലൂടെ, ആ വിദഗ്ദ്ധൻ കുറയ്ക്കാൻ ശ്രമിക്കുന്ന കോസ്റ്റ് ഫംഗ്ഷൻ (cost function) അൽഗോരിതം കണ്ടെത്തുന്നു. പെട്ടെന്ന് ബ്രേക്ക് ചെയ്യുന്നതിന് പകരം സുഗമമായ ബ്രേക്കിംഗിനോ, വശങ്ങളിലേക്ക് തിരിയുന്നതിന് പകരം ലെയിനിന്റെ മധ്യഭാഗത്ത് നിലകൊള്ളുന്നതിനോ മുൻഗണന നൽകുന്നത് പോലുള്ള അടിസ്ഥാനപരമായ താൽപ്പര്യങ്ങൾ സിസ്റ്റം മനസ്സിലാക്കിയാൽ, അതിന് പുതിയ സാഹചര്യങ്ങളിലേക്ക് മാറാൻ (generalize) കഴിയും. മറ്റൊരു നഗരത്തിലെ പുതിയ റോഡിൽ എത്തുമ്പോൾ, ആ അപരിചിത സാഹചര്യത്തിൽ ഒരു നല്ല ഡ്രൈവർ എന്തിനെയാണ് വിലമതിക്കുക എന്ന് ഏകദേശമായി അതിന് അറിയാം.

തീരുമാനങ്ങൾ എടുക്കുക: Deep Q-Networks

റിവാർഡുകൾ മനസ്സിലാക്കുക എന്നത് പകുതി പോരാട്ടം മാത്രമാണ്. ഒരു കാറിന് ഇപ്പോഴും പ്രവർത്തിക്കേണ്ടതുണ്ട്. മികച്ച പ്രവർത്തനം തിരഞ്ഞെടുക്കുന്നതിനായി സെൻസറി ഡാറ്റ പ്രോസസ്സ് ചെയ്തുകൊണ്ട് Deep Q-Networks തീരുമാനങ്ങൾ എടുക്കുന്നു.

ക്ലാസിക് Q-learning പതിറ്റാണ്ടുകളായി നിലവിലുണ്ട്. ഒരു പ്രത്യേക അവസ്ഥയിൽ (state) ഒരു പ്രത്യേക പ്രവർത്തനം ചെയ്യുന്നതിന്റെ മൂല്യം ഒരു ഏജന്റ് പഠിക്കുന്നു. എന്നാൽ യഥാർത്ഥ ഡ്രൈവിംഗിലെ അവസ്ഥകൾ അനന്തമാണ്. ഒരു ക്യാമറ ഫീഡ് എന്നത് ലളിതമായ ഒരു ഗ്രിഡ് വേൾഡ് (grid world) അല്ല. അത് സെക്കൻഡിൽ അറുപത് ഫ്രെയിമുകളിലായി മാറുന്ന ദശലക്ഷക്കണക്കിന് പിക്സലുകളും, lidar point clouds, സ്പീഡ് റീഡിംഗുകൾ, GPS വെക്റ്ററുകൾ എന്നിവയും ചേർന്നതാണ്.

ഒരു ന്യൂറൽ നെറ്റ്‌വർക്കിനെ ഫംഗ്ഷൻ അപ്രോക്സിമേറ്ററായി (function approximator) ഉപയോഗിച്ചുകൊണ്ട് Deep Q-Networks ഈ പ്രശ്നം പരിഹരിക്കുന്നു. നെറ്റ്‌വർക്ക് അസംസ്‌കൃത സെൻസറി ഡാറ്റ സ്വീകരിക്കുകയും ഓരോ സാധ്യമായ പ്രവൃത്തിക്കും ഒരു പ്രവചിക്കപ്പെട്ട മൂല്യം നൽകുകയും ചെയ്യുന്നു: ഇടത്തോട്ട് തിരിക്കുക, സാവധാനം ബ്രേക്ക് ചെയ്യുക, വേഗത കൂട്ടുക, പാത നിലനിർത്തുക. എല്ലാ സാഹചര്യങ്ങൾക്കും ഒരു ലുക്കപ്പ് ടേബിൾ (lookup table) സൂക്ഷിക്കുന്നതിന് പകരം, നെറ്റ്‌വർക്ക് കാര്യങ്ങൾ പൊതുവായി മനസ്സിലാക്കുന്നു (generalizes). മഴയുള്ള രാത്രിയിൽ കാണുന്ന ഒരു കറുത്ത രൂപം ഒരുപക്ഷേ പാർക്ക് ചെയ്ത കാർ ആയിരിക്കുമെന്ന് അത് തിരിച്ചറിയുന്നു, അതുപോലെ വെയിലുള്ള സമയത്ത് പഠിച്ച കാര്യങ്ങൾ ഉപയോഗിച്ച് "വേഗത കൂട്ടുക" എന്ന പ്രവൃത്തിക്ക് കുറഞ്ഞ മൂല്യം നൽകുന്നു.

ഇതിന്റെ പരിശീലനത്തിൽ എക്സ്പീരിയൻസ് റീപ്ലേ (experience replay) ഉൾപ്പെടുന്നു. കഴിഞ്ഞ ഡ്രൈവുകളിൽ നിന്നുള്ള നിമിഷങ്ങൾ, വിജയകരമായ ലെയിൻ മാറ്റങ്ങൾ, അപകടകരമായ സാഹചര്യങ്ങൾ, സുഗമമായ വേഗത കുറയ്ക്കൽ എന്നിവ സിസ്റ്റം സൂക്ഷിക്കുന്നു, തുടർന്ന് അവയെ ക്രമരഹിതമായി എടുത്ത് നെറ്റ്‌വർക്ക് പുതുക്കുന്നു. ഇത് തെറ്റായ ബന്ധങ്ങളെ ഒഴിവാക്കുകയും പഠനം സുസ്ഥിരമാക്കുകയും ചെയ്യുന്നു. ആയിരക്കണക്കിന് സിമുലേറ്റഡ് മണിക്കൂറുകളിലൂടെ, ഏത് പ്രവൃത്തികളാണ് സുരക്ഷിതമായ മുന്നേറ്റത്തിന് സഹായിക്കുന്നതെന്നും ഏതാണ് അപകടങ്ങളിലേക്ക് നയിക്കുന്നതെന്നും നെറ്റ്‌വർക്ക് പഠിക്കുന്നു.

എല്ലാം ഒരുമിച്ച് ചേർക്കുമ്പോൾ

ഈ രണ്ട് രീതികളും ഒറ്റയ്ക്ക് ഒരു സമർത്ഥനായ ഡ്രൈവറെ സൃഷ്ടിക്കില്ല. ഒരു ഡിസിഷൻ എൻജിൻ ഇല്ലാത്ത Inverse Reinforcement Learning വെറുമൊരു നിരീക്ഷകൻ മാത്രമാണ്. മനുഷ്യർ സുഗമമായ ഡ്രൈവിംഗിന് പ്രാധാന്യം നൽകുന്നുവെന്ന് ഇതിന് അറിയാം, പക്ഷേ ഇതിന് സ്റ്റിയറിംഗ് നിയന്ത്രിക്കാൻ കഴിയില്ല. കൃത്യമായി രൂപകൽപ്പന ചെയ്ത ഒരു റിവാർഡ് ഫംഗ്ഷൻ ഇല്ലാത്ത ഒരു Deep Q-Network തെറ്റായ കാര്യങ്ങൾക്കായി ഒപ്റ്റിമൈസ് ചെയ്തേക്കാം. വട്ടത്തിൽ വണ്ടി ഓടിക്കുന്നത് കൂട്ടിയിടികൾ പൂർണ്ണമായും ഒഴിവാക്കാൻ സഹായിക്കുമെന്ന് ഇത് കണ്ടെത്തിയേക്കാം; അങ്ങനെ ഒരിടത്തും എത്താതെ തന്നെ ഉയർന്ന സ്കോർ നേടാൻ ഇതിന് സാധിച്ചേക്കാം.

ഇവ രണ്ടും സംയോജിപ്പിക്കുമ്പോൾ ഒരു ശക്തമായ ലൂപ്പ് രൂപപ്പെടുന്നു. Inverse Reinforcement Learning മനുഷ്യ വിദഗ്ധരെ നിരീക്ഷിക്കുകയും യഥാർത്ഥ ലോകത്തിലെ മുൻഗണനകൾ ഉൾക്കൊള്ളുന്ന ഒരു റിവാർഡ് ഫംഗ്ഷൻ രൂപപ്പെടുത്തുകയും ചെയ്യുന്നു. തുടർന്ന്, Deep Q-Network ആ റിവാർഡ് ഫംഗ്ഷൻ ഉപയോഗിച്ച് പരീക്ഷണങ്ങളിലൂടെയും തെറ്റുകളിലൂടെയും സ്വയം പരിശീലിപ്പിക്കുകയും, പ്രവർത്തികൾ തിരഞ്ഞെടുക്കുന്നതിനായി ലൈവ് സെൻസർ ഡാറ്റ പ്രോസസ്സ് ചെയ്യുകയും ചെയ്യുന്നു. നിരീക്ഷണത്തിലൂടെയും പരിശീലനത്തിലൂടെയും AI സങ്കീർണ്ണമായ പെരുമാറ്റരീതികൾ പഠിച്ചെടുക്കുന്നു.

ഒരു ഹൈവേ മെർജ് (highway merge) സാഹചര്യം പരിഗണിക്കുക. മനുഷ്യ ഡ്രൈവർമാർ വേഗത ക്രമീകരിക്കുന്നതും ഗ്യാപ്പ് (gap) സ്വീകരിക്കുന്നതും തമ്മിലുള്ള സന്തുലിതാവസ്ഥ നിലനിർത്തുന്നുവെന്ന് Inverse Reinforcement Learning ഘടകം മനസ്സിലാക്കുന്നു. Deep Q-Network ഈ സൂക്ഷ്മമായ cost signal സ്വീകരിക്കുകയും സിമുലേഷനിലൂടെ പതിനായിരം തവണ മെർജ് ചെയ്യാൻ പരിശീലിക്കുകയും ചെയ്യുന്നു. എപ്പോൾ വേഗത കൂട്ടണം, എപ്പോൾ പിന്നോട്ട് മാറണം, എപ്പോഴാണ് ഗ്യാപ്പ് വളരെ കുറവാണെന്ന് എന്നിവ അത് പഠിക്കുന്നു. ഇതിന്റെ ഫലം മനുഷ്യരുടെ ചലനങ്ങൾ വെറുതെ ആവർത്തിക്കുന്ന ഒരു തത്തയല്ല. മറിച്ച്, യുക്തി ഉൾക്കൊള്ളുകയും ഹൈവേ നനഞ്ഞുകിടക്കുകയോ ഗ്യാപ്പ് സാധാരണയേക്കാൾ കുറവാകുകയോ ചെയ്യുമ്പോൾ സാഹചര്യത്തിനനുസരിച്ച് മാറാൻ കഴിയുന്ന ഒരു സംവിധാനമാണ്.

ഇത് യഥാർത്ഥ റോഡുകളിൽ പ്രധാനമാകുന്നത് എന്തുകൊണ്ട്