Metodos aleatorios

Poset aleatorio

Extension lineal aleatoria

Posets.Generic.caminataleFunction
caminatale(mat::Array{Int64,1}, pasos::Int64)

Return a random linear extension as an Array{Int64,1}.

Example

julia> mat = [0 1 1; 0 0 0; 0 0 0]
julia> caminatale(mat, 200)
source

Busque de minimo

Posets.Generic.encontrarminimoFunction
encontrarminimo(mat::Array{Float64,2},n::Int64, tope::Int64)

Utilizado un numero de pruebas tope encuentra el minimo usando posets aleatorios generados usando caminata_poset.

Examples:

julia> mat = [0.3, 0.3 0.0 0.0; 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0];
julia> encontrarminimo(mat, 4, 100)
source

A continuacion, se presenta el codigo necesario para llevar a cabo la busqueda del minimo de forma paralela:

using Distributed

addprocs(20) # numero de hilos usados

@everywhere using Posets

siesta = rankings_random(7, [4,1], pasos = 100);

union_promedio = matriz_union_rankings(siesta,binario=false, promediado = true);

resultadominimos = pmap(n -> encontrarminimo(union_promedio,n), [100000÷nworkers() for i in 1:nworkers()]);