public MainForm() { InitializeComponent(); OpenWaitWindow("Launching the application, please wait..."); m_MainNeuralNet = new MainNeuralNetwork(); // Считывание входов и выходов из файлов для обучения, исключения string s_InputTrainDataFile = AppDomain.CurrentDomain.BaseDirectory + "InputTrainData.txt"; string s_OutputTrainDataFile = AppDomain.CurrentDomain.BaseDirectory + "OutputTrainData.txt"; if (!File.Exists(s_InputTrainDataFile) || !File.Exists(s_OutputTrainDataFile)) { MessageBox.Show("'InputTrainData.txt' or 'OutputTrainData.txt' with data for training are absent, put them in a folder with the application."); Close(); } string s_KnowledgeBaseFile = AppDomain.CurrentDomain.BaseDirectory + "KnowledgeBase.n3"; if (!File.Exists(s_KnowledgeBaseFile)) { MessageBox.Show("'KnowledgeBase.n3' with knowledgebase is absent, put her in a folder with the application."); Close(); } int i_InputCount = 0; using (StreamReader s_Reader = new StreamReader(s_InputTrainDataFile)) { i_InputCount = s_Reader.ReadLine().Split('\t').Length; } int i_OutputCount = 0; using (StreamReader s_Reader = new StreamReader(s_OutputTrainDataFile)) { i_OutputCount = s_Reader.ReadLine().Split('\t').Length; } // Подключение к БЗ и получение данных k_Base = new KnowledgeBase(s_KnowledgeBaseFile); k_Base.GetDataKnowledgeNet(); l_LayersKnowledgeNet = k_Base.GetKnowledgeNet; // Добавление диагностируемых параметров в таблицу d_InputTable.Rows.Clear(); d_InputTable.Rows.Add("Average packet path length, m", "", ""); d_InputTable.Rows.Add("Network load, bps", "", ""); d_InputTable.Rows.Add("Data transfer volume, bit", "", ""); m_Monitoring = new Monitoring(m_MainNeuralNet, l_LayersKnowledgeNet, d_InputTable, p_NetworkStatusPanel, c_Graph); // Инициализация формы с инструментами для мониторинга s_Form = new SetUpMonitoringToolsForm(m_MainNeuralNet, i_InputCount, i_OutputCount, s_InputTrainDataFile, s_OutputTrainDataFile, m_Monitoring); CloseWaitWindow(); }
public Monitoring(MainNeuralNetwork m_MainNeuralNet, LayerKnowledgeNet[] l_LayersKnowledgeNet, DataGridView d_InputTable, Control p_NetworkStatusPanel, Chart c_Graph) { this.m_MainNeuralNet = m_MainNeuralNet; this.l_LayersKnowledgeNet = l_LayersKnowledgeNet; this.d_InputTable = d_InputTable; this.p_NetworkStatusPanel = p_NetworkStatusPanel; d_OutputData = new double[] { 0, 0, 0 }; this.c_Graph = c_Graph; b_Run = false; }
public SetUpMonitoringToolsForm(MainNeuralNetwork m_MainNet, int i_InputCount, int i_OutputCount, string s_InputTrainDataFile, string s_OutputTrainDataFile, Monitoring m_Monitoring) { InitializeComponent(); this.m_MainNet = m_MainNet; this.i_InputCount = i_InputCount; this.i_OutputCount = i_OutputCount; this.s_InputTrainDataFile = s_InputTrainDataFile; this.s_OutputTrainDataFile = s_OutputTrainDataFile; this.m_Monitoring = m_Monitoring; b_Run = false; b_RunMonitoring = false; }