|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Sep 2005
Città: Battipaglia(SA)
Messaggi: 162
|
Problema dello zaino
Salve a tutti!
Qualcuno per caso ha la solozione con programmazione greedy del Problema dello Zaino nella sua versione generale, cioè dove è permesso inserire nello zaino anche frazioni di oggetti? Grazie! Ultima modifica di ilop : 07-09-2005 alle 16:48. |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Mar 2005
Messaggi: 1653
|
Quote:
![]() Se puo' esserti utile, ho trovato questi due link: http://www.disi.unige.it/person/MoggiE/ASD/nota9 http://web.tiscali.it/vitaartificiale/knap.html Il "Problema dello zaino" credo sia un problema di ottimizzazione, vero? Mi sa che l'ho fatto nel corso di Ricerca Operativa, tanti tanti anni fa ![]() ![]() Ciao
__________________
gica78r@ncc-1701:~$ tar -c tar: Codardamente mi rifiuto di creare un archivio vuoto ![]() |
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Un algoritmo greedy cerca di ottimizzare la funzione facendo scelte ad ogni momento più convenienti rispetto alle altre...
Ad esempio se un algoritmo greedy dovesse percorrere un grafo, ad ogni nodo con più di un percorso sceglierebbe quello di costo minore... |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
In pratica un algoritmo grredy ad ogni passo deve sempre effettuare una scelta che determina (se possibile), fra tutte le scelte possibili, quella che permette di ottenere il valore maggiore della funzione da massimizzare...
Hai M oggetti... Al passo i-esimo hai messo k oggetti nello zaino... Per arrivare al passo i+1 un algoritmo greedy sceglierà l'oggetto degli M-k rimasti che permette di ottenere il valore più alto della funzione da massimizzare... |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Mar 2005
Messaggi: 1653
|
Quote:
Se ad ogni passo fai la scelta che ti massimizza la funzione, non e' detto che si giunga sempre ad una soluzione ammissibile, no? Quindi l'algoritmo deve valutare una situazione del genere e poter tornare indietro per effettuare una scelta differente. O sono completamente fuori strada?
__________________
gica78r@ncc-1701:~$ tar -c tar: Codardamente mi rifiuto di creare un archivio vuoto ![]() |
|
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Il backtracking è un'altra cosa. Gli algoritmi che usano un approccio greedy funzionano esattamente come ha descritto cionci.
Nessuno, però, t'impedisce di usare entrambi gli approcci per cercare di risolvere un determinato problema... ![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#7 | |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
Puoi anche applicare il backtracking anche ad un algoritmo greedy...ma cmunque per sapere se hai veramente il massimo dovresti ottenere tute le possibili soluzioni... Supongo che con gli algoritmi genetici sarebbe carino da realizzare... |
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Nov 2002
Città: Padova
Messaggi: 2206
|
Si, l'esame è quello di ricerca operativa
![]() La soluzione del problema "rilassato" (frazioni) è questa:
__________________
Fisso: Case Corsair Carbide 275Q PSU Seasonic Focus GX-850 MB Asus TUF GAMING X570-PLUS CPU AMD Ryzen 3900x Cooler AMD Wrait Prism RAM 2*16GB G.Skill RipJaws V DDR4 3200MHz VGA EVGA GeForce RTX 2060 Super 8GB Monitor Asus VX239H SSD 2*ADATA XPG SX8200 PRO 1TB Raid0 Router Netgear DGND4000 SO Windows 10 Print&Scan Epson WF-4830 / Laptop: Dell XPS L502X / Mobile: Pixel 7a |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 06:11.