R&D

Ricerca applicata sui sistemi decisionali.

Sviluppiamo e sperimentiamo modelli computazionali, algoritmi e architetture per sistemi decisionali. Verificabilità, riproducibilità e interoperabilità guidano il passaggio dal prototipo all’applicazione.

Ambiti di sperimentazione

  1. 01

    Modelli e algoritmi

    Modellazione computazionale, simulazione e ottimizzazione per esplorare problemi, obiettivi e incertezza.

  2. 02

    Esecuzione e interoperabilità

    Grafi di dipendenze, orchestrazione multi-runtime e interfacce per collegare modelli e sistemi eterogenei.

  3. 03

    Verifica e riproducibilità

    Casi di riferimento, test di equivalenza e registrazione delle ipotesi per valutare e ripetere le analisi.

Base open-source

Le librerie open source formulas e schedula.

formulas è una libreria Python, distinta dalla società Formulas S.r.l. e dalla piattaforma proprietaria. Insieme a schedula fornisce componenti computazionali ispezionabili. Le librerie seguono le rispettive licenze; servizi e componenti Enterprise hanno condizioni specifiche.

Esamina implementazione, release e contributi nelle fonti originali. Queste librerie sono distinte dalla piattaforma proprietaria Formulas.

Una dipendenza che puoi riprodurre.

In questo piccolo esempio schedula, multiply richiede il risultato di add. Il grafo rende visibile la dipendenza; il codice qui sotto riproduce il calcolo.

Inputa = 2
b = 3
add(a, b)a + b
Risultato intermedioc = 5
c = 5 ↓
Inputc = 5
d = 4
multiply(c, d)c × d
Outputresult = 20
Esempio tecnico, non una schermata della piattaforma né un risultato cliente. Eseguito localmente con schedula 1.6.18: c = 5, result = 20.
Riproduci questo grafo in Python
import schedula as sh

def add(a, b):
    return a + b

def multiply(c, d):
    return c * d

dsp = sh.Dispatcher(name="Dependency example")
dsp.add_function("add", add,
    inputs=["a", "b"], outputs=["c"])
dsp.add_function("multiply", multiply,
    inputs=["c", "d"], outputs=["result"])

solution = dsp({"a": 2, "b": 3, "d": 4})
assert solution["c"] == 5
assert solution["result"] == 20
Documentazione schedula ↗

Parliamone

Partiamo dal problema.

Definiamo insieme la decisione da supportare e il percorso per trasformare l’analisi in un sistema operativo.

Parliamone