Metadata-Version: 1.0
Name: EPN
Version: 0.1.1
Summary: Evolutionary Petri Nets.
Home-page: http://pypi.python.org/pypi/EPN/
Author: Marco S. Nobile
Author-email: nobile@disco.unimib.it
License: LICENSE.txt
Description: ======================
        Evolutionary Petri Net
        ======================
        
        *Evolutionary Petri Nets* (EPN) is a convenient tool for the automatic 
        inference, optimization, and reverse engineering of Petri Nets (PNs). The 
        library exploits the evolutionary computation methodology described in [1].
        
        WARNING: this is a preliminary alpha release.
        
        EPN can be used as follows:
        	
        	#!/usr/bin/env python
        
        	from epn.hpn import *
        	from epn.evolpn import *
        	from epn.basic import *
        
        	POPULATION = 10
        
        	E = EvolutionaryPetriNet()
        	E.setPopulationSize(POPULATION)
        	E.useTournament(size=2)
        	E.setIterations(100)
        	for p in range(POPULATION):
        		p = HiddenPetriNet("H"+str(p))
        		E.addHPN(p)
        		E.mutate()
        	E.setFitnessFunction( ... )
        	E.Optimize()
        	
        EPN can produce output figures of the PNs by using the dot/graphviz library. 
        For this reason, EPN relies on the external library pydot. The current state
        of the whole EPN can be outputted with the following command:
        
        	E.dumpToFile("output.png")
        
        
        Basics
        ======
        
        EPNs does not directly handle PNs, but it exploits an extended class named 
        *Hidden Petri Net* (HPN). A population of HPNs undergoes an evolutionary 
        process, in which the best individuals are iteratively modified and improved
        by means of crossover and mutation operators. The evolutive pressure is driven
        by a user-defined fitness function.
        
        The programmer is given the freedom of choosing 
        
        * the population size;
        
        * one of the selection mechanism (roulette wheel, ranking, tournament);
        
        * the maximum number of iterations;
        
        * the pre- and post-order of transitions (see [1] for further information).
        
        
        Thanks also to
        --------------
        
        EPNs have been developed by a joint effort of M.S. Nobile and G. Mauri 
        (University of Milan-Bicocca, Italy), D. Besozzi (University of Milan, Italy) 
        and P. Cazzaniga (University of Bergamo, Italy).
        
        Further information:
        
        [1] Nobile, Besozzi, Cazzaniga and Mauri, "The Foundations of Evolutionary
        Petri Nets", Proceedings of the 4th International Workshop on Biological 
        Processes & Petri Nets (BioPPN 2013), a satellite event of PETRI NETS 2013
        (G. Balbo and M. Heiner, eds.), CEUR Workshop Proceedings Vol. 988, 60-74, 2013
        
        <http://www.disco.unimib.it/go/45712>`_
Platform: UNKNOWN
