Timp estimat de citire: 9-10 minute
"Asistam de fapt, fără să știu, la o schimbare fundamentală de paradigmă care s-a întâmplat în acei ani. Accentul nu mai cădea pe algoritmie, ci pe modelare - la ce folosește? Cum se aplica?"
Când matematica a intrat în război, a apărut știința cercetării operaționale.
Printre disciplinele de vârf s-a numărat și aceasta, numită simplu, dar aproape sfidătoare: Știința cercetării operaționale. Sau, așa cum a fost numită inițial, Știința cercetării operaționale - un nume născut nu în sălile de clasă, ci în sălile de război ale armatelor americane și britanice.
Povestea Cercetarii Operaționale începe în timpul celui de-al Doilea Război Mondial, când armata a descoperit că unele probleme nu puteau fi rezolvate cu mai mulți soldați sau tancuri, ci cu... matematicieni. Britanicii au fost primii care au creat echipe speciale - Grupuri de cercetare operațională - compuse din fizicieni, matematicieni și ingineri, cu un singur scop: să găsească soluții optime la probleme incredibil de complexe.
Cum să protejezi convoaiele de submarine?
Cum să desfășori radarul pentru a detecta cel mai mare număr de aeronave inamice?
Cum să distribui resurse limitate pe un front infinit de mare?
Una dintre cele mai faimoase aplicații a fost problema convoaielor din Atlantic.
Submarinele germane - „U-boatele lui Dönitz” - vânau neobosit navele care transportau provizii, arme și combustibil din America în Marea Britanii. Pierderile erau colosale. Sute de nave se scufundau în fiecare lună. Britanicii erau în pragul pierderii războiului din cauza foametei.
Amiralitatea britanică se confrunta cu o întrebare aparent simplă: ce era mai sigur - trimiterea de convoaie mari sau mici?
Conform logicii militare tradiționale, se recomandau convoaie mici. Acestea erau mai greu de detectat, mai ușor de manevrat și ar fi suferit pierderi mai mici în cazul unui atac. Dar matematicienii din Grupurile de Cercetare Operațională au efectuat calcule care au răsturnat tot ceea ce credea armata. Au ajuns la o concluzie paradoxală: convoaiele mari erau mult mai sigure decât cele mici. De ce? Pentru că probabilitatea ca un submarin să lovească un convoi depindea de conturul convoiului, mai degrabă decât de numărul de nave din acesta. Conturul unui convoi de 50 de nave era doar puțin mai mare decât cel al unui convoi de 10 nave, dar transporta de cinci ori mai multe provizii.
Un convoi format din 50 de nave avea o siluetă nu mai mare decât cea a unui convoi format din 10 nave, dar transporta de cinci ori mai multe provizii. În plus, navele capitale erau capabile să protejeze atât convoaiele mari, cât și cele mici, deoarece trebuiau să patruleze același perimetru. Rezultatul? Aceeași putere de foc defensivă, aceeași probabilitate de a fi detectat, dar de cinci ori mai multă marfă ajungând la destinație. Când Flota de Mare a implementat această strategie – convoaie masive sub escortă puternică – pierderile au scăzut dramatic. Britanicii au supraviețuit. Și au câștigat Bătălia Atlanticului. Era un calcul simplu, dar la care nimeni nu se gândise înainte. Pentru că nimeni nu privea problema ca pe un sistem, ci ca pe o serie de bătălii individuale.
Aceasta este cercetarea operațională: arta de a transforma realitatea în modele, modelele în ecuații și ecuațiile în soluții funcționale. Și a salvat vieți
La ASE, cercetarea operațională nu era considerată ca fiind destinată războaielor, ci problemelor economice, care erau la fel de complexe. Și pentru a le rezolva, am studiat teoria grafurilor – un instrument matematic care părea abstract, dar descria lumea mai bine decât orice hartă.
Am studiat si multe subiecte legate de teoria grafurilor: grafuri orientate, neorientate, ciclice și aciclice, arbori, lanțuri și rețele. Utilizarea acestor elemente pentru modelarea sistemelor economice reale începuse deja: lanțuri distribuite, lanțuri de aprovizionare și procese de luare a deciziilor.
În esență, un graf era o colecție de puncte (noduri) conectate prin linii (drepte sau curbe). Simplu. Dar această simplitate ascundea o putere imensă: putea fi utilizată pentru a reprezenta orice sistem în care „ceva” se deplasează de la „undeva” la „altundeva”.
O rețea de fabrici și depozite? Un graf. Un proces de producție cu etape secvențiale? Un graf. Un sistem decizional în care fiecare alegere duce la alte alegeri? Un graf.
Și odată ce graful era definit, era posibil să se pună întrebări precise: Care este cea mai scurt drum de la A la B? Care este fluxul maxim? Unde sunt blocajele? Unde se pierde eficiența?
Printre cele mai bune cursuri s-a numărat programarea matematică - un nume cu sunet etnic.
Modelele matematice abstracte au prins viață acolo: am învățat să transformăm o problemă economică din lumea reală într-un sistem de ecuații, să scriem funcția obiectiv și să alegem constrângeri - nu ca limite, ci ca o formă de respect pentru realitate.
CROirea COrectă DIn Lemn - pe scurt CROCODIL. Un acronym, genial, tipic românesc, la limita între ingeniozitate și umor involuntar, dar care ascundea muncă serioasă: algoritmi de optimizare, programare liniară, calcule complexe rulate pe IBM 360.
Era un exemplu perfect al filosofiei ASE: matematica nu trebuie să rămână în cărți, ci să rezolve probleme din lumea reală – chiar dacă problema era cum să tai mai eficient scândurile pentru mobilă.
Asistam de fapt, fără sa știu, la o schimbare fundamentală de paradigmă care s-a întâmplat în acei ani.
IBM lansase SSP pe SYSTEM/360. SSP înseamnă Scientific Subroutine Package si venea cu 121 de subrutine FORTRAN împarțite in 3 domenii:
- Statistică (analysis of variance, regression, etc.)
- Manipulare de matrice (inversare, ecuații liniare)
- Alte funcții matematice (integrare, transformate, ecuații diferențiale)
Era o biblioteca de subroutine. Mai exista si azi, mult dezvoltata.
Asta a reprezentat trecerea de la matematică computațională la modelare matematică.
Accentul nu mai cadea pe algoritmie, ci pe modelare - la ce folosește? Cum se aplica?
Azi, in Python de exemplu, este de ajuns sa scrii:
from networkx.algorithms.shortest_paths.weighted import dijkstra_path
Și gata, ai algoritmul ca un black-box in codul tau si poti sa il apelezi.
Nu scrii Dijkstra! Îl folosești.
Concentrarea e pe:
Modelarea grafului corect
Alegerea algoritmului potrivit (Dijkstra vs. A* vs. Bellman-Ford)
Interpretarea rezultatelor
La nici 10 ani dupa ce invățasem aceste lucruri, am rezolvat graful cailor de comunicații rutiere din Romania.
A fost un efort urias de culegerea datelor si de programare.
Si era doar un subsistem al sistemului de optimizare globala a transporturilor pe care il realizam pentru Banca Mondiala.
Pe de altă parte, spiritul ASE-ului clasic nu ne lăsa să scăpăm din îmbrățișarea sa largă și birocratică.
După contabilitatea teoretică, am parcurs toate contabilitățile, pe ramuri: industrială, agricolă, de construcții, de transport, de comerț. Nici statistica nu ne-a iertat – de la statistică descriptivă până la inerență, seriile cronologice și indexarea prețurilor.
Era un fel de dublă formare: matematică aplicată în economie, dar și economie cu un strat consistent de matematică. Iar între cele două stăteam noi, studenții – ca niște acrobați pe o sârmă logică, dar entuziasmați de nou.
Printre profesorii care ne marcau erau specialiști de vârf în econometrie și modelare economico-matematică, ca profesorul Luca Tovissi, prorector pe vremea aceea.
Era de origine maghiară și foarte respectat de studenți – nu doar pentru competența sa academică, ci și pentru un umor involuntar care îl făcea memorabil.
La scena de mai jos nu am participat personal, dar cu siguranța povestea circula printre studenti.
Într-o zi, a chemat niște studenți cu multe restanțe. Atmosfera era tensionată. Tovissi s-a uitat la unul dintre ei și l-a întrebat, cu accent ușor, dar ferm:
– De ce nu învăț, tovarasu’ student?
A pronunțat greșit – trebuia să spună "de ce nu învețI", dar a zis "de ce nu învăț", punându-se pe sine în ecuație.
Studentul, fie că era disperat, fie că avea reflexe de cabaretist, l-a taxat imediat:
– Păi știu eu de ce nu învățați, tov. profesor?
Toată lumea a izbucnit în râs – în frunte cu prorectorul Tovissi, care a înțeles gluma și a râs cu gură mare. Era genul de om care putea să primească o replică și să o prețuiască, chiar dacă venea de la un student cu restanțe.