Domanda

Sto risolvendo un problema di pianificazione di un pasto, in cui ho bisogno per soddisfare le richieste come "creare un due piatto che DEVE avere al massimo 2 grammi di grassi, il primo piatto DEVE essere 400kcal e DEVONO avere almeno 10g di proteine, e il secondo piatto DEVE essere 100kcal" restituisce un elenco di piatti da un elenco predefinito.In altre parole, ci vuole duro/morbido vincoli di un pasto intero e set di soft/hard vincolo su ogni piatto slot come input e output di un incarico di piatti piatto slot.

Ho modellato come un Vincolo Soddisfazione Problema con tutti i piatti vincoli in fase di vincoli unari e pasto vincoli utilizzato per accettare/rifiutare una soluzione così come classifica.Ho scritto Prima di Profondità Branch and Bound circa il seguente [1] (in breve, si costruisce prima di profondità di un albero di tutte le possibili assegnazioni e pota i rami con un piatto violando i vincoli) e funziona abbastanza bene.(*)

Il problema è che non ho bisogno di un altro algoritmo per la risoluzione di quel problema, e - per motivi non posso cambiare, deve essere completamente deterministico.Che è problematico, in quanto:

  • tutta la pianificazione del pasto di ricerca si concentra sull'utilizzo di vari gusti, di intelligenza artificiale,
  • i pochi documenti di ricerca che non fanno uso di AI, di utilizzare onthologies e la regola base di un ragionamento, ma non offrono dettagli e costruire tale è al di fuori del mio budget di tempo e capacità,
  • tutti gli altri algoritmi che ho potuto trovare per la risoluzione del Vincolo di Soddisfazione Problema di messa a fuoco su quelli con binario vincoli.

Ho cercato di trovare un algoritmo per circa due settimane, ma non trovarono nulla.Sento che mi manca una soluzione ovvia, ma non riesco a mettere il dito su di esso.


(*) Naturalmente, ho intenzione di migliorare dal appriopriately integrazione pasto vincoli di ricerca.


[1] Sundmark, Niclas."Progettazione e implementazione di un vincolo di soddisfazione algoritmo per la pianificazione del pasto." (2005).

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a cs.stackexchange
scroll top