This is a convenience method that returns a data frame summarising the index values for multiple tour paths.

paths_index(bases_list, index_f)

Arguments

bases_list

list of histories produced by save_history

index_f

index function to apply to each projection

Examples

# The max.tries is low for satisfying CRAN checks
# Increase it for using in practice
holes1d <- guided_tour(holes(), 1, max.tries=2)
# Perform guided tour 5 times, saving results
tries <- replicate(5, save_history(flea[, 1:6], holes1d), simplify = FALSE)
#> Converting input data to the required matrix format.
#> Target: 1.078, 117.2% better 
#> Target: 1.317, 22.2% better 
#> Target: 1.548, 17.6% better 
#> Target: 1.623, 4.8% better 
#> Target: 1.639, 1.0% better 
#> Target: 1.648, 0.5% better 
#> Target: 1.653, 0.3% better 
#> Target: 1.655, 0.1% better 
#> No better bases found after 2 tries.  Giving up.
#> Final projection: 
#>  0.431 
#> -0.294 
#> -0.253 
#> -0.560 
#>  0.334 
#> -0.488 
#> Converting input data to the required matrix format.
#> Target: 1.509, 13.0% better 
#> Target: 1.569, 4.0% better 
#> Target: 1.632, 4.0% better 
#> Target: 1.641, 0.6% better 
#> No better bases found after 2 tries.  Giving up.
#> Final projection: 
#>  0.395 
#> -0.365 
#> -0.220 
#> -0.507 
#>  0.415 
#> -0.483 
#> Converting input data to the required matrix format.
#> Target: 1.141, 77.9% better 
#> Target: 1.244, 9.1% better 
#> Target: 1.443, 16.0% better 
#> Target: 1.603, 11.1% better 
#> Target: 1.632, 1.8% better 
#> Target: 1.641, 0.6% better 
#> Target: 1.643, 0.1% better 
#> Target: 1.649, 0.3% better 
#> No better bases found after 2 tries.  Giving up.
#> Final projection: 
#>  0.485 
#> -0.243 
#> -0.300 
#> -0.485 
#>  0.328 
#> -0.523 
#> Converting input data to the required matrix format.
#> Target: 1.118, 85.5% better 
#> Target: 1.453, 30.0% better 
#> Target: 1.559, 7.3% better 
#> Target: 1.627, 4.4% better 
#> Target: 1.646, 1.2% better 
#> Target: 1.650, 0.2% better 
#> Target: 1.653, 0.2% better 
#> No better bases found after 2 tries.  Giving up.
#> Final projection: 
#> -0.394 
#>  0.288 
#>  0.275 
#>  0.557 
#> -0.366 
#>  0.491 
#> Converting input data to the required matrix format.
#> Target: 0.846, 19.6% better 
#> Target: 0.944, 11.5% better 
#> Target: 1.025, 8.6% better 
#> Target: 1.185, 15.7% better 
#> Target: 1.353, 14.2% better 
#> Target: 1.460, 7.9% better 
#> Target: 1.531, 4.8% better 
#> Target: 1.569, 2.5% better 
#> Target: 1.594, 1.6% better 
#> Target: 1.627, 2.1% better 
#> Target: 1.655, 1.8% better 
#> No better bases found after 2 tries.  Giving up.
#> Final projection: 
#> -0.434 
#>  0.273 
#>  0.248 
#>  0.550 
#> -0.309 
#>  0.527 
# Interpolate between target bases
itries <- lapply(tries, interpolate)

paths <- paths_index(itries, holes())
head(paths)
#>   try step     value improvement
#> 1   1    1 0.4961013  0.00000000
#> 2   1    2 0.5159370  0.01983574
#> 3   1    3 0.5384736  0.02253660
#> 4   1    4 0.5634563  0.02498265
#> 5   1    5 0.5906014  0.02714506
#> 6   1    6 0.6196027  0.02900138

if (require(ggplot2)) {
  ggplot(data = paths, aes(x=step, y=value, group = try)) + geom_line()
  ## ggplot(data = paths, aes(x=step, y=improvement, group = try)) + geom_line()
}