protected override void WriteDataXML(XElement ele, ElderScrollsPlugin master) { XElement subEle; ele.TryPathTo("Flags", true, out subEle); subEle.Value = MagicEffectFlags.ToString(); ele.TryPathTo("BaseCost", true, out subEle); subEle.Value = BaseCost.ToString("G15"); ele.TryPathTo("AssociatedItem", true, out subEle); AssociatedItem.WriteXML(subEle, master); ele.TryPathTo("MagicSchool", true, out subEle); subEle.Value = MagicSchool.ToString(); ele.TryPathTo("ResistanceType", true, out subEle); subEle.Value = ResistanceType.ToString(); ele.TryPathTo("Unknown", true, out subEle); subEle.Value = Unknown.ToString(); WriteUnusedXML(ele, master); ele.TryPathTo("Light", true, out subEle); Light.WriteXML(subEle, master); ele.TryPathTo("ProjectileSpeed", true, out subEle); subEle.Value = ProjectileSpeed.ToString("G15"); ele.TryPathTo("EffectShader", true, out subEle); EffectShader.WriteXML(subEle, master); ele.TryPathTo("ObjectDisplayShader", true, out subEle); ObjectDisplayShader.WriteXML(subEle, master); ele.TryPathTo("EffectSound", true, out subEle); EffectSound.WriteXML(subEle, master); ele.TryPathTo("BoltSound", true, out subEle); BoltSound.WriteXML(subEle, master); ele.TryPathTo("HitSound", true, out subEle); HitSound.WriteXML(subEle, master); ele.TryPathTo("AreaSound", true, out subEle); AreaSound.WriteXML(subEle, master); ele.TryPathTo("ConstantEffectEnchantmentFactor", true, out subEle); subEle.Value = ConstantEffectEnchantmentFactor.ToString("G15"); ele.TryPathTo("ConstantEffectBarterFactor", true, out subEle); subEle.Value = ConstantEffectBarterFactor.ToString("G15"); ele.TryPathTo("Archetype", true, out subEle); subEle.Value = Archetype.ToString(); ele.TryPathTo("ActorValue", true, out subEle); subEle.Value = ActorValue.ToString(); }
public Network(BaseCost costSettings, BaseOptimizer optimizerSettings) { IsLocked = false; Layers = new List <BaseLayerKernel>(); // Cost Function Setup CostFunction = costSettings.Type() switch { ECostType.CrossEntropyCost => new CrossEntropyCostKernel((CrossEntropyCost)costSettings), ECostType.ExponentionalCost => new ExponentialCostKernel((ExponentionalCost)costSettings), ECostType.GeneralizedKullbackLeiblerDivergence => new GeneralizedKullbackLeiblerDivergenceKernel((GeneralizedKullbackLeiblerDivergence)costSettings), ECostType.HellingerDistance => new HellingerDistanceKernel((HellingerDistance)costSettings), ECostType.ItakuraSaitoDistance => new ItakuraSaitoDistanceKernel((ItakuraSaitoDistance)costSettings), ECostType.KullbackLeiblerDivergence => new KullbackLeiblerDivergenceKernel((KullbackLeiblerDivergence)costSettings), ECostType.QuadraticCost => new QuadraticCostKernel((QuadraticCost)costSettings), _ => throw new ArgumentException("Cost Type Invalid.") }; // Optimizer Function Setup OptimizerFunction = optimizerSettings.Type() switch { EOptimizerType.AdaDelta => new AdaDeltaKernel((AdaDelta)optimizerSettings), EOptimizerType.AdaGrad => new AdaGradKernel((AdaGrad)optimizerSettings), EOptimizerType.Adam => new AdamKernel((Adam)optimizerSettings), EOptimizerType.Adamax => new AdamaxKernel((Adamax)optimizerSettings), EOptimizerType.GradientDescent => new GradientDescentKernel((GradientDescent)optimizerSettings), EOptimizerType.Momentum => new MomentumKernel((Momentum)optimizerSettings), EOptimizerType.Nadam => new NadamKernel((Nadam)optimizerSettings), EOptimizerType.NesterovMomentum => new NesterovMomentumKernel((NesterovMomentum)optimizerSettings), EOptimizerType.RmsProp => new RmsPropKernel((RmsProp)optimizerSettings), _ => throw new ArgumentException("Optimizer Type Invalid.") }; }
/// <summary> /// Create instance of the neural net with parameters /// </summary> /// <param name="optimizer"></param> /// <param name="cost"></param> /// <param name="metric"></param> public NeuralNet(BaseOptimizer optimizer, BaseCost cost, BaseMetric metric = null) { Layers = new List <BaseLayer>(); TrainingLoss = new List <double>(); TrainingMetrics = new List <double>(); this.Optimizer = optimizer != null ? optimizer : throw new Exception("Need optimizer"); this.Cost = cost != null ? cost : throw new Exception("Need cost"); Metric = metric; }
private void Configure( string name, BaseCost cost, bool canBuy, int availableTiles, UnityAction clickAction ) { nameLabel.text = name; costLabel.text = CostAsString(cost); buyButton.GetComponent <BuyButton>().SetEnabled(canBuy && availableTiles > 0); buyButton.onClick.RemoveAllListeners(); buyButton.onClick.AddListener(clickAction); }
private string CostAsString(BaseCost buildCost) { return(string.Join(", ", buildCost.Resources.Select(r => $"{r.Amount} {r.Resource.Entity.Name}"))); }
public override string ToString() { return($"Subtotal: {BaseCost.ToString("F2")}\n" + $"Taxa: {Tax.ToString("F2")}\n" + $"TOTAL: {TotalCost.ToString("F2")}"); }