Нет, немного не так. Речь именно о хранении внутри робота.
В роботе много стратегий может быть и хорошо уметь с ними работать как с одним типом данных - чтобы обращаться, сериализовать, ....
2 варианта, которые я видел:
1) Хранить настройки стратегий в виде Dictionary<string, object>
2) Наследоваться от интерфейса и хранить настройки в классах.
Я выбрал первый вариант как наиболее простой и понятный.
Есть только 1 проблема - Dictionary<string, object> не является сериализуемым.
Но и эта проблема, после поисков в инете, легко решилась.
Кому необходимо - используйте SerializableDictionary:
Кодusing System;
using System.Runtime.Serialization;
using System.Xml;
using System.Collections.Generic;
using System.Xml.Serialization;
namespace Robots.Entities
{
    [Serializable]
    [XmlRoot("dictionary")]
    public class SerializableDictionary<TKey, TValue> : Dictionary<TKey, TValue>, IXmlSerializable
    {
        public SerializableDictionary() { }
        protected SerializableDictionary(SerializationInfo info, StreamingContext context) : base(info, context) { }
        #region IXmlSerializable Members
        public System.Xml.Schema.XmlSchema GetSchema()
        {
            return null;
        }
        public void ReadXml(XmlReader reader)
        {
            var keySerializer = new XmlSerializer(typeof(TKey));
            var valueSerializer = new XmlSerializer(typeof(TValue));
            var wasEmpty = reader.IsEmptyElement;
            reader.Read();
            if (wasEmpty) return;
            while (reader.NodeType != XmlNodeType.EndElement)
            {
                reader.ReadStartElement("item");
                reader.ReadStartElement("key");
                var key = (TKey)keySerializer.Deserialize(reader);
                reader.ReadEndElement();
                reader.ReadStartElement("value");
                var value = (TValue)valueSerializer.Deserialize(reader);
                reader.ReadEndElement();
                Add(key, value);
                reader.ReadEndElement();
                reader.MoveToContent();
            }
            reader.ReadEndElement();
        }
        public void WriteXml(XmlWriter writer)
        {
            var keySerializer = new XmlSerializer(typeof(TKey));
            var valueSerializer = new XmlSerializer(typeof(TValue));
            foreach (var key in Keys)
            {
                writer.WriteStartElement("item");
                writer.WriteStartElement("key");
                keySerializer.Serialize(writer, key);
                writer.WriteEndElement();
                writer.WriteStartElement("value");
                var value = this[key];
                valueSerializer.Serialize(writer, value);
                writer.WriteEndElement();
                writer.WriteEndElement();
            }
        }
        #endregion
    }
}
 [cool] 
А вот уже все настройки действительно сохраняются легко в AppConfig.