Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Drawing;
- using System.Collections;
- using System.ComponentModel;
- using System.Windows.Forms;
- using System.Data;
- using System.Threading;
- using System.IO;
- using AForge;
- using AForge.Neuro;
- using AForge.Neuro.Learning;
- using AForge.Controls;
- namespace XORProblem
- {
- public class MainForm : System.Windows.Forms.Form
- {
- double[,] tabErreur = null;
- private IContainer components;
- private double learningRate = 0.1;
- private double momentum = 0.0;
- private double sigmoidAlphaValue = 1.0;
- private double learningErrorLimit = 0.1;
- private bool saveStatisticsToFiles = false;
- private bool saveValidationToFiles = false;
- private int nbiteration = 200;
- private Thread workerThread = null;
- private bool needToStop = false;
- private Label label1;
- private TextBox learningRateBox;
- private Label label2;
- private TextBox alphaBox;
- private Label label3;
- private TextBox errorLimitBox;
- private Button startButton;
- private Label label6;
- private TextBox momentumBox;
- private GroupBox groupBox2;
- private Label label14;
- private Label label13;
- private CheckBox saveFilesError;
- private Chart errorChart;
- private Label label4;
- private TextBox nbiterations;
- private GroupBox groupBox5;
- private Label label18;
- private Label label17;
- private Chart errcroisechart;
- private Button button1;
- private Panel panel2;
- private Label label5;
- private Panel panel3;
- private GroupBox groupBox3;
- private GroupBox groupBox4;
- private Label label20;
- private Label label19;
- private Chart outputchart;
- private Label label16;
- private Label label15;
- private Chart validationChart;
- private Label label7;
- private GroupBox groupBox1;
- private GroupBox groupBox6;
- private Label label12;
- private Panel panel7;
- private Label label11;
- private Panel panel6;
- private Label label10;
- private Panel panel5;
- private Label label9;
- private Panel panel4;
- private Label label8;
- private Panel panel1;
- private Button button3;
- private CheckBox saveFileErrorValidation;
- public System.Windows.Forms.Timer timer1;
- // Constructeur
- public MainForm()
- {
- InitializeComponent();
- UpdateSettings();
- // initialiser les charts
- errorChart.AddDataSeries("error", Color.Red, Chart.SeriesType.Line, 3);
- validationChart.AddDataSeries("validation", Color.Magenta, Chart.SeriesType.Line, 3);
- outputchart.AddDataSeries("sortieDesi", Color.Green, Chart.SeriesType.Line, 3);
- outputchart.AddDataSeries("sortieRNS", Color.CornflowerBlue, Chart.SeriesType.Line, 3);
- outputchart.AddDataSeries("sortieRNSv", Color.Orange, Chart.SeriesType.Line, 3);
- errcroisechart.AddDataSeries("SORTIER", Color.CornflowerBlue, Chart.SeriesType.Line, 2);
- errcroisechart.AddDataSeries("SORTIED", Color.Green, Chart.SeriesType.Line, 2);
- }
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- protected override void Dispose(bool disposing)
- {
- if (disposing)
- {
- if (components != null)
- {
- components.Dispose();
- }
- }
- base.Dispose(disposing);
- }
- #region Windows Form Designer generated code
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- this.timer1 = new System.Windows.Forms.Timer(this.components);
- this.groupBox1 = new System.Windows.Forms.GroupBox();
- this.button3 = new System.Windows.Forms.Button();
- this.groupBox6 = new System.Windows.Forms.GroupBox();
- this.label12 = new System.Windows.Forms.Label();
- this.panel7 = new System.Windows.Forms.Panel();
- this.label11 = new System.Windows.Forms.Label();
- this.panel6 = new System.Windows.Forms.Panel();
- this.label10 = new System.Windows.Forms.Label();
- this.panel5 = new System.Windows.Forms.Panel();
- this.label9 = new System.Windows.Forms.Label();
- this.panel4 = new System.Windows.Forms.Panel();
- this.label8 = new System.Windows.Forms.Label();
- this.panel1 = new System.Windows.Forms.Panel();
- this.groupBox4 = new System.Windows.Forms.GroupBox();
- this.label20 = new System.Windows.Forms.Label();
- this.label19 = new System.Windows.Forms.Label();
- this.outputchart = new AForge.Controls.Chart();
- this.label7 = new System.Windows.Forms.Label();
- this.groupBox3 = new System.Windows.Forms.GroupBox();
- this.label16 = new System.Windows.Forms.Label();
- this.label15 = new System.Windows.Forms.Label();
- this.validationChart = new AForge.Controls.Chart();
- this.panel3 = new System.Windows.Forms.Panel();
- this.label5 = new System.Windows.Forms.Label();
- this.panel2 = new System.Windows.Forms.Panel();
- this.button1 = new System.Windows.Forms.Button();
- this.groupBox5 = new System.Windows.Forms.GroupBox();
- this.label18 = new System.Windows.Forms.Label();
- this.label17 = new System.Windows.Forms.Label();
- this.errcroisechart = new AForge.Controls.Chart();
- this.nbiterations = new System.Windows.Forms.TextBox();
- this.label4 = new System.Windows.Forms.Label();
- this.groupBox2 = new System.Windows.Forms.GroupBox();
- this.label14 = new System.Windows.Forms.Label();
- this.label13 = new System.Windows.Forms.Label();
- this.saveFilesError = new System.Windows.Forms.CheckBox();
- this.errorChart = new AForge.Controls.Chart();
- this.momentumBox = new System.Windows.Forms.TextBox();
- this.label6 = new System.Windows.Forms.Label();
- this.startButton = new System.Windows.Forms.Button();
- this.errorLimitBox = new System.Windows.Forms.TextBox();
- this.label3 = new System.Windows.Forms.Label();
- this.alphaBox = new System.Windows.Forms.TextBox();
- this.label2 = new System.Windows.Forms.Label();
- this.learningRateBox = new System.Windows.Forms.TextBox();
- this.label1 = new System.Windows.Forms.Label();
- this.saveFileErrorValidation = new System.Windows.Forms.CheckBox();
- this.groupBox1.SuspendLayout();
- this.groupBox6.SuspendLayout();
- this.groupBox4.SuspendLayout();
- this.groupBox3.SuspendLayout();
- this.groupBox5.SuspendLayout();
- this.groupBox2.SuspendLayout();
- this.SuspendLayout();
- //
- // timer1
- //
- this.timer1.Interval = 1;
- //
- // groupBox1
- //
- this.groupBox1.BackgroundImage = global::SinusProblem.Properties.Resources.decampement_40_720px;
- this.groupBox1.Controls.Add(this.button3);
- this.groupBox1.Controls.Add(this.groupBox6);
- this.groupBox1.Controls.Add(this.groupBox4);
- this.groupBox1.Controls.Add(this.label7);
- this.groupBox1.Controls.Add(this.groupBox3);
- this.groupBox1.Controls.Add(this.panel3);
- this.groupBox1.Controls.Add(this.label5);
- this.groupBox1.Controls.Add(this.panel2);
- this.groupBox1.Controls.Add(this.button1);
- this.groupBox1.Controls.Add(this.groupBox5);
- this.groupBox1.Controls.Add(this.nbiterations);
- this.groupBox1.Controls.Add(this.label4);
- this.groupBox1.Controls.Add(this.groupBox2);
- this.groupBox1.Controls.Add(this.momentumBox);
- this.groupBox1.Controls.Add(this.label6);
- this.groupBox1.Controls.Add(this.startButton);
- this.groupBox1.Controls.Add(this.errorLimitBox);
- this.groupBox1.Controls.Add(this.label3);
- this.groupBox1.Controls.Add(this.alphaBox);
- this.groupBox1.Controls.Add(this.label2);
- this.groupBox1.Controls.Add(this.learningRateBox);
- this.groupBox1.Controls.Add(this.label1);
- this.groupBox1.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.groupBox1.Location = new System.Drawing.Point(3, 12);
- this.groupBox1.Name = "groupBox1";
- this.groupBox1.Size = new System.Drawing.Size(1015, 724);
- this.groupBox1.TabIndex = 0;
- this.groupBox1.TabStop = false;
- this.groupBox1.Text = "réseau de neurones";
- this.groupBox1.Enter += new System.EventHandler(this.groupBox1_Enter);
- //
- // button3
- //
- this.button3.BackColor = System.Drawing.Color.Gainsboro;
- this.button3.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
- this.button3.Location = new System.Drawing.Point(5, 696);
- this.button3.Name = "button3";
- this.button3.Size = new System.Drawing.Size(75, 22);
- this.button3.TabIndex = 53;
- this.button3.Text = "&Quitter";
- this.button3.UseVisualStyleBackColor = false;
- this.button3.Click += new System.EventHandler(this.button3_Click);
- //
- // groupBox6
- //
- this.groupBox6.BackColor = System.Drawing.Color.Transparent;
- this.groupBox6.Controls.Add(this.label12);
- this.groupBox6.Controls.Add(this.panel7);
- this.groupBox6.Controls.Add(this.label11);
- this.groupBox6.Controls.Add(this.panel6);
- this.groupBox6.Controls.Add(this.label10);
- this.groupBox6.Controls.Add(this.panel5);
- this.groupBox6.Controls.Add(this.label9);
- this.groupBox6.Controls.Add(this.panel4);
- this.groupBox6.Controls.Add(this.label8);
- this.groupBox6.Controls.Add(this.panel1);
- this.groupBox6.ForeColor = System.Drawing.SystemColors.GradientActiveCaption;
- this.groupBox6.Location = new System.Drawing.Point(5, 543);
- this.groupBox6.Name = "groupBox6";
- this.groupBox6.Size = new System.Drawing.Size(212, 129);
- this.groupBox6.TabIndex = 8;
- this.groupBox6.TabStop = false;
- this.groupBox6.Text = "Information";
- //
- // label12
- //
- this.label12.AutoSize = true;
- this.label12.Location = new System.Drawing.Point(27, 104);
- this.label12.Name = "label12";
- this.label12.Size = new System.Drawing.Size(131, 13);
- this.label12.TabIndex = 58;
- this.label12.Text = "Sortie-Validée-RNS";
- //
- // panel7
- //
- this.panel7.BackColor = System.Drawing.Color.Gold;
- this.panel7.Location = new System.Drawing.Point(6, 103);
- this.panel7.Name = "panel7";
- this.panel7.Size = new System.Drawing.Size(13, 14);
- this.panel7.TabIndex = 57;
- //
- // label11
- //
- this.label11.AutoSize = true;
- this.label11.Location = new System.Drawing.Point(25, 84);
- this.label11.Name = "label11";
- this.label11.Size = new System.Drawing.Size(177, 13);
- this.label11.TabIndex = 56;
- this.label11.Text = "Sortie-Apprentissage-RNS";
- //
- // panel6
- //
- this.panel6.BackColor = System.Drawing.Color.SkyBlue;
- this.panel6.Location = new System.Drawing.Point(6, 83);
- this.panel6.Name = "panel6";
- this.panel6.Size = new System.Drawing.Size(13, 14);
- this.panel6.TabIndex = 55;
- //
- // label10
- //
- this.label10.AutoSize = true;
- this.label10.Location = new System.Drawing.Point(27, 64);
- this.label10.Name = "label10";
- this.label10.Size = new System.Drawing.Size(133, 13);
- this.label10.TabIndex = 54;
- this.label10.Text = "Sortie-Desirée-RNS";
- //
- // panel5
- //
- this.panel5.BackColor = System.Drawing.Color.DarkGreen;
- this.panel5.Location = new System.Drawing.Point(6, 63);
- this.panel5.Name = "panel5";
- this.panel5.Size = new System.Drawing.Size(13, 14);
- this.panel5.TabIndex = 53;
- //
- // label9
- //
- this.label9.AutoSize = true;
- this.label9.Location = new System.Drawing.Point(29, 44);
- this.label9.Name = "label9";
- this.label9.Size = new System.Drawing.Size(151, 13);
- this.label9.TabIndex = 52;
- this.label9.Text = "Erreur-Validation-RNS";
- //
- // panel4
- //
- this.panel4.BackColor = System.Drawing.Color.Fuchsia;
- this.panel4.Location = new System.Drawing.Point(6, 44);
- this.panel4.Name = "panel4";
- this.panel4.Size = new System.Drawing.Size(13, 13);
- this.panel4.TabIndex = 51;
- //
- // label8
- //
- this.label8.AutoSize = true;
- this.label8.Location = new System.Drawing.Point(29, 24);
- this.label8.Name = "label8";
- this.label8.Size = new System.Drawing.Size(180, 13);
- this.label8.TabIndex = 50;
- this.label8.Text = "Erreur-Apprentissage-RNS";
- //
- // panel1
- //
- this.panel1.BackColor = System.Drawing.Color.Red;
- this.panel1.Location = new System.Drawing.Point(6, 24);
- this.panel1.Name = "panel1";
- this.panel1.Size = new System.Drawing.Size(13, 14);
- this.panel1.TabIndex = 49;
- //
- // groupBox4
- //
- this.groupBox4.BackColor = System.Drawing.Color.Transparent;
- this.groupBox4.Controls.Add(this.label20);
- this.groupBox4.Controls.Add(this.label19);
- this.groupBox4.Controls.Add(this.outputchart);
- this.groupBox4.ForeColor = System.Drawing.SystemColors.HotTrack;
- this.groupBox4.Location = new System.Drawing.Point(223, 16);
- this.groupBox4.Name = "groupBox4";
- this.groupBox4.Size = new System.Drawing.Size(258, 272);
- this.groupBox4.TabIndex = 51;
- this.groupBox4.TabStop = false;
- this.groupBox4.Text = "Similarité sortieD/R/V";
- this.groupBox4.Enter += new System.EventHandler(this.groupBox4_Enter);
- //
- // label20
- //
- this.label20.AutoSize = true;
- this.label20.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label20.Location = new System.Drawing.Point(1, 20);
- this.label20.Name = "label20";
- this.label20.Size = new System.Drawing.Size(50, 13);
- this.label20.TabIndex = 8;
- this.label20.Text = "Sortie>";
- //
- // label19
- //
- this.label19.AutoSize = true;
- this.label19.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label19.Location = new System.Drawing.Point(180, 219);
- this.label19.Name = "label19";
- this.label19.Size = new System.Drawing.Size(65, 13);
- this.label19.TabIndex = 7;
- this.label19.Text = "Itération>";
- //
- // outputchart
- //
- this.outputchart.Location = new System.Drawing.Point(55, 20);
- this.outputchart.Name = "outputchart";
- this.outputchart.Size = new System.Drawing.Size(195, 198);
- this.outputchart.TabIndex = 1;
- this.outputchart.Text = "chart1";
- this.outputchart.Click += new System.EventHandler(this.outputchart_Click_1);
- //
- // label7
- //
- this.label7.BackColor = System.Drawing.Color.Transparent;
- this.label7.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label7.ForeColor = System.Drawing.Color.LightSkyBlue;
- this.label7.Location = new System.Drawing.Point(3, 229);
- this.label7.Name = "label7";
- this.label7.Size = new System.Drawing.Size(120, 21);
- this.label7.TabIndex = 38;
- this.label7.Text = "Itération-Courante";
- this.label7.Click += new System.EventHandler(this.label7_Click);
- //
- // groupBox3
- //
- this.groupBox3.BackColor = System.Drawing.Color.Transparent;
- this.groupBox3.Controls.Add(this.label16);
- this.groupBox3.Controls.Add(this.label15);
- this.groupBox3.Controls.Add(this.saveFileErrorValidation);
- this.groupBox3.Controls.Add(this.validationChart);
- this.groupBox3.ForeColor = System.Drawing.SystemColors.HotTrack;
- this.groupBox3.Location = new System.Drawing.Point(749, 16);
- this.groupBox3.Name = "groupBox3";
- this.groupBox3.Size = new System.Drawing.Size(260, 272);
- this.groupBox3.TabIndex = 29;
- this.groupBox3.TabStop = false;
- this.groupBox3.Text = "erreur de validation";
- //
- // label16
- //
- this.label16.AutoSize = true;
- this.label16.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label16.Location = new System.Drawing.Point(189, 221);
- this.label16.Name = "label16";
- this.label16.Size = new System.Drawing.Size(65, 13);
- this.label16.TabIndex = 5;
- this.label16.Text = "Itération>";
- //
- // label15
- //
- this.label15.AutoSize = true;
- this.label15.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label15.ForeColor = System.Drawing.SystemColors.Highlight;
- this.label15.Location = new System.Drawing.Point(3, 17);
- this.label15.Name = "label15";
- this.label15.Size = new System.Drawing.Size(52, 13);
- this.label15.TabIndex = 4;
- this.label15.Text = "Erreur>";
- this.label15.Click += new System.EventHandler(this.label15_Click);
- //
- // validationChart
- //
- this.validationChart.Location = new System.Drawing.Point(58, 20);
- this.validationChart.Name = "validationChart";
- this.validationChart.Size = new System.Drawing.Size(196, 198);
- this.validationChart.TabIndex = 1;
- this.validationChart.Text = "chart1";
- this.validationChart.Click += new System.EventHandler(this.validationChart_Click);
- //
- // panel3
- //
- this.panel3.BackColor = System.Drawing.Color.Transparent;
- this.panel3.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.panel3.ForeColor = System.Drawing.Color.White;
- this.panel3.Location = new System.Drawing.Point(123, 227);
- this.panel3.Name = "panel3";
- this.panel3.Size = new System.Drawing.Size(94, 21);
- this.panel3.TabIndex = 37;
- this.panel3.Paint += new System.Windows.Forms.PaintEventHandler(this.panel3_Paint);
- //
- // label5
- //
- this.label5.BackColor = System.Drawing.Color.Transparent;
- this.label5.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label5.ForeColor = System.Drawing.Color.LightSkyBlue;
- this.label5.Location = new System.Drawing.Point(3, 202);
- this.label5.Name = "label5";
- this.label5.Size = new System.Drawing.Size(107, 19);
- this.label5.TabIndex = 36;
- this.label5.Text = "Erreur-Courante";
- //
- // panel2
- //
- this.panel2.BackColor = System.Drawing.Color.Transparent;
- this.panel2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.panel2.ForeColor = System.Drawing.Color.White;
- this.panel2.Location = new System.Drawing.Point(123, 200);
- this.panel2.Name = "panel2";
- this.panel2.Size = new System.Drawing.Size(94, 21);
- this.panel2.TabIndex = 35;
- this.panel2.Paint += new System.Windows.Forms.PaintEventHandler(this.panel2_Paint);
- //
- // button1
- //
- this.button1.BackColor = System.Drawing.Color.Gainsboro;
- this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
- this.button1.Location = new System.Drawing.Point(154, 162);
- this.button1.Name = "button1";
- this.button1.Size = new System.Drawing.Size(60, 22);
- this.button1.TabIndex = 34;
- this.button1.Text = "&Stop";
- this.button1.UseVisualStyleBackColor = false;
- this.button1.Click += new System.EventHandler(this.button1_Click_1);
- //
- // groupBox5
- //
- this.groupBox5.BackColor = System.Drawing.Color.Transparent;
- this.groupBox5.Controls.Add(this.label18);
- this.groupBox5.Controls.Add(this.label17);
- this.groupBox5.Controls.Add(this.errcroisechart);
- this.groupBox5.ForeColor = System.Drawing.SystemColors.HotTrack;
- this.groupBox5.Location = new System.Drawing.Point(223, 305);
- this.groupBox5.Name = "groupBox5";
- this.groupBox5.Size = new System.Drawing.Size(786, 413);
- this.groupBox5.TabIndex = 33;
- this.groupBox5.TabStop = false;
- this.groupBox5.Text = "Calcule de sortie apprentissage/Désirée";
- //
- // label18
- //
- this.label18.AutoSize = true;
- this.label18.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label18.Location = new System.Drawing.Point(6, 19);
- this.label18.Name = "label18";
- this.label18.Size = new System.Drawing.Size(48, 13);
- this.label18.TabIndex = 7;
- this.label18.Text = "sortie>";
- //
- // label17
- //
- this.label17.AutoSize = true;
- this.label17.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label17.Location = new System.Drawing.Point(688, 387);
- this.label17.Name = "label17";
- this.label17.Size = new System.Drawing.Size(88, 13);
- this.label17.TabIndex = 6;
- this.label17.Text = "Vector-Input>";
- //
- // errcroisechart
- //
- this.errcroisechart.Location = new System.Drawing.Point(55, 19);
- this.errcroisechart.Name = "errcroisechart";
- this.errcroisechart.Size = new System.Drawing.Size(721, 365);
- this.errcroisechart.TabIndex = 2;
- this.errcroisechart.Text = "chart1";
- this.errcroisechart.Click += new System.EventHandler(this.chart1_Click);
- //
- // nbiterations
- //
- this.nbiterations.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.nbiterations.Location = new System.Drawing.Point(154, 135);
- this.nbiterations.Name = "nbiterations";
- this.nbiterations.Size = new System.Drawing.Size(60, 21);
- this.nbiterations.TabIndex = 31;
- //
- // label4
- //
- this.label4.BackColor = System.Drawing.Color.Transparent;
- this.label4.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label4.ForeColor = System.Drawing.Color.LightSkyBlue;
- this.label4.Location = new System.Drawing.Point(3, 135);
- this.label4.Name = "label4";
- this.label4.Size = new System.Drawing.Size(132, 21);
- this.label4.TabIndex = 30;
- this.label4.Text = "Nombre-Itérations\r\n";
- this.label4.Click += new System.EventHandler(this.label4_Click_1);
- //
- // groupBox2
- //
- this.groupBox2.BackColor = System.Drawing.Color.Transparent;
- this.groupBox2.Controls.Add(this.label14);
- this.groupBox2.Controls.Add(this.label13);
- this.groupBox2.Controls.Add(this.saveFilesError);
- this.groupBox2.Controls.Add(this.errorChart);
- this.groupBox2.ForeColor = System.Drawing.SystemColors.HotTrack;
- this.groupBox2.Location = new System.Drawing.Point(487, 16);
- this.groupBox2.Name = "groupBox2";
- this.groupBox2.Size = new System.Drawing.Size(256, 272);
- this.groupBox2.TabIndex = 1;
- this.groupBox2.TabStop = false;
- this.groupBox2.Text = "erreur d\'apprentissage:";
- //
- // label14
- //
- this.label14.AutoSize = true;
- this.label14.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label14.Location = new System.Drawing.Point(1, 19);
- this.label14.Name = "label14";
- this.label14.Size = new System.Drawing.Size(52, 13);
- this.label14.TabIndex = 3;
- this.label14.Text = "Erreur>";
- //
- // label13
- //
- this.label13.AutoSize = true;
- this.label13.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label13.Location = new System.Drawing.Point(185, 221);
- this.label13.Name = "label13";
- this.label13.Size = new System.Drawing.Size(65, 13);
- this.label13.TabIndex = 2;
- this.label13.Text = "Itération>";
- //
- // saveFilesError
- //
- this.saveFilesError.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.saveFilesError.ForeColor = System.Drawing.Color.LightSkyBlue;
- this.saveFilesError.Location = new System.Drawing.Point(4, 248);
- this.saveFilesError.Name = "saveFilesError";
- this.saveFilesError.Size = new System.Drawing.Size(230, 18);
- this.saveFilesError.TabIndex = 1;
- this.saveFilesError.Text = "enregister l\'erreur d\'apprentissage";
- this.saveFilesError.CheckedChanged += new System.EventHandler(this.saveFilesCheck_CheckedChanged);
- //
- // errorChart
- //
- this.errorChart.Location = new System.Drawing.Point(54, 20);
- this.errorChart.Name = "errorChart";
- this.errorChart.Size = new System.Drawing.Size(196, 198);
- this.errorChart.TabIndex = 0;
- this.errorChart.Text = "chart1";
- this.errorChart.Click += new System.EventHandler(this.errorChart_Click);
- //
- // momentumBox
- //
- this.momentumBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.momentumBox.Location = new System.Drawing.Point(154, 54);
- this.momentumBox.Name = "momentumBox";
- this.momentumBox.Size = new System.Drawing.Size(60, 21);
- this.momentumBox.TabIndex = 3;
- //
- // label6
- //
- this.label6.BackColor = System.Drawing.Color.Transparent;
- this.label6.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label6.ForeColor = System.Drawing.Color.LightSkyBlue;
- this.label6.Location = new System.Drawing.Point(3, 54);
- this.label6.Name = "label6";
- this.label6.Size = new System.Drawing.Size(69, 21);
- this.label6.TabIndex = 2;
- this.label6.Text = "Moment";
- this.label6.TextAlign = System.Drawing.ContentAlignment.TopCenter;
- this.label6.Click += new System.EventHandler(this.label6_Click);
- //
- // startButton
- //
- this.startButton.BackColor = System.Drawing.Color.Gainsboro;
- this.startButton.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
- this.startButton.Location = new System.Drawing.Point(6, 162);
- this.startButton.Name = "startButton";
- this.startButton.Size = new System.Drawing.Size(137, 23);
- this.startButton.TabIndex = 27;
- this.startButton.Text = "&Démarrer ";
- this.startButton.UseVisualStyleBackColor = false;
- this.startButton.Click += new System.EventHandler(this.startButton_Click);
- //
- // errorLimitBox
- //
- this.errorLimitBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.errorLimitBox.Location = new System.Drawing.Point(154, 108);
- this.errorLimitBox.Name = "errorLimitBox";
- this.errorLimitBox.Size = new System.Drawing.Size(60, 21);
- this.errorLimitBox.TabIndex = 7;
- //
- // label3
- //
- this.label3.BackColor = System.Drawing.Color.Transparent;
- this.label3.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label3.ForeColor = System.Drawing.Color.LightSkyBlue;
- this.label3.Location = new System.Drawing.Point(3, 108);
- this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(110, 15);
- this.label3.TabIndex = 6;
- this.label3.Text = "Erreur-Limite";
- this.label3.Click += new System.EventHandler(this.label3_Click);
- //
- // alphaBox
- //
- this.alphaBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.alphaBox.Location = new System.Drawing.Point(154, 81);
- this.alphaBox.Name = "alphaBox";
- this.alphaBox.Size = new System.Drawing.Size(60, 21);
- this.alphaBox.TabIndex = 5;
- //
- // label2
- //
- this.label2.BackColor = System.Drawing.Color.Transparent;
- this.label2.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label2.ForeColor = System.Drawing.Color.LightSkyBlue;
- this.label2.Location = new System.Drawing.Point(3, 81);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(100, 15);
- this.label2.TabIndex = 4;
- this.label2.Text = " Valeur-Béta";
- this.label2.Click += new System.EventHandler(this.label2_Click);
- //
- // learningRateBox
- //
- this.learningRateBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.learningRateBox.Location = new System.Drawing.Point(154, 27);
- this.learningRateBox.Name = "learningRateBox";
- this.learningRateBox.Size = new System.Drawing.Size(60, 21);
- this.learningRateBox.TabIndex = 1;
- //
- // label1
- //
- this.label1.BackColor = System.Drawing.Color.Transparent;
- this.label1.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label1.ForeColor = System.Drawing.Color.LightSkyBlue;
- this.label1.Location = new System.Drawing.Point(6, 28);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(137, 20);
- this.label1.TabIndex = 0;
- this.label1.Text = "Pas-Apprentissage";
- this.label1.Click += new System.EventHandler(this.label1_Click);
- //
- // saveFileErrorValidation
- //
- this.saveFileErrorValidation.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.saveFileErrorValidation.ForeColor = System.Drawing.Color.LightSkyBlue;
- this.saveFileErrorValidation.ImageKey = "(aucun)";
- this.saveFileErrorValidation.Location = new System.Drawing.Point(6, 248);
- this.saveFileErrorValidation.Name = "saveFileErrorValidation";
- this.saveFileErrorValidation.Size = new System.Drawing.Size(211, 18);
- this.saveFileErrorValidation.TabIndex = 2;
- this.saveFileErrorValidation.Text = "enregister l\'erreur de validation";
- this.saveFileErrorValidation.CheckedChanged += new System.EventHandler(this.checkBox1_CheckedChanged);
- //
- // MainForm
- //
- this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
- this.BackColor = System.Drawing.Color.GhostWhite;
- this.ClientSize = new System.Drawing.Size(1022, 748);
- this.Controls.Add(this.groupBox1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
- this.MaximizeBox = false;
- this.Name = "MainForm";
- this.Text = "Réseau de neurones";
- this.Load += new System.EventHandler(this.MainForm_Load);
- this.Closing += new System.ComponentModel.CancelEventHandler(this.MainForm_Closing);
- this.groupBox1.ResumeLayout(false);
- this.groupBox1.PerformLayout();
- this.groupBox6.ResumeLayout(false);
- this.groupBox6.PerformLayout();
- this.groupBox4.ResumeLayout(false);
- this.groupBox4.PerformLayout();
- this.groupBox3.ResumeLayout(false);
- this.groupBox3.PerformLayout();
- this.groupBox5.ResumeLayout(false);
- this.groupBox5.PerformLayout();
- this.groupBox2.ResumeLayout(false);
- this.groupBox2.PerformLayout();
- this.ResumeLayout(false);
- }
- #endregion
- /// <summary>
- /// The main entry point for the application.
- /// </summary>
- [STAThread]
- static void Main()
- {
- Application.Run(new MainForm());
- }
- // On main form closing
- private void MainForm_Closing(object sender, System.ComponentModel.CancelEventArgs e)
- {
- // check if worker thread is running
- if ((workerThread != null) && (workerThread.IsAlive))
- {
- needToStop = true;
- workerThread.Join();
- }
- }
- // Mettre à jour les controles de l'application
- private void UpdateSettings()
- {
- learningRateBox.Text = learningRate.ToString();
- momentumBox.Text = momentum.ToString();
- nbiterations.Text = nbiteration.ToString();
- alphaBox.Text = sigmoidAlphaValue.ToString();
- errorLimitBox.Text = learningErrorLimit.ToString();
- saveFilesError.Checked = saveStatisticsToFiles;
- }
- // Enable/disable controls
- private void EnableControls(bool enable)
- {
- learningRateBox.Enabled = enable;
- momentumBox.Enabled = enable;
- alphaBox.Enabled = enable;
- errorLimitBox.Enabled = enable;
- saveFilesError.Enabled = enable;
- startButton.Enabled = enable;
- }
- // On "Start" button click
- private void startButton_Click(object sender, System.EventArgs e)
- {
- // get learning rate
- try
- {
- learningRate = Math.Max(0.00001, Math.Min(1, double.Parse(learningRateBox.Text)));
- }
- catch
- {
- learningRate = 0.1;
- }
- // get momentum
- try
- {
- momentum = Math.Max(0, Math.Min(0.5, double.Parse(momentumBox.Text)));
- }
- catch
- {
- momentum = 0;
- }
- // get sigmoid's alpha value
- try
- {
- sigmoidAlphaValue = Math.Max(0.01, Math.Min(100, double.Parse(alphaBox.Text)));
- }
- catch
- {
- sigmoidAlphaValue = 1;
- }
- // get learning error limit
- try
- {
- learningErrorLimit = Math.Max(0, double.Parse(errorLimitBox.Text));
- }
- catch
- {
- learningErrorLimit = 0.1;
- }
- // get sigmoid's type
- try
- {
- nbiteration = Math.Max(10, int.Parse(nbiterations.Text));
- }
- catch
- {
- nbiteration = 200;
- }
- saveStatisticsToFiles = saveFilesError.Checked;
- // saveValidationToFiles = saveFileErrorValidation.Checked;
- // update settings controls
- UpdateSettings();
- // run worker thread
- needToStop = false;
- workerThread = new Thread(new ThreadStart(SearchSolution));
- workerThread.Start();
- timer1.Enabled = true;
- }
- // On "Stop" button click
- private void stopButton_Click(object sender, System.EventArgs e)
- {
- }
- //---------------------------------------------------------------------------------------
- // Worker thread
- void SearchSolution()
- {
- // initialiser le vecteur d'entrées et le vecteur de sortis
- double[][] input = null;
- double[] []output = null;
- double[][] vinput = null;
- double[][] voutput = null;
- input = new double[12][] {
- new double[] { 0.0000},
- new double[] { 0.1642},
- new double[] { 0.2585},
- new double[] { 0.2092},
- new double[] { 0.3697},
- new double[] { 0.4425},
- new double[] { 0.5823},
- new double[] { 0.5687},
- new double[] { 0.4490},
- new double[] { 0.1543},
- new double[] { 0.1210},
- new double[] {1.0000},
- /*new double[] { 0.2055},
- new double[] { 0.1703},
- new double[] { 0.1435},
- new double[] { 0.1684},
- new double[] { 0.2285},
- new double[] { 0.1234},
- new double[] { 0.5480},
- new double[] {0.7240},
- new double[] { 0.6865},
- new double[] { 0.5232},
- new double[] { 0.3580},
- new double[] {0.2078},
- new double[] { 0.2069},
- new double[] { 0.1234 } */
- };
- vinput = new double[12][] {
- new double[] { 0.4866},
- new double[] { 0.5979},
- new double[] { 1.0000},
- new double[] { 0.7254},
- new double[] { 0.7312},
- new double[] { 0.4508},
- new double[] { 0.1073},
- new double[] { 0.1776},
- new double[] { 0.0000},
- new double[] { 0.1210},
- new double[] { 0.3441},
- new double[] { 0.1151}
- };
- //le vecteur de sortie_ d'apprentissage
- output = new double[12][]{
- new double[] { 0.0000},
- new double[] { 0.3335},
- new double[] { 0.3991},
- new double[] { 0.5982},
- new double[] { 0.7689},
- new double[] { 1.0000},
- new double[] { 0.5787},
- new double[] { 0.2830},
- new double[] { 0.3203},
- new double[] { 0.0225},
- new double[] { 0.0630},
- new double[] { 0.2526},
- /*new double[] {0.1622},
- new double[] {0.1838},
- new double[] {0.3261},
- new double[] {0.4695},
- new double[] {0.6974},
- new double[] {0.6727},
- new double[] {0.3697},
- new double[] {0.3230},
- new double[] {0.2977},
- new double[] {0.0808},
- new double[] {0.0530},
- new double[] {0.1796},
- new double[] {0.1596},
- new double[] {0.4732}*/
- };
- //vecteur de sortie de validation
- voutput = new double[12][] { new double[] {0.4190},
- new double[] {0.8348},
- new double[] {0.8552},
- new double[] {1.0000},
- new double[] {0.8565},
- new double[] {0.4605},
- new double[] {0.0888},
- new double[] {0.0000},
- new double[] {0.0993},
- new double[] {0.0690},
- new double[] {0.2480},
- new double[] {0.3500},
- /* new double[] {0.19391116},
- new double[] {0.257099057},
- new double[] {0.299550289},
- new double[] {0.545081354},
- new double[] {0.139968195},
- new double[] {-0.361387293},
- new double[] {-0.822998165},
- new double[] {-0.995560888},
- new double[] {-0.612664878},
- new double[] {0.292257041},
- new double[] {0.987906637},
- new double[] {0.405747428},
- new double[] {-0.89718364},
- new double[] {-0.234599031},
- new double[] {0.958708846},
- new double[] {-0.920692492},
- new double[] {0.781716095},
- new double[] {-0.89690409}*/
- };
- // créer un perceptron
- ActivationNetwork network = new ActivationNetwork(
- (IActivationFunction)new SigmoidFunction(sigmoidAlphaValue),
- 1, 8, 1);
- // create teacher
- BackPropagationLearning teacher = new BackPropagationLearning(network);
- // set learning rate and momentum
- teacher.LearningRate = learningRate;
- teacher.Momentum = momentum;
- // iterations
- int iteration = 1;
- // statistic files
- StreamWriter errorsFile = null;
- StreamWriter validationFile = null;
- try
- {
- // check if we need to save statistics to files
- if (saveStatisticsToFiles)
- {
- // open files
- errorsFile = File.CreateText("errorsApprentissage.csv");
- }
- if (saveValidationToFiles)
- {
- // open files
- validationFile = File.CreateText("errorsValidation.csv");
- }
- // erros list
- ArrayList errorsList = new ArrayList();
- ArrayList abscicexList = new ArrayList();
- ArrayList verrorsList = new ArrayList();
- ArrayList sortdesireeList = new ArrayList();
- ArrayList sortdesireesinusList = new ArrayList();
- ArrayList sortyeList = new ArrayList();
- ArrayList sortsinusList = new ArrayList();
- ArrayList sortyVList = new ArrayList();
- //****************************************
- ArrayList tabDyn = new ArrayList();
- Graphics g = panel2.CreateGraphics();
- Graphics g2 = panel3.CreateGraphics();
- //***************************************
- // loop
- //while (!needToStop)
- for(int j=0;j<nbiteration;j++)
- {
- // run epoch of learning procedure
- double error = teacher.RunEpoch(input, output);
- errorsList.Add(error);
- for(int F=0;F<12;F++)
- {
- abscicexList.Add(output);
- }
- //**************************************************
- tabDyn.Add(error);
- g.Clear(System.Drawing.SystemColors.ButtonFace);
- g.DrawString(error + "", new Font("Arial", 10), new SolidBrush(Color.Black), 3, 3);
- g2.Clear(System.Drawing.SystemColors.ButtonFace);
- g2.DrawString(j + "", new Font("Arial", 10), new SolidBrush(Color.Black), 3, 3);
- tabErreur = new double[tabDyn.Count, 2];
- for (int i = 0; i < tabDyn.Count; i++)
- {
- tabErreur[i, 0] = i;
- tabErreur[i, 1] = (double)tabDyn[i];
- }
- //**************************************************
- //Calculer la sortie du réseau
- //---------------------------------------------------
- double s = 0;
- IActivationFunction function = network[0][0].ActivationFunction;
- for (int t = 0; t < 12; t++)
- {
- double[] so = calculer_sort(network,input[t]);
- double verification = valider(so);
- s += verification;
- }
- sortyeList.Add(s);
- double sp = 0;
- for (int te = 0; te < 12; te++)
- {
- double[] sop = calculer_sort(network, input[te]);
- double verificationp = valider(sop);
- sp += verificationp;
- sortsinusList.Add(sp);
- }
- //Calculer la sortie de validation du réseau
- //---------------------------------------
- double sv = 0;
- for (int w = 0; w < 12; w++)
- {
- double[] sov = calculer_sort(network, vinput[w]);
- double verificationvalidation = valider(sov);
- sv += verificationvalidation;
- }
- sortyVList.Add(sv);
- //Stocker la sortie réel du réseau dans un ArrayList
- //------------------------------------------
- double sd = 0;
- for (int k = 0; k < 12; k++)
- {
- double[] sod = calculer_sortieD(output[k]); ;
- double verificat = valider(sod);
- sd += verificat;
- }
- sortdesireeList.Add(sd);
- double sds = 0;
- for (int k = 0; k < 12; k++)
- {
- double[] sodsinus = calculer_sortieD(output[k]); ;
- double verificat = valider(sodsinus);
- sds += verificat;
- sortdesireesinusList.Add(sds);
- }
- // Calculer l'erreur de validation
- //------------------------------------------
- double eval=0;
- for(int i=0;i<12;i++)
- {
- double[] sortie = calculer_sortie(network,vinput[i]);
- double erreurval = valider(sortie, voutput[i]);
- eval += erreurval;
- }
- verrorsList.Add(eval);
- // Stocker l'erreur courante
- //------------------------------------------
- if (errorsFile != null)
- {
- errorsFile.WriteLine(error);
- }
- if (validationFile != null)
- {
- validationFile.WriteLine(eval);
- }
- iteration++;
- //Besoin de Stopper l'appliation
- //------------------------------------------
- if (error <= learningErrorLimit)
- break;
- }
- // Exhiber les erreurs dynamics
- //------------------------------------------
- double[,] errors = new double[errorsList.Count, 2];
- for (int i = 0, n = errorsList.Count; i < n; i++)
- {
- errors[i, 0] = i;
- errors[i, 1] = (double)errorsList[i];
- }
- errorChart.RangeX = new DoubleRange(0, errorsList.Count - 1);
- errorChart.UpdateDataSeries("error", errors);
- double[,] verrors = new double[verrorsList.Count, 2];
- for (int i = 0, n = verrorsList.Count; i < n; i++)
- {
- verrors[i, 0] = i;
- verrors[i, 1] = (double)verrorsList[i];
- }
- validationChart.RangeX = new DoubleRange(0, errorsList.Count - 1);
- validationChart.UpdateDataSeries("validation", verrors);
- errcroisechart.RangeX = new DoubleRange(0, errorsList.Count - 1);
- double[,] sorchart = new double[sortsinusList.Count, 2];
- for (int i = 0, n = sortsinusList.Count; i < n; i++)
- {
- for (int kI = 0; kI < 12; kI++)
- {
- sorchart[i, 0] = i;
- sorchart[i, 1] = (double)sortsinusList[i];
- }
- }
- double[,] sordsinuschart = new double[sortdesireesinusList.Count, 2];
- for (int i = 0, n = sortdesireesinusList.Count; i < n; i++)
- {
- for (int kI = 0; kI < 12; kI++)
- {
- sordsinuschart[i, 0] = i;
- sordsinuschart[i, 1] = (double)sortdesireesinusList[i];
- }
- }
- double[,] sortiechart = new double[sortyeList.Count, 2];
- for (int i = 0, n = sortyeList.Count; i < n; i++)
- {
- sortiechart[i, 0] = i;
- sortiechart[i, 1] = (double)sortyeList[i];
- }
- double[,] sortiDechart = new double[sortdesireeList.Count, 2];
- for (int i = 0, n = sortdesireeList.Count; i < n; i++)
- {
- sortiDechart[i, 0] = i;
- sortiDechart[i, 1] = (double)sortdesireeList[i];
- }
- errcroisechart.UpdateDataSeries("SORTIED", sordsinuschart);
- errcroisechart.UpdateDataSeries("SORTIER", sorchart);
- double[,] sortiVchart = new double[sortyVList.Count, 2];
- for (int i = 0, n = sortyVList.Count; i < n; i++)
- {
- sortiVchart[i, 0] = i;
- sortiVchart[i, 1] = (double)sortyVList[i];
- }
- outputchart.RangeX = new DoubleRange(0, errorsList.Count - 1);
- outputchart.UpdateDataSeries("sortieRNS", sortiechart);
- outputchart.UpdateDataSeries("sortieDesi", sortiDechart);
- outputchart.UpdateDataSeries("sortieRNSv", sortiVchart);
- }
- catch (IOException)
- {
- MessageBox.Show("Failed writing file", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- finally
- {
- // close files
- if (errorsFile != null)
- errorsFile.Close();
- if (validationFile != null)
- validationFile.Close();
- }
- needToStop = true;
- // enable settings controls
- //EnableControls( true );
- }
- //---------------------------------------------------------------------------------------------
- double[] calculer_sortie(ActivationNetwork reseau,double[] input)
- {
- double[] sorties = reseau.Compute(input);
- return sorties;
- }
- //---------------------------------------------------------------------------------------------
- double[] calculer_sortieD(double[] output)
- {
- double[] sorties = output;
- return sorties;
- }
- //---------------------------------------------------------------------------------------------
- double[] calculer_sort(ActivationNetwork reseau, double[] input)
- {
- double[] so = reseau.Compute(input);
- return so;
- }
- //-------------------------------------------------------------------------------------------
- double valider(double[] sortie)
- {
- double er = 0;
- for (int i = 0; i < sortie.Length; i++)
- {
- double e = sortie[i];
- er += e * e;
- }
- return er;
- }
- //--------------------------------------------------------------------------------------------
- double valider(double[] sortie, double[] sortiesDesiré)
- {
- double err = 0;
- double[] erreurs = new double[sortie.Length];
- for (int i = 0; i < sortie.Length; i++)
- {
- double e=sortiesDesiré[i] - sortie[i];
- err += e * e;
- }
- return err;
- }
- //---------------------------------------------------------------------------------------------
- private void label4_Click(object sender, EventArgs e)
- {
- }
- private void label3_Click(object sender, EventArgs e)
- {
- }
- private void groupBox1_Enter(object sender, EventArgs e)
- {
- }
- private void sigmoidTypeCombo_SelectedIndexChanged(object sender, EventArgs e)
- {
- }
- private void errorChart_Click(object sender, EventArgs e)
- {
- }
- //-------------------------------------------------------------------------------------------
- private void button1_Click(object sender, EventArgs e)
- {
- }
- //----------------------------------------------------------------------------------------------
- private void MainForm_Load(object sender, EventArgs e)
- {
- }
- private void validationChart_Click(object sender, EventArgs e)
- {
- }
- private void saveFilesCheck_CheckedChanged(object sender, EventArgs e)
- {
- }
- private void checkBox1_CheckedChanged(object sender, EventArgs e)
- {
- }
- private void label6_Click(object sender, EventArgs e)
- {
- }
- private void label4_Click_1(object sender, EventArgs e)
- {
- }
- private void chart1_Click(object sender, EventArgs e)
- {
- }
- private void label2_Click(object sender, EventArgs e)
- {
- }
- private void label1_Click(object sender, EventArgs e)
- {
- }
- private void button1_Click_1(object sender, EventArgs e)
- {
- try
- {
- needToStop = true;
- workerThread.Join();
- workerThread = null;
- errorChart.Invalidate();
- validationChart.Invalidate();
- }
- catch (Exception) { startButton.Enabled = false; }
- startButton.Enabled = true;
- }
- private void panel2_Paint(object sender, PaintEventArgs e)
- {
- }
- private void label5_Click(object sender, EventArgs e)
- {
- }
- private void label10_Click(object sender, EventArgs e)
- {
- }
- private void panel6_Paint(object sender, PaintEventArgs e)
- {
- }
- private void label11_Click(object sender, EventArgs e)
- {
- }
- private void label8_Click(object sender, EventArgs e)
- {
- }
- private void label7_Click(object sender, EventArgs e)
- {
- }
- private void outputchart_Click(object sender, EventArgs e)
- {
- }
- private void panel3_Paint(object sender, PaintEventArgs e)
- {
- }
- private void button3_Click(object sender, EventArgs e)
- {
- Close();
- }
- private void groupBox4_Enter(object sender, EventArgs e)
- {
- }
- private void outputchart_Click_1(object sender, EventArgs e)
- {
- }
- private void textBox1_TextChanged(object sender, EventArgs e)
- {
- }
- private void label15_Click(object sender, EventArgs e)
- {
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement