コード例 #1
0
ファイル: StateProxy.cs プロジェクト: trojkac/effective_pso
        internal StateProxy(CudaParams parameters)
        {
            var rand = RandomGenerator.GetInstance();
            var x = parameters.Bounds != null ? rand.RandomVector(parameters.LocationDimensions, parameters.Bounds) : rand.RandomVector(parameters.LocationDimensions);

            CpuState = new ParticleState(x, parameters.FitnessFunction.Evaluate(x));
            GpuState = new ParticleState(x, parameters.FitnessFunction.Evaluate(x));
        }
コード例 #2
0
ファイル: StateProxy.cs プロジェクト: trojkac/effective_pso
        internal StateProxy(CudaParams parameters)
        {
            var rand = RandomGenerator.GetInstance();
            var x    = parameters.Bounds != null?rand.RandomVector(parameters.LocationDimensions, parameters.Bounds) : rand.RandomVector(parameters.LocationDimensions);

            CpuState = new ParticleState(x, parameters.FitnessFunction.Evaluate(x));
            GpuState = new ParticleState(x, parameters.FitnessFunction.Evaluate(x));
        }
コード例 #3
0
 protected GenericCudaAlgorithm(CudaParams parameters, StateProxy proxy)
 {
     Proxy           = proxy;
     ParticlesCount  = parameters.ParticlesCount;
     DimensionsCount = parameters.LocationDimensions;
     Iterations      = parameters.Iterations;
     FitnessFunction = parameters.FitnessFunction;
     SyncWithCpu     = parameters.SyncWithCpu;
     FunctionNumber  = parameters.FunctionNumber;
     InstanceNumber  = parameters.InstanceNumber;
     evalLogger      = PsoServiceLocator.Instance.GetService <EvaluationsLogger>();
 }
コード例 #4
0
 protected GenericCudaAlgorithm(CudaParams parameters, StateProxy proxy)
 {
     Proxy = proxy;
     ParticlesCount = parameters.ParticlesCount;
     DimensionsCount = parameters.LocationDimensions;
     Iterations = parameters.Iterations;
     FitnessFunction = parameters.FitnessFunction;
     SyncWithCpu = parameters.SyncWithCpu;
     FunctionNumber = parameters.FunctionNumber;
     InstanceNumber = parameters.InstanceNumber;
     evalLogger = PsoServiceLocator.Instance.GetService<EvaluationsLogger>();
 }
コード例 #5
0
 public GriewankRosenbrockAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #6
0
 public GriewankRosenbrockAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #7
0
 public BentCigarAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #8
0
 public BuecheRastriginAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #9
0
 public DiscusAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #10
0
 public RastriginAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #11
0
 private static GenericCudaAlgorithm CreateCudaAlgorithm(CudaParams parameters, StateProxy proxy)
 {
     return(CudaAlgorithmFactory.AlgorithmForFunction(parameters, proxy));
 }
コード例 #12
0
 public RosenbrockRotatedAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #13
0
        public static Tuple <CudaParticle, GenericCudaAlgorithm> Setup(CudaParams parameters)
        {
            var proxy = CreateProxy(parameters);

            return(new Tuple <CudaParticle, GenericCudaAlgorithm>(CreateParticle(proxy), CreateCudaAlgorithm(parameters, proxy)));
        }
コード例 #14
0
 private static StateProxy CreateProxy(CudaParams parameters)
 {
     return(new StateProxy(parameters));
 }
コード例 #15
0
 public DiscusAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #16
0
 public SharpRidgeAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #17
0
 public WeierstrassAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #18
0
 public SchaffersAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #19
0
 public GallagherAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #20
0
 private static GenericCudaAlgorithm CreateCudaAlgorithm(CudaParams parameters, StateProxy proxy)
 {
     return CudaAlgorithmFactory.AlgorithmForFunction(parameters, proxy);
 }
コード例 #21
0
 public AttractiveSectorAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #22
0
 public EllipsoidalRotatedAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #23
0
 public LunacekBiRastriginAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #24
0
 public DifferentPowersAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #25
0
 public LinearSlopeAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #26
0
 public EllipsoidalAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #27
0
 public LinearSlopeAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #28
0
 public SphereAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #29
0
 public KatsuuraAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #30
0
 public SharpRidgeAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #31
0
 public KatsuuraAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #32
0
 public StepEllipsoidAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #33
0
 public GallagherAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #34
0
 public SchaffersAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #35
0
 public RastriginRotatedAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #36
0
 public SphereAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #37
0
 public AttractiveSectorAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #38
0
 public RosenbrockRotatedAlgorithm(CudaParams parameters, StateProxy proxy)
     : base(parameters, proxy)
 {
 }
コード例 #39
0
 public DifferentPowersAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #40
0
 public static Tuple<CudaParticle, GenericCudaAlgorithm> Setup(CudaParams parameters)
 {
     var proxy = CreateProxy(parameters);
     return new Tuple<CudaParticle, GenericCudaAlgorithm>(CreateParticle(proxy), CreateCudaAlgorithm(parameters, proxy));
 }
コード例 #41
0
 public WeierstrassAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }
コード例 #42
0
 private static StateProxy CreateProxy(CudaParams parameters)
 {
     return new StateProxy(parameters);
 }
コード例 #43
0
 public BentCigarAlgorithm(CudaParams parameters, StateProxy proxy) : base(parameters, proxy)
 {
 }