Talk

Cose a caso su problemi difficili

Thursday, May 29

11:05 - 11:35
RoomFusilli
LanguageItalian
Audience levelIntermediate
Elevator pitch

Esplora come le scelte casuali possano affrontare problemi complessi! Senza usare librerie specifiche, risolveremo sfide con il semplice ma potente metodo del ‘random walk’, partendo dai problemi banali fino a quelli impossibili. Solo codice, nessuna matematica avanzata o lettere greche!

Abstract

In questo talk introdurrò le tecniche di ottimizzazione basate sul random walk con un approccio pratico. Risolvendo problemi di ottimizzazione concreti (partendo da quelli più semplici fino ad arrivare a casi più interessanti) dimostrerò come i metodi random walk possano essere facili da implementare e offrire risposte spesso sufficientemente buone.

Ovviamente non esistono soluzioni miracolose, e molto dipende dai dettagli (come sempre!); può comunque sorprendere come la casualità possa spesso rivelarsi una strategia efficace di ottimizzazione.

Il talk è principalmente una sessione di live coding usando Jupyter notebook. Sebbene i concetti non siano strettamente legati a Python, questo linguaggio è uno strumento eccellente per testare rapidamente le idee prima di passare a un’implementazione più performante, ad esempio in C++, per sfruttare al massimo le potenzialità di [CG]PU.

TagsJupyter/iPython Notebook, Applications, Algorithms and Data Structures
Participant

Andrea Griffini

Coding since 1981, still having fun coding. Math degree but always worked in coding in many different fields (from business software to video games, from CAD to artificial vision, from robotics to network protocols, from compilers to machine learning…). Used visual studio for many years, then vi for many years, then emacs for many years. Currently using my own editor. Recently main occupation is on artificial vision and nesting optimization problems.

Scrivo codice dal 1981, e ancora mi diverto. Laurea in matematica, ma ho sempre scritto codice. Ho lavorato in svariati campi (dai gestionali ai video games, da CAD a visione artificiale, da robotica a protocolli di rete, da compilatori a machine learning…) Ho usato visual studio per molti anni, quindi vi per molti anni, quindi emacs per molti anni. Ora sto usando un mio editor. Attualmente le mie occupazioni principali sono visione artificiale e ottimizzazione nesting.