⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 form2.frm

📁 用神经元模拟磁旋
💻 FRM
字号:
VERSION 5.00
Begin VB.Form Form2 
   Caption         =   "Hopfield网络运行机制——能量变化"
   ClientHeight    =   7080
   ClientLeft      =   1845
   ClientTop       =   1035
   ClientWidth     =   8295
   BeginProperty Font 
      Name            =   "宋体"
      Size            =   10.5
      Charset         =   134
      Weight          =   400
      Underline       =   0   'False
      Italic          =   0   'False
      Strikethrough   =   0   'False
   EndProperty
   LinkTopic       =   "Form2"
   ScaleHeight     =   7080
   ScaleWidth      =   8295
   Begin VB.CommandButton Command3 
      Caption         =   "  改变初始权值   设定网络初始状态"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   15.75
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   735
      Left            =   2040
      TabIndex        =   10
      Top             =   5280
      Width           =   3015
   End
   Begin VB.TextBox Text3 
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   15.75
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   495
      Index           =   3
      Left            =   4440
      TabIndex        =   9
      Top             =   6120
      Visible         =   0   'False
      Width           =   735
   End
   Begin VB.TextBox Text3 
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   15.75
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   495
      Index           =   2
      Left            =   3600
      TabIndex        =   8
      Top             =   6120
      Visible         =   0   'False
      Width           =   735
   End
   Begin VB.TextBox Text3 
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   15.75
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   495
      Index           =   1
      Left            =   2760
      TabIndex        =   7
      Top             =   6120
      Visible         =   0   'False
      Width           =   735
   End
   Begin VB.TextBox Text3 
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   15.75
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   495
      Index           =   0
      Left            =   1920
      TabIndex        =   6
      Top             =   6120
      Visible         =   0   'False
      Width           =   735
   End
   Begin VB.CommandButton Command2 
      Caption         =   "结束"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   15.75
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   735
      Left            =   6000
      TabIndex        =   5
      Top             =   6240
      Width           =   1455
   End
   Begin VB.CommandButton Command1 
      Caption         =   "计算能量"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   15.75
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   735
      Left            =   5760
      TabIndex        =   4
      Top             =   5280
      Width           =   1695
   End
   Begin VB.TextBox Text2 
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   15.75
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   495
      Left            =   360
      TabIndex        =   3
      Top             =   6360
      Width           =   855
   End
   Begin VB.TextBox Text1 
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   15.75
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   495
      Left            =   360
      TabIndex        =   1
      Top             =   5400
      Width           =   975
   End
   Begin VB.Label Label2 
      Caption         =   "运行次数"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   15.75
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   240
      TabIndex        =   2
      Top             =   6000
      Width           =   1455
   End
   Begin VB.Label Label1 
      Caption         =   "神经元个数"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   15.75
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   120
      TabIndex        =   0
      Top             =   5040
      Width           =   1575
   End
End
Attribute VB_Name = "Form2"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private Sub Command1_Click()
Dim i, j, k, h As Integer
Dim Energy, Energy1, Energy2 As Double
Cls
N = Val(Text2.Text)
'设定网络初始状态
For i = 1 To NN
b(i) = Val(Text3(i - 1).Text)
Next i
'计算网络能量
Energy1 = 0
Energy2 = 0
For i = 1 To NN
  For j = 1 To NN
  Energy1 = Energy1 + W(i, j) * b(i) * b(j)
  Next j
  Energy2 = Energy2 + Q(i) * b(i)
Next i
Energy = -0.5 * Energy1 + Energy2
Print Energy, b(1), b(2), b(3), b(4)
'运行网络
For k = 1 To N
 i = Int((NN * Rnd) + 1)
 'Change(i) = Change(i) + 1
 h = 0
 For j = 1 To NN
  h = h + W(i, j) * b(j)
 Next j
 y(i) = Sg(h - Q(i))
 For j = 1 To NN
 If j <> i Then
 y(j) = b(j)
 End If
 Next j
For i = 1 To NN
b(i) = y(i)
Next i
Energy1 = 0
Energy2 = 0
For i = 1 To NN
  For j = 1 To NN
  Energy1 = Energy1 + W(i, j) * b(i) * b(j)
  Next j
  Energy2 = Energy2 + Q(i) * b(i)
Next i
Energy = -0.5 * Energy1 + Energy2
Print Energy, b(1), b(2), b(3), b(4)
Next k

End Sub

Private Sub Command2_Click()
End
End Sub

Private Sub Command3_Click()
Dim i, j As Integer
NN = Val(Text1.Text)
ReDim W(NN, NN)
ReDim Q(NN)
ReDim b(4)
ReDim Change(NN)
ReDim y(NN)
'输入初始状态
For i = 1 To NN
Text3(i - 1).Visible = True
Next i
'设定或改变网络权值之初始值
Randomize
For i = 1 To NN
Q(i) = Rnd
Next i
Randomize
For i = 1 To NN - 1
For j = i + 1 To NN
W(i, j) = Rnd
W(j, i) = W(i, j)
Next j
Next i
For i = 1 To NN
 W(i, i) = 0
Next i
End Sub

Private Sub Text1_Change()
Dim i As Integer
For i = 1 To NN
Text3(i - 1).Visible = False
Next i
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -