%@ Language=VBScript %><% option explicit %>
Rainer's research on evolution, skills, and language comprehension
<%
DIM ScreenWidth, ScreenHeight
DIM timeout
DIM msg '-- for errors
DIM action
DIM choice_1
DIM nCount
DIM a_plus, b_plus, a_minus, b_minus, diff_a, diff_b
DIM copyRate, distRate, randRate, copyStepCount, copyStepGen_x
DIM att_a, att_b
DIM parent_no_kids, parent_1_kid, parent_2_kids, parent_3_kids
DIM parent_4_kids, parent_5_kids, parent_6_kids, parent_7_kids
'' extend the timeout to allow for long files
timeout = Server.ScriptTimeout
'' Response.Write "Initial timeout=" & timeout & "
"
Server.ScriptTimeout = 1200
ScreenWidth = Request.Cookies("Humble")("ScreenWidth")
ScreenHeight = Request.Cookies("Humble")("ScreenHeight")
IF Request.QueryString("Submitted") = "true" THEN
choice_1 = Trim(Request.Form("Choice_1"))
copyStepCount = Trim(Request.Form("CopyStepCount"))
copyStepGen_x = Trim(Request.Form("CopyStepGen_x"))
parent_no_kids = Trim(Request.Form("parent_no_kids"))
parent_1_kid = Trim(Request.Form("parent_1_kid"))
parent_2_kids = Trim(Request.Form("parent_2_kids"))
parent_3_kids = Trim(Request.Form("parent_3_kids"))
parent_4_kids = Trim(Request.Form("parent__4_kids"))
parent_5_kids = Trim(Request.Form("parent_5_kids"))
parent_6_kids = Trim(Request.Form("parent_6_kids"))
parent_7_kids = Trim(Request.Form("parent_7_kids"))
distRate = Trim(Request.Form("DistRate"))
copyRate = Trim(Request.Form("CopyRate"))
randRate = Trim(Request.Form("RandRate"))
IF NOT Len(choice_1) > 0 THEN
choice_1 = -1
END IF
IF choice_1 > 0 THEN
a_plus = Trim(Request.Form("A_plus"))
b_plus = Trim(Request.Form("B_plus"))
a_minus = Trim(Request.Form("A_minus"))
b_minus = Trim(Request.Form("B_minus"))
ELSE
a_plus = 5 'the max amount to add to the value
b_plus = 5
a_minus = 5 'the max amount to subtract from the value
b_minus = 5
END IF
diff_a = a_plus + a_minus
diff_b = b_plus + b_minus
Response.Cookies("Humble")("CopyStepCount")=copyStepCount 'max generations
Response.Cookies("Humble")("CopyStepGen_x")=copyStepGen_x
Response.Cookies("Humble")("parent_no_kids")=parent_no_kids
Response.Cookies("Humble")("parent_1_kid")=parent_1_kid
Response.Cookies("Humble")("parent_2_kids")=parent_2_kids
Response.Cookies("Humble")("parent_3_kids")=parent_3_kids
Response.Cookies("Humble")("parent__4_kids")=parent_4_kids
Response.Cookies("Humble")("parent_4_kids")=parent_5_kids
Response.Cookies("Humble")("parent_6_kids")=parent_6_kids
Response.Cookies("Humble")("parent_7_kids")=parent_7_kids
Response.Cookies("Humble")("CopyRate")=copyRate
Response.Cookies("Humble")("DistRate")=distRate
Response.Cookies("Humble")("RandRate")=randRate
Response.Cookies("Humble")("A_plus")=a_plus
Response.Cookies("Humble")("A_minus")=a_minus
Response.Cookies("Humble")("B_plus")=b_plus
Response.Cookies("Humble")("B_minus")=b_minus
Response.Redirect "toc_top.htm"
' msg = " *** " & a_plus & "," & a_minus & "," & b_plus & "," & b_minus & " ***"
END IF '---*** Request.QueryString("Submitted") ***------------------------
' p = Trim(Request.QueryString("p"))
action = "initCopy.asp?submitted=true"
%>
The copying mechanism applies to the nth generation of the population and produces the n+1st generation
The selection mechanism applies to the nth generation of the population and determines how many copies are made from each of the parents.
Attribute-based selection tends to decrease variation in the n+1st generation
The variability mechanism results in inexact copies (mutation), so that the n+1st generation has increased variation in the attribute space
<%
copyStepCount=100
copyStepGen_x=50
parent_no_kids = 10
parent_1_kid = 80
parent_2_kids = 5
parent_3_kids = 0
parent_4_kids = 0
parent_5_kids = 0
parent_6_kids = 0
parent_7_kids = 0
copyRate=2 'max 2 offspring per single parent
distRate=20
randRate=5
choice_1=-1
%>
Future:
Gaussian and other shaped distributions for variability
optimum-biased attribute variability
Pair-based copying (e.g. sexual reproduction) with pair-based attribute variability
unbiased pairing, distance-based, or similarity-based
pairing preference for partner whith shortest distance from optimum
<%
'' reset the timeout
Server.ScriptTimeout = timeout
Response.End '-----------------------------------------------------------%>