Menu

Tree [r177] /
 History

HTTPS access


File Date Author Commit
 FeaturesOpenCV 2013-04-23 lordferguson [r156] Añadidas cabeceras GNU/LGPL
 HumanGuidance 2013-04-20 raiben [r142] Versión que quita puntos a los no seleccionados
 OSGiLiART 2013-04-23 lordferguson [r157] Añadidas cabeceras LGPL, eliminados archivos no...
 OsgiliathACU 2013-04-23 lordferguson [r159] Añadidas cabeceras LGPL
 OsgiliathBasicEvolutionaryComponents 2013-12-04 lordferguson [r174] Añadidas IDs al distributor, sysout al replacer...
 OsgiliathBinaryProblems 2013-12-04 lordferguson [r175] quitado un comentario y añadido properties de e...
 OsgiliathDistributionUtils 2013-04-23 lordferguson [r160] Añadidas cabeceras LGPL y eliminados ficheros q...
 OsgiliathEvolutionaryAlgorithm 2013-04-23 lordferguson [r161] Modificado MANIFEST.MF para eliminar dependenci...
 OsgiliathExperimentLauncher 2013-11-04 lordferguson [r172] añadido el paquete impl a Export-package del MA...
 OsgiliathFunctionsProblems 2013-04-23 lordferguson [r163] Añadidas cabeceras LGPL y limpieza de código
 OsgiliathHumanGuidance 2013-03-09 raiben [r61] Human Guidance Bundle (as it has been made by e...
 OsgiliathIntelligentManager 2013-04-10 lordferguson [r127] Algunos arreglos tras el cambio de interfaces y...
 OsgiliathNSGA2 2013-04-20 lordferguson [r141] Añadadio cambio a NSGA2Replacer
 OsgiliathNoOSGi 2013-12-04 lordferguson [r177] Añadido OneMaxLauncher y PlanetWarsLauncher
 PlanetWars 2013-12-04 lordferguson [r176] Subiendo el entorno, los mapas y MANIFEST
 ProcessingBundle 2013-03-09 lordferguson [r59] Añadido bundle para poder utilizar Processing
 VRP 2013-04-11 lordferguson [r133] Añadida licencia LGPL a todos los ficheros y li...
 osgiliath 2013-12-04 lordferguson [r173] Añadido parametro numthreads
 perl-patch 2013-04-21 lordferguson [r152] Añadidos 400 parches de imágenes para experimentos
 LICENSE 2013-04-12 lordferguson [r136] Cambiado fichero de licencia de GPL a LGPL
 README 2013-04-23 lordferguson [r164] Añadido fichero README

Read Me

OSGiLiath - OSGi Laboratory for Implementation And Testing of meta-Heuristics (by Pablo García-Sánchez)

Visit http://www.osgiliath.org for additional information.

[Version 1.0 - May 2013]

- Project decription:
OSGiLiath is a Service Oriented Evolutionary Framework for Evolutionary Algorithms. It can be used inside an OSGi container (such as Equinox of Felix) to take advantage of OSGi capabilities, or be used as a normal Java library.

- Components:

* osgiliath: This is the core bundle. It includes all the interfaces common to the algorithms such as "Algorithm", "AlgorithmParameters" or "Problem". 
* Evolutionary Algorithm:  Includes the "EvolutionaryAlgorithm" implementation and interfaces to create the rest of the services that form an EA: "Recombinator" and "Crossover", "Mutator" and "Mutation", "StopCriterion" or "FitnessCalculator". It also provides interfaces for the creation of individuals: "Individual", "Fitness", "Gene", and "Genome". 
* Basic Evolutionary Components: Includes several implementations (the most common ones) of the previous interfaces: "ListPopulation", "ListIndividual", "DoubleFitness", "NGenerationStopCriterion", "BasicOrderRecombinator", "UPXListCrossover" and others.
* Binary Problems: Includes implementation of well-known problems, such as OneMax and MMDP: "OneMaxFitnessCalculator", "MMDPFitnessCalculator" or "BinaryProblemRandomInitializer".
* Function Problems: Multi-dimensional optimization functions, such as Griegwank or Rastrigin are implemented in this bundle, with their associate Initializers or Fitness Calculators.
* NSGA2: Interfaces and implementations of services for the NSGA2 algorithm.
* OSGiLiART: Service implementation for the creation of Evolutionary Art: "ArtisticIndividual" or "HistogramFitnessCalculator" are examples.
* NoOSGi: Because OSGi allows the separation of source code with the OSGi framework capabilities, this bundle includes Java code to integrate the services without any specific technology (just using basic Object Oriented programming).
* IntelligentManager: An example of how the services can be bound/unbound in real-time. By now, in each step the "IntelligentRandomManager" selects randomly from the available Crossovers, Mutators and Replacers implementations.
* HumanGuidance: a web application to deploy in Tomcat or Glassfish to vote images.


- How to obtain the project:
Project sources can be obtained from SourceForge using the command

svn checkout –username=your-username svn+ssh://your-username@svn.code.sf.net/p/osgiliath/code/ osgiliath-code

(or via Eclipse following the tutorial in [2])

- Requisites:
It requires Java 1.6 or superior (Oracle or OpenJDK). It can be deployed in a OSGi container, if desired (Equinox 3.5 or higher and Apache Felix). For distribution capabilities, ECF (Eclipse Communication Framework) can be added. Follow tutorial [2] to add into the OSGi container.

- Install OSGiLiath in Eclipse IDE:

A complete guide about how to set-up OSGiLiath in Eclipse, and how to use OSGi capabilities (such as distribution with ECF) is explained in [2]. Two papers with tutorials are available: Introduction to SOA-EA [3] and a more technology-specific one in [4].

- Documentation and tutorials:
Two tutorials about the framework usage can be found in [3] and [4].

- License:
OSGiLiath uses a GNU/LGLP License, please check the LICENSE file for more information.

- References:
[1] Main page: http://www.osgiliath.org
[2] Getting Started tutorial: http://osgiliath.org/2013/03/05/getting-started-osgiliath-eclipse/
[3] Service Oriented Evolutionary Algorithms: http://geneura.ugr.es/~pgarcia/papers/2013/2013_soco_soa.pdf
[4] Developing Services in a Service Oriented Architecture for Evolutionary Algorithms: http://geneura.ugr.es/~pgarcia/papers/2013/osgi-evosoft.pdf

- Contact:
pgarcia@atc.ugr.es (email) or @osgiliathSOA (Twitter).

- Acknowledgements

Thanks to all collaborators that have improved OSGiLiath:
Daniel Calandria
Rubén Héctor García
Carlos García Pardillos
Fruela Palacio
JJ Merelo
Roberto Morcillo
Ana Belén Pelegrina




Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.