Software per fare i gelati

I.C.M. – non solo gelati

Il progetto nasce per rispondere all’esigenza di creare gelati che, nel rispetto del gusto e dei principi nutritivi, rispondessero a tutta una serie di parametri quali ad esempio la compattezza, la resistenza allo scioglimento, ecc…

Appare evidente che il problema è generalizzabile, in quanto ogni mescola che debba rispondere a determinati criteri può essere proporzionata automaticamente partendo dagli “ingredienti” che la compongono e dai vincoli che devono essere rispettati.

I.C.M. è quindi il software custom (ovvero personalizzato, fatto “su misura”), che si occupa del proporzionamento automatico basato su raffinati algoritmi matematici di ricerca operativa (programmazione lineare).

La sua vera forza consiste nel fatto che, una volta definiti gli ingredienti che compongono il prodotto e le loro proprietà, il software è in grado di quantificarne i singoli ingredienti senza che sia necessaria alcuna conoscenza delle dinamiche di bilanciamento degli ingredienti stessi, fornendo il risultato (o i risultati) che rispettano i vincoli imposti.

Inoltre, mediante i suoi algoritmi di ottimizzazione, basati su un vettore di pesi secondo cui minimizzare o massimizzare il sistema, è possibile ottenere, fra tutte le possibili soluzioni, quella “più economica”, ma anche quella “menu dura” o quella con il “minor tempo di produzione”.

Questi sono ovviamente solo esempi, in quanto la parametrizzazione del vettore di pesi permette un’enorme quantità di varianti o combinazioni di varianti.

I.C.M. è quindi pensato per tutti i settori merceologici in cui sia necessario mescolare ingredienti tenendo conto di complesse regole di costruzione del prodotto finito. La sua estrema configurabilità e la sua semplicità di utilizzo consentono di realizzare anche i prodotti più particolari, mai realizzati in precedenza!
Creare il prodotto in poche semplici mosse

Definiamo gli ingredienti

In questa fase, ogni ingrediente viene dichiarato, e viene dichiarata la sua categoria di appartenenza (che ne sancisce le proprietà). Tali proprietà devono essere compilate per ciascun ingrediente, per permettere al software di valorizzare il sistema di disequazioni lineari in cui cercare la/le soluzioine/i.

Le categorie sono anch’esse configurabili, per cui è possibile aggiungere nuove categorie in qualunque momento.
Definiamo le regole

Andiamo qui a definire le regole che il prodotto dovrà rispettare. Un esempio, nel caso dei gelati, potrebbe essere: “il totale dei grassi non deve mai superare una certa percentuale”, oppure “lo sciroppo di glucosio deve essere compreso in una certa soglia”.

Questo è il momento di riversare il proprio know-how nel sistema.

I.C.M. prevede 2 diverse tipologie di regole, oltre a quelle implicite dettate dai limiti degli ingredienti:
Regole “globali”, che devono essere rispettate a prescindere dalla ricetta
Regole “locali”, che possono variare da ricetta a ricetta

L’insieme di queste regole permette al software di definire il sistema di disequazioni lineari da risolvere.
Creiamo la ricetta

La creazione della ricetta può avvenire per duplicazione di una ricetta esistente, oppure ex-novo. Questo passo si risolve essenzialmente nella compilazione di una distinta, in cui vengono inseriti gli ingredienti che andranno a comporre il prodotto finito.

Se necessario, è possibile aggiungere a questo livello, ulteriori regole “di ricetta”.

In questa fase non è necessario inserire alcun quantitativo, ci penserà I.C.M.!
Lasciamo che I.C.M. faccia la sua magia!

I.C.M. è già in grado di bilanciare autonomamente gli ingredienti, sulla base delle loro proprietà e delle regole imposte, ma consente, se lo si desidera, di “fissare” alcune quantità manualmente, in modo che tutti gli altri ingredienti vengano quantificati di conseguenza.

Fatto questo, besterà inserire la quantità totale di prodotto che si vuole ottenere, ed I.C.M. calcolerà le dosi di ciascuno dei suoi ingredienti, sempre rispettando i vincoli imposti.

Il risultato sarà ulteriormente raffinabile, come detto in precedenza, mediante l’attribuzione dei pesi ai diversi aspetti del prodotto, per far virare il bilanciamento dei suoi ingredienti verso quel particolare aspetto.

Gli strumenti di verifica

Qualora una particolare ricetta non fosse realizzabile (eh, sì, il sistema di disequazioni lineari potrebbe non avere soluzioni, oppure averne infinite!), I.C.M. ti accompagnerà nell’analisi della situazione, grazie ad alcuni strumenti di verifica, utili per comprendere meglio il risultato.

Ad esempio:

La modifica manuale delle ricette permette la massima libertà, ma la colorazione delle celle che non rispettano i vincoli imposti ed i messaggi di avviso non lasciano mai solo l’operatore.
Ogni regola non rispettata viene chiaramente segnalata, in modo che sia semplice capire su cosa eventualmente intervenire.
Dopo che il bilanciamento automatico ha trovato la miglior soluzione possibile per la ricetta, eventuali valori “limite” vengono segnalati visivamente (con colorazione diversa)
La maschera di test delle regole permette di verificare la correttezza della ricetta rispetto a tutte le regole imposte, siano esse implicite (limiti di ingrediente), locali (regole arbitrarie relative alla singola ricetta), o globali (che devono essere applicate a tutte le ricette). Il mancato rispetto di una regola è subito visibile grazie alla sua diversa colorazione, e l’output utente è estremamente user-friendly.
Le ricette possono essere create per duplicazione, ed è possibile verificare e salvare ogni ricetta o variante di ricetta, anche per usi futuri.

Altri buoni motivi per adottare I.C.M.

Il software custom per il bilanciamento automatico degli ingredienti I.C.M., oltre ad essere un potente alleato nell’individuare le soluzioni ottimali grazie alle raffinate tecniche di ricerca operativa su cui poggia le sue basi, può vantare altri punti di forza:

  • è flessibile, in quanto configurabile in ogni sua parte, senza che questo ne comprometta la semplicità d’uso.
  • è semplice, grazie all’uso dei colori, alle funzionalità di test, alla suddivisione logica delle operazioni.
  • è scalabile: la sua natura di applicazione web, realizzata interamente con tecnologie server-side, fa sì che l’aggiunta di una postazione di lavoro sia immediata.
  • è fruibile da qualunque postazione abbia un browser installato.