{-# LANGUAGE ParallelListComp #-} module Hopfield.Experiments.SmallExperiments where -- Module use to perform small experiments that prove that Storkey learning -- has a bigger basin size than Hebbian learning import Control.Applicative import Control.Monad import Hopfield.Clusters import Hopfield.Hopfield import Hopfield.Util _REPETITIONS :: Int _REPETITIONS = 10 -- Experiments are performed using the T2 method -- (learning type, number of neurons, cluster size, mean of cluster, std dev) runs :: [(LearningType, Int, Int, Double, Double)] runs = [ (Hebbian, 50, 6, 25, 5) , (Storkey, 50, 6, 25, 5) , (Hebbian, 50, 4, 25, 10) , (Storkey, 50, 4, 25, 10) ] main :: IO () main = do forM_ runs $ \(method, a, b, c, d) -> print =<< ((average <$> replicateM _REPETITIONS (basinsGivenStdT2 method a b c d)) :: IO Double)