Passa ai contenuti principali

Post

Visualizzazione dei post con l'etichetta prodotti

OpenSolver

Per chi vuole provare a scrivere (semplici) modelli di ottimizzazione in un foglio di calcolo, può provare anche OpenSolver: componente aggiuntivo per Excel. Tutti i dettagli sono disponibili sul sito https://opensolver.org/

Barriere d'ingresso alle tecnologie di ottimizzazione

In questi giorni mi sto chiedendo quale sia il modo migliore per approcciarsi in maniera pratica alla risoluzione di un problema di ottimizzazione. Cerco di spiegarmi con una storiella. Supponiamo che io ed un mio collega lavoriamo per l'IT di una PMI; anzi, noi due siamo l'IT di questa PMI. Un giorno l'amministratore unico ci chiede di aiutare il direttore della produzione ad ottimizzare l'intera filiera di produzione, in modo da controllare i costi, incrementare i profitti, aumentare la qualità del lavoro. E magari di poter fare delle analisi what-if per capire costi e benefici di ipotetici interventi di manutenzione. Io che ho studiato ricerca operativa all'università, con un onorevole 24, ho qualche vago ricordo e conoscenza  e sono abbastanza certo che quello che mi sta chiedendo l'amministratore unico si trovi in quel cassetto della mia memoria. Forse ho ancora qualche appunto, ma forse anche no e allora inizio a cercare su internet. Per fort...

OptimJ Free Edition

Per gli amanti di Java, tra i quali non ci sono io :-), vi voglio segnalare la disponibilità dell'edizione gratuita di OptimJ . OptimJ è una libreria di classi Java per la modellazione ad oggetti di problemi di programmazione lineare. OptimJ Free Edition comprende: integrazione in eclipse pre-elaborazione dei dati prototipazione rapida di interfacce grafiche la possibilità di utilizzare i solver GLPK e lp_solve supporto dei file in formato LP e MPS Non ho mai avuto la possibilità di utilizzare OptimJ, quindi sarò lieto di ospitare ogni contributo in tal senso.

Tra gli autori di CPLEX

In uno degli eventi collegati al  INFORMS 2010 Annual Meeting , ho trovato la lista degli sviluppatori di CPLEX e OPL. Tra questi appare anche il Prof. Lodi. Notare che l'accezione che do al termine "sviluppatore" non è riduttiva, come spesso accade. Anzi, mi voglio riferire a chiunque contribuisca allo sviluppo e alla crescita di un prodotto. Tobias Achterberg, CPLEX Developer Christian Bliek,CPLEX Developer John Cui, CPLEX Developer Mary Fenelon, CPLEX Development Manager John Gregory, Senior Product Lifecycle Manager Daniel Junglas, CPLEX Developer Ed Klotz, CPLEX Support Specialist Laszlo Ladanyi, CPLEX Developer Andrea Lodi, CPLEX Consulting Developer Robert Schiele, CPLEX Developer Philip Starhill, CPLEX Developer Wei Wei, CPLEX QA Engineer Roland Wunderling, CPLEX Architect Carol Tretkoff, Optimization Specialist Martin Shell, Optimization Specialist Ioannis (Yianni) Gamvros, Optimization Specialist Vincent Beraudier, OPL Developer Arnaud Schu...

Il solver di OpenOffice

Con la versione 3, openoffice.org propone la sua suite per l'ufficio corredata di un risolutore di problemi lineari. L'ho provato con un problema molto piccolo e molto scemo, e fa quello che deve fare. I problemi in grado di risolvere sono lineari, a variabili continue o misto intere. Per i problemi a variabili intere è possibile impostare il tempo massimo di soluzione. Chiaramente l'uso che se ne può fare è limitato. A mio avviso, però, ha un uso potenziale molto interessante nella didattica. Soprattutto in quei corsi dove non sono richieste nozioni di programmazione o di informatica avanzata. Sul risolutore non sono riuscito a capire se ne usa uno tra quelli open source oppure, come mi è parso di capire, ha una propria implementazione.

OpenOpt

La mia predilezione per il python come linguaggio ospite per framework di ottimizzazione non è un mistero per chi mi segue e per chi lavora con me. Dopo aver parlato più volte di pulp, ora vorrei portare in risalto OpenOpt . Si tratta di un framework di sviluppato all'Accademia Nazionale delle Scienze Ucraina dal dipartimento di ottimizzazione. Le potenzialità mi sembrano interessanti, anche se non l'ho mai provato in concreto. Il livello di astrazione a cui si pone è molto basso, rispetto a pulp. Ad esempio, un problema di programmazione lineare si scrive come: """ Example: Let's concider the problem 15x1 + 8x2 + 80x3 -> min (1) subjected to x1 + 2x2 + 3x3 8x1 + 15x2 + 80x3 8x1 + 80x2 + 15x3 100x1 + 10x2 + x3 >= 800 (5) 80x1 + 8x2 + 15x3 = 750 (6) x1 + 10x2 + 100x3 = 80 (7) x1 >= 4 (8) -8 >= x2 >= -80 (9) """ from numpy import * from scik...

Pianificare e gestire la raccolta dei rifiuti solidi urbani

Mezzi, personale e rotte sono alcune delle variabili da decidere quando si effettua la pianificazione di un servizio di raccolta di rifiuti. Variabili che ovviamente incidono sul costo e la qualità del servizio offerto: il costo inteso per esempio come numero di mezzi o di personale necessario; qualità intesa come per esempio come volume di rifiuti raccolti in una settimana. I vincoli da tenere in considerazione non sono pochi e non sono banali. Ad esempio, mezzi di raccolta diversi a seconda del luogo o del tipo di rifiuto da raccogliere; compatibilità tra personale e mezzi; norme contrattuali e consuetudini aziendali. Non mancano poi tutte le problematiche relative alla gestione giornaliera. Quindi personale malato; mezzi non disponibili; consuntivazione delle attività per la generazione delle paghe. Tutto questo per dire che le attività di pianificazione e gestione di un servizio di nettezza urbana non sono banali e che non possono essere affrontate senza un adeguato strumento in...