Added 2 Part

- created the two other problems
- added pdf
This commit is contained in:
2023-12-20 15:19:58 +01:00
parent ac4ada70df
commit e2fa69e2d5
4 changed files with 271 additions and 0 deletions

Binary file not shown.

View File

@@ -0,0 +1,5 @@
package net.berack.upo.ai.decision;
public class ConsoleInterface {
}

View File

@@ -0,0 +1,128 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- This network was created in GeNIe Academic, which can be used for academic teaching and research purposes only -->
<smile version="1.0" id="Prototipo" numsamples="10000" discsamples="10000">
<nodes>
<decision id="Effettuare_la_Ricerca">
<state id="Si" />
<state id="No" />
</decision>
<decision id="Migliorare_la_Qualià">
<state id="Si" />
<state id="No" />
<parents>Effettuare_la_Ricerca</parents>
</decision>
<cpt id="Qualità_Prodotto">
<state id="Standard" />
<state id="Alta" />
<parents>Migliorare_la_Qualià</parents>
<probabilities>0.15 0.85 0.5 0.5</probabilities>
</cpt>
<cpt id="Domanda_Mercato">
<state id="Bassa" />
<state id="Alta" />
<probabilities>0.5 0.5</probabilities>
</cpt>
<utility id="Costo_di_Ricerca">
<parents>Effettuare_la_Ricerca</parents>
<utilities>-1000 0</utilities>
</utility>
<utility id="Costo_Prototipo">
<parents>Migliorare_la_Qualià</parents>
<utilities>-5000 0</utilities>
</utility>
<cpt id="Profitto">
<state id="Nessumo" />
<state id="Basso" />
<state id="Alto" />
<parents>Domanda_Mercato Qualità_Prodotto</parents>
<probabilities>0.9 0.09 0.01 0.5 0.35 0.15 0.1 0.2 0.7 0.01 0.09 0.9</probabilities>
</cpt>
<utility id="Valore_Profitto">
<parents>Profitto</parents>
<utilities>-2500 10000 50000</utilities>
</utility>
<cpt id="Ricerca_di_Mercato">
<state id="Bassa" />
<state id="Alta" />
<parents>Effettuare_la_Ricerca Domanda_Mercato</parents>
<probabilities>0.9 0.09999999999999998 0.1 0.9 0.5 0.5 0.5 0.5</probabilities>
</cpt>
</nodes>
<extensions>
<genie version="1.0" app="GeNIe 4.1.3402.0 ACADEMIC" name="Prototipo">
<comment>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).\nLindustria 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 dell85%. Le probabilita di profitto (nessuno, basso, alto) sono stimate dallazienda (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 ce 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. Lindustria non ha conoscenza sullattuale domanda di mercato.\nModellare un processo decisionale in cui, sulla base dei dati in input, lazienda scelga la sequenza di azioni migliori.</comment>
<node id="Qualità_Prodotto">
<name>Qualità Prodotto</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>389 216 467 270</position>
<barchart active="true" width="128" height="64" />
</node>
<node id="Domanda_Mercato">
<name>Domanda Mercato</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>577 90 674 150</position>
<barchart active="true" width="128" height="64" />
</node>
<node id="Effettuare_la_Ricerca">
<name>Effettuare la Ricerca</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>210 84 291 150</position>
<barchart active="true" width="128" height="64" />
</node>
<node id="Migliorare_la_Qualià">
<name>Migliorare la Qualià</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>211 214 292 272</position>
<barchart active="true" width="128" height="64" />
</node>
<node id="Costo_di_Ricerca">
<name>Costo di Ricerca</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>40 104 118 140</position>
<barchart active="true" />
</node>
<node id="Costo_Prototipo">
<name>Costo Prototipo</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>39 216 127 262</position>
<barchart active="true" />
</node>
<node id="Profitto">
<name>Profitto</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>600 228 651 259</position>
<barchart active="true" width="128" height="72" />
</node>
<node id="Valore_Profitto">
<name>Valore Profitto</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>589 347 661 379</position>
<barchart active="true" width="128" height="64" />
</node>
<node id="Ricerca_di_Mercato">
<name>Ricerca di Mercato</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>385 90 472 150</position>
<barchart active="true" width="128" height="64" />
</node>
</genie>
</extensions>
</smile>

View File

@@ -0,0 +1,138 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- This network was created in GeNIe Academic, which can be used for academic teaching and research purposes only -->
<smile version="1.0" id="Veicolo" numsamples="10000" discsamples="10000">
<nodes>
<cpt id="Posizione" dynamic="plate">
<state id="Left" />
<state id="Middle" />
<state id="Right" />
<probabilities>0 1 0</probabilities>
</cpt>
<cpt id="Condizioni_Meteo" dynamic="plate">
<state id="Normale" />
<state id="Umido" />
<probabilities>0.9 0.1</probabilities>
</cpt>
<cpt id="Stato_Terreno" dynamic="plate">
<state id="Normale" />
<state id="Sconnesso" />
<probabilities>1 0</probabilities>
</cpt>
<noisymax id="Guasto" dynamic="plate">
<state id="Si" />
<state id="No" />
<parents>Condizioni_Meteo Stato_Terreno</parents>
<strengths>1 0 1 0</strengths>
<parameters>0.1 0.9 0 1 0.5 0.5 0 1 0.001 0.999</parameters>
</noisymax>
<noisymax id="Accuratezza_Sensore" dynamic="plate">
<state id="Pessima" />
<state id="Buona" />
<state id="Ottima" />
<parents>Guasto Condizioni_Meteo Stato_Terreno</parents>
<strengths>0 1 1 0 1 0</strengths>
<parameters>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</parameters>
</noisymax>
<cpt id="Sensore_Posizione" dynamic="plate">
<state id="Left" />
<state id="Middle" />
<state id="Right" />
<parents>Accuratezza_Sensore Posizione</parents>
<probabilities>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</probabilities>
</cpt>
<decision id="Comando" dynamic="plate">
<state id="Left" />
<state id="Stay" />
<state id="Right" />
<parents>Sensore_Posizione</parents>
</decision>
<utility id="Utilità" dynamic="plate">
<parents>Posizione</parents>
<utilities>-100 100 -100</utilities>
</utility>
</nodes>
<dynamic numslices="5">
<cpt id="Posizione" order="1">
<parents>Posizione Comando</parents>
<probabilities>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</probabilities>
</cpt>
<cpt id="Condizioni_Meteo" order="1">
<parents>Condizioni_Meteo</parents>
<probabilities>0.9 0.1 0.1 0.9</probabilities>
</cpt>
<cpt id="Stato_Terreno" order="1">
<parents>Stato_Terreno</parents>
<probabilities>0.8 0.2 0.7 0.3</probabilities>
</cpt>
</dynamic>
<extensions>
<genie version="1.0" app="GeNIe 4.1.3402.0 ACADEMIC" name="Veicolo">
<comment>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 unaltra 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 laccuratezza e del 90%, mentre nel terzo caso del 35%.\nLaccuratezza 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 sullacuratezza 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 luno dallaltro).\nNon ci sono altre cause immediate rilevanti.\nCe pero una probabilita dello 0.1 che fallisca, per altre cause non modellate, allistante successivo (degradazione del sensore).\nRicordando che scopo dellagente automatico sul veicolo e mantenere il centro corsia, modellare un processo decisionale in cui, a seguito di unosservazione del sensore, lagente 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.</comment>
<plate leftwidth="100" rightwidth="100">4 4 711 571</plate>
<node id="Comando">
<name>Comando</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>312 320 402 362</position>
<barchart width="128" height="108" />
</node>
<node id="Posizione">
<name>Posizione</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>231 460 307 506</position>
<barchart active="true" width="128" height="108" />
</node>
<node id="Sensore_Posizione">
<name>Sensore Posizione</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>148 318 223 370</position>
<barchart active="true" width="128" height="108" />
</node>
<node id="Accuratezza_Sensore">
<name>Accuratezza Sensore</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>142 179 228 229</position>
<barchart active="true" width="128" height="108" />
</node>
<node id="Condizioni_Meteo">
<name>Condizioni Meteo</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>140 47 231 103</position>
<barchart active="true" width="128" height="78" />
</node>
<node id="Stato_Terreno">
<name>Stato Terreno</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>314 180 392 228</position>
<barchart active="true" width="128" height="78" />
</node>
<node id="Guasto">
<name>Guasto</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>313 51 393 100</position>
<barchart active="true" width="128" height="78" />
</node>
<node id="Utilità">
<name>Utilità</name>
<interior color="e5f6f7" />
<outline color="000080" />
<font color="000000" name="Arial" size="8" />
<position>382 406 453 450</position>
<barchart width="128" height="64" />
</node>
</genie>
</extensions>
</smile>