La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Xxx IL SOFTWARE Marco Maiocchi. xxx Problemi e Soluzioni Problema: ho fame. Soluzione: mangio un panino oProblema: come ottengo un panino ? oSoluzione1:

Presentazioni simili


Presentazione sul tema: "Xxx IL SOFTWARE Marco Maiocchi. xxx Problemi e Soluzioni Problema: ho fame. Soluzione: mangio un panino oProblema: come ottengo un panino ? oSoluzione1:"— Transcript della presentazione:

1 xxx IL SOFTWARE Marco Maiocchi

2 xxx Problemi e Soluzioni Problema: ho fame. Soluzione: mangio un panino oProblema: come ottengo un panino ? oSoluzione1: preparo un panino; oSoluzione2: lo compro al bar sotto casa;

3 xxx La Programmazione La programmazione è lattività di: 1 Analizzare un dato problema, completamente e correttamente; 2 Scomporlo in sottoproblemi; 2 Individuare, per ogni sottoproblema, le possibili soluzioni; 3 Individuare, per ogni sottoproblema, il metodo per arrivare alle soluzioni (algoritmo); 4 Scegliere il metodo che arriva alla soluzione con la maggior efficienza; 5 Descrivere il metodo scelto in uno specifico linguaggio;

4 xxx Lhardware serve per far funzionare il software Il software serve per far fare allhardware tutto quello che vogliamo Il software è organizzato in programmi Una definizione empirica quello che si tocca è hardware, il resto è software

5 xxx ISTRUZIONI, OPERAZIONI, ESECUTORI UOVA AL BURRO Far sciogliere 20 g di burro in un tegamino. Quando il burro è ben dorato, rompere il guscio delluovo e far scivolare tuorlo e albume delicatamente nel tegamino. Cuocere fino a che lalbume non si sarà completamente rappreso. Salare. Servire nel tegamino. PROCEDIMENTO Input Output Esecutore Le istruzioni, comprensibili allesecutore, permettono leffettuazione delle operazioni per passare dalle condizioni dentrata a quelle duscita.

6 xxx LESECUZIONE DA PARTE DI UN COMPUTER Seleziona la cella indicata dal Contatore Esegui listruzione Se 00 preleva il contenuto della cella indicata e mettilo in A Se 01 memorizza il contenuto di A nella cella indicata Se 10 somma ad A il contenuto della cella indicata Se 11 fermati Incrementa il Contatore Torna da capo MEMORIA CONTATORE A

7 xxx LA FORMA MNEMONICA LOAD VAL ADD VAL ADD VAL ADD VAL STORETOT STOP VAL VAL VAL VAL TOT-

8 xxx PROGRAMMI E LINGUAGGI LA CPU riconosce ed esegue delle istruzioni elementari somme, moltiplicazioni, lettura e scrittura da uno o più byte della memoria, etc si chiama: linguaggio macchina, LM, (o assembler) È troppo complicato scrivere un programma così Sono stati inventati dei nuovilinguaggi unistruzione del linguaggio = tante istruzioni di LM Serve un programma che faccia la traduzione tradurre una volta, eseguire tante volte: compilatore tradurre durante lesecuzione: interprete

9 xxx IL TRADUTTORE (COMPILATORE) LOAD VAL1 ADD VAL2 ADD VAL3 ADD VAL4 STORETOT STOP - VAL11 VAL23 VAL32 VAL45 - TOT Conta le istruz. e assegna una posizione Traduci comando: Se LOAD 00 Se ADD 10 Se STORE 01 Se STOP 11 Se numero, valore Inserisci la posizione che corrisponde al nome

10 xxx I LINGUAGGI EVOLUTI TRADUTTORE VAL1 = 1 VAL2 = 3 VAL3 = 2 VAL4 = 5 TOT = VAL1+VAL2+VAL3+VAL4 STOP

11 xxx INTERPRETI LOAD VAL1 ADD VAL2 ADD VAL3 ADD VAL4 STORETOT STOP - VAL11 VAL23 VAL32 VAL45 - TOT- Seleziona la prima istruzione Se LOAD, cerca loperando e caricane il valore in A Se STORE, cerca loperando e caricacene il valore di A Se ADD, cerca loperando e sommane il valore ad A Se STOP fermati Passa alla prossima istruzione Ripeti

12 xxx COMPILATORI E INTERPRETI COMPILATORE Programma che traduce da un linguaggio a un altro; in genere da un linguaggio di alto livello a uno eseguibile dallhardware INTERPRETE Programma che, simulando il comportamento di un hardware, esegue un programma Lhardware è linterprete fisico del suo linguaggio nativo Ogni programma può essere pensato come un traduttore dai dati di entrata ai risultati di uscita

13 xxx I DIAGRAMMI A T L L1 L L L1 L2 TRADUTTORE DA L1 A L2 SCRITTO IN L INTERPRETE DI L1 SCRITTO IN L MACCHINA IN GRADO DI ESEGUIRE L

14 xxx Proviamo a programmare: Istruzioni e Parametri 10 PROGRAMMA :CUCINA_TOAST 20 PRENDI(PANCARRÉ) 30 FETTAPANE1 = TAGLIA(PANCARRÈ, 1) 40 FETTAPANE2 = TAGLIA PANCARRÉ,1) 50 PRENDI(FORMAGGIO) 60 FETTAFORM1 = TAGLIA(FORMAGGIO, 0.3) 70 FETTAFORM2 = TAGLIA(FORMAGGIO, 0.3) 80 PRENDI(PROSCIUTTOCOTTO) 90 FETTAPROSC1 = TAGLIA(PROSCIUTTOCOTTO, 0.3) 100 FETTAPROSC2 = TAGLIA(PROSCIUTTOCOTTO, 0.3) 110 TOAST = SOVRAPPONI(FETTAFORM1, FETTAPANE1) 120 TOAST = SOVRAPPONI(FETTAPROSC1, FETTAFORM1) 120 TOAST = SOVRAPPONI(FETTAPROSC2, FETTAPROSC1) 120 TOAST = SOVRAPPONI(FETTAFORM2, FETTAPROSC2) 120 TOAST = SOVRAPPONI(FETTAPANE2, FETTAFORM2) 130 SCALDA(TOAST, 3) 140 FINEPROGRAMMA

15 xxx Proviamo a programmare: Loop (1) 10 PROGRAMMA :CUCINA_TOAST 20 PRENDI(PANCARRÉ) 30 FETTAPANE1 = TAGLIA(PANCARRÈ, 1) 40 FETTAPANE2 = TAGLIA PANCARRÉ,1) 50 FETTAPANE3 = TAGLIA PANCARRÉ,1) 60 FETTAPANE4 = TAGLIA PANCARRÉ,1) 70 FETTAPANE5 = TAGLIA PANCARRÉ,1) etc...

16 xxx Proviamo a programmare: Loop (2) 10 PROGRAMMA :CUCINA_TOAST 20 PRENDI(PANCARRÉ) 30 NUMEROFETTA = 1 40 RIPETI 50 FETTAPANE(NUMEROFETTA) = TAGLIA(PANCARRÈ, 1) 60 NUMEROFETTA = NUMEROFETTA FINCHÈ NUMEROFETTA=100...

17 xxx Proviamo a programmare: Subroutine (1) 10 PROGRAMMA :CUCINA_TOAST 30 NUMEROTOAST = 1 40 RIPETI 50 TOAST(NUMEROTOAST) = PREPARATOAST 60 NUMEROTOAST = NUMEROTOAST FINCHÈ NUMEROTOAST =50 80 FINEPRORAMMA 100 SUBROUTINE: PREPARATOAST 110 PRENDI(PANCARRÉ) 120 FETTAPANE1 = TAGLIA(PANCARRÈ, 1) 140 FETTAPANE2 = TAGLIA PANCARRÉ,1) 150 PRENDI(FORMAGGIO) 160 FETTAFORM1 = TAGLIA(FORMAGGIO, 0.3) 170 FETTAFORM2 = TAGLIA(FORMAGGIO, 0.3) 180 PRENDI(PROSCIUTTOCOTTO) 190 FETTAPROSC1 = TAGLIA(PROSCIUTTOCOTTO, 0.3) 200 FETTAPROSC2 = TAGLIA(PROSCIUTTOCOTTO, 0.3) 210 TOAST = SOVRAPPONI(FETTAFORM1, FETTAPANE1) 220 TOAST = SOVRAPPONI(FETTAPROSC1, FETTAFORM1) 220 TOAST = SOVRAPPONI(FETTAPROSC2, FETTAPROSC1) 220 TOAST = SOVRAPPONI(FETTAFORM2, FETTAPROSC2) 220 TOAST = SOVRAPPONI(FETTAPANE2, FETTAFORM2) 230 SCALDA(TOAST, 3) 240 FINESUBROUTINE

18 xxx Proviamo a programmare: Condizioni 10 PROGRAMMA :CUCINA_TOAST 30 NUMEROTOAST = 1 35 DORATURA = MEDIA 40 RIPETI 50 TOAST(NUMEROTOAST) = PREPARATOAST 60 NUMEROTOAST = NUMEROTOAST FINCHÈ NUMEROTOAST =50 80 FINEPRORAMMA 100 SUBROUTINE: PREPARATOAST … 230 SE DORATURA = LEGGERA 240 ALLORA SCALDA(TOAST, 3) 250 ALTRIMENTI SE DORATURA = MEDIA 260 ALLORA SCALDA(TOAST, 4) 270 ALTRIMENTI SE DORATURA = ROBUSTA 280 ALLORA SCALDA(TOAST, 5) 290 FINESUBROUTINE

19 xxx LEVOLUZIONE DEI LINGUAGGI DI PROGRAMMAZIONE LINGUAGGI NON PROCEDURALI CODICE MACCHINA LINGUAGGI A OGGETTI LINGUAGGI LOGICI LINGUAGGI PROCEDURALI COBOL, FORTRAN. BASIC,... LINGUAGGI ASSEMBLER APPLICAZIONIPARAMETRICHE

20 xxx QUANTO COSTA SVILUPPARE SOFTWARE? 200 istruzioni per mese persona 2200 istruzioni per anno persona 60 milioni retribuzione annue 100 milioni di costo annuo 180 milioni di costo complessivo annuo =

21 xxx I SISTEMI OPERATIVI

22 xxx I SISTEMI OPERATIVI …… Leggi A Leggi B C = A+B Stampa C …... È arrivato il dato? Se no, ripeti Se sì, usa il dato Se è un tasto, 0,1 secondi 1 milionesimo di secondo o meno LA CPU E IN ATTESA PER IL 99,999 % !

23 xxx I SISTEMI BATCH GRANDECOMPUTER Scrittura di nastri magnetici Stampa Velocità di trasferimento: 300 K crt/sec Velocità di trasferimento: 300 K crt/sec Rispetto allesempio precedente, non 1 milionesimo /1 decimo di secondo, ma 1 milionesimo/ 3 milionesimi di secondo: CPU in attesa per il 67% del tempo

24 xxx COSA E CAMBIATO Lavori di X Cosa fare Fine X Lavori di Y Cosa fare ……... Poiché cè ununica esecuzione, è necessario sapere quali sono i consumi e di chi, per addebitare i costi

25 xxx COSA E CAMBIATO ALLINTERNO: PROGRAMMA DA ESEGUIRE MEMORIA SUPERVISORE Do leggi chi è il richiedente prendi il tempo leggi cosa vuole fare ripeti esegui quanto richiesto leggi cosa vuole fare fino a che non trovi fine prendi il tempo attribuisci il tempo intercorso allutente Ripeti Cedi la CPU al programma richiesto e attendi che questo finisca

26 xxx QUINDI Allinterno del computer ci sono sempre due programmi contemporaneamente: 1. Il supervisore 2. Il programma dellutente. I due programmi sono in esecuzione uno per volta, e, mentre il primo è sempre presente, il secondo è presente solo per quanto è necessario.

27 xxx LA MULTIPROGRAMMAZIONE MEMORIA SUPERVISORE Can. IN Can. OUT Progr.A Progr.B Progr.C UNA POSSIBILE STORIA SPVABCINOUT SPV in esecuz. SPV cede ad A A in esecuz. A chiede IN SPV invoca IN SPV valuta SPV cede a C C in esecuz C chiede OUT SPV invoca OUT SPV valuta SPC cede a B IN finisce SPV valuta SPV cede ad A …..

28 xxx GLI EFFETTI DELLA MULTIPROGRAMMAZIONE CI SONO SEMPRE MOLTI PROGRAMMI CONTEMPORANEAMENTE ATTIVI, E UNO SOLO IN ESECUZIONE: i tempi di processing e di I/O sono sovrapposti nessun programma gestisce direttamente lI/O il supervisore introduce una overhead di consumi la CPU è sfruttata al meglio si possono introdurre criteri di priorità nella selezione del prossimo programma da mandare in esecuzione Se un programma non in esecuzione occupa memoria centrale inutilmente, viene temporaneamente scaricato su disco, per fare spazio ad altri; la sua immagine verrà ricaricata al momento della sua esecuzione. Si parla di SWAPPING su disco.

29 xxx LE REGOLE DELLA MULTIPROGRAMMAZIONE Il SPV prende il controllo quando: un programma chiede I/O un programma è in errore un programma termina arriva un segnale di Interrupt Un programma può essere in stato di: run se è in esecuzione wait se deve attendere dati dallesterno idle se, pur potendo essere eseguito, non è in esecuzione Il SPV cede il controllo a quel programma, tra tutti quelli idle, che ha maggior priorità

30 xxx COSA E UN PROGRAMMA ATTIVO Un programma IDLE o RUNNING è caratterizzato da: il programma stesso il puntatore allistruzione in esecuzione nel momento lo stato della memoria (variabili, dati, ecc.) lo stato di registri interni che indicano il risultato di confronti, eventuali condizioni derrore, ecc. TUTTO CIO DEVE VENIRE SALVATO NELLE OPERAZIONI DI SWAPPING

31 xxx MISURE DI SERVIZIO DI SISTEMI OPERATIVI Throughput: misura la quantità di lavoro fatta nellunità di tempo, ovvero il tempo di impegno della CPUmisura la quantità di lavoro fatta nellunità di tempo, ovvero il tempo di impegno della CPUTurn-around-time misura il tempo di risposta per lutente dal momento di richiesta delle informazioni a quello di ottenimento dei risultatimisura il tempo di risposta per lutente dal momento di richiesta delle informazioni a quello di ottenimento dei risultati Obiettivo di un Sistema Operativo è di massimizzare il primo e minimizzare il secondo. La multiprogrammazione è un buon passo avanti, ma che succede se un programma che deve fare solo calcolo interno prende il controllo? Nessuno degli altri programmi potrà accedere alla CPU, peggiorando il secondo parametro. QUINDI...

32 xxx TIME SHARING A ogni programma è assegnata una TIME SLICE Il SPV prende il controllo quando: un programma chiede I/O un programma è in errore un programma termina arriva un segnale di Interrupt è finita la time slice del programma in esecuzione Il SPV cede il controllo a quel programma, tra tutti quelli idle, che ha maggior priorità, rispettando lordine di coda rispetto al consumo delle time slice

33 xxx MULTIPROCESSING VALE TUTTO QUANTO DETTO, MA TRA LE RISORSE DISPONIBILI NON CI SONO SOLO I/O MEMORIA ….. MA ANCHE PIU CPU PIU PROGRAMMI CONTEMPORANEAMENTE, INCLUSO IL SPV, POSSONO ESSERE ESEGUITI

34 xxx MULTITASKING UN SISTEMA OPERATIVO, PUR CON UN UNICO UTENTE, PUO AVERE SITUAZIONI COME QUELLE DESCRITTE: Nelluso di un comune PC col Sistema Operativo Windows molti TASK sono attivi contemporaneamente: un processo che ascolta tastiera e mouse un processo che si occupa della visualizzazione sullo schermo un antivirus che controlla tutti i file che entrano in esecuzione più programmi, visualizzati su più finestre, che vengono eseguiti, uno alla volta pur essendo attivi, controllati dallutente il supervisore che provvede allarmonizzazione di tutte le esecuzioni.

35 xxx MEMORY MANAGEMENT La memoria centrale è una risorsa limitata. Il numero di applicazioni in funzione nello stesso istante allinterno di un computer è molto alto. Il Sistema di Memory Management provvede a virtualizzare la memoria centrale con immagini sui dischi, in modo da far apparire allutente una memoria molto più ampia, potenzialmente illimitata. Parte di queste attività sono già state indicate con il termine SWAPPING.

36 xxx FILE MANAGEMENT Sistema che si occupa di: creazione, copia, eliminazione, sostituzione di file allocazione dei file sui supporti fisici gestione degli spazi su supporto fisico rispetto alla struttura logica dei file Criteri di indirizzamento: alfa.docfile reperibile sullo stesso disco del SO c:alfa.docfile reperibile sul disco C c:dir1/alfa.docfile reperibile su C, ma allinterno della directory dir1 d:dir1/dir2/…./alfa.docfile reperibile su D, allinterno di dir1, e poi di dir2, ecc.

37 xxx CARATTERISTICHE DEI FILE I file sono tipizzati rispetto alle possibilità di accesso: SEQUENZIALE accesso dalla prima allultima unità di registrazione (record), nellordine, come su un registratore a nastro RANDOM accesso in qualunque punto del fiel, specificando la posizione fisica, come la selezione del brano di un CD per numero INDEXED accesso in un punto del file, sulla base di un indice, come ad esempio, a partire dalla lettera D di un elenco telefonico INDEXED SEQUENTIAL come il precedente, ma con la possibilità di proseguire poi sequenzialmente

38 xxx DBMS - Data Base Management System Sistema che si occupa di organizzare informazioni su file che contengono, oltre che i dati, le relazioni tra gli stessi: si tratta di unevoluzione del file system. Nellesempio riportato, è pensabile di chiedere operazioni come: Selezionare tutti i record che hanno come sede Milano e come fatturato un valore > , e che non hanno emesso ordini dopo l Rag.SocialeIndirizzoCittàFatturatoSettore……. …………….. Rossi&Rossivia … Roma Metallurgia Rossinivia …Milano Moda ………………... Rag.SocialeIndirizzoCittàFatturatoSettore……. …………….. Rossi&Rossivia … Roma Metallurgia Rossinivia …Milano Moda ………………... Fatt.nDataImportoStato … Pagato Pendente. Fatt.nDataImportoStato … Pagato Pendente.

39 xxx QUANTO E PERICOLOSO IL SOFTWARE

40 xxx LE CATASTROFI "La Società è sempre piu dipendente dal software e ne diviene vulnerabile per MALFUNZlONI e per USO ERRATO" "Il SOFTWARE manipola dati: sempre più importanti e critici; ma può diventare INSICURO" "II SOFTWARE pervade la nostra vita: sempre di più e in ogni settore; ma può diventare INAFFIDABILE" "II SOFTWARE una creazione dell'uomo: sempre più complessa; ma può diventare INGESTIBILE"

41 xxx CATASTROFI "Se per 24 ore tutto il SOFTWARE (i calcolatori) del mondo si fermasse, riprendendo il suo corretto funzionamento nell'istante successivo, questo causerebbe diversi milioni di morti 1 e miliardi di dollari di perdite economiche 2 " 1 stima: tra 1 e 5 milioni di morti 2 stima: tra 1 miliardo e 5000 miliardi di $ (Fonte: Forester, Computer Ethics)

42 xxx CATASTROFI: ESEMPI American Arbitration - Dispute su progetti per 31 M$ Allstate Insurance - Prev.: 8M$ Consunt.: 100M Bank of America - Prev.: 20M$ Consunt.: 60M$ NON funziona American Arbitration - Dispute su progetti 200M$ -190 per difetti Centrale Nucleare di Three Miles Island Chernobyl Challenger Space Shuttle Caduta inaugurale Airbus 320 (scala altimetro) Caduti altri 2 Airbus 320 (idem) Affondamento della HMS Sheffield nella guerra delle Faulkland Abbattimento Airbus iraniano da parte USS Vincennes -guerra Golfo Due Tornado cadono per passaggio vicino antenna TV Europa 2) Lauda Air alle Filippine

43 xxx CATASTROFI (cont.) Caduta 5 elicotteri UH-Blackhawk (immunità elettromagnetica) F/A 18: lancia missile e chiude sportello prima della sua partenza Mariner 18: fatto esplodere in volo per rischio caduta (DO 10 I=1.5) AUDI 5000: 250 incidenti per gest. iniezione in frenata -danni 150 M$ Terapia a microonde uccide portatore pace-maker per staratura Un robot prende alle spalle un operaio e lo uccide (Kawasaki- 1981) Pompa a insulina sbaglia il destrosio a un diabetico Terapia raggi X: e rad invece di e l986 Sistema esperto: intervento ambulat., somministr.-coma e morte 1986 Heathrow bloccato Borsa di Milano bloccata Borsa di Londra bloccata Fuoco (Tokio ) persi 23 mld di yen Acqua (Borsa di Milano ) Alimentazione (Borsa di Milano )

44 xxx CATASTROFI (cont.) impiegato scontento cambia voci della Enciclopedia Britannica cavi tagliati: telefoni, centinaia di FAX, ATM, calcolatori, POS,... sabotatore collaborò alla soluz. a pagamento (Sydney -1987) milioni di azioni non trattate per 82 (Natl Assoc. Sec. Dealers ) studenti inglesi cambiano la quotazione della sterlina '1988) studenti inglesi leggono la posta elettronica della Casa Reale ( 1988) EFT da NY in Svizzera M$ EFT dalla VolksWagen M$ EFT da UK in Svizzera M$ ATM a NY $ EFT USA - 70 M$

45 xxx CATASTROFI (cont.) SWIFT da NY a Zurigo M$ SWIFT da NYa Zurigo M$ il secondo trasferimento fallisce; F. Noe (impieg.Lloyds Bank - NL) torna a controllare: scoperto arresti a NY modifica mem. tel. cellulari - 40 M$/mese danno USA; hackers usano codici rubati per telefonate - 20 M$ danno Ernst & Whinney dichiara danni di 4mld/anno ad Aziende USA da Comp. Crime (>40M£ in UIC; >500 MFF in F) EFT da UK in Svizzera - 54 M$ ATM a NewYork $ ATM in USA -14 M$ ATM in Nuova Zelanda - 1M$ Bancomat a Milano (Di Pietro) Trasfer. Roma/UK/Tokio Dovè commesso crimine ? (Di Pietro)

46 xxx CATASTROFI (ultimo) 89% dei casi NON perseguitati 82% dei casi perseguitati NON condannati Il COMPUTER CRIME paga: meno del 2% di condanne $ di resa media (3000 $ per rapina a mano armata)

47 xxx LE TIPOLOGIE DI APPLICAZIONI

48 xxx TIPOLOGIE DI APPLICAZIONI PER SETTORE DIMPIEGO GESTIONALE Amministrazione Contabilità Contabilità industriale Controllo produzione Sistemi integrati ERP …….. SCIENTIFICO/TECNICO Ricerca Scientifica Ingegneria Strutture CAD/CAM Controllo di processo ………….. TELECOMUNICAZIONI Telefonia fissa Telefonia mobile Trasmissione dati ……….. MEDICINA Gestione pazienti Controllo e monitoraggio Diagnostica …………….. GRAFICA E IMMAGINE Grafica 2D Grafica 3d Animazioni …………..

49 xxx SETTORI E inutile cercare di classificare i settori di applicazione: conviene indicare TUTTI Forse è possibile indicare le tipologie di impiego o di interazione, o di vendita, indipendenti dal settore.

50 xxx INTERAZIONE CON LUOMO PROGRAMMI PER GLI UTENTI vs EMBEDDED Un programma orientato allutente deve essere usato da un essere umano, con tutte le conseguenze di localizzazione linguistica, culturale, ecc, di supporti di addestramento e di integrazione con le altre attività; es. contabilità, prenotazioni, applicazioni di sportello, ecc. Un programma embedded è nascosto allinterno di un altro sistema, non necessariamente con consapevolezza dellutente, che non può interagire direttamente col software; es. il controllo dellABS, liniezione delle automobili, i controlli di volo di un aereo, le regolazioni di un frigorifero, ecc.

51 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Commercio elettronico B2B Commercio elettronico B2C Contabilità analitica Grafica 2D Grafica 3D Calcolo strutturale Calcolo scientifico CAD/CAM Animazione Simulazione Sistemi esperti Intelligenza artificiale Sistemi educazionali Giochi Software automotive Telecomunicazioni fisse Telecomunicazioni mobili Applicazioni medicali Computer art Algoritmi genetici Trasmissioni dati Reti di computer Edutainment Wordprocessing Calcolo matematico White goods Reti neuronali Riconoscimento vocale Applicazioni musicali Sistemi OCR Interpretazione del linguaggio naturale Robotica Domotica Intelligent building Critica letteraria Generazione artistica Cinema Scenografia Calcolo simbolico Traduzione automatica Applicazioni dufficio ……………………... Test di Turing DOMANDA: Mi scriva, per favore, un sonetto sul tema "Forth Bridge" RISPOSTA: Non faccia affidamento su di me per questo. Non ho mai saputo scrivere poesie. DOMANDA: Sommi a Si noti che la risposta è sbagliata (34957 sommato a dà come risultato ). RISPOSTA: (pausa di circa 30 secondi e poi la risposta) DOMANDA: Gioca a scacchi? RISPOSTA: Sì DOMANDA: Ho il Re in e1 e nessun altro pezzo. Lei ha solo il Re in c3 e una Torre in h8. Tocca a lei. Che mossa giuoca? RISPOSTA: (dopo una pausa di quindici secondi) Torre in h1 matto. Imitazione del dialogo PARRY: Non capisco le sue ragioni DOTTORE: Perché non capisce le mie ragioni ? PARRY: Non dovrei esserlo? DOTTORE: Perché dice questo proprio ora ? PARRY: Le cose stanno così DOTTORE: Supponga che stiano nel modo esattamente opposto PARRY: E allora? DOTTORE: Non sono sicuro di capirla del tutto PARRY: Insiste troppo sullo stesse domande DOTTORE: Cosa le suggerisce questa somiglianza? PARRY: Non la capisco DOTTORE: Lei desidera capire? PARRY: Finalmente comincia a mostrare interesse per i miei sentimenti! DOTTORE: Oh! Ho mostrato interesse per i suoi sentimenti?

52 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Contabilità Finanza Trading Commercio elettronico B2B Commercio elettronico B2C Contabilità analitica Controllo della produzione Magazzino Gestione vendite Marketing Grafica 2D Grafica 3D Calcolo strutturale Calcolo scientifico CAD/CAM Animazione Simulazione Controllo impianti Controllo numerico Controllo di processo Sistemi esperti Sistemi educazionali Giochi Software automotive Telecomunicazioni fisse Telecomunicazioni mobili Applicazioni medicali Computer art Algoritmi genetici Trasmissioni dati Reti di computer Edutainment Wordprocessing Calcolo matematico White goods Reti neuronali Riconoscimento vocale Applicazioni musicali Sistemi OCR Interpretazione del linguaggio naturale Robotica Domotica Intelligent building Critica letteraria Generazione artistica Cinema Scenografia Calcolo simbolico Traduzione automatica Applicazioni dufficio ……………………...

53 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Contabilità Finanza Trading Commercio elettronico B2B Commercio elettronico B2C Contabilità analitica Controllo della produzione Magazzino Gestione vendite Marketing Grafica 2D Grafica 3D Calcolo strutturale Calcolo scientifico CAD/CAM Animazione Simulazione Controllo impianti Controllo numerico Controllo di processo Sistemi esperti Sistemi educazionali Giochi Software automotive Telecomunicazioni fisse Telecomunicazioni mobili Applicazioni medicali Computer art Algoritmi genetici Trasmissioni dati Reti di computer Edutainment Wordprocessing Calcolo matematico White goods Reti neuronali Riconoscimento vocale Applicazioni musicali Sistemi OCR Interpretazione del linguaggio naturale Robotica Domotica Intelligent building Critica letteraria Generazione artisticaCinema Scenografia Calcolo simbolico Traduzione automatica Applicazioni dufficio ……………………...

54 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Commercio elettronico B2B Commercio elettronico B2C Grafica 2D Grafica 3D Calcolo strutturale Calcolo scientifico CAD/CAM Animazione Simulazione Sistemi educazionali Giochi Software automotive Telecomunicazioni fisse Telecomunicazioni mobili Applicazioni medicali Algoritmi genetici Trasmissioni dati Reti di computer Edutainment Wordprocessing Calcolo matematico White goods Reti neuronali Riconoscimento vocale Sistemi OCR Computer art Critica letteraria Generazione artistica Scenografia Calcolo simbolico Traduzione automatica Applicazioni dufficio ……………………... Generazione automatica di fiabe popolari russe Dopo avere attaccato e ingannato il mago del regno, il ciclope Cecyl rubò la pozione magica. Subito dopo la disgrazia, furono inviati degli araldi per informare i regni vicini del fatto, chiamando a raccolta valenti cavalieri.Il palafreniere Huliev, dopo aver udito le lamentele della corte, decise autonomamente di partire per porre rimedio alla disgrazia.Il mago Basil chiese a Huliev di spartire tutte le riserve di farina con i poveri del regno, per combattere la fame, promettendo il suo aiuto.Basil e Huliev, insieme, decisero di spartire gli oggetti secondo le loro necessità, e il mago preparò una pozione magica per Huliev, cuocendo cortecce di alberi vecchi di secoli.Vicino al fiume Huliev trovò una piccola barca, vi salì sopra e, molto rapidamente, arrivò alla sua destinazione. Huliev, confidente nelle sue capacità e possibilità, invitò il ciclope nell'arena, dove avrebbero dovuto correre tra i leoni, affrettandosi senza essere mangiati. Chi fosse sopravvissuto più a lungo sarebbe stato il vincitore. La corsa fu difficile e pericolosa, e alcuni tronchi sul percorso aggiungevano difficoltà, ma Huliev arrivò alla meta per primo.Mentre il ciclope andò a nascondersi nelle segrete del castello, Huliev lo seguì e lo imprigionò fino alla fine dei suoi giorni. Dopo aver camminato per giorni e giorni, la strega Daphne arrivò finalmente al ………..Grammelot ue fellegno, e vai, e cora, iasciolle, io adde la belletto, stelli hai forca marti schi menti sermutamentra era cominanzi mala a me sommo lo sgrida che tir che laltro o la e rendo rauna mor discerne tanto bene è leggia ché mali, duolo lordar lor sì così che lodo comolte fioco strati. infiati, che, sì contro:tostese, di questro car, come la mi via e piena; e piancorse La Decima sinfonia di Beethoven Analisi della Divina Commedia (Padre Busa) …………..

55 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Contabilità Finanza Trading Commercio elettronico B2B Commercio elettronico B2C Contabilità analitica Controllo della produzione Magazzino Gestione vendite Marketing Grafica 2D Grafica 3D Calcolo strutturale Calcolo scientifico CAD/CAM Animazione Simulazione Controllo impianti Controllo numerico Controllo di processo Sistemi esperti Sistemi educazionali Giochi Software automotive Telecomunicazioni fisse Telecomunicazioni mobili Applicazioni medicali Computer art Algoritmi genetici Trasmissioni dati Reti di computer Edutainment Wordprocessing Calcolo matematico White goods Reti neuronali Riconoscimento vocale Applicazioni musicali Sistemi OCR Interpretazione del linguaggio naturale Robotica Domotica Intelligent building Critica letteraria Generazione artistica Cinema Scenografia Calcolo simbolico Traduzione automatica Applicazioni dufficio ……………………...

56 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Commercio elettronico B2B Commercio elettronico B2C Grafica 2D Grafica 3D Calcolo strutturale Calcolo scientifico CAD/CAM Animazione Simulazione Sistemi educazionali Giochi Software automotive Telecomunicazioni fisse Telecomunicazioni mobili Applicazioni medicali Algoritmi genetici Trasmissioni dati Reti di computer Edutainment Calcolo matematico White goods Reti neuronali Riconoscimento vocale Sistemi OCR Interpretazione del linguaggio naturale Robotica Domotica Intelligent building Scenografia Calcolo simbolico Traduzione automatica Da Altavista President Clinton says the emergency Mideast summit "cannot afford to fail" as Prime Minister Ehud Barak and Yasser Arafat meet for talks amid fresh violence. Il presidente Clinton dichiara che la sommità di Mideast di emergenza " non può permettersi di venire a mancare " come raduno del primo ministro Ehud Barak e di Yasser Arafat per i colloqui in mezzo della violenza fresca.

57 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Contabilità Finanza Trading Commercio elettronico B2B Commercio elettronico B2C Contabilità analitica Controllo della produzione Magazzino Gestione vendite Marketing Grafica 2D Grafica 3D Calcolo strutturale Calcolo scientifico CAD/CAM Animazione Simulazione Controllo impianti Controllo Wordprocessing Calcolo matematico Applicazioni musicali Sistemi OCR Sistemi esperti Sistemi educazionaliGiochi Software automotive Telecomunicazioni fisse Telecomunicazioni Algoritmi genetici Trasmissioni dati Reti di computer Edutainment

58 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Trading Commercio elettronico B2B Commercio elettronico B2C Grafica, 2D,3D MultimediaScenografiaAnimazione Calcolo strutturale Calcolo scientifico CAD/CAM Animazione Simulazione Controllo impianti Controllo numerico Controllo di processo Sistemi esperti Sistemi educazionali Software automotive Telecomunicazioni fisse Telecomunicazioni mobili Applicazioni medicali Computer art Algoritmi genetici Trasmissioni dati Reti di computer Edutainment Calcolo matematico White goods Reti neuronali Riconoscimento vocale Applicazioni musicali Sistemi OCR Interpretazione del linguaggio naturale Robotica Domotica Intelligent building Critica letteraria Generazione artistica Cinema Scenografia Calcolo simbolico Traduzione automatica Applicazioni dufficio ……………………...

59 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Calcolo strutturale Calcolo scientifico CAD/CAM Simulazione Sistemi educazionali Software automotive Telecomunicazioni fisse Telecomunicazioni mobili Applicazioni medicali Algoritmi genetici Trasmissioni dati Reti di computer Edutainment Calcolo matematico White goods Reti neuronali Riconoscimento vocale Sistemi OCR Robotica Domotica Intelligent building Calcolo simbolico

60 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Calcolo strutturale Calcolo scientifico CAD/CAM Simulazione Sistemi educazionali Software automotive Applicazioni medicali Algoritmi genetici Edutainment Calcolo matematico White goods Reti neuronali Riconoscimento vocale Sistemi OCR Robotica Domotica Intelligent building Calcolo simbolico

61 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Calcolo strutturale Calcolo scientifico CAD/CAM Simulazione Sistemi educazionali Applicazioni medicali Algoritmi geneticiEdutainment Calcolo matematico Reti neuronali Riconoscimento vocale Sistemi OCR Robotica Domotica Intelligent building Calcolo simbolico

62 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Calcolo strutturale Calcolo scientifico CAD/CAM Simulazione Applicazioni medicali Algoritmi genetici Calcolo matematico Reti neuronali Riconoscimento vocale Sistemi OCR Robotica Domotica Intelligent building Calcolo simbolico

63 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Calcolo strutturale Calcolo scientifico CAD/CAMSimulazione Applicazioni medicali Algoritmi genetici Calcolo matematico Robotica Domotica Intelligent building Calcolo simbolico

64 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Applicazioni medicali Algoritmi genetici RoboticaDomotica Intelligent building

65 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Applicazioni medicali Algoritmi genetici Robotica

66 xxx UN ELENCO NON ESAbUSTIVO E NON ORDINATO Algoritmi genetici Robotica Robotica Naïve physics, la fisica ingenua: un ramo dellintelligenza artificiale, che è a sua volta una particolare tecnica della computer science. Ad esempio, la fisica (classica, relativistica, quantistica, …) non è in grado di descrivere fenomeni come la persona che scivola sulle scale, lacqua che bolle o il bicchiere dacqua che si rovescia; in particolare riferendoci a questultimo esempio, è possibile descrivere con la fisica ingenua il seguente fenomeno, non descrivibile dalla fisica in termini predittivi quantitativi: Naïve physics, la fisica ingenua: un ramo dellintelligenza artificiale, che è a sua volta una particolare tecnica della computer science. Ad esempio, la fisica (classica, relativistica, quantistica, …) non è in grado di descrivere fenomeni come la persona che scivola sulle scale, lacqua che bolle o il bicchiere dacqua che si rovescia; in particolare riferendoci a questultimo esempio, è possibile descrivere con la fisica ingenua il seguente fenomeno, non descrivibile dalla fisica in termini predittivi quantitativi: dato un bicchiere vuoto, versando in esso da una bottiglia un liquido, tale liquido riempie progressivamente il bicchiere fino allorlo, dopodiché si rovescia. dato un bicchiere vuoto, versando in esso da una bottiglia un liquido, tale liquido riempie progressivamente il bicchiere fino allorlo, dopodiché si rovescia. La fisica ingenua è in grado di simulare il fenomeno costruendo programmi che descrivono il comportamento delle gocce dacqua, facendole poi agire e interagire con il bicchiere; una descrizione (estremamente grossolana) di una tale descrizione può essere: una goccia dacqua ama stare in contatto con altre gocce dacqua una goccia dacqua ama stare in contatto con altre gocce dacqua una goccia dacqua vende a stare in una posizione che è la più bassa possibile una goccia dacqua vende a stare in una posizione che è la più bassa possibile una goccia dacqua non penetra barriere di vetro. una goccia dacqua non penetra barriere di vetro. Sulla base di queste caratteristiche, si costruiscono programmi che presentano progressivamente schermate del riempimento e del rovesciamento del bicchiere come quelle (puramente esemplificative) che seguono: Tali tecniche hanno applicazioni, ad esempio, nella progettazione di robot che, dovendosi muovere in ambienti ostili, devono essere capaci di predire leffetto delle loro interazioni con lambiente. La legge F=ma esprime le modalità di comportamento di un corpo soggetto a una forza, ove F è la forza, m è la massa e a è laccelerazione; la sottolineatura fa riferimento al fatto che le grandezze in questione sono vettoriali, ovvero devono essere considerate in una dimensione spaziale, tipicamente caratterizzata da tre componenti altezza, larghezza, profondità. La legge F=ma esprime le modalità di comportamento di un corpo soggetto a una forza, ove F è la forza, m è la massa e a è laccelerazione; la sottolineatura fa riferimento al fatto che le grandezze in questione sono vettoriali, ovvero devono essere considerate in una dimensione spaziale, tipicamente caratterizzata da tre componenti altezza, larghezza, profondità.

67 xxx UN ELENCO NON ESAUSTIVO E NON ORDINATO Algoritmi genetici


Scaricare ppt "Xxx IL SOFTWARE Marco Maiocchi. xxx Problemi e Soluzioni Problema: ho fame. Soluzione: mangio un panino oProblema: come ottengo un panino ? oSoluzione1:"

Presentazioni simili


Annunci Google