From e2fa69e2d5c95153fbbe84c59270ccc9eda89a28 Mon Sep 17 00:00:00 2001 From: Berack96 Date: Wed, 20 Dec 2023 15:19:58 +0100 Subject: [PATCH] Added 2 Part - created the two other problems - added pdf --- ProgettoSupportoDecisioni_A-B_22-23.pdf | Bin 0 -> 68146 bytes .../upo/ai/decision/ConsoleInterface.java | 5 + src/main/resources/Prototipo.xdsl | 128 ++++++++++++++++ src/main/resources/Veicolo.xdsl | 138 ++++++++++++++++++ 4 files changed, 271 insertions(+) create mode 100644 ProgettoSupportoDecisioni_A-B_22-23.pdf create mode 100644 src/main/java/net/berack/upo/ai/decision/ConsoleInterface.java create mode 100644 src/main/resources/Prototipo.xdsl create mode 100644 src/main/resources/Veicolo.xdsl diff --git a/ProgettoSupportoDecisioni_A-B_22-23.pdf b/ProgettoSupportoDecisioni_A-B_22-23.pdf new file mode 100644 index 0000000000000000000000000000000000000000..f18f7480dd4f4863ff2694a84c40ecc5fab63780 GIT binary patch literal 68146 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 literal 0 HcmV?d00001 diff --git a/src/main/java/net/berack/upo/ai/decision/ConsoleInterface.java b/src/main/java/net/berack/upo/ai/decision/ConsoleInterface.java new file mode 100644 index 0000000..47799f0 --- /dev/null +++ b/src/main/java/net/berack/upo/ai/decision/ConsoleInterface.java @@ -0,0 +1,5 @@ +package net.berack.upo.ai.decision; + +public class ConsoleInterface { + +} diff --git a/src/main/resources/Prototipo.xdsl b/src/main/resources/Prototipo.xdsl new file mode 100644 index 0000000..5314b7e --- /dev/null +++ b/src/main/resources/Prototipo.xdsl @@ -0,0 +1,128 @@ + + + + + + + + + + + + Effettuare_la_Ricerca + + + + + Migliorare_la_Qualià + 0.15 0.85 0.5 0.5 + + + + + 0.5 0.5 + + + Effettuare_la_Ricerca + -1000 0 + + + Migliorare_la_Qualià + -5000 0 + + + + + + Domanda_Mercato Qualità_Prodotto + 0.9 0.09 0.01 0.5 0.35 0.15 0.1 0.2 0.7 0.01 0.09 0.9 + + + Profitto + -2500 10000 50000 + + + + + Effettuare_la_Ricerca Domanda_Mercato + 0.9 0.09999999999999998 0.1 0.9 0.5 0.5 0.5 0.5 + + + + + Un industria manifatturiera deve decidere se andare avanti con la produzione di un nuovo prodotto o fermarla. I profitti futuri dipendono dalla qualita’ del prodotto (standard o alta) e dalla domanda di mercato (bassa o alta).\nL’industria puo’, prima di decidere sulla produzione, effettuare due altre azioni: migliorare la qualita’ del prodotto sviluppando un prototipo, oppure effettuare ricerche di marketing approfondite per capire la domanda di mercato.\nPuo’ effettuare anche entrambe le cose (nel qual caso prima effettua la ricerca di marketing).\nEntrambe queste azioni costano, in particolare le ricerche di mercato $1000 e lo sviluppo del prototipo di qualita’ $5000.\nLe ricerche di mercato sono affidabili al 90%, mentre lo sviluppo del prototipo ha una probabilita’ di aumentare la qualita’ dell’85%. Le probabilita’ di profitto (nessuno, basso, alto) sono stimate dall’azienda (introdurle nel modello a piacere, ma con valori sensati; es: la prob. di un profitto alto deve essere piu’ alta se la domanda di mercato e’ alta e la qualita’ del prodotto e’ alta, rispetto ad una situazione in cui c’e’ prodotto scadente e bassa domanda).\n\nIl costo della produzione e’ stimato in $2500, il profitto basso in $10000 ed il profitto alto in $50000. L’industria non ha conoscenza sull’attuale domanda di mercato.\nModellare un processo decisionale in cui, sulla base dei dati in input, l’azienda scelga la sequenza di azioni migliori. + + Qualità Prodotto + + + + 389 216 467 270 + + + + Domanda Mercato + + + + 577 90 674 150 + + + + Effettuare la Ricerca + + + + 210 84 291 150 + + + + Migliorare la Qualià + + + + 211 214 292 272 + + + + Costo di Ricerca + + + + 40 104 118 140 + + + + Costo Prototipo + + + + 39 216 127 262 + + + + Profitto + + + + 600 228 651 259 + + + + Valore Profitto + + + + 589 347 661 379 + + + + Ricerca di Mercato + + + + 385 90 472 150 + + + + + diff --git a/src/main/resources/Veicolo.xdsl b/src/main/resources/Veicolo.xdsl new file mode 100644 index 0000000..cb0e3b6 --- /dev/null +++ b/src/main/resources/Veicolo.xdsl @@ -0,0 +1,138 @@ + + + + + + + + + 0 1 0 + + + + + 0.9 0.1 + + + + + 1 0 + + + + + Condizioni_Meteo Stato_Terreno + 1 0 1 0 + 0.1 0.9 0 1 0.5 0.5 0 1 0.001 0.999 + + + + + + Guasto Condizioni_Meteo Stato_Terreno + 0 1 1 0 1 0 + 1 0 0 0 0 1 0.3 0.15 0.5499999999999999 0 0 1 0.6 0.3 0.1 0 0 1 0 0 1 + + + + + + Accuratezza_Sensore Posizione + 0.35 0.325 0.325 0.325 0.35 0.325 0.325 0.325 0.35 0.9 0.05 0.05 0.05 0.8999999999999999 0.05 0.05 0.05 0.8999999999999999 0.99 0.005 0.005 0.005 0.99 0.005 0.005 0.005 0.99 + + + + + + Sensore_Posizione + + + Posizione + -100 100 -100 + + + + + Posizione Comando + 0.9 0.1 0 0.9 0.1 0 0.1 0.9 0 0.9 0.05 0.05 0.04999999999999998 0.9 0.05 0.04999999999999993 0.05 0.9 0 0.9 0.1 0 0.1 0.9 0 0.1 0.9 + + + Condizioni_Meteo + 0.9 0.1 0.1 0.9 + + + Stato_Terreno + 0.8 0.2 0.7 0.3 + + + + + Un veicolo autonomo deve mantenere il centro di una corsia unsando un sensore di posizione.\nLe azioni che puo’ eseguire come comandi sono Left, Stay, Right che muovono il veicolo a sx, non cambiano direzione oppure a dx rispettivamente.\nOgni azione ha sempre una probabilita’ del 90% di avere successo, mentre nel rimanente 10% dei casi puo’ portare in un’altra direzione (es: il veicolo e’ nel centro, esegue Stay, rimane al centro con prob 0.9, va a sx con prob 0.05 e va a dx con prob 0.05; similmente negli altri casi).\nIl sensore di posizione ha invece un accuratezza che dipende da molti fattori.\nIn particolare, puo’ avere 3 livelli di accuratezza: ottima, buona e pessima.\nNel primo caso la percentuale di accuratezza e; del 99% (cioe’ nel 99% dei casi segnala la posizione \ncorretta e nel restante 1% una posizione sbagliata in modo uniforme).; nel secondo caso l’accuratezza e’ del 90%, mentre nel terzo caso del 35%.\nL’accuratezza del sensore dipende da due fattori principali: le condizioni meterologiche e lo stato del terreno su cui si muove il veicolo.\nIl tempo umido causa nel 30% dei casi una pessima accuratezza e nel 15% dei casi una buona (quindi nel 55% dei casi rimane ottima).\nIl terreno sconnesso causa nel 60% dei casi una accuratezza pessima e nel 30% dei casi buone (ossia 10% dei casi ottima).\nLe influenze dei due fattori sull’acuratezza sono indipendenti.\nEntrambi i fattori possono inoltre causare un guasto al sensore, il che implica che la sua accuratezza diventa pessima.\nIl fallimento del sensore avviene nel 10% dei casi di tempo umido e nel 50% dei casi di terreno sconnesso (di nuovo in modo indipendente l’uno dall’altro).\nNon ci sono altre cause immediate rilevanti.\nC’e pero’ una probabilita’ dello 0.1 che fallisca, per altre cause non modellate, all’istante successivo (degradazione del sensore).\nRicordando che scopo dell’agente automatico sul veicolo e’ mantenere il centro corsia, modellare un processo decisionale in cui, a seguito di un’osservazione del sensore, l’agente invii al veicolo il comando opportuno, modellando il processo per 5 istanti temporali, partendo dal veicolo sistemato in centro corsia\nSi assuma un modello di evoluzione del tempo (da secco a umido e viceversa) a piacere, cosi’ come un modello di evoluzione del terreno.\nIl fallimento del sensore e’ permanente. + 4 4 711 571 + + Comando + + + + 312 320 402 362 + + + + Posizione + + + + 231 460 307 506 + + + + Sensore Posizione + + + + 148 318 223 370 + + + + Accuratezza Sensore + + + + 142 179 228 229 + + + + Condizioni Meteo + + + + 140 47 231 103 + + + + Stato Terreno + + + + 314 180 392 228 + + + + Guasto + + + + 313 51 393 100 + + + + Utilità + + + + 382 406 453 450 + + + + +