Introduzione a Python

Problemi di Ottimizzazione

Stefano Gualandi / @famo2spaghi / stefano.gualandi@gmail.com

Perché Python?

PRO:

  1. È semplice (no gestione diretta della memoria)
  2. È interattivo (interpretato, non compilato)
  3. È semplice programmare delle visualizzazioni
  4. Ha un elevato numero di librerie semplici da installare

CONTRO:

  1. Non é efficiente come un linguaggio compilato
  2. L'identazione del codice fa parte della semantica
  3. L'identazione del codice fa parte della semantica
  4. L'identazione del codice fa parte della semantica

Possibili alternative

Possibili alternative per questo corso:

  1. Algebraic Modeling Programming Language (AMPL). Libro con capitoli gratuiti in .pdf
  2. Optimization Programming Language venduto da IBM, abbinato solo al sover IBM-CPLEX
  3. Julia, sviluppatto al MIT. Ha un crescente supporto per problemi di ottimizzazione

Ambiente di lavoro

  1. Download Python dal sito: https://www.continuum.io/downloads
  2. Sotto Mac o Linux: $ ipython notebook
  3. Sotto Windows: $ ipython notebook

Introduzione a Python

  1. Python é un linguaggio di programmazione dinamico e interpretato
  2. Non un type system per dichiarare variabili, parametri e funzioni nel codice (lo ha a runtime)
  3. Non si perde tempo in compilazione ...
  4. ... ma gli errori si manifestano in fase di esecuzione

Numeri, Stringhe, e altri tipi

Link utili

Per domande:

stefano.gualandi@gmail.com