Co je adaptivní algoritmus?
Adaptivní algoritmus je sada instrukcí k provedení funkce, která se může přizpůsobit v případě změn prostředí nebo okolností. Adaptivní algoritmy jsou schopny inteligentně přizpůsobit své činnosti s ohledem na měnící se okolnosti, aby dosáhly co nejlepšího výsledku. Mohou být naprogramovány v několika výpočetních jazycích, aby dělaly vše od automatizace řízení letového provozu až po vrácení výsledků vyhledávání, které budou pro uživatele internetu přesné a užitečné.
Adaptivní algoritmus může změnit své chování, pokud cítí nutnost tak učinit. V příkladu vyhledávače může motor procházet celý internet a vracet výsledky z různých míst, ale nejprve by mohl zvážit známé parametry o uživateli. Pokud například IP adresa uživatele pochází z Francie, adaptivní algoritmus by vrátil francouzské výsledky nebo by vyhledávací stroj mohl uživatele přesměrovat na jeho francouzskou stránku.
Algoritmy se mohou také poučit z chování uživatelů. Uživatelé stejného vyhledávače ve stejné zemi si mohou všimnout, že získají odlišné výsledky. Jsou založeny na minulém chování při vyhledávání a odkazech po kliknutí. Algoritmus může přizpůsobit své výsledky potřebám uživatele. Například člověk, který hledá „fotbal“ a klikne na odkazy o americkém fotbalu, nikoli fotbalu, učí algoritmus o druzích výsledků, které chce vidět.
Takové algoritmy mohou být užitečné, když je nutné nastavit pokyny pro provedení příkazu, ale systém musí být schopen potlačit algoritmus v případě naléhavé situace. Například s částečně automatizovaným řízením letového provozu může algoritmus reagovat, když letadlo vysílá nouzové volání. Bude radit řídícím letového provozu, jak přesměrovat stávající provoz, namísto trval na přistání těchto letadel a uvedení ohroženého letadla do čekací fronty. Algoritmus se může přizpůsobit okolnostem a může přepsat běžné pokyny k zařazení letadel do fronty v pořadí jejich příchodu, když zjistí mimořádnou situaci.
Kódování adaptivního algoritmu trvá déle než vývoj běžného algoritmu a může vyžadovat některé zvláštní úvahy. Než programátor vytvoří algoritmus, obvykle vyvine seznam parametrů, které popisují, co musí udělat a jak. S adaptivní verzí bude přemýšlet o situacích, které by mohly nastat, a nastavit kód tak, aby se adaptivní algoritmus mohl poučit ze svých zkušeností.