Ottimizzazione Combinatoria
|
|
- Lia Falcone
- 8 anni fa
- Visualizzazioni
Transcript
1 Ottimizzazione Combinatoria Esercitazione AMPL A.A Esercitazione a cura di Silvia Canale contatto canale@dis.uniroma1.it Università i di Roma La Sapienza Dipartimento di Informatica e Sistemistica Corso di Laurea in Ingegneria Gestionale 1
2 AMPL in breve A Mathematical Programming Language AMPL è un linguaggio di modellazione algebrico per problemi di programmazione matematica: - problemi lineari e non lineari - problemi in variabili intere e continue AMPL impiega una notazione basata su concetti semplici e di uso comune per rendere più facile il processo di modellazione di un problema. Una volta formulato tramite il linguaggio AMPL, occorre un opportuno solutore di programmazione matematica per risolvere il problema. L interprete AMPL permette di risolvere un problema formulato tramite il linguaggio AMPL impiegando direttamente un solutore di programmazione matematica. 2
3 Solutori per AMPL Sono disponibili diversi solutori tramite l interfaccia grafica AMPL. La scelta del solutore dipende dal tipo di problema: - Problemi di programmazione lineare: con variabili continue: GUROBI, BPMPD, CPLEX, LAMPS, LOQO, lp_solve, MINOS, MOSEK, OSL, SOPT, XA, Xpress-MP con variabili intere: GUROBI, CPLEX, LAMPS, lp_solve, MINTO, MOSEK, OSL, SOPT, XA, Xpress-MP - Problemi di programmazione non lineare: quadratici: CPLEX, MOSEK, OSL convessi: MOSEK, SOPT generali continui: CONOPT, DONLP2, FILTER, FSQP, IPOPT, KNITRO, LANCELOT, LOQO, MINOS, NPSOL, PENNON, SNOPT generali interi: MINLP In questo corso utilizzeremo l interprete AMPL ed il solutore CPLEX, versione student. 3
4 Software AMPL Sito ufficiale: Tutte le informazioni relative ad AMPL si trovano sul sito ufficiale AMPL Pagina per il download dell interprete APML e dei solutori: La pagina contiene: - istruzione per il download (quick start per Windows e Unix); - software eseguibile dell interprete AMPL; - software eseguibile di diversi solutori. Ulteriori i informazioni i i sul download d sono reperibili alla pagina: AMPL Pagina per il download dell interfaccia grafica: Sono disponibili tre diverse interfacce grafiche in versione sperimentale. 4
5 Materiale Oltre alle slide di questa esercitazione, è possibile scaricare dalla pagina della prof.ssa Piccialli il seguente materiale: - Par di Appunti sulla Sintassi e sui Comandi di AMPL Plus v1.6 Manuale in italiano a cura dei dott. R. Bruni, G. Fasano e G. Liuzzi - Esercitazioni i i a cura dalla prof.ssa Piccialli i con appunti delle lezioni i e diversi esempi di problemi di programmazione lineare e non lineare, realizzate per il corso di Ottimizzazione A.A. 2004/2005. Si ringraziano i dott. Piccialli, Bruni, Fasano e Liuzzi per aver reso disponibile il materiale 5
6 Il linguaggio AMPL AMPL contiene diverse primitive per esprimere la notazione matematica normalmente utilizzata nello scrivere problemi di ottimizzazione (=, <, >,,, sommatorie, funzioni elementari, etc.) Ciascuna istruzione di AMLP deve terminare con un punto e virgola (;). E quindi possibile l indentazione nel file dei comandi. E possibile scrivere in un unico file con estensione.mod tutte le istruzioni AMPL che definiscono il modello, ma è bene separare due elementi del problema da risolvere: - la struttura del modello nel file.mod in cui sono descritte le componenti del modello (variabili, funzione obiettivo, vincoli, etc.); - i dati del modello nel file.dat in cui sono scritti i dati del problema (che in AMPL vengono chiamati parametri). Le righe di commento, sia nel file.mod che nel file.dat, devono essere precedute dal simbolo #. 6
7 Il linguaggio AMPL Una volta scritti i file con estensione.mod e.dat, è possibile farli interpretare all interprete AMPL attraverso le istruzioni - model file.mod; con questa istruzione vengono interpretate tutte le componenti del modello (variabili, funzione obiettivo, vincoli, etc.); - data file.dat; con questa istruzione vengono assegnati i valori a tutte le componenti del modello dichiarate nel file.mod Esempio: Se abbiamo dichiarato e definito il nostro modello nei file prova.mod e prova.dat, per interpretare i due file scriviamo: model prova.mod; data prova.dat; Da questo momento, tutte le dichiarazioni presenti in prova.mod e tutte le assegnazioni definite in prova.dat sono state interpretate. 7
8 Il linguaggio AMPL Per modellare un problema di programmazione matematica in AMPL creiamo due file: - file.mod contenente: - la dichiarazione dei parametri - la dichiarazione delle variabili - la struttura e la definizione della funzione obiettivo - la struttura e la descrizione dei vincoli - fl file.dat contenente i valori numerici dei parametri Il file.dat deve iniziare con il comando data. Questa istruzione dice all interprete che segue la definizione delle entità precedentemente dichiarate nel file.mod. I parametri possono essere rappresentati fondamentalmente tramite due tipi di strutture dati: -insieme - parametro (anche a più dimensioni) i i) 8
9 Esempio Un problema di PL Problema di produzione Un acciaieria deve decidere come impegnare l unico laminatoio disponibile per la produzione della prossima settimana. Il laminatoio lavora lastre di acciaio e può produrre due tipi di semilavorati: a bande (B) oppure tondini di acciaio a (T). In un ora il laminatoio produce 200 tonnellate di bande oppure 140 tonnellate di tondini. Il profitto delle bande è di 25 euro a tonnellata mentre quello dei tondini di 30 euro per tonnellata. Inoltre, tenendo conto degli ordini già esistenti, la produzione della prossima settimana non può superare le 6000 tonnellate di bande e le 4000 tonnellate di tondini. Infine, il laminatoio disponibile solamente per 40 ore in tutta la settimana. Si formuli un problema di PL che permetta di determinare quante tonnellate produrre di bande e quante di tondini. 9
10 Variabili Esempio Un problema di PL Definizione del problema xb = tonnellate di bande da produrre xt = tonnellate di tondini di acciaio da produrre Funzione obiettivo: massimizzazione del profitto Max 25 * xb + 30 * xt Vincoli di produzione xb <= 6000 xt <= 4000 Vincolo sulla disponibilità del laminatorio ( 1 / 200 ) * xb + ( 1 / 140 ) * xt <= 40 Vincoli di non negatività xb >= 0 xt >= 0 10
11 File prob.mod param profitto_b; param profitto_t; Esempio Un problema di PL param laminazione_oraria_b; param a laminazione a _oraria a_ T; param tempo_laminazione_massimo; param massima_produzione_b; param massima_produzione_t; var xb >= 0, <= massima_produzione_b; var xt >= 0, <= massima_produzione_t; maximize Profitto: profitto_b * xb + profitto_t * xt; subject to Vincolo_laminatoio: (1/l laminazione_oraria_b i i B)* xb B+(1/l laminazione_oraria_t i i T)* xt <= tempo_laminazione_massimo; 11
12 File prob.dat data; Esempio Un problema di PL param profitto_b := 25; param profitto_t := 30; param laminazione_oraria_b := 200; param laminazione_oraria_t := 140; param tempo_laminazione_massimo := 40; param massima_produzione_b := 6000; param massima_produzione_t := 4000; 12
13 Gli insiemi in AMPL AMPL consente di utilizzare la struttura dato insieme. Un insieme dev essere: - dichiarato (nel file.mod), dicendo all interprete AMPL che un nome identifica l insieme che vogliamo utilizzare attraverso la parola chave set; - definito (nel file.dat), assegnando gli elementi all insieme dichiarato; l operatore di assegnazione è :=. Esempio: Per definire l insieme S di elementi a, b, c e d, dichiariamo nel file prova.mod: set S; Successivamente definiamo nel file prova.dat l insieme assegnando gli elementi a, b, c e d: set S := a b c d ; Il linguaggio gg AMLP è case sensitive. 13
14 Gli insiemi in AMPL Per stampare gli elementi di un insieme possiamo utilizzare l istruzione display seguita dall identificativo dell insieme. Esempio: Per stampare gli elementi dell insieme S di elementi a, b, c e d, dichiarato nel file prova.mod e definitivo nel file prova.dat, scriviamo l istruzione da riga di comando dell interprete AMPL: display S; Una volta eseguita l istruzione, l interprete mostrerà il seguente output: ampl: display S; set S := a b c d; AMPL consente di utilizzare operazioni elementari tra insiemi, quali: - unione: istruzione union; -intersezione: istruzione inter; -differenza: istruzione diff; - differenza simmetrica: istruzione symdiff; - cardinalità: istruzionecard; card;. 14
15 Gli insiemi in AMPL AMPL consente inoltre di dichiarare insiemi di tipo ordinato attraverso la parola chiave ordered posto dopo l identificativo dell insieme. L ordine Lordine in cui assegniamo gli elementi all insieme definisce l ordinamento dell insieme. Esempio: Per definire l insieme ordinato S di elementi a, b, c e d, dichiariamo nel file prova.mod: set S ordered; Successivamente definiamo nel file prova.dat l insieme assegnando gli elementi a, b, c e d: set S := a b c d ; Quindi a sarà il primo elemento dell insieme, b il secondo e così via. 15
16 Gli insiemi in AMPL AMPL consente di utilizzare alcune operazioni elementari per insiemi ordinati quali: -first(s)per restituire il primo elemento dell insieme S; -last(s)per restituire l ultimo elemento dell insieme S; - next(t,s,n) per restituire l ennesimo elemento che si trova dopo l elemento lelemento t nell insieme S; -prev(t,s,n)per restituire l ennesimo elemento che si trova prima dell elemento t nell insieme S; -ord(t,s)per restituire la posizione dell elemento t nell insieme S; -member(j,s)per restituire l elemento in posizione j nell insieme S. E inoltre possibile definire in AMPL insiemi ordinati molto semplici in base ad un ordinamento predefinito. Il più semplice insieme ordinato è quello dei numeri interi compresi tra due valori, che si indica con l operatore.. Se N è un numero intero, l insieme dei numeri interi compresi tra 1 ed N si indica con 1..N 16
17 I parametri in AMPL I parametri sono i dati del problema, da non confondere con le variabili. Una volta invocato il solutore, il valore dei parametri resta costante. Un parametro dev essere: - dichiarato (nel file.mod), dicendo all interprete AMPL che un nome identifica il parametro che vogliamo utilizzare attraverso la parola chave param; - definito (nel file.dat), assegnando il valore al parametro dichiarato; l operatore loperatore di assegnazione è :=. Esempio: Per definire il parametro N dichiariamo nel file prova2.mod: param N; Successivamente definiamo nel file prova2.dat il valore del parametro N: param N := 3 ; Se il parametro assume un valore INTERO, possiamo dichiararlo di tipo integer: param N integer; 17 Analoghe restrizioni sul valore assunto dal parametro possono essere indicate in fase di dichiarazione.
18 Parametri a più dimensioni in AMPL I vettori di parametri sono molto utili per definire vettori di coefficienti. Un vettore di parametri dev essere: - dichiarato (nel file.mod), dicendo all interprete AMPL il nome che identifica il vettore e l insieme entro cui varia l indice delle sue componenti attraverso la parola chiave param e le parentesi {}; - definito (nel file.dat), assegnando i valori al vettore di parametri dichiarato. Esempio: Per definire il vettore di parametri vett di componenti indicizzate su un insieme S dichiariamo nel file prova3.mod: set S; param vett{s}; Successivamente definiamo nel file prova3.dat i valori dei parametri: set S := a b c d; param vett := a 1 b 2 c 3 d 4; 18
19 Parametri a più dimensioni in AMPL E possibile definire un vettore di parametri indicizzato su un insieme ordinato in base ad un ordinamento predefinito. Esempio: Per definire i il vettore di parametri vett2 di componenti indicizzate su un insieme ordinato di N elementi dichiariamo nel file prova4.mod: param N; param vett2{1..n}; Successivamente definiamo nel file prova4.dat i valori dei parametri: param N := 3; param vett2 := ; Ovunque si desideri specificare una precisa componente del vettore di parametri, occorre usare le parentesi [] dopo l identificativo del vettore. Esempio: Per stampare la seconda componente del vettore di parametri vett2 usiamo l istruzione display seguita dall espressione vett2[2] display vett2[2]; 19
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
DettagliOttimizzazione Combinatoria
Ottimizzazione Combinatoria 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 e Sistemistica
DettagliIntroduzione. AMPL Introduzione. F. Rinaldi. Dipartimento di Matematica Università di Padova. Corso di Laurea Matematica. F. Rinaldi AMPL Introduzione
Dipartimento di Matematica Università di Padova Corso di Laurea Matematica Outline Introduzione Utilizzo di un Solver Definizione Un solver (o risolutore) è un software che riceve in input una descrizione
Dettagli1 Breve introduzione ad AMPL
1 Breve introduzione ad AMPL Il primo passo per risolvere un problema reale attraverso strumenti matematici consiste nel passare dalla descrizione a parole del problema al modello matematico dello stesso.
DettagliAMPL Plus: Introduzione all uso
AMPL Plus: Introduzione all uso A cura di Renato Bruni, Giovanni Fasano, Giampaolo Liuzzi, Sara Mattia Preliminari In questa breve introduzione verranno chiariti alcuni aspetti di base relativi all uso
DettagliIntroduzione al MATLAB c Parte 2
Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione
DettagliOttimizzazione Combinatoria
Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2-22 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma.it Università i di Roma La Sapienza Dipartimento di Informatica e Sistemistica
DettagliOttimizzazione Combinatoria
Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2009-2010 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma1.it Università di Roma La Sapienza Dipartimento di Informatica e
DettagliSIMULAZIONE ESAME di OTTIMIZZAZIONE Corso di Laurea in Ingegneria Gestionale 2 o anno
SIMULAZIONE ESAME di OTTIMIZZAZIONE 28 novembre 2005 SIMULAZIONE ESAME di OTTIMIZZAZIONE Corso di Laurea in Ingegneria Gestionale 2 o anno Cognome : XXXXXXXXXXXXXXXXX Nome : XXXXXXXXXXXXXX VALUTAZIONE
DettagliObiettivi dell esercitazione. Requisiti (cont.) Requisiti. Università di Roma La Sapienza A.A. 2008-2009. Facoltà di Ingegneria Sede di Latina
Università di Roma La Sapienza A.A. 2008-2009 Facoltà di Ingegneria Sede di Latina Laurea in Ingegneria Informatica ed Ingegneria dell Informazione Corso di PROGETTAZIONE DEL SOFTWARE Esercitazione sulla
DettagliLinguaggi di modellizzazione
p. 1/5 Linguaggi di modellizzazione Come visto, il primo passo per risolvere un problema di decisione consiste nel formularne il modello matematico. Una volta definito il modello matematico lo dobbiamo
Dettaglimin 4x 1 +x 2 +x 3 2x 1 +x 2 +2x 3 = 4 3x 1 +3x 2 +x 3 = 3 x 1 +x 2 3x 3 = 5 Innanzitutto scriviamo il problema in forma standard: x 1 x 2 +3x 3 = 5
IL METODO DEL SIMPLESSO 65 Esercizio 7.4.4 Risolvere utilizzando il metodo del simplesso il seguente problema di PL: min 4 + + + + = 4 + + = + = 5 Innanzitutto scriviamo il problema in forma standard:
DettagliInforma(ca Appun% dal laboratorio 2
Informa(ca Appun% dal laboratorio 2 Conce- fondamentali Esistono programmi, come Microso8 Word oppure Acrobat Reader, che vengono usa% dagli uten% per far eseguire al computer determinate operazioni (come
DettagliModelli 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
DettagliLaboratorio di Informatica
Laboratorio di Informatica Introduzione a Python Dottore Paolo Parisen Toldin - parisent@cs.unibo.it Argomenti trattati Che cosa è python Variabili Assegnazione Condizionale Iterazione in una lista di
DettagliUniversità Ca Foscari Venezia
Università Ca Foscari Venezia Dipartimento di Scienze Ambientali, Informatica e Statistica Giovanni Fasano 2 Problemi di Costo Fisso & Vincoli Disgiuntivi (con esercizi ) November 12, 2015 2 Università
DettagliLaboratorio. Ricerca Operativa
Facoltà di Ingegneria dell Informazione, Informatica e Statistica Corso di Laurea in Ingegneria Gestionale Appunti dalle lezioni del corso di Laboratorio di Ricerca Operativa Massimo Roma Dipartimento
DettagliIstituzioni di Economia Laurea Triennale in Ingegneria Gestionale Lezione 16 Offerta dell impresa
UNIVERSITÀ DEGLI STUDI DI BERGAMO Laurea Triennale in Ingegneria Gestionale Lezione 16 Offerta dell impresa Prof. Gianmaria Martini Offerta dell impresa La decisione di un impresa a riguardo della quantità
DettagliMetodologie di programmazione in Fortran 90
Metodologie di programmazione in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2007/2008 Fortran 90: Metodologie di programmazione DIS - Dipartimento di
DettagliFunzioni in C. Violetta Lonati
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni
DettagliInsegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7. Il trattamento dei dati
Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7 Il trattamento dei dati database: il linguaggio SQL seconda parte Prof. Valle D.ssa Folgieri Lez9 15.11.06 Trattamento dati. Database: il
DettagliALGEBRA DELLE PROPOSIZIONI
Università di Salerno Fondamenti di Informatica Corso di Laurea Ingegneria Corso B Docente: Ing. Giovanni Secondulfo Anno Accademico 2010-2011 ALGEBRA DELLE PROPOSIZIONI Fondamenti di Informatica Algebra
DettagliUniversità degli Studi di Roma La Sapienza, Facoltà di Ingegneria
Università degli Studi di Roma La Sapienza, Facoltà di Ingegneria Corso di PROGETTAZIONE DEL SOFTWARE I (Ing. Informatica, Nuovo Ordinamento) Prof. Marco Cadoli, Canale A-L, A.A. 2005-06 INFORMAZIONI AMMINISTRATIVE
DettagliOttimizzazione Multi Obiettivo
Ottimizzazione Multi Obiettivo 1 Ottimizzazione Multi Obiettivo I problemi affrontati fino ad ora erano caratterizzati da una unica (e ben definita) funzione obiettivo. I problemi di ottimizzazione reali
DettagliFondamenti di Informatica Ingegneria Clinica Lezione 16/10/2009. Prof. Raffaele Nicolussi
Fondamenti di Informatica Ingegneria Clinica Lezione 16/10/2009 Prof. Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via B. Castiglione 59-00142 Roma Docente Raffaele Nicolussi rnicolussi@fub.it Lezioni
DettagliUniversità degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi
Università degli Studi di L Aquila Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi Prof. Gaetanino Paolone Dott. Ottavio Pascale a.a.2003-2004 Progetto Campo
DettagliStudente: SANTORO MC. Matricola : 528
CORSO di LAUREA in INFORMATICA Corso di CALCOLO NUMERICO a.a. 2004-05 Studente: SANTORO MC. Matricola : 528 PROGETTO PER L ESAME 1. Sviluppare una versione dell algoritmo di Gauss per sistemi con matrice
DettagliExcel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it
Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo
DettagliINTRODUZIONE A EXCEL ESERCITAZIONE I
1 INTRODUZIONE A EXCEL ESERCITAZIONE I Corso di Idrologia e Infrastrutture Idrauliche Prof. Roberto Guercio Cos è Excel 2 Foglio di calcolo o foglio elettronico è formato da: righe e colonne visualizzate
DettagliAppello di Ricerca Operativa A.A. 2006-2007 (29/3/2007)
Nome... Cognome... 1 Appello di Ricerca Operativa A.A. 2006-2007 (29/3/2007) Si consideri la funzione f(x) = 4x 2 1 + 6x 4 2 2x 2 1x 2. Si applichi per un iterazione il metodo del gradiente a partire dai
DettagliMATLAB. Caratteristiche. Dati. Esempio di programma MATLAB. a = [1 2 3; 4 5 6; 7 8 9]; b = [1 2 3] ; c = a*b; c
Caratteristiche MATLAB Linguaggio di programmazione orientato all elaborazione di matrici (MATLAB=MATrix LABoratory) Le variabili sono matrici (una variabile scalare equivale ad una matrice di dimensione
DettagliINTRODUZIONE. Cplex è un software per la risoluzione di Problemi di Programmazione Lineare e Lineare Intera;
INTRODUZIONE Cplex è un software per la risoluzione di Problemi di Programmazione Lineare e Lineare Intera; L interfaccia con il quale viene utilizzato è Microsoft Excel 1 Installazione CPLEX Dopo aver
DettagliOttimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni
Ottimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni CARLO MANNINO Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica
DettagliTSP con eliminazione di sottocicli
TSP con eliminazione di sottocicli Un commesso viaggiatore deve visitare 7 clienti in modo da minimizzare la distanza percorsa. Le distanze (in Km) tra ognuno dei clienti sono come segue: 7-8 9 7 9-8 79
DettagliRaggruppamenti Conti Movimenti
ESERCITAZIONE PIANO DEI CONTI Vogliamo creare un programma che ci permetta di gestire, in un DB, il Piano dei conti di un azienda. Nel corso della gestione d esercizio, si potranno registrare gli articoli
DettagliSoluzione di problemi di ottimizzazione
Soluzione di problemi di ottimizzazione Problema di programmazione lineare: Possibili ulteriori vincoli (Es.: x INTERO) Soluzione: Trovare x* tale che per ogni LE.1 Input: Solutori di problemi di PL/PLI
DettagliProblema del Trasporto. Container vuoti Verona 10 Perugia 12 Roma 20 Pescara 24 Taranto 18 Lamezia 40
Problema del Trasporto Una ditta di trasporto deve trasferire container vuoti dai propri 6 Magazzini, situati a Verona, Perugia, Roma, Pescara, Taranto e Lamezia, ai principali Porti nazionali (Genova,
DettagliINTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI
INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, abbiamo bisogno di conoscere un metodo risolutivo, cioè un metodo che a partire dai dati di ingresso fornisce i risultati attesi.
Dettagliwww.filoweb.it STAMPA UNIONE DI WORD
STAMPA UNIONE DI WORD Molte volte abbiamo bisogno di stampare più volte lo stesso documento cambiando solo alcuni dati. Potremmo farlo manualmente e perdere un sacco di tempo, oppure possiamo ricorrere
DettagliVettori Algoritmi elementari di ordinamento
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Vettori Algoritmi elementari di ordinamento Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale
DettagliESERCITAZIONE SU ACCESS
214 D. Consoli Esercitazioni di Informatica ESERCITAZIONE SU ACCESS 1) Creare un database MAGAZZINO.mdb con la tabella DEPOSITO di figura assegnando ai campi tipo e dimensione a piacere. 2) Fare diventare
DettagliJavascript: il browser
Javascript: il browser Un browser è un programma Un browser interpreta il linguaggio HTML e visualizza le pagine sullo schermo Per la visualizzazione delle pagine un browser si appoggia al software di
DettagliPer scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli
CODICE Le fonti in cui si possono trovare tutorial o esempi di progetti utilizzati con Arduino si trovano nel sito ufficiale di Arduino, oppure nei forum di domotica e robotica. Il codice utilizzato per
DettagliTRAGUARDI PER LO SVILUPPO DELLE COMPETENZE AL TERMINE DELLA SCUOLA PRIMARIA
SCUOLA PRIMARIA DI CORTE FRANCA MATEMATICA CLASSE QUINTA TRAGUARDI PER LO SVILUPPO DELLE COMPETENZE AL TERMINE DELLA SCUOLA PRIMARIA L ALUNNO SVILUPPA UN ATTEGGIAMENTO POSITIVO RISPETTO ALLA MATEMATICA,
DettagliShellExcel. Una domanda contiene i riferimenti (#A, #B, #C) alle celle che contengono i dati numerici del
Progetto Software to Fit - ShellExcel Pagina 1 Manuale d'uso ShellExcel ShellExcel è una interfaccia per disabili che permette ad un alunno con difficoltà di apprendimento di esercitarsi ripetitivamente
DettagliExcel avanzato. I nomi. Gli indirizzi e le formule possono essere sostituiti da nomi. Si creano tramite Inserisci Nome Definisci
Excel avanzato I nomi marco.falda@unipd.it Gli indirizzi e le formule possono essere sostituiti da nomi documentazione astrazione Si creano tramite Inserisci Nome Definisci Vengono raccolti nell area riferimento
DettagliLa valutazione delle rimanenze di magazzino
Università degli Studi di L Aquila Facoltà di Economia Corso di Ragioneria Generale e Applicata Prof. Michele Pisani A.A. 2006-2007 La valutazione delle rimanenze di magazzino La nostra attenzione si concentrerà
DettagliGuida all installazione e all aggiornamento di Virtuemart 2.0.x
Guida all installazione e all aggiornamento di Virtuemart 2.0.x A cura di Vmitalia.net La nuova versione di Virtuemart 2.0 contiene molte novità, tuttavia non mancano le somiglianze con la precedente versione
DettagliSOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software:
1 SOFTWARE È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software: SOFTWARE DI SISTEMA (o di base), che deve gestire le funzioni
DettagliANNO SCOLASTICO 2014-2015
ATTIVITÀ DI SPERIMENTAZIONE IN CLASSE PREVISTA NELL AMBITO DEL PROGETTO M2014 PROMOSSO DALL ACCADEMIA DEI LINCEI PER LE SCUOLE PRIMARIE E SECONDARIE DI I GRADO ANNO SCOLASTICO 2014-2015 Il Centro matematita,
DettagliFondamenti di Informatica - 9Cfu Corso di Laurea in Ingegneria Informatica (ord. 270)
Corsi di Laurea Ingegneria Informatica Ord. 270 A.A. 2012-2013 Prof. Vincenza Carchiolo vincenza.carchiolo@dieei.unict.it Fondamenti di Informatica - 9Cfu Corso di Laurea in Ingegneria Informatica (ord.
DettagliLaboratorio di Informatica
per chimica industriale e chimica applicata e ambientale LEZIONE 4 La CPU e l esecuzione dei programmi 1 Nelle lezioni precedenti abbiamo detto che Un computer è costituito da 3 principali componenti:
DettagliSoftware di base. Corso di Fondamenti di Informatica
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Software di base Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti
DettagliBiblioteca di Cervia NOZIONI BASE DI INFORMATICA
Biblioteca di Cervia NOZIONI BASE DI INFORMATICA NOZIONI DI INFORMATICA Il PC è composto solitamente di tre parti principali: - Il Case, ovvero il contenitore del cuore del computer, da qui si accende
DettagliFogli Elettronici: MS Excel
Fogli Elettronici: MS Excel Informatica - A.A. 2010/2011 - Excel 7.0 Foglio Elettronico Un foglio elettronico (o spreadsheet) è un software applicativo nato dall esigenza di: organizzare insiemi di dati
DettagliUniversità di Roma La Sapienza, Facoltà di Ingegneria
Università di Roma La Sapienza, Facoltà di Ingegneria Corso di PROGETTAZIONE DEL SOFTWARE I (Ing. Informatica, Nuovo Ordinamento) Prof. Marco Cadoli, Canale A-L, A.A. 2005-06 Esercitazione numero 6 LA
DettagliSviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL.
Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL. 2ELHWWLYL GD UDJJLXQJHUH SHU JOL VWXGHQWL alla fine dell esercitazione gli studenti dovranno essere in grado di: 1. utilizzare
DettagliEquilibrio bayesiano perfetto. Giochi di segnalazione
Equilibrio bayesiano perfetto. Giochi di segnalazione Appunti a cura di Stefano Moretti, Silvia VILLA e Fioravante PATRONE versione del 26 maggio 2006 Indice 1 Equilibrio bayesiano perfetto 2 2 Giochi
DettagliAmmortamento di un debito
Algoritmi e dintorni: Ammortamento di un debito: Ricerca del tasso Prof. Ettore Limoli Ammortamento di un debito In questa nostra trattazione non ci addentreremo in problemi di matematica finanziaria o
DettagliDATABASE. nozioni di base
DATABASE nozioni di base Un database è una raccolta di informazioni organizzata in modo da poter essere facilmente accessibile per consultazione, modifiche e aggiornamenti. All'inizio della storia dei
DettagliInformatica per le discipline umanistiche 2 lezione 14
Informatica per le discipline umanistiche 2 lezione 14 Torniamo ai concetti base dellʼinformatica. Abbiamo sinora affrontato diversi problemi: avere unʼidentità online, cercare pagine Web, commentare il
DettagliRicerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili. Introduzione
Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili Introduzione La Ricerca Operativa La Ricerca Operativa è una disciplina relativamente recente. Il termine Ricerca Operativa è stato coniato
DettagliEsercizi su. Funzioni
Esercizi su Funzioni ๒ Varie Tracce extra Sul sito del corso ๓ Esercizi funz_max.cc funz_fattoriale.cc ๔ Documentazione Il codice va documentato (commentato) Leggibilità Riduzione degli errori Manutenibilità
Dettagli(anno accademico 2008-09)
Calcolo relazionale Prof Alberto Belussi Prof. Alberto Belussi (anno accademico 2008-09) Calcolo relazionale E un linguaggio di interrogazione o e dichiarativo: at specifica le proprietà del risultato
DettagliConcetti preliminari teorici per il corso di Access Avanzato - Sc.Elem Falcone - PON 2010 - Prof. M. Simone
Concetti preliminari per il corso di Access di database e di DBMS Un database è un insieme ben organizzato di informazioni distribuite su più tabelle all interno dello stesso file e gestite da un apposito
DettagliCos è l ISC (Indicatore Sintetico del Conto Corrente) e cosa sono i Profili tipo d utilizzo
Cos è l ISC (Indicatore Sintetico del Conto Corrente) e cosa sono i Profili tipo d utilizzo Come dice il nome, l ISC è un indicatore che riassume in un unica cifra il costo indicativo annuo di un conto
DettagliCapitolo 13. Interrogare una base di dati
Capitolo 13 Interrogare una base di dati Il database fisico La ridondanza è una cosa molto, molto, molto brutta Non si devono mai replicare informazioni scrivendole in più posti diversi nel database Per
DettagliProgrammi e Oggetti Software
Corso di Laurea Ingegneria Civile Elementi di Informatica Programmi e Oggetti Software Settembre 2006 Programmi e Oggetti Software 1 Contenuti Cosa è un programma Cosa significa programmare Il punto di
DettagliUML Diagrammi delle classi. UML Diagramma classi 1
UML Diagrammi delle classi UML Diagramma classi 1 Diagramma delle classi Non è nei nostri obiettivi affrontare UML nel suo complesso Ci concentreremo sui diagrammi delle classi che ci forniscono un linguaggio
DettagliObject Oriented Software Design
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Object Oriented Software Design Corso di Tecniche di Programmazione Laurea in Ingegneria Informatica (Canale di Ingegneria
DettagliCorso di Informatica
Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down
DettagliCome gestire le directory con R
Come gestire le directory con R Stefano F. Tonellato Dipartimento di Statistica Indice 1 Perché è importante saper gestire le directory 1 2 Come scegliere la directory su cui R deve lavorare 1 2.1 Windows...............................
DettagliAnalisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda
Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda Premessa Con l analisi di sensitività il perito valutatore elabora un range di valori invece di un dato
DettagliCorso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008)
Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Introduzione a Java: primo programma, installazione dell ambiente di sviluppo, compilazione ed esecuzione 1 Introduzione Java è un linguaggio
DettagliUn problema di Capital Budgeting
LABORATORIO RICERCA OPERATIVA Un problema di Capital Budgeting Laura Palagi Dipartimento di Ingegneria informatica automatica e gestionale A. Ruberti Sapienza Universita` di Roma Capital Budgeting (Pianificazione
DettagliMaxima: mini guida. Presentazione del software matematico MAXIMA
Maxima: mini guida Presentazione del software matematico MAXIMA Maxima: indice Introduzione semplificazione, fattorizzazione e sviluppo di potenze; Operazioni principali Esempi Valutazione di espressioni;
DettagliUso di base delle funzioni in Microsoft Excel
Uso di base delle funzioni in Microsoft Excel Le funzioni Una funzione è un operatore che applicato a uno o più argomenti (valori, siano essi numeri con virgola, numeri interi, stringhe di caratteri) restituisce
DettagliIntroduzione a ROOT. 1. Informazioni generali
Introduzione a ROOT 1. Informazioni generali ROOT è un ambiente visualizzazione e trattamento dati interattivo sviluppato al CERN (si veda il sito ufficiale http://root.cern.ch interamente sviluppato in
DettagliPIATTAFORMA DOCUMENTALE CRG
SISTEMA DI GESTIONE DOCUMENTALE DMS24 PIATTAFORMA DOCUMENTALE CRG APPLICAZIONE PER LE PROCEDURE DI GARE D AMBITO 1 AGENDA 1. Introduzione 2. I Livelli di accesso 3. Architettura di configurazione 4. Accesso
DettagliAPPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1)
ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1) Un insieme è una collezione di oggetti. Il concetto di insieme è un concetto primitivo. Deve esistere un criterio chiaro, preciso, non ambiguo, inequivocabile,
DettagliAlcune regole di base per scrivere un programma in linguaggio C
Alcune regole di base per scrivere un programma in linguaggio C Un programma il linguaggio C (listato) viene scritto in formato testo ed archiviato in un file: *.c Per scrivere un listato C si utilizza
DettagliCliccare su "Esegui" oppure su salva se si desidera effettuare l'installazione in un secondo momento.
,QVWDOODUH0DHVWUR(8520(',$1 Maestro è estremamente facile da installare. per avviare l'installazione basta essere connessi ad internet, andare alla pagina di download del sito www.euromedian.it o www.euromedian.com
DettagliLezione III Power Point. Laboratorio di Calcolo Ottica e optometria
Lezione III Power Point Laboratorio di Calcolo Ottica e optometria Microsoft Power Point PowerPoint permette di creare e visualizzare presentazioni Fa parte del pacchetto Microsoft Office È un programma
DettagliNozione di algoritmo. Gabriella Trucco
Nozione di algoritmo Gabriella Trucco Programmazione Attività con cui si predispone l'elaboratore ad eseguire un particolare insieme di azioni su particolari informazioni (dati), allo scopo di risolvere
DettagliIntroduzione ai database relazionali
Introduzione ai database relazionali Tabelle Un database (DB) è costituito da un insieme di file che memorizzano dati opportunamente organizzati Nei database relazionale tale organizzazione è costituita
DettagliGian Luca Marcialis studio degli algoritmi programma linguaggi LINGUAGGIO C
Università degli Studi di Cagliari Corso di Laurea in Ingegneria Biomedica (Industriale), Chimica, Elettrica, e Meccanica FONDAMENTI DI INFORMATICA 1 http://www.diee.unica.it/~marcialis/fi1 A.A. 2010/2011
DettagliProf. Pagani Corrado ESERCITAZIONI DIAGRAMMI DELLE CLASSI UML E JAVA
Prof. Pagani Corrado ESERCITAZIONI DIAGRAMMI DELLE CLASSI UML E JAVA ES 02 - ORGANIZER Voglio un gestionale (organizer) che permetta a ciascun dipendente della mia azienda di inserire le attività che svolgono
DettagliIntroduzione all uso di un programma per analisi agli Elementi Finiti
L analisi strutturale con il metodo degli elementi finiti Introduzione all uso di un programma per analisi agli Elementi Finiti L analisi di una struttura può essere effettuata attraverso metodi analitici
DettagliSistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate
MODULO BASE Quanto segue deve essere rispettato se si vuole che le immagini presentate nei vari moduli corrispondano, con buona probabilità, a quanto apparirà nello schermo del proprio computer nel momento
DettagliRicerca Operativa e Logistica
Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili A.A. 2011/2012 Lezione 10: Variabili e vincoli logici Variabili logiche Spesso nei problemi reali che dobbiamo affrontare ci sono dei
DettagliSCHEDA DI RECUPERO SUI NUMERI RELATIVI
SCHEDA DI RECUPERO SUI NUMERI RELATIVI I numeri relativi sono l insieme dei numeri negativi (preceduti dal segno -) numeri positivi (il segno + è spesso omesso) lo zero. Valore assoluto di un numero relativo
DettagliConcetto di Funzione e Procedura METODI in Java
Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile
DettagliManuale Utente Albo Pretorio GA
Manuale Utente Albo Pretorio GA IDENTIFICATIVO DOCUMENTO MU_ALBOPRETORIO-GA_1.4 Versione 1.4 Data edizione 04.04.2013 1 TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione delle modifiche apportate
DettagliRISOLUTORE AUTOMATICO PER SUDOKU
RISOLUTORE AUTOMATICO PER SUDOKU Progetto Prolog - Pierluigi Tresoldi 609618 INDICE 1.STORIA DEL SUDOKU 2.REGOLE DEL GIOCO 3.PROGRAMMAZIONE CON VINCOLI 4.COMANDI DEL PROGRAMMA 5.ESEMPI 1. STORIA DEL SUDOKU
DettagliLinguaggi di programmazione
Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di un programma, cioè di una sequenza di istruzioni descritte nel linguaggio interpretabile dal calcolatore
DettagliIl web server Apache Lezione n. 3. Introduzione
Procurarsi ed installare il web server Apache Introduzione In questa lezione cominciamo a fare un po di pratica facendo una serie di operazioni preliminari, necessarie per iniziare a lavorare. In particolar
DettagliCapitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti
Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta
DettagliRicerca Operativa (Compito A) Appello del 18/06/2013 Andrea Scozzari
Ricerca Operativa (Compito A) Appello del 18/06/2013 Andrea Scozzari Esercizio n.1 Un azienda intende incrementare il proprio organico per ricoprire alcuni compiti scoperti. I dati relativi ai compiti
DettagliGestione Impresa. Mese 1 2 3 4 5 6 Unità richieste 700 600 500 800 900 800
Gestione Impresa Un impresa di produzione produce un solo tipo di merce. Ci sono 40 operai, ciascuno dei quali produce 20 unità di merce al mese. La domanda fluttua nel corso di un semestre secondo la
DettagliStrumenti e metodi per la redazione della carta del pericolo da fenomeni torrentizi
Versione 2.0 Strumenti e metodi per la redazione della carta del pericolo da fenomeni torrentizi Corso anno 2011 E. MANUALE UTILIZZO HAZARD MAPPER Il programma Hazard Mapper è stato realizzato per redarre,
Dettagli