Domanda

Esiste una libreria di ottimizzazione in C #?

Devo ottimizzare un'equazione complicata in Excel, per questa equazione ci sono alcuni coefficienti. E devo ottimizzarli secondo una funzione di fitness che definisco. Quindi mi chiedo se esiste una biblioteca del genere che fa ciò di cui ho bisogno?

È stato utile?

Soluzione

Ecco alcune implementazioni c # gratuite e open source

  • Nelder Mead Implementazione simplex [ Link alternativo ]
  • Numerical fornisce una varietà di algoritmi tra cui:
    • Chromosome Manager
    • Ottimizzatore genetico
    • Hill Climbing Optimizer
    • Punto di ingrandimento
    • Massimizzazione di PointFactoy
    • Massimizzare il vettore
    • Punto di minimizzazione
    • Minimizzare Point Factory
    • Minimizzazione vettoriale
    • Ottimizzatore generale a più variabili
    • Ottimizzatore multi-variabile
    • Un ottimizzatore di funzioni variabili
    • Ottimizzazione del bracketing
    • Punto di ottimizzazione
    • Ottimizzazione di Point Factory
    • Ottimizzazione del vettore
    • Simplex Optimizer
    • Vector Chromosome Manager
    • Vector Genetic Optimizer
    • Funzione proiettata vettoriale
  • DNAnalytics
    • Fatto sia come soluzione gestita pura sia come thin wrapper sul codice non gestito di Intel.
    • viene unito in MathNetNumerics

Altre informazioni sono disponibili in questo elenco

Si noti che gli ottimizzatori beneficiano spesso delle ottimizzazioni di codice (o assembly) più estreme che non sono realmente possibili in c # gestito puro. Se la seria velocità è una preoccupazione, allora il targeting di un'implementazione non gestita come NAG o MOSEK può fornire vantaggi significativi che superano la seccatura di rendere i dati accessibili all'API non gestita (bloccare il buffer gestito o utilizzare, ad esempio, file mappati in memoria)

Altri suggerimenti

Un'opzione è Microsoft Solver Foundation , ha anche un < a href = "http://code.msdn.microsoft.com/solverfoundation/Release/ProjectReleases.aspx?ReleaseId=1799" rel = "nofollow noreferrer"> edizione espressa

Sembra che ci siano molte librerie di ottimizzazione diverse per C #. Questo sembra essere il più popolare, tuttavia.

Offrono una versione di prova, quindi puoi verificare che funzionerà per la tua situazione particolare prima dell'acquisto.

Microsoft Solver Foundation supporta qualsiasi linguaggio .NET incluso C # e la versione express è gratuita (soggetta ad alcune limitazioni)

http://code.msdn.microsoft.com/solverfoundation

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top