Introduzione a Lingo TM

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Introduzione a Lingo TM"

Transcript

1 Introduzione a Lingo TM Massimo Paolucci (paolucci@dist.unige.it) DIST Università di Genova 2001/2002 Lingo caratteristiche generali 2!E un software per la PL e IP, ma anche per problemi non lineari!permette di scrivere il problemi direttamente in termini di funzione obiettivo, vincoli e variabili (ciò che fa Lindo)!Permette di scrivere i programmi usando una sintassi simbolica (linguaggio di modellazione matematico) Rappresenta sommatorie, cicli ecc. Separa il modello dai dati

2 Lingo Definizione e soluzione di problemi 3! Esempio di input di un PL sulla carta Max Z = 3x E + 2x I xe + 2xI 6 2xE + xi 8 - xe + xi 1 xi 2 xe 0 xi 0 con Lingo max =3*xE+2*xI ; xe+2*xi<=6 ; 2*xE+xI<=8 ; -xe+xi<=1 ; xi<=2 ; non ci sono i vincoli di positività non c è la Z ci sono ; alla fine delle righe Lingo Definizione e soluzione di problemi 4! Esempio di input di un PL definito il modello il bottone attiva il processo di soluzione (dopo la verifica sintattica)

3 Lingo Definizione e soluzione di problemi 5! Esempio di input di un PL la finestra di soluzione fornisce svariate informazioni Lingo Definizione e soluzione di problemi 6! Esempio di input di un PL il report mostra il risultato ottenuto Primale informazioni sul duale

4 7! Struttura di un modello Lingo MODEL: [ TITLE <nome modello>; ] SETS: <definizione degli insieme di indici, delle variabili e delle costanti> END ENDSETS DATA: <assegnazioni valori alle costanti> <definizione della funzione obiettivo e dei vincoli> Ogni riga (ad eccezione di quelle che identificano le parti del modello) deve terminare per ; Commenti: testo tra! e ; 8! SETS: Insiemi e variabili Le variabili non sono tipizzate I Set sono classi di elementi che possiedono attributi che possono essere quantificati Si possono dichiarare Array o creare oggetti che assumono tanti valori quanti gli elementi di uno o più insieme Sintassi : setname [/ member_list /] [: attribute_list]; Esempio Vettori: variabili o costanti definite su un insieme SET PRIMOINSIEME /ELE1,ELE2/:PROPRIETÀ; CASE /CASA2,CASA1/:COLORE; ENDSET In questo modo sono stati creati i seguenti vettori: [PROPRIETÀ(ELE1),PROPRIETÀ(ELE2)] [COLORE(CASA1),COLORE(CASA2)] Definizione implicita: WAREHOUSES / 1..6/: CAPACITY;

5 9! SETS: Matrici (variabili o costanti definite su più insiemi) Sono insiemi derivati: setname( parent_set_list) [ / member_list /] [: attribute_list]; Esempio SET PRIMOINSIEME /ELE1,ELE2/:PROPRIETÀ; CASE /CASA2,CASA1/:COLORE; LINKS(PRIMOINSIEME,CASE):PREZZO,VOLUME; ENDSET Si è creato un template di una struttura: Links=(Ele1 Casa1, Ele2 Casa1, Ele1 Casa2, Ele2 Casa2) = ( Ele1 Casa1, Ele1 Casa2 Ele2 Casa1, Ele2 Casa2 ) Prezzo(i, j) e Volume(i, j) sono due matrici i cui elementi sono definiti dalle combinazioni dei due insiemi, e.g., Prezzo(Ele2, Casa1) 10! SETS: Sottinsiemi di elementi Per default un insieme derivato (o matrice) ha tanti elementi quanti il prodotto cartesiano degli insiemi da cui deriva PRODUCT / A B/; MACHINE / M N/; WEEK / 1..2/; ALLOWED( PRODUCT, MACHINE, WEEK); Si possono costruire sottinsiemi del prodotto cartesiano esplicitamente o attraverso condizioni ALLOWED( PRODUCT, MACHINE, WEEK) / A M 1, A N 2, B N 1/; HEAVY_DUTY( TRUCKS) CAPACITY( &1) #GT# 50000:; inizio condizione indice riferito al primo insieme derivato (TRUCKS)

6 11! DATA: assegnazione valori alle costanti La sintassi: object_list = value_list; Esempi DATA PROPRIETÀ=3,4; COLORE=ROSSO,VERDE; In questo modo sono stati assegnati i valori agli attributi degli insiemi : PROPRIETÀ (ELE1)=3, PROPRIETÀ (ELE2)=4 [COLORE(CASA1),COLORE(CASA2)]=[ROSSO,VERDE] 12! DATA: assegnazione valori alle costanti Altri esempi significativi... SETS: SET1 /A, B, C/: X, Y; ENDSETS DATA: X, Y = 1, 4, 2, 5, 3, 6;... inizializzazione delle dimensioni nella sezione DATA SETS: SET1: X, Y; ENDSETS DATA: SET1, X, Y = A 1 4 B 2 5 C 3 6;

7 13! DATA: assegnazione valori alle costanti Inizializzazione con un unico valore costante SETS: DAYS / MO, TU, WE, TH, FR, SA, SU/:NEEDS; ENDSETS DATA: NEEDS = 20; Attributi in parte costanti ed in parte variabili SETS: YEARS /1..5/: CAPACITY; ENDSETS DATA: CAPACITY = 34, 34,,, ; 14! Input dati runtime (what if analysis) Le costanti possono essere specificate runtime lasciandole indicate con? DATA: INFLATION_RATE =?; Si possono importare dati da fogli Excel, Database oppure file worksheet filename, data range object_list [ data_source [, table_name [, column_name_1 [, ]]]]); Esiste anche una section INIT per inizializzare le variabili INIT: X =.999; ENDINIT

8 15! Funzioni ricorsive Funzione da richiamare Condizione da verificare set_operator (set_name /condition : expression) Insieme su cui lavorare Espressione da eseguire 16! Funzioni ricorsive (set_name [ conditions ] : (set_name [ conditions ] : (set_name [ conditions ] : (set_name [ conditions ] : expression)

9 17! Funzioni per la specifica delle caratteristiche delle variabili Funzioni (lower bound, x, upper bound) L x x x variabile x Z 18! (InsiemeA( ) (0, x, 1) ) Impone per tutte le variabili x definite sui valori dell InsiemeA di restare tra 0 ed 1 : L x i U i InsiemeA Le relazioni (vincoli, obiettivo) possono essere etichettate [etichetta] <relazione> (InsiemeA( ) (0, x, 1) )

10 19! Valore assoluto di x Coseno di x, dove x è l angolo in radianti e x -1 se x < 0, e +1 se x ) (set_name) Seno di x, dove x è l angolo in radianti E il più grande valore tra una lista di scalari E il più piccolo valore tra una lista di scalari Tangente di x, dove x è l angolo in radianti Fornisce il numero di elementi nel set 20! Operatori logici #EQ# = #NE# #GT# > #GE# #LT# < #LE# #AND# #OR# #NOT#

11 21! Un esempio di modello: un problema di Blending Descrizione: " Il manager della produzione di un impianto di raffinamento di carburanti vuole massimizzare il profitto che deriva dalla produzione di due prodotti finiti, carburanti indicati con Regular e Premium ottenuti dalla miscelazione delle materie prime, butane, catalytic reformate, naphtha. (prodotto = mat.prima 1 + mat.prima 2 + mat. prima 3) " I prodotti finali si differenziano tra loro perchè devono soddisfare dei requisiti di qualità minimi e massimi in termini di octane, vapor pressure, and volatility. " Le materie prime hanno una capacità limitata ed un costo unitario noto. " Sono date anche le richieste minime per ciascuno dei due prodotti finiti, la quantità massima che può essere venduta ed il valore del ricavo unitario dalla loro vendita. " Si vuole determinare quanto produrre dei due prodotti e come produrre, ossia la miscelazione più conveniente delle componenti che soddisfi le specifiche di produzione dei due carburanti 22! Un esempio di modello: un problema di Blending I numeri in gioco " Disponibilità e costi unitari delle materie prime : butane: 1000, 7.3 catalytic reformate: 4000, 18.2 naphtha: 5000, 12.5 " Livello di qualità delle materie prime octane vapor pressure volatility butane catalytic reformate naphtha " Limiti sulla domanda: Regular: min=4000, max=8000 Premium: min=2000, max=6000

12 23! Un esempio di modello: un problema di Blending I numeri in gioco " Prezzo unitario dei prodotti finiti : Regular : 18.4 Premium : 22 " Limiti di qualità dei prodotti: MASSIMI octane vapor pressure volatility MINIMI octane vapor pressure volatility Regular Regular Premium Premium ! Formulazione sulla carta... to be continued

Lingo caratteristiche generali

Lingo caratteristiche generali Introduzione a Lingo TM www.lindo.com Lingo caratteristiche generali E un software per la PL e PLI, ma anche per problemi non lineari Permette di scrivere il problemi direttamente in termini di funzione

Dettagli

Introduzione a Lingo TM

Introduzione a Lingo TM Introduzione a Lingo TM www.lindo.com Massimo Paolucci (paolucci@dist.unige.it) DIST Università di Genova 2001/2002 Lingo caratteristiche generali 2 E un software per la PL e IP, ma anche per problemi

Dettagli

LINGO -

LINGO - . p.1/13 LINGO - www.lindo.com Linear . p.1/13 LINGO - www.lindo.com Linear INteractive and . p.1/13 LINGO - www.lindo.com Linear INteractive and General . p.1/13 LINGO - www.lindo.com Linear INteractive

Dettagli

INTRODUZIONE A LINGO. Dispense a cura di Antonio Tiano

INTRODUZIONE A LINGO. Dispense a cura di Antonio Tiano INTRODUZIONE A LINGO Dispense a cura di Antonio Tiano 1 LINGO (LINear Generalized Optimization) E un software che consente di : Risolvere problemi di ottimizzazione di vario tipo (PL, PQ, PNL) in presenza

Dettagli

LOGISTICA. Laurea Specialistica-Università di Mantova Anno accademico 2007-2008. Antonio Tiano

LOGISTICA. Laurea Specialistica-Università di Mantova Anno accademico 2007-2008. Antonio Tiano LOGISTICA Laurea Specialistica-Università di Mantova Anno accademico 2007-2008 Antonio Tiano Dipartimento di Informatica e Sistemistica Università di Pavia Tel: 0382-985361-Fax:0382-985373 email:antonio@control1.unipv.it

Dettagli

Introduzione al MATLAB c Parte 3 Script e function

Introduzione al MATLAB c Parte 3 Script e function Introduzione al MATLAB c Parte 3 Script e function Lucia Gastaldi DICATAM - Sezione di Matematica, http://www.ing.unibs.it/gastaldi/ Indice 1 M-file di tipo Script e Function Script Function 2 Gestione

Dettagli

Introduzione al MATLAB c Parte 3 Script e function

Introduzione al MATLAB c Parte 3 Script e function Introduzione al MATLAB c Parte 3 Script e function Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 M-file di tipo Script e Function Script Function 2 Gestione dell

Dettagli

Introduzione al MATLAB c Parte 3 Script e function

Introduzione al MATLAB c Parte 3 Script e function Introduzione al MATLAB c Parte 3 Script e function Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 M-file di tipo Script e Function Script Function 2 Gestione dell

Dettagli

Miscelazione di benzine

Miscelazione di benzine Miscelazione di benzine Una raffineria deve miscelare 4 tipi di petrolio grezzo per ottenere 3 tipi di benzina. La tabella seguente mostra la massima quantità disponibile per ogni tipo di petrolio grezzo

Dettagli

Introduzione. Corso di Metodi Numerici. 06 Marzo 2019

Introduzione. Corso di Metodi Numerici. 06 Marzo 2019 Introduzione 06 Marzo 2019 MATLAB - Introduzione MATrix LABoratory - una calcolatrice per matrici Piattaforma per il calcolo scientifico e la progettazione Linguaggio di programmazione ad alto livello

Dettagli

Introduzione a Matlab

Introduzione a Matlab Matlab è: Abbreviazione di MATrix LABoratory Ambiente di sviluppo per il calcolo numerico (non indicato per il calcolo simbolico) Linguaggio di programmazione interpretato (non compilato) 1 Matlab è inoltre:

Dettagli

Laboratorio di Matlab

Laboratorio di Matlab Laboratorio di Matlab Alessandro Formaglio Dipartimento di Ingegneria dell Informazione, Università di Siena alex@dii.unisi.it http://www.dii.unisi.it/ control/matlab/labmatlab.html Martedì 7 Luglio 2009

Dettagli

MATLAB Elementi di grafica Costrutti di programmazione

MATLAB Elementi di grafica Costrutti di programmazione MATLAB Elementi di grafica Costrutti di programmazione Operazioni punto Le operazioni punto agiscono su array che abbiano le stesse dimensioni:.* prodotto elemento per elemento./ divisione elemento per

Dettagli

Evoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN

Evoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

Corso di Ricerca Operativa Esercitazione del 07/10/2015

Corso di Ricerca Operativa Esercitazione del 07/10/2015 Corso di Ricerca Operativa Esercitazione del 7/1/15 Esercizio 1 Un azienda ha a disposizione reparti per produrre due tipi di farina A e B per alimentazione animale, che si vendono rispettivamente a 3

Dettagli

Uso di MPL e Solver per problemi LP ed ILP. Uso di Modelli Matematici (1)

Uso di MPL e Solver per problemi LP ed ILP. Uso di Modelli Matematici (1) Uso di MPL e Solver per problemi LP ed ILP Michele Monaci e Daniele Vigo D.E.I.S. Università di Bologna dvigo@deis.unibo.it rev. 3.0 ottobre 2002 Uso di Modelli Matematici (1) Problema della dieta: n possibili

Dettagli

Uso avanzato di MATLAB

Uso avanzato di MATLAB Uso avanzato di MATLAB Miscione Giuseppe g.miscione@virgilio.it Indice Funzioni matematiche Funzioni di arrotondamento Disegnare funzioni Creare script Controllo del flusso di esecuzione 1 Funzioni matematiche

Dettagli

Esercitazione per il corso di Ricerca Operativa 10 novembre 2009

Esercitazione per il corso di Ricerca Operativa 10 novembre 2009 A.a. 2009-10 Esercitazione n o 1 Esercitazione per il corso di Ricerca Operativa 10 novembre 2009 Laurea magistrale in Ing. Meccanica e Ing. dei Sistemi di Trasporto Laurea in Ing. dei Trasporti Formulazione

Dettagli

Laboratorio di Python

Laboratorio di Python Laboratorio di Python Matrici con Liste Lab09 5 Aprile 2017 Outline Correzione esercizi per oggi Matrici Teoria Esercizi Esercizi per casa Esercizio 1 per casa Scrivere una funzione che verifica se una

Dettagli

Esercitazione n o 3 per il corso di Ricerca Operativa

Esercitazione n o 3 per il corso di Ricerca Operativa Esercitazione n o 3 per il corso di Ricerca Operativa Ultimo aggiornamento October 17, 2011 Fornitura acqua Una città deve essere rifornita, ogni giorno, con 500 000 litri di acqua. Si richiede che l acqua

Dettagli

Esercitazione 00 Introduzione a Matlab

Esercitazione 00 Introduzione a Matlab 1 Esercitazione 00 Introduzione a Matlab Corso di Strumentazione e Controllo di Impianti Chimici Prof. Davide Manca Tutor: Giuseppe Pesenti PSE-Lab 2 Tutor: Giuseppe Pesenti giuseppe.pesenti@polimi.it

Dettagli

Ricerca Operativa. G. Liuzzi. Lunedí 20 Aprile 2015

Ricerca Operativa. G. Liuzzi. Lunedí 20 Aprile 2015 1 Lunedí 20 Aprile 2015 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR Rilassamento di un problema Rilassare un problema di Programmazione Matematica vuol dire trascurare alcuni (tutti i)

Dettagli

Gruppo esercizi 1: Vettori e matrici [E.1] Date le due matrici e il vettore

Gruppo esercizi 1: Vettori e matrici [E.1] Date le due matrici e il vettore Gruppo esercizi 1: Vettori e matrici [E.1] Date le due matrici e il vettore A = 1 2 0 0 2 1 B = 2 1 0 1 0 2 u = (1, 2, 1), 3 2 1 1 1 1 [E.2] Date le due matrici e il vettore A = 1 2 0 0 1 0 0 1 3 B = 1

Dettagli

Modelli di programmazione lineare. Il metodo grafico è basato su linearità della funzione obiettivo linearità dei vincoli

Modelli di programmazione lineare. Il metodo grafico è basato su linearità della funzione obiettivo linearità dei vincoli Ricerca Operativa 2. Modelli di Programmazione Lineare Modelli di programmazione lineare Il metodo grafico è basato su linearità della funzione obiettivo linearità dei vincoli Sotto queste ipotesi (come

Dettagli

Problemi di Ottimizzazione

Problemi di Ottimizzazione Problemi di Ottimizzazione Obiettivo: misura della qualità di una soluzione. Vincoli: condizioni che devono essere soddisfatte per ottenere una soluzione ammissibile. Problema di Ottimizzazione: determina

Dettagli

MATLAB c. Lucia Gastaldi Dipartimento di Matematica Lezione 4 (15 ottobre 2003)

MATLAB c. Lucia Gastaldi Dipartimento di Matematica  Lezione 4 (15 ottobre 2003) MATLAB c M-file. Lucia Gastaldi Dipartimento di Matematica http://dm.ing.unibs.it/gastaldi/ Lezione 4 (15 ottobre 2003) Esercizio Problema 3: la successione di funzioni f n (x) = (x 2 x) n per 0 x 1 è

Dettagli

Indice generale. Introduzione...ix. Strumenti per sviluppare applicazioni...1

Indice generale. Introduzione...ix. Strumenti per sviluppare applicazioni...1 Introduzione...ix Applicazioni basate su spreadsheet... x Aggiornamento... xii Sicurezza... xii Tipi di applicazioni... xii Pronto impiego... xiii Tabelle personali...xiv Applicazioni condivisibili...xv

Dettagli

Foglio di esercizi n.1

Foglio di esercizi n.1 Foglio di esercizi n.. Forma Strategica. Due persone hanno di fronte un bottino a ciascuno è permesso prendere 2 monete o sola. Se si decide di prenderne 2 queste devono essere date all altra persona,

Dettagli

Esercitazione n o 6 per il corso di Ricerca Operativa

Esercitazione n o 6 per il corso di Ricerca Operativa Esercitazione n o 6 per il corso di Ricerca Operativa Il problema è stato tratto dal libro C. Mannino, L.Palagi, M. Roma. Complementi ed esercizi di Ricerca Operativa, Edizioni Ingegneria 2000, 1998, ISBN:

Dettagli

RICERCA OPERATIVA (a.a. 2015/16) Nome: Cognome: Matricola:

RICERCA OPERATIVA (a.a. 2015/16) Nome: Cognome: Matricola: o Appello // RICERCA OPERATIVA (a.a. /) Nome: Cognome: Matricola: ) Si consideri il seguente problema di PL: max x + x x x x x x + x x Si applichi l algoritmo del Simplesso Duale, per via algebrica, a

Dettagli

y (b) f(x, y) = y log x sin x (c) f(x, y) = tan y (d) f(x, y) = e x y (f) f(x, y) = cos(x 2 + y 2 )

y (b) f(x, y) = y log x sin x (c) f(x, y) = tan y (d) f(x, y) = e x y (f) f(x, y) = cos(x 2 + y 2 ) FUNZIONI DI PIÙ VARIABILI. Siano date le seguenti funzioni: (a) f(x, y) = 3x + y (c) h(x, y) = x y (b) g(x, y) = xy (d) k(x, y) = x + y Determinare e disegnare nel piano cartesiano il dominio delle funzioni

Dettagli

Introduzione a MATLAB

Introduzione a MATLAB MATLAB=MATrix LABoratory Introduzione a MATLAB È un sistema in cui ogni dato è rappresentato sotto forma di una matrice di numeri. Permette di: Effettuare operazioni tra matrici. Rappresentare in forma

Dettagli

Università degli Studi di Ferrara Corso di Laurea in Chimica - A.A

Università degli Studi di Ferrara Corso di Laurea in Chimica - A.A Università degli Studi di Ferrara Corso di Laurea in Chimica - A.A. 2018-2019 Programmazione Lezione 12A Esercizi in MATLAB Docente: Lorenzo Caruso lorenzo.caruso@unife.it Nelle lezioni precedenti Matlab:

Dettagli

Francesca Mazzia Dipartimento Interuniversitario di Matematica Università di Bari. MATLAB: lezione introduttiva

Francesca Mazzia Dipartimento Interuniversitario di Matematica Università di Bari. MATLAB: lezione introduttiva 1 Francesca Mazzia Dipartimento Interuniversitario di Matematica Università di Bari MATLAB: lezione introduttiva MATLAB (MATrix LABoratory): PSE per il scientifico ad alte prestazioni e la visualizzazione,

Dettagli

Esercitazioni con GNU Octave

Esercitazioni con GNU Octave appendice A Esercitazioni con GNU Octave GNU Octave può essere scaricato dalla seguente pagina: https://www.gnu.org/software/octave/download.html L elenco dei concetti, delle funzioni e degli operatori

Dettagli

AMPL Sintassi ed Esempi

AMPL Sintassi ed Esempi Dipartimento di Matematica Università di Padova Corso di Laurea Informatica Outline Sintassi Elementi di un problema Insiemi Parametri Variabili Funzione Obiettivo Vincoli Dati Insiemi Gli insiemi definiscono

Dettagli

Laboratorio di Ricerca Operativa Cad Ingegneria Gestionale (BGER3 - I semestre) a.a Homework n 10. Docente: Laura Palagi

Laboratorio di Ricerca Operativa Cad Ingegneria Gestionale (BGER3 - I semestre) a.a Homework n 10. Docente: Laura Palagi Laboratorio di Ricerca Operativa Cad Ingegneria Gestionale (BGER3 - I semestre) a.a. 2012-13 Homework n 10 Docente: Laura Palagi Smaltimento dei rifiuti solidi urbani HOMEWORK N 10 Francesco Cambiotti

Dettagli

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione For Permette di eseguire un blocco

Dettagli

AMPL: Esempi. F. Rinaldi. Corso di Laurea Matematica. Dipartimento di Matematica Università di Padova. Esempi di Modellazione in AMPL

AMPL: Esempi. F. Rinaldi. Corso di Laurea Matematica. Dipartimento di Matematica Università di Padova. Esempi di Modellazione in AMPL Dipartimento di Matematica Università di Padova Corso di Laurea Matematica Outline Esempi di Modellazione in AMPL Esempio 2 Problema della Dieta In questo problema é data una lista di cibi, a ciascuno

Dettagli

MICROSOFT EXCEL FORMULE E FUNZIONI

MICROSOFT EXCEL FORMULE E FUNZIONI MICROSOFT EXCEL FORMULE E FUNZIONI Lezione 1.2 a.a. 2016-2017 Ing. Giulia Fiscon Sommario Introduzione Microsoft Excel Lavorare con i fogli di calcolo Riferimenti di cella Formule e Funzioni Funzioni logiche

Dettagli

RICERCA OPERATIVA. Tema d esame del 04/03/2008 (Simulazione)

RICERCA OPERATIVA. Tema d esame del 04/03/2008 (Simulazione) RICERCA OPERATIVA Tema d esame del 04/03/2008 (Simulazione) COGNOME: NOME: MATRICOLA:. Una nota azienda automobilistica produce due modelli di auto (un utilitaria e una berlina), che rivende con un guadagno

Dettagli

Evoluzione del C 07/04/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 16 IL LINGUAGGIO C

Evoluzione del C 07/04/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 16 IL LINGUAGGIO C LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 16 IL LINGUAGGIO C Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

COMPITO DI RICERCA OPERATIVA. max x 1 + 2x 2 + x 3 x 1 x 2 + x 3 = 1 2x 1 + 3x 2 + x 4 = 2

COMPITO DI RICERCA OPERATIVA. max x 1 + 2x 2 + x 3 x 1 x 2 + x 3 = 1 2x 1 + 3x 2 + x 4 = 2 COMPITO DI RICERCA OPERATIVA ESERCIZIO. (9 punti) Sia dato il seguente problema di PL: max x + 2x 2 + x 3 x x 2 + x 3 = 2x + 3x 2 + x 4 = 2 x, x 2, x 3, x 4 0 Si determini il duale del problema ( punto).

Dettagli

Introduzione all ambiente MATLAB. Richiami II. Analisi Numerica - A.A. 2007/08

Introduzione all ambiente MATLAB. Richiami II. Analisi Numerica - A.A. 2007/08 Introduzione all ambiente MATLAB Richiami II Programmazione MATLAB MATLAB non è un vero e proprio linguaggio di programmazione, ma permette comunque di realizzare programmi utilizzando le classiche strutture

Dettagli

Modellazione GAMS. Sintassi di Base, Esempi. Domenico Salvagnin

Modellazione GAMS. Sintassi di Base, Esempi. Domenico Salvagnin Modellazione GAMS Sintassi di Base, Esempi Domenico Salvagnin GAMS General Algebraic Modeling System http://www.gams.com descrizione problema di ottimizzazione in notazione quasi algebrica possibilità

Dettagli

FONDAMENTI DI INFORMATICA. Prof. Alfredo Accattatis Tutor: prof. Venturino Taggi

FONDAMENTI DI INFORMATICA. Prof. Alfredo Accattatis Tutor: prof. Venturino Taggi FONDAMENTI DI INFORMATICA Prof. Alfredo Accattatis (accattatis@ing.uniroma2.it) Tutor: prof. Venturino Taggi (taggi@ing.uniroma2.it) 2 Fondamenti di Informatica Argomenti Approfondimenti sui floating-point:

Dettagli

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. Excel VBA VBA Visual Basic for Application VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. 2 Prima di iniziare. Che cos è una variabile?

Dettagli

Introduzione all ambiente MATLAB. Richiami II. Calcolo Numerico - A.A. 2008/09

Introduzione all ambiente MATLAB. Richiami II. Calcolo Numerico - A.A. 2008/09 Introduzione all ambiente MATLAB Richiami II Programmazione MATLAB MATLAB non è un vero e proprio linguaggio di programmazione, ma permette comunque di realizzare programmi utilizzando le classiche strutture

Dettagli

COMPITO DI RICERCA OPERATIVA. (5 punti) Sia dato il seguente problema di PL: min x 1 + x 2 x 1 + x 2 3 x 1 + x 2 2 2x 1 + x 2 3.

COMPITO DI RICERCA OPERATIVA. (5 punti) Sia dato il seguente problema di PL: min x 1 + x 2 x 1 + x 2 3 x 1 + x 2 2 2x 1 + x 2 3. COMPITO DI RICERCA OPERATIVA ESERCIZIO 1. (5 punti) Sia dato il seguente problema di PL: min x 1 + x 2 x 1 + x 2 x 1 + x 2 2 2x 1 + x 2 x 1 0 x 2 0 Si trasformi questo problema in forma standard e lo si

Dettagli

Array in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica

Array in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica Array in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: array DIS - Dipartimento di informatica e sistemistica 1 / 25 Cosa vedremo

Dettagli

Scopo del laboratorio

Scopo del laboratorio p. 1/1 Scopo del laboratorio Imparare ad usare programmi che implementino metodi di ottimizzazione: simplesso, branch and bound ecc. utilizzarli per risolvere un problema proposto Modellatori Solver p.

Dettagli

Preappello di metodi matematici per le decisioni economiche e aziendali A

Preappello di metodi matematici per le decisioni economiche e aziendali A UNIVERSITÀ DEGLI STUDI ROMA TRE Preappello di metodi matematici per le decisioni economiche e aziendali 11-12-2018 A Candidato (cognome e nome)......... Matricola o CF...... Esercizio 1 1) Data la matrice

Dettagli

PROVE D'ESAME 1997/98

PROVE D'ESAME 1997/98 PROVE D'ESAME 1997/98 PROVA PARZIALE DEL 28/11/1997 1) Si consideri il seguente problema di programmazione lineare P: min z = x 1 + 2x 2 s.t. x 1 + x 2 6 2x 1 + x 2 10 x 1 4 x 1, x 2 0 a - Scrivere le

Dettagli

Controllo di flusso negli script: if-then-else

Controllo di flusso negli script: if-then-else Controllo di flusso negli script: if--else Il coman condizionale if condition_command true_commands else false_commands esegue il coman condition command e utilizza il suo exit status per decidere se eseguire

Dettagli

Introduzione al MATLAB c Parte 2 Funzioni

Introduzione al MATLAB c Parte 2 Funzioni Introduzione al MATLAB c Parte 2 Funzioni Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 Funzioni matematiche Assegnazione di funzioni 2 Grafico di funzione in

Dettagli

2 a lezione - laboratorio

2 a lezione - laboratorio 2 a lezione - laboratorio Corso di Laurea Ingegneria CIVILE Laurea Specialistica Ingegneria CHIMICA ed AMBIENTE a.a 2003-2004 Funzioni matematiche elementari Round(x) Arrotonda all intero più vicino Fix(x)

Dettagli

Matematica con esercitazioni, Modulo 2. Analisi matematica. Diario delle lezioni.

Matematica con esercitazioni, Modulo 2. Analisi matematica. Diario delle lezioni. Matematica con esercitazioni, Modulo. Analisi matematica. Diario delle lezioni. Laurea triennale Chimica e tecnologie per l ambiente e per i materiali. Rimini Avvertenza per gli studenti: il libro di testo

Dettagli

Matlab. 1 Introduzione

Matlab. 1 Introduzione Matlab 1 Introduzione Il linguaggio Matlab é un linguaggio interattivo; ció significa che non necessita della stesura di un programma per poter essere usato, ma puó eseguire le istruzioni date dall utente

Dettagli

Introduzione a Python e Gurobi

Introduzione a Python e Gurobi Introduzione a Python e Gurobi Introduzione Python è un linguaggio di programmazione ad alto livello, rilasciato pubblicamente per la prima volta nel 1991 dal suo creatore Guido van Rossum, programmatore

Dettagli

8 Introduzione MATLAB

8 Introduzione MATLAB 8.1 Basi Per pulire il workspace (eliminare tutte le variabili esistenti): 1 clear Per pulire la finestra dei comandi (command window): 1 clc In MATLAB non è necessario dichiarare le variabili ed esse

Dettagli

STATISTICA LAB. Analisi dei dati con R - Ex 2. Marta Nai Ruscone. LIUC - Università Carlo Cattaneo, Castellanza STATISTICA LAB

STATISTICA LAB. Analisi dei dati con R - Ex 2. Marta Nai Ruscone. LIUC - Università Carlo Cattaneo, Castellanza STATISTICA LAB Analisi dei dati con R - Ex 2 Marta Nai Ruscone LIUC - Università Carlo Cattaneo, Castellanza Funzioni Una funzione è un insieme di comandi elementari. In R sono disponibili un gran numero di funzioni

Dettagli

1) Data la seguente istanza di TSP (grafo completo con 5 nodi): c 12 = 52; c 13 = 51; c 14 = 40; c 15 = 53; c 23 = 44;

1) Data la seguente istanza di TSP (grafo completo con 5 nodi): c 12 = 52; c 13 = 51; c 14 = 40; c 15 = 53; c 23 = 44; 1) Data la seguente istanza di TSP (grafo completo con 5 nodi): c 12 = 52; c 13 = 51; c 14 = 40; c 15 = 53; c 23 = 44; c 24 = 15; c 25 = 12; c 34 = 32; c 35 = 55; c 45 = 24 Si calcoli l ottimo duale (formulazione

Dettagli

Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab

Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab Metodi di Analisi dei Dati Sperimentali AA /2010 Pier Luca Maffettone Elementi di Matlab Sommario Introduzione Variabili Manipolazione di elementi Creazione di vettori/matrici Operazioni elementari Funzioni

Dettagli

L utility Unix awk [Aho-Weinberger-Kernighan]

L utility Unix awk [Aho-Weinberger-Kernighan] L utility Unix awk [Aho-Weinberger-Kernighan] L utility awk serve per processare file di testo secondo un programma specificato dall utente. L utility awk legge riga per riga i file ed esegue una o più

Dettagli

Gruppo esercizi 1: Dominio [E.1] Disegnare nel piano cartesiano il dominio della funzione

Gruppo esercizi 1: Dominio [E.1] Disegnare nel piano cartesiano il dominio della funzione Gruppo esercizi 1: Dominio [E.1] Disegnare nel piano cartesiano il dominio della funzione [E.2] Disegnare nel piano cartesiano il dominio della funzione ( 4 x 2 y 2) ) (1 x 2 y2 y + x 2. 4 1 y ex y y x

Dettagli

8 Introduzione MATLAB

8 Introduzione MATLAB 8.1 Basi Per pulire il workspace (eliminare tutte le variabili esistenti): 1 clear Per pulire la finestra dei comandi (command window): 1 clc In MATLAB non è necessario dichiarare le variabili ed esse

Dettagli

Domande d esame. Ricerca Operativa. G. Liuzzi. Giovedí 14 Maggio 2015. 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR

Domande d esame. Ricerca Operativa. G. Liuzzi. Giovedí 14 Maggio 2015. 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR 1 Giovedí 14 Maggio 2015 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR Geometria di R n 1 Dare la definizione di Poliedro e Vertice di un Poliedro 2 Dare la definizione di Poliedro e di Politopo

Dettagli

A1- Array MODULO Java3

A1- Array MODULO Java3 Dare una breve descrizione dei termini introdotti: (A) CONOSCENZA TERMINOLOGICA Dichiarazione array Allocazione array Inizializzazione array Proprietà length Vettore Matrice Indice Componenti Indirizzo

Dettagli

Teoria della Dualità: I Introduzione

Teoria della Dualità: I Introduzione Teoria della Dualità: I Introduzione Daniele Vigo D.E.I.S. Università di Bologna dvigo@deis.unibo.it rev. 1.2 Maggio 2004 Dualità Per ogni problema PL, detto primale, ne esiste un altro, detto duale, costruito

Dettagli

Corso di Laboratorio di Sistemi Operativi

Corso di Laboratorio di Sistemi Operativi Corso di Laboratorio di Sistemi Operativi Lezione 4 Alessandro Dal Palù email: alessandro.dalpalu@unipr.it web: www.unipr.it/~dalpalu Approfondimento su make http://http://capone.mtsu.edu/csdept/facilitiesandresources/make.htm

Dettagli

Vediamo come risolvere un problema di PL con Excel. Riprendiamo un esercizio già visto.

Vediamo come risolvere un problema di PL con Excel. Riprendiamo un esercizio già visto. Esempio di risoluzione di un problema di PL con Excel Vediamo come risolvere un problema di PL con Excel. Riprendiamo un esercizio già visto. Un azienda vinicola desidera produrre due tipi di vino: uno

Dettagli

Progetto e ottimizzazione di reti 2

Progetto e ottimizzazione di reti 2 Progetto e ottimizzazione di reti 2 Esercitazione AMPL A.A. 29-2 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma.it Università di Roma La Sapienza Dipartimento di Informatica

Dettagli

Esercizi svolti di Programmazione Lineare. a cura di Laura Scrimali Dipartimento di Matematica e Informatica Università di Catania

Esercizi svolti di Programmazione Lineare. a cura di Laura Scrimali Dipartimento di Matematica e Informatica Università di Catania Esercizi svolti di Programmazione Lineare a cura di Laura Scrimali Dipartimento di Matematica e Informatica Università di Catania Formulazione matematica e risoluzione grafica Esercizio Una pasticceria

Dettagli

Programmare. Condizioni logiche. Condizioni Logiche Costrutti Decisionali Costrutti di Ciclo

Programmare. Condizioni logiche. Condizioni Logiche Costrutti Decisionali Costrutti di Ciclo Programmare Condizioni Logiche Costrutti Decisionali Costrutti di Ciclo Condizioni logiche Le condizioni logiche sono istruzioni che fanno uso di: operatori relazionali (servono a confrontare il valore

Dettagli

Costrutti condizionali e iterativi

Costrutti condizionali e iterativi Costrutti condizionali e iterativi Introduction to Fortran 90 Paolo Ramieri, CINECA Aprile 2014 Strutture di controllo Le strutture di controllo permettono di alterare la sequenza di esecuzione delle istruzioni

Dettagli

1 Il metodo dei tagli di Gomory

1 Il metodo dei tagli di Gomory Il metodo dei tagli di Gomory Esercizio Sia dato il problema min(x x ) x + x (P 0 ) x + x x, x 0, interi. Calcolare la soluzione ottima applicando il metodo dei tagli di Gomory. Risoluzione Per applicare

Dettagli

INTRODUZIONE A MATLAB

INTRODUZIONE A MATLAB INTRODUZIONE A MATLAB INTRODUZIONE A MATLAB MATLAB (MATrix LABoratory) è un linguaggio di programmazione per applicazioni scientifiche (elaborazione numerica dei segnali, progetto di simulatori, sintesi

Dettagli

INTRODUZIONE A MATLAB. Introduzione. Calcolatrice base. Calcolatrice base. Variabili predefinite o speciali. Variabili predefinite o speciali

INTRODUZIONE A MATLAB. Introduzione. Calcolatrice base. Calcolatrice base. Variabili predefinite o speciali. Variabili predefinite o speciali INTRODUZIONE A MATLAB Introduzione M.R. Russo & M. Venturin Università degli Studi di Padova Dipartimento di Matematica Pura ed Applicata A.A. 2007/2008 Il nome MATLAB è acronimo di MATrix LABoratory.

Dettagli

Introduzione al Column Generation Caso di Studio: il Bin Packing Problem

Introduzione al Column Generation Caso di Studio: il Bin Packing Problem Introduzione al Column Generation Caso di Studio: il Bin Packing Problem November 15, 2014 1 / 26 Introduzione Il column generation è una metodologia che può essere usata per risolvere problemi di ottimizzazione

Dettagli

Matlab : le basi. Vediamo ora un esercizio di calcolo: Il volume di una sfera è dato da V=4*π*r 3 /3 dove r è il raggio.

Matlab : le basi. Vediamo ora un esercizio di calcolo: Il volume di una sfera è dato da V=4*π*r 3 /3 dove r è il raggio. Matlab : le basi Vediamo ora un esercizio di calcolo: Il volume di una sfera è dato da V=4*π*r 3 /3 dove r è il raggio. Usare Matlab per calcolare il raggio di una sfera che ha un volume maggiore del 30%

Dettagli

Indice PARTE A. Prefazione Gli Autori Ringraziamenti dell Editore La storia del C. Capitolo 1 Computer 1. Capitolo 2 Sistemi operativi 21 XVII XXIX

Indice PARTE A. Prefazione Gli Autori Ringraziamenti dell Editore La storia del C. Capitolo 1 Computer 1. Capitolo 2 Sistemi operativi 21 XVII XXIX Indice Prefazione Gli Autori Ringraziamenti dell Editore La storia del C XVII XXIX XXXI XXXIII PARTE A Capitolo 1 Computer 1 1.1 Hardware e software 2 1.2 Processore 3 1.3 Memorie 5 1.4 Periferiche di

Dettagli

Dati due punti sul piano calcolare la loro distanza

Dati due punti sul piano calcolare la loro distanza Introduzione al C Primo esempio in C Dati due punti sul piano calcolare la loro distanza Soluzione: la distanza fra due punti si calcola secondo il teorema di Pitagora, con la formula: y Distanza = (lato12

Dettagli

>> A = [1 2 3; 4 5 6; 7 8 9]; >> A

>> A = [1 2 3; 4 5 6; 7 8 9]; >> A Creazione di matrici Delimititatore di riga Delimititatore di matrice >> A = [1 2 3; 4 5 6; 7 8 9]; >> A = [... 1 2 3 4 5 6 7 8 9 ]; Entrambi i comandi creano la stessa matrice 3x3 Accedere agli elementi

Dettagli

Introduzione a Matlab

Introduzione a Matlab Introduzione a Matlab Ing. Anna Maria Vegni avegni@uniroma3.it 30/10/2008 Indice Indice... 2 Introduzione... 3 Help in Matlab... 4 Files di Matlab... 5 Le variabili in Matlab... 6 Matrici in Matlab...

Dettagli

Modulo di Ricerca Operativa 1 Canale J Z Tipologia di esercizi per la prima prova in itinere A.A

Modulo di Ricerca Operativa 1 Canale J Z Tipologia di esercizi per la prima prova in itinere A.A Modulo di Ricerca Operativa Canale J Z Tipologia di esercizi per la prima prova in itinere A.A. 2002 03 Esercizi di Geometria della Programmazione lineare Determinare, se esistono, dei vertice dei poliedri

Dettagli

Introduzione a Matlab

Introduzione a Matlab INFORMATICA B Ingegneria Elettrica Introduzione a Matlab Introduzione a Matlab Matlab (MATrix LABoratory) è uno strumento per il calcolo scientifico ed ingegneristico Matlab facilita lo sviluppo di programmi

Dettagli

Corso di Ricerca Operativa Prova in itinere del 06/11/2015

Corso di Ricerca Operativa Prova in itinere del 06/11/2015 Corso di Ricerca Operativa Prova in itinere del 6/11/215 (Cognome) (Nome) (Matricola) Esercizio 1. Un personal trainer deve preparare un piano di allenamento settimanale di 8 ore combinando diverse attività

Dettagli

Sommario PREFAZIONE...XI CAPITOLO 1: INTRODUZIONE AI COMPUTER, A INTERNET E AL WEB... 1 CAPITOLO 2: INTRODUZIONE ALLA PROGRAMMAZIONE IN C...

Sommario PREFAZIONE...XI CAPITOLO 1: INTRODUZIONE AI COMPUTER, A INTERNET E AL WEB... 1 CAPITOLO 2: INTRODUZIONE ALLA PROGRAMMAZIONE IN C... Sommario PREFAZIONE...XI Aggiornamenti e novità... xi Lo scopo di questo libro... xii Diagramma delle dipendenze... xii La metodologia di insegnamento... xiii Panoramica sul libro... xvi Ringraziamenti...

Dettagli

Matlab: introduzione

Matlab: introduzione Matlab: introduzione Daniele Loiacono, Vittorio Zaccaria Informatica B - Codice Corso: 081369 - A.A. 2010/2011 INGEGNERIA MECCANICA (BV) - INGEGNERIA IV (1 liv.) - Scaglione S - Z INGEGNERIA ENERGETICA

Dettagli

Il modello duale. Capitolo settimo. Introduzione

Il modello duale. Capitolo settimo. Introduzione Capitolo settimo Il modello duale Introduzione Il modello duale e la teoria della dualità assumono una grande importanza nella teoria della programmazione matematica. In questo testo i modelli primale

Dettagli

Il computer. Il case e l'unità di elaborazione. Il computer, una macchina aggiornabile.

Il computer. Il case e l'unità di elaborazione. Il computer, una macchina aggiornabile. Materia: INFORMATICA Classe 1Q Prof.ssa Mazzi Cinzia IL COMPUTER Hardware e software. Il computer. Il case e l'unità di elaborazione. Il computer, una macchina aggiornabile. Le parti che formano un computer.

Dettagli

Introduzione alla programmazione in C(++)

Introduzione alla programmazione in C(++) Testi Testi Consigliati: Introduzione alla programmazione in C(++) A. Kelley & I. Pohl C didattica e programmazione A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. D. M. M. Ritchie

Dettagli

Informatica Applicata al Suono Tutorial Matlab

Informatica Applicata al Suono Tutorial Matlab Prof. Mario Malcangi malcangi@di.unimi.it MATLAB è un linguaggio di alto livello e un ambiente interattivo per il calcolo numerico, l'analisi e la visualizzazione dei dati e la programmazione. MATLAB consente

Dettagli

Introduzione a MATLAB

Introduzione a MATLAB UNIVERSITA DEGLI STUDI DI PAVIA FACOLTA DI INGEGNERIA Corso di Fondamenti di Automatica (A.A. 2006/07) Prof.G.Ferrari Trecate Introduzione a MATLAB L. Magnani (lorenza.magnani@unipv.it) Dipartimento di

Dettagli

Costrutti condizionali e iterativi

Costrutti condizionali e iterativi Costrutti condizionali e iterativi Introduction to modern Fortran Paolo Ramieri, CINECA Maggio 2017 Strutture di controllo Le strutture di controllo permettono di alterare la sequenza di esecuzione delle

Dettagli

Indice generale Introduzione...xiii Capitolo 1 Strumenti per sviluppare applicazioni...1

Indice generale Introduzione...xiii Capitolo 1 Strumenti per sviluppare applicazioni...1 Introduzione...xiii Applicazioni basate su spreadsheet... xiv Aggiornamento... xvi Sicurezza... xvi Tipi di applicazioni... xvi Pronto impiego... xvii Tabelle personali... xviii Applicazioni condivisibili...

Dettagli